{"version":3,"file":"coreui-angular.mjs","sources":["../../../projects/coreui-angular/src/lib/coreui.types.ts","../../../projects/coreui-angular/src/lib/shared/element-ref.directive.ts","../../../projects/coreui-angular/src/lib/shared/html-attr.directive.ts","../../../projects/coreui-angular/src/lib/shared/template-id.directive.ts","../../../projects/coreui-angular/src/lib/shared/theme.directive.ts","../../../projects/coreui-angular/src/lib/shared/shared.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-button/accordion-button.directive.ts","../../../projects/coreui-angular/src/lib/accordion/accordion.service.ts","../../../projects/coreui-angular/src/lib/accordion/accordion/accordion.component.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.animations.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.directive.ts","../../../projects/coreui-angular/src/lib/collapse/collapse.module.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.ts","../../../projects/coreui-angular/src/lib/accordion/accordion-item/accordion-item.component.html","../../../projects/coreui-angular/src/lib/accordion/accordion.module.ts","../../../projects/coreui-angular/src/lib/alert/alert-heading.directive.ts","../../../projects/coreui-angular/src/lib/alert/alert-link.directive.ts","../../../projects/coreui-angular/src/lib/button/button.directive.ts","../../../projects/coreui-angular/src/lib/button/button-close.directive.ts","../../../projects/coreui-angular/src/lib/button/button.module.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.ts","../../../projects/coreui-angular/src/lib/alert/alert.component.html","../../../projects/coreui-angular/src/lib/alert/alert.module.ts","../../../projects/coreui-angular/src/lib/utilities/align.directive.ts","../../../projects/coreui-angular/src/lib/utilities/bg-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/border.directive.ts","../../../projects/coreui-angular/src/lib/utilities/rounded.directive.ts","../../../projects/coreui-angular/src/lib/utilities/shadow-on-scroll.directive.ts","../../../projects/coreui-angular/src/lib/utilities/text-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/text-bg-color.directive.ts","../../../projects/coreui-angular/src/lib/utilities/utilities.module.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.ts","../../../projects/coreui-angular/src/lib/avatar/avatar.component.html","../../../projects/coreui-angular/src/lib/avatar/avatar.module.ts","../../../projects/coreui-angular/src/lib/badge/badge.component.ts","../../../projects/coreui-angular/src/lib/badge/badge.module.ts","../../../projects/coreui-angular/src/lib/backdrop/backdrop.service.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-item/breadcrumb-item.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb/breadcrumb.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.service.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.ts","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb-router/breadcrumb-router.component.html","../../../projects/coreui-angular/src/lib/breadcrumb/breadcrumb.module.ts","../../../projects/coreui-angular/src/lib/button-group/button-group/button-group.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-toolbar/button-toolbar.component.ts","../../../projects/coreui-angular/src/lib/button-group/button-group.module.ts","../../../projects/coreui-angular/src/lib/callout/callout.component.ts","../../../projects/coreui-angular/src/lib/callout/callout.module.ts","../../../projects/coreui-angular/src/lib/card/card.component.ts","../../../projects/coreui-angular/src/lib/card/card-body.component.ts","../../../projects/coreui-angular/src/lib/card/card-footer.component.ts","../../../projects/coreui-angular/src/lib/card/card-group.component.ts","../../../projects/coreui-angular/src/lib/card/card-header.component.ts","../../../projects/coreui-angular/src/lib/card/card-header-actions.component.ts","../../../projects/coreui-angular/src/lib/card/card-img.directive.ts","../../../projects/coreui-angular/src/lib/card/card-img-overlay/card-img-overlay.component.ts","../../../projects/coreui-angular/src/lib/card/card-link.directive.ts","../../../projects/coreui-angular/src/lib/card/card-subtitle.directive.ts","../../../projects/coreui-angular/src/lib/card/card-text.directive.ts","../../../projects/coreui-angular/src/lib/card/card-title.directive.ts","../../../projects/coreui-angular/src/lib/card/card.module.ts","../../../projects/coreui-angular/src/lib/services/intersection.service.ts","../../../projects/coreui-angular/src/lib/services/listeners.service.ts","../../../projects/coreui-angular/src/lib/services/class-toggle.service.ts","../../../projects/coreui-angular/src/lib/services/in-memory-storage.service.ts","../../../projects/coreui-angular/src/lib/services/local-storage.service.ts","../../../projects/coreui-angular/src/lib/services/color-mode.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.service.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-state.ts","../../../projects/coreui-angular/src/lib/carousel/carousel.config.ts","../../../projects/coreui-angular/src/lib/carousel/carousel/carousel.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-caption/carousel-caption.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-control/carousel-control.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-indicators/carousel-indicators.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.animation.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-item/carousel-item.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.ts","../../../projects/coreui-angular/src/lib/carousel/carousel-inner/carousel-inner.component.html","../../../projects/coreui-angular/src/lib/carousel/carousel.module.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-divider/dropdown-divider.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-header/dropdown-header.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.service.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-menu/dropdown-menu.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown/dropdown.component.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-item/dropdown-item-plain.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown-close/dropdown-close.directive.ts","../../../projects/coreui-angular/src/lib/dropdown/dropdown.module.ts","../../../projects/coreui-angular/src/lib/footer/footer.component.ts","../../../projects/coreui-angular/src/lib/footer/footer.module.ts","../../../projects/coreui-angular/src/lib/form/form/form.directive.ts","../../../projects/coreui-angular/src/lib/form/form-feedback/form-feedback.component.ts","../../../projects/coreui-angular/src/lib/form/input-group/input-group.component.ts","../../../projects/coreui-angular/src/lib/form/form-select/form-select.directive.ts","../../../projects/coreui-angular/src/lib/form/form-label/form-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-label.directive.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check.component.ts","../../../projects/coreui-angular/src/lib/form/form-check/form-check-input.directive.ts","../../../projects/coreui-angular/src/lib/form/form-control/form-control.directive.ts","../../../projects/coreui-angular/src/lib/form/form-text/form-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form-floating/form-floating.directive.ts","../../../projects/coreui-angular/src/lib/form/input-group-text/input-group-text.directive.ts","../../../projects/coreui-angular/src/lib/form/form.module.ts","../../../projects/coreui-angular/src/lib/grid/container.component.ts","../../../projects/coreui-angular/src/lib/grid/col.directive.ts","../../../projects/coreui-angular/src/lib/grid/col.component.ts","../../../projects/coreui-angular/src/lib/grid/row.directive.ts","../../../projects/coreui-angular/src/lib/grid/row.component.ts","../../../projects/coreui-angular/src/lib/grid/gutter.directive.ts","../../../projects/coreui-angular/src/lib/grid/grid.module.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.ts","../../../projects/coreui-angular/src/lib/header/header/header.component.html","../../../projects/coreui-angular/src/lib/header/header-brand/header-brand.component.ts","../../../projects/coreui-angular/src/lib/header/header-divider/header-divider.component.ts","../../../projects/coreui-angular/src/lib/header/header-nav/header-nav.component.ts","../../../projects/coreui-angular/src/lib/header/header-text/header-text.component.ts","../../../projects/coreui-angular/src/lib/header/header-toggler/header-toggler.directive.ts","../../../projects/coreui-angular/src/lib/header/header.module.ts","../../../projects/coreui-angular/src/lib/image/img.directive.ts","../../../projects/coreui-angular/src/lib/image/img.module.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group-item.directive.ts","../../../projects/coreui-angular/src/lib/list-group/list-group.module.ts","../../../projects/coreui-angular/src/lib/nav/nav-link.directive.ts","../../../projects/coreui-angular/src/lib/nav/nav-item.component.ts","../../../projects/coreui-angular/src/lib/nav/nav.component.ts","../../../projects/coreui-angular/src/lib/nav/nav.module.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.component.html","../../../projects/coreui-angular/src/lib/navbar/navbar-brand/navbar-brand.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-nav/navbar-nav.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-text/navbar-text.component.ts","../../../projects/coreui-angular/src/lib/navbar/navbar-toggler/navbar-toggler.directive.ts","../../../projects/coreui-angular/src/lib/navbar/navbar.module.ts","../../../projects/coreui-angular/src/lib/modal/modal-body/modal-body.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-content/modal-content.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-dialog/modal-dialog.component.ts","../../../projects/coreui-angular/src/lib/modal/modal.service.ts","../../../projects/coreui-angular/src/lib/modal/modal-dismiss/modal-toggle.directive.ts","../../../projects/coreui-angular/src/lib/modal/modal-footer/modal-footer.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-header/modal-header.component.ts","../../../projects/coreui-angular/src/lib/modal/modal-title/modal-title.directive.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.ts","../../../projects/coreui-angular/src/lib/modal/modal/modal.component.html","../../../projects/coreui-angular/src/lib/modal/modal.module.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.service.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas/offcanvas.component.html","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-body/offcanvas-body.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-header/offcanvas-header.component.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-title/offcanvas-title.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas-toggle/offcanvas-toggle.directive.ts","../../../projects/coreui-angular/src/lib/offcanvas/offcanvas.module.ts","../../../projects/coreui-angular/src/lib/pagination/page-link/page-link.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.directive.ts","../../../projects/coreui-angular/src/lib/pagination/page-item/page-item.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.ts","../../../projects/coreui-angular/src/lib/pagination/pagination/pagination.component.html","../../../projects/coreui-angular/src/lib/pagination/pagination.module.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder-animation.directive.ts","../../../projects/coreui-angular/src/lib/placeholder/placeholder.module.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.ts","../../../projects/coreui-angular/src/lib/popover/popover/popover.component.html","../../../projects/coreui-angular/src/lib/popover/popover.directive.ts","../../../projects/coreui-angular/src/lib/popover/popover.module.ts","../../../projects/coreui-angular/src/lib/progress/progress-bar.directive.ts","../../../projects/coreui-angular/src/lib/progress/progress-bar.component.ts","../../../projects/coreui-angular/src/lib/progress/progress-stacked.component.ts","../../../projects/coreui-angular/src/lib/progress/progress.component.ts","../../../projects/coreui-angular/src/lib/progress/progress.component.html","../../../projects/coreui-angular/src/lib/progress/progress.module.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-backdrop/sidebar-backdrop.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar/sidebar.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-brand/sidebar-brand.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggle/sidebar-toggle.directive.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-toggler/sidebar-toggler.directive.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-header/sidebar-header.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-footer/sidebar-footer.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-group.service.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-icon.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-badge.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-link.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-label.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-title.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-divider.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-item-class.pipe.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.ts","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav-group.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar-nav/sidebar-nav.component.html","../../../projects/coreui-angular/src/lib/sidebar/sidebar.module.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.ts","../../../projects/coreui-angular/src/lib/spinner/spinner.component.html","../../../projects/coreui-angular/src/lib/spinner/spinner.module.ts","../../../projects/coreui-angular/src/lib/table/table-color.directive.ts","../../../projects/coreui-angular/src/lib/table/table-active.directive.ts","../../../projects/coreui-angular/src/lib/table/table.directive.ts","../../../projects/coreui-angular/src/lib/table/table.module.ts","../../../projects/coreui-angular/src/lib/tabs/tab.service.ts","../../../projects/coreui-angular/src/lib/tabs/tab-pane/tab-pane.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-content/tab-content.component.ts","../../../projects/coreui-angular/src/lib/tabs/tab-content-ref.directive.ts","../../../projects/coreui-angular/src/lib/tabs/tabs.module.ts","../../../projects/coreui-angular/src/lib/tabs-2/tabs.service.ts","../../../projects/coreui-angular/src/lib/tabs-2/tabs.component.ts","../../../projects/coreui-angular/src/lib/tabs-2/tab/tab.directive.ts","../../../projects/coreui-angular/src/lib/tabs-2/tabs-list/tabs-list.component.ts","../../../projects/coreui-angular/src/lib/tabs-2/tabs-content/tabs-content.component.ts","../../../projects/coreui-angular/src/lib/tabs-2/tab-panel/tab-panel.component.ts","../../../projects/coreui-angular/src/lib/tabs-2/tabs2.module.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.service.ts","../../../projects/coreui-angular/src/lib/toast/toast/toast.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-body/toast-body.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-close.directive.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.ts","../../../projects/coreui-angular/src/lib/toast/toast-header/toast-header.component.html","../../../projects/coreui-angular/src/lib/toast/toaster/toaster-host.directive.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.ts","../../../projects/coreui-angular/src/lib/toast/toaster/toaster.component.html","../../../projects/coreui-angular/src/lib/toast/toast.module.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip/tooltip.component.html","../../../projects/coreui-angular/src/lib/tooltip/tooltip.directive.ts","../../../projects/coreui-angular/src/lib/tooltip/tooltip.module.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-a/widget-stat-a.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-b/widget-stat-b.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-c/widget-stat-c.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-d/widget-stat-d.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-e/widget-stat-e.component.html","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.ts","../../../projects/coreui-angular/src/lib/widget/widget-stat-f/widget-stat-f.component.html","../../../projects/coreui-angular/src/lib/widget/widget.module.ts","../../../projects/coreui-angular/src/public-api.ts","../../../projects/coreui-angular/src/coreui-angular.ts"],"sourcesContent":["import { IsActiveMatchOptions } from '@angular/router';\n\nexport type NgCssClass = string | string[] | Set<string> | { [klass: string]: any };\n\nexport enum BreakpointInfix {\n  xs = 'xs',\n  sm = 'sm',\n  md = 'md',\n  lg = 'lg',\n  xl = 'xl',\n  xxl = 'xxl'\n}\n\nexport type BreakpointInfixStrings = keyof typeof BreakpointInfix;\n\nexport type Breakpoints = BreakpointInfixStrings | string;\n\nexport type Sizes = 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | string;\n\nexport type Colors =\n  | 'primary'\n  | 'secondary'\n  | 'success'\n  | 'danger'\n  | 'warning'\n  | 'info'\n  | 'dark'\n  | 'light'\n  | 'primary-gradient'\n  | 'secondary-gradient'\n  | 'success-gradient'\n  | 'danger-gradient'\n  | 'warning-gradient'\n  | 'info-gradient'\n  | 'dark-gradient'\n  | 'light-gradient'\n  | string;\n\n// export type ColorsGradient =\n//   | Colors\n//   | `${Colors}-gradient`;\n\nexport type BackgroundColors = Colors | 'body' | 'white' | 'transparent';\n\nexport type Directions = 'down' | 'up' | 'start' | 'end' | '';\n\nexport type TextColors =\n  | Colors\n  | 'primary-emphasis'\n  | 'secondary-emphasis'\n  | 'success-emphasis'\n  | 'danger-emphasis'\n  | 'warning-emphasis'\n  | 'info-emphasis'\n  | 'light-emphasis'\n  | 'body'\n  | 'body-emphasis'\n  | 'body-secondary'\n  | 'body-tertiary'\n  | 'black'\n  | 'black-50'\n  | 'white'\n  | 'white-50'\n  | string;\n\nexport type Alignment = 'baseline' | 'top' | 'middle' | 'bottom' | 'text-top' | 'text-bottom';\n\nexport type BadgePositions = 'top-start' | 'top-end' | 'bottom-end' | 'bottom-start' | string | undefined;\n\nexport type Placements =\n  | 'auto'\n  | 'auto-start'\n  | 'auto-end'\n  | 'top-end'\n  | 'top'\n  | 'top-start'\n  | 'bottom-end'\n  | 'bottom'\n  | 'bottom-start'\n  | 'right-start'\n  | 'right'\n  | 'right-end'\n  | 'left-start'\n  | 'left'\n  | 'left-end'\n  | undefined;\n\nexport type Shapes =\n  | 'rounded'\n  | 'rounded-top'\n  | 'rounded-end'\n  | 'rounded-bottom'\n  | 'rounded-start'\n  | 'rounded-circle'\n  | 'rounded-pill'\n  | 'rounded-0'\n  | 'rounded-1'\n  | 'rounded-2'\n  | 'rounded-3'\n  | string;\n\nexport type Triggers = 'hover' | 'focus' | 'click' | 'focusin';\n\nexport type Positions = 'fixed' | 'sticky';\n\nexport type InputType =\n  | 'button'\n  | 'color'\n  | 'date'\n  | 'datetime'\n  | 'datetime-local'\n  | 'email'\n  | 'file'\n  | 'hidden'\n  | 'image'\n  | 'month'\n  | 'number'\n  | 'password'\n  | 'range'\n  | 'reset'\n  | 'search'\n  | 'submit'\n  | 'tel'\n  | 'text'\n  | 'time'\n  | 'url'\n  | 'week'\n  | 'checkbox'\n  | 'radio';\n\nexport interface INavLinkProps {\n  queryParams?: { [k: string]: any };\n  fragment?: string;\n  queryParamsHandling?: 'merge' | 'preserve' | '' | null;\n  preserveFragment?: boolean;\n  skipLocationChange?: boolean;\n  replaceUrl?: boolean;\n  state?: { [k: string]: any };\n  routerLinkActiveOptions?: { exact: boolean } | IsActiveMatchOptions;\n  routerLinkActive?: string | string[];\n  ariaCurrentWhenActive?: 'page' | 'step' | 'location' | 'date' | 'time' | true | false;\n}\n\nexport interface INavAttributes {\n  [propName: string]: any;\n}\n\nexport type ButtonType = 'button' | 'submit' | 'reset';\n","import { Directive, ElementRef, inject } from '@angular/core';\n\n@Directive({\n  selector: '[cElementRef]',\n  exportAs: 'cElementRef',\n  standalone: true,\n})\nexport class ElementRefDirective {\n  public readonly elementRef = inject(ElementRef);\n}\n","import { Directive, effect, ElementRef, inject, input, Renderer2 } from '@angular/core';\n\n@Directive({\n  selector: '[cHtmlAttr]',\n  exportAs: 'cHtmlAttr',\n  standalone: true\n})\nexport class HtmlAttributesDirective {\n  readonly cHtmlAttr = input<Record<string, any>>();\n\n  readonly #renderer = inject(Renderer2);\n  readonly #elementRef = inject(ElementRef);\n\n  readonly attrEffect = effect(() => {\n    const attribs = this.cHtmlAttr();\n    for (const attr in attribs) {\n      if (attr === 'style' && typeof attribs[attr] === 'object') {\n        this.setStyle(attribs[attr]);\n      } else if (attr === 'class') {\n        this.addClass(attribs[attr]);\n      } else {\n        this.setAttrib(attr, attribs[attr]);\n      }\n    }\n  });\n\n  private setStyle(styles: Record<string, any>): void {\n    for (const style in styles) {\n      if (style) {\n        this.#renderer.setStyle(this.#elementRef.nativeElement, style, styles[style]);\n      }\n    }\n  }\n\n  private addClass(classes: string | string[]): void {\n    const classArray = Array.isArray(classes) ? classes : classes.split(' ');\n    classArray\n      .filter((element) => element.length > 0)\n      .forEach((element) => {\n        this.#renderer.addClass(this.#elementRef.nativeElement, element);\n      });\n  }\n\n  private setAttrib(key: string, value: string | null): void {\n    value !== null\n      ? this.#renderer.setAttribute(this.#elementRef.nativeElement, key, value)\n      : this.#renderer.removeAttribute(this.#elementRef.nativeElement, key);\n  }\n}\n","import { Directive, inject, Input, TemplateRef } from '@angular/core';\n\n@Directive({\n  selector: '[cTemplateId]',\n  standalone: true,\n})\nexport class TemplateIdDirective {\n  public readonly templateRef = inject(TemplateRef);\n  @Input('cTemplateId') id!: string;\n}\n","import { booleanAttribute, Directive, ElementRef, inject, Input, Renderer2 } from '@angular/core';\n\n@Directive({\n  selector: '[cTheme]',\n  standalone: true\n})\nexport class ThemeDirective {\n\n  readonly #hostElement = inject(ElementRef);\n  readonly #renderer = inject(Renderer2);\n\n  /**\n   * Add dark theme attribute.\n   * @type 'dark' | 'light' | undefined\n   */\n  @Input() set colorScheme(scheme: 'dark' | 'light' | undefined) {\n    !!scheme ? this.setTheme(scheme) : this.unsetTheme();\n  };\n\n  /**\n   * Add dark theme attribute.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute })\n  set dark(darkTheme: boolean) {\n    darkTheme ? this.setTheme('dark') : this.unsetTheme();\n  };\n\n  setTheme(theme?: string): void {\n    if (theme) {\n      this.#renderer.setAttribute(this.#hostElement.nativeElement, 'data-coreui-theme', theme);\n    }\n  }\n\n  unsetTheme(): void {\n    this.#renderer.removeAttribute(this.#hostElement.nativeElement, 'data-coreui-theme');\n  }\n\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { ElementRefDirective } from './element-ref.directive';\nimport { HtmlAttributesDirective } from './html-attr.directive';\nimport { TemplateIdDirective } from './template-id.directive';\nimport { ThemeDirective } from './theme.directive';\n\n@NgModule({\n  imports: [ElementRefDirective, HtmlAttributesDirective, TemplateIdDirective, ThemeDirective],\n  exports: [ElementRefDirective, HtmlAttributesDirective, TemplateIdDirective, ThemeDirective],\n})\nexport class SharedModule {\n  static forRoot(): ModuleWithProviders<SharedModule> {\n    return {\n      ngModule: SharedModule,\n    };\n  }\n}\n","import { computed, Directive, input } from '@angular/core';\n\n@Directive({\n  selector: '[cAccordionButton]',\n  standalone: true,\n  host: { '[class]': 'hostClasses()', '[attr.type]': 'type()', '[attr.aria-expanded]': 'ariaExpanded()' }\n})\nexport class AccordionButtonDirective {\n  /**\n   * Toggles an accordion button collapsed state. Use in accordionHeaderTemplate. [docs]\n   * @type boolean\n   */\n  readonly collapsed = input<boolean | undefined>(undefined);\n\n  /**\n   * Default type for cAccordionButton. [docs]\n   * @type string\n   * @default 'button'\n   */\n  readonly type = input('button');\n\n  readonly hostClasses = computed(() => {\n    return {\n      'accordion-button': true,\n      collapsed: this.collapsed()\n    };\n  });\n\n  readonly ariaExpanded = computed(() => !this.collapsed());\n}\n","import { Injectable } from '@angular/core';\nimport type { AccordionItemComponent } from './accordion-item/accordion-item.component';\n\n@Injectable()\nexport class AccordionService {\n  items: AccordionItemComponent[] = [];\n  alwaysOpen = false;\n\n  addItem(item: AccordionItemComponent): void {\n    this.items.push(item);\n  }\n\n  removeItem(item: AccordionItemComponent): void {\n    const index = this.items.indexOf(item);\n    if (index !== -1) {\n      this.items.splice(index, 1);\n    }\n  }\n\n  toggleItem(item: AccordionItemComponent): void {\n    item.visible = !item.visible;\n    this.closeOtherItems(item);\n  }\n\n  closeOtherItems(openItem: AccordionItemComponent): void {\n    if (!this.alwaysOpen) {\n      this.items.forEach((item: AccordionItemComponent) => {\n        if (item !== openItem) {\n          item.visible = false;\n        }\n      });\n    }\n  }\n}\n","import { booleanAttribute, Component, computed, effect, inject, input } from '@angular/core';\n\nimport { AccordionService } from '../accordion.service';\n\n@Component({\n  selector: 'c-accordion',\n  template: '<ng-content />',\n  styleUrls: ['./accordion.component.scss'],\n  exportAs: 'cAccordionItem',\n  providers: [AccordionService],\n  standalone: true,\n  host: { '[class]': 'hostClasses()' }\n})\nexport class AccordionComponent {\n  readonly #accordionService = inject(AccordionService);\n\n  /**\n   * Removes the default background-color, some borders, and some rounded corners to render accordions edge-to-edge with their parent container.\n   * @type boolean\n   */\n  readonly flush = input(false, { transform: booleanAttribute });\n\n  /**\n   * Make accordion items stay open when another item is opened\n   * @type boolean\n   */\n  readonly alwaysOpen = input(false, { transform: booleanAttribute });\n\n  readonly #alwaysOpenEffect = effect(() => {\n    this.#accordionService.alwaysOpen = this.alwaysOpen();\n  });\n\n  readonly hostClasses = computed<Record<string, boolean>>(() => ({\n    accordion: true,\n    'accordion-flush': this.flush()\n  }));\n}\n","import { animate, animation, style } from '@angular/animations';\n\nexport const expandAnimation = animation([animate('{{ time }} {{ easing }}')]);\n\nexport const collapseAnimation = animation([\n  style({ height: '*', minHeight: '*' }),\n  animate('{{ time }} {{ easing }}', style({ height: 0, minHeight: 0 }))\n]);\n\nexport const expandHorizontalAnimation = animation([animate('{{ time }} {{ easing }}')]);\n\nexport const collapseHorizontalAnimation = animation([animate('{{ time }} {{ easing }}')]);\n","import {\n  booleanAttribute,\n  computed,\n  Directive,\n  effect,\n  ElementRef,\n  inject,\n  input,\n  OnDestroy,\n  output,\n  Renderer2,\n  signal\n} from '@angular/core';\nimport { AnimationBuilder, AnimationPlayer, useAnimation } from '@angular/animations';\n\nimport {\n  collapseAnimation,\n  collapseHorizontalAnimation,\n  expandAnimation,\n  expandHorizontalAnimation\n} from './collapse.animations';\n\n@Directive({\n  selector: '[cCollapse]',\n  exportAs: 'cCollapse',\n  standalone: true,\n  host: { '[class]': 'hostClasses()', '[style]': '{display: \"none\"}' }\n})\nexport class CollapseDirective implements OnDestroy {\n  readonly #hostElement = inject(ElementRef);\n  readonly #renderer = inject(Renderer2);\n  readonly #animationBuilder = inject(AnimationBuilder);\n  #player: AnimationPlayer | undefined = undefined;\n\n  /**\n   * @ignore\n   */\n  readonly animateInput = input(true, { transform: booleanAttribute, alias: 'animate' });\n\n  readonly animate = signal(true);\n\n  readonly animateInputEffect = effect(\n    () => {\n      this.animate.set(this.animateInput());\n    },\n    { allowSignalWrites: true }\n  );\n\n  /**\n   * Set horizontal collapsing to transition the width instead of height.\n   * @type boolean\n   * @default false\n   */\n  readonly horizontal = input(false, { transform: booleanAttribute });\n\n  /**\n   * Toggle the visibility of collapsible element.\n   * @type boolean\n   * @default false\n   */\n  readonly visibleInput = input(false, { transform: booleanAttribute, alias: 'visible' });\n\n  readonly visibleChange = output<boolean>();\n\n  readonly visibleInputEffect = effect(\n    () => {\n      this.visible.set(this.visibleInput());\n    },\n    { allowSignalWrites: true }\n  );\n\n  readonly visible = signal<boolean>(false);\n\n  #init = false;\n\n  readonly visibleEffect = effect(\n    () => {\n      const visible = this.visible();\n\n      (this.#init || visible) && this.createPlayer(visible);\n      this.#init = true;\n    },\n    { allowSignalWrites: true }\n  );\n\n  /**\n   * Add `navbar` prop for grouping and hiding navbar contents by a parent breakpoint.\n   * @type boolean\n   * @default false\n   */\n  readonly navbar = input(false, { transform: booleanAttribute });\n\n  /**\n   * @ignore\n   */\n  readonly duration = input('350ms');\n\n  /**\n   * @ignore\n   */\n  readonly transition = input('ease');\n\n  /**\n   * Event emitted on visibility change. [docs]\n   * @type string\n   */\n  readonly collapseChange = output<string>();\n\n  readonly hostClasses = computed(() => {\n    return {\n      'navbar-collapse': this.navbar(),\n      'collapse-horizontal': this.horizontal()\n    } as Record<string, boolean>;\n  });\n\n  ngOnDestroy(): void {\n    this.destroyPlayer();\n  }\n\n  toggle(visible = !this.visible()): void {\n    this.visible.set(visible);\n  }\n\n  destroyPlayer(): void {\n    this.#player?.destroy();\n    this.#player = undefined;\n  }\n\n  createPlayer(visible: boolean = this.visible()): void {\n    if (this.#player?.hasStarted()) {\n      this.destroyPlayer();\n    }\n\n    const host: HTMLElement = this.#hostElement.nativeElement;\n\n    if (visible) {\n      this.#renderer.removeStyle(host, 'display');\n    }\n\n    const duration = this.animate() ? this.duration() : '0ms';\n\n    const expand = this.horizontal() ? expandHorizontalAnimation : expandAnimation;\n    const collapse = this.horizontal() ? collapseHorizontalAnimation : collapseAnimation;\n\n    const dimension = this.horizontal() ? 'width' : 'height';\n    const capitalizedDimension = dimension[0].toUpperCase() + dimension.slice(1);\n    const scrollSize = `scroll${capitalizedDimension}`;\n\n    const animationFactory = this.#animationBuilder?.build(\n      useAnimation(visible ? expand : collapse, { params: { time: duration, easing: this.transition() } })\n    );\n\n    this.#player = animationFactory.create(host);\n\n    !visible && host.offsetHeight && host.style[dimension] && host.scrollHeight;\n\n    this.#renderer.setStyle(host, dimension, visible ? 0 : `${host.getBoundingClientRect()[dimension]}px`);\n\n    this.#player.onStart(() => {\n      this.setMaxSize();\n      this.#renderer.removeClass(host, 'collapse');\n      this.#renderer.addClass(host, 'collapsing');\n      this.#renderer.removeClass(host, 'show');\n      this.#renderer.setStyle(host, dimension, visible ? `${(host as any)[scrollSize]}px` : '');\n      this.collapseChange?.emit(visible ? 'opening' : 'collapsing');\n    });\n\n    this.#player.onDone(() => {\n      this.#renderer.removeClass(host, 'collapsing');\n      this.#renderer.addClass(host, 'collapse');\n      if (visible) {\n        this.#renderer.addClass(host, 'show');\n        this.#renderer.setStyle(host, dimension, '');\n      } else {\n        this.#renderer.removeClass(host, 'show');\n      }\n      this.collapseChange?.emit(visible ? 'open' : 'collapsed');\n      this.destroyPlayer();\n      this.visibleChange.emit(visible);\n    });\n\n    this.#player?.play();\n  }\n\n  setMaxSize() {\n    const host = this.#hostElement.nativeElement;\n    if (this.horizontal()) {\n      host.scrollWidth > 0 && this.#renderer.setStyle(host, 'maxWidth', `${host.scrollWidth}px`);\n      // } else {\n      //   host.scrollHeight > 0 && this.#renderer.setStyle(host, 'maxHeight', `${host.scrollHeight}px`);\n    }\n  }\n}\n","import { ModuleWithProviders, NgModule } from '@angular/core';\nimport { CollapseDirective } from './collapse.directive';\n\n@NgModule({\n  exports: [CollapseDirective],\n  imports: [CollapseDirective]\n})\nexport class CollapseModule {\n  static forRoot(): ModuleWithProviders<CollapseModule> {\n    return { ngModule: CollapseModule, providers: [] };\n  }\n}\n","import {\n  booleanAttribute,\n  Component,\n  computed,\n  contentChildren,\n  inject,\n  Input,\n  OnDestroy,\n  OnInit,\n  TemplateRef\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\nimport { CollapseDirective } from '../../collapse';\nimport { TemplateIdDirective } from '../../shared';\nimport { AccordionButtonDirective } from '../accordion-button/accordion-button.directive';\nimport { AccordionService } from '../accordion.service';\n\nlet nextId = 0;\n\n@Component({\n  selector: 'c-accordion-item',\n  templateUrl: './accordion-item.component.html',\n  styleUrls: ['./accordion-item.component.scss'],\n  exportAs: 'cAccordionItem',\n  standalone: true,\n  imports: [AccordionButtonDirective, NgTemplateOutlet, CollapseDirective],\n  host: { class: 'accordion-item' }\n})\nexport class AccordionItemComponent implements OnInit, OnDestroy {\n  readonly #accordionService = inject(AccordionService);\n\n  /**\n   * Toggle an accordion item programmatically\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) visible: boolean = false;\n\n  @Input()\n  set open(value: boolean) {\n    console.warn('c-accordion-item \"open\" prop is deprecated, use \"visible\"  prop instead.');\n    this.visible = value || this.visible;\n  }\n\n  get open() {\n    return <boolean>this.visible;\n  }\n\n  contentId = `accordion-item-${nextId++}`;\n\n  get itemContext() {\n    return { $implicit: <boolean>this.visible };\n  }\n\n  readonly contentTemplates = contentChildren(TemplateIdDirective, { descendants: true });\n\n  readonly templates = computed(() => {\n    return this.contentTemplates().reduce(\n      (acc, child) => {\n        acc[child.id] = child.templateRef;\n        return acc;\n      },\n      {} as Record<string, TemplateRef<any>>\n    );\n  });\n\n  ngOnInit(): void {\n    this.#accordionService.addItem(this);\n  }\n\n  ngOnDestroy(): void {\n    this.#accordionService.removeItem(this);\n  }\n\n  toggleItem(): void {\n    this.#accordionService.toggleItem(this);\n  }\n}\n","@let tmpl = templates();\n<ng-container>\n  <div class=\"accordion-header\">\n    <ng-container *ngTemplateOutlet=\"tmpl['accordionHeaderTemplate'] || defaultAccordionHeaderTemplate; context: itemContext\" />\n  </div>\n  <div class=\"accordion-collapse\" cCollapse [visible]=\"visible\" [attr.aria-expanded]=\"visible\" [id]=\"contentId\">\n    <ng-container *ngTemplateOutlet=\"tmpl['accordionBodyTemplate'] || defaultAccordionBodyTemplate; context: itemContext\" />\n  </div>\n</ng-container>\n\n<ng-template #defaultAccordionHeaderTemplate>\n  <button cAccordionButton [collapsed]=\"!visible\" [attr.aria-controls]=\"contentId\" (click)=\"toggleItem()\">\n    <ng-container\n      *ngTemplateOutlet=\"tmpl['accordionHeader'] || defaultAccordionHeaderContentTemplate; context: itemContext\">\n    </ng-container>\n  </button>\n</ng-template>\n\n<ng-template #defaultAccordionHeaderContentTemplate>\n  <ng-content />\n</ng-template>\n\n<ng-template #defaultAccordionBodyTemplate>\n  <div class=\"accordion-body\">\n    <ng-container\n      *ngTemplateOutlet=\"tmpl['accordionBody'] || defaultAccordionBodyContentTemplate; context: itemContext\">\n    </ng-container>\n  </div>\n</ng-template>\n\n<ng-template #defaultAccordionBodyContentTemplate>\n  <ng-content />\n</ng-template>\n","import { NgModule } from '@angular/core';\nimport { AccordionComponent } from './accordion/accordion.component';\nimport { AccordionButtonDirective } from './accordion-button/accordion-button.directive';\nimport { AccordionItemComponent } from './accordion-item/accordion-item.component';\nimport { AccordionService } from './accordion.service';\n\n@NgModule({\n  imports: [\n    AccordionButtonDirective,\n    AccordionComponent,\n    AccordionItemComponent\n  ],\n  exports: [\n    AccordionComponent,\n    AccordionButtonDirective,\n    AccordionItemComponent\n  ],\n  providers: [\n    AccordionService\n  ]\n})\nexport class AccordionModule {\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cAlertHeading]',\n  standalone: true,\n  host: { class: 'alert-heading' }\n})\nexport class AlertHeadingDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cAlertLink]',\n  standalone: true,\n  host: { class: 'alert-link' }\n})\nexport class AlertLinkDirective {}\n","import { booleanAttribute, computed, Directive, input, InputSignal, InputSignalWithTransform } from '@angular/core';\n\nimport { ButtonType, Colors, Shapes } from '../coreui.types';\n\n@Directive({\n  selector: '[cButton]',\n  exportAs: 'cButton',\n  standalone: true,\n  host: {\n    class: 'btn',\n    '[class]': 'hostClasses()',\n    '[attr.aria-disabled]': 'ariaDisabled()',\n    '[attr.aria-pressed]': 'isActive()',\n    '[attr.disabled]': 'attrDisabled()',\n    '[attr.tabindex]': 'tabIndex()',\n    '[attr.type]': 'type()'\n  }\n})\nexport class ButtonDirective {\n  /**\n   * Toggle the active state for the component. [docs]\n   * @type InputSignalWithTransform<boolean, unknown>\n   */\n  readonly active: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors. [docs]\n   * @type InputSignal<Colors>\n   */\n  readonly color: InputSignal<Colors> = input<Colors>('primary');\n\n  /**\n   * Toggle the disabled state for the component.\n   * @type InputSignalWithTransform<boolean, unknown>\n   */\n  readonly disabled: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Select the shape of the component.\n   * @type InputSignal<Shapes>\n   */\n  readonly shape: InputSignal<Shapes | undefined> = input<Shapes>();\n\n  /**\n   * Size the component small or large.\n   * @type InputSignal<'sm' | 'lg' | ''>\n   */\n  readonly size: InputSignal<'' | 'sm' | 'lg'> = input<'' | 'sm' | 'lg'>('');\n\n  /**\n   * Specifies the type of button. Always specify the type attribute for the `<button>` element.\n   * Different browsers may use different default types for the `<button>` element.\n   * @type InputSignal<ButtonType>\n   * @default 'button'\n   */\n  readonly type: InputSignal<ButtonType> = input<ButtonType>('button');\n\n  /**\n   * Set the button variant to an outlined button or a ghost button.\n   * @type InputSignal<'ghost' | 'outline' | undefined>\n   */\n  readonly variant: InputSignal<'ghost' | 'outline' | undefined> = input<'ghost' | 'outline'>();\n\n  readonly hostClasses = computed(() => {\n    return {\n      btn: true,\n      [`btn-${this.color()}`]: !!this.color() && !this.variant(),\n      [`btn-${this.variant()}`]: !!this.variant() && !this.color(),\n      [`btn-${this.variant()}-${this.color()}`]: !!this.variant() && !!this.color(),\n      [`btn-${this.size()}`]: !!this.size(),\n      [`${this.shape()}`]: !!this.shape(),\n      active: this.active(),\n      disabled: this._disabled()\n    } as Record<string, boolean>;\n  });\n\n  readonly _disabled = computed(() => this.disabled());\n\n  readonly ariaDisabled = computed(() => {\n    return this._disabled() ? true : null;\n  });\n\n  readonly attrDisabled = computed(() => {\n    return this._disabled() ? '' : null;\n  });\n\n  readonly tabIndex = computed(() => {\n    return this._disabled() ? '-1' : null;\n  });\n\n  readonly isActive = computed(() => {\n    return <boolean>this.active() || null;\n  });\n}\n","import { booleanAttribute, computed, Directive, input, InputSignalWithTransform } from '@angular/core';\nimport { ThemeDirective } from '../shared/theme.directive';\nimport { ButtonDirective } from './button.directive';\n\n@Directive({\n  selector: '[cButtonClose]',\n  standalone: true,\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['dark'] }],\n  host: {\n    class: 'btn btn-close',\n    '[class]': 'hostClasses()',\n    '[attr.aria-disabled]': 'ariaDisabled()',\n    '[attr.aria-pressed]': 'isActive()',\n    '[attr.disabled]': 'attrDisabled()',\n    '[attr.tabindex]': 'tabIndex()',\n    '[attr.type]': 'type()'\n  }\n})\nexport class ButtonCloseDirective extends ButtonDirective {\n  /**\n   * Change the default color to white.\n   * @type boolean\n   * @deprecated 5.0.0. Use `cButtonClose.dark` instead.\n   */\n  readonly white: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  override readonly hostClasses = computed(() => {\n    return {\n      btn: true,\n      'btn-close': true,\n      'btn-close-white': this.white(),\n      [`btn-${this.size()}`]: !!this.size(),\n      active: this.active(),\n      disabled: this._disabled()\n    } as Record<string, boolean>;\n  });\n}\n","import { NgModule } from '@angular/core';\n\nimport { ButtonDirective } from './button.directive';\nimport { ButtonCloseDirective } from './button-close.directive';\n\n@NgModule({\n  imports: [\n    ButtonDirective,\n    ButtonCloseDirective\n  ],\n  exports: [\n    ButtonDirective,\n    ButtonCloseDirective\n  ]\n})\nexport class ButtonModule {}\n","import {\n  AfterContentInit,\n  booleanAttribute,\n  Component,\n  ContentChildren,\n  EventEmitter,\n  HostBinding,\n  HostListener,\n  Input,\n  Output,\n  QueryList\n} from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\n\nimport { Colors } from '../coreui.types';\nimport { TemplateIdDirective } from '../shared';\nimport { ButtonCloseDirective } from '../button';\n\ntype AnimateType = ('hide' | 'show');\n\n@Component({\n  selector: 'c-alert',\n  templateUrl: './alert.component.html',\n  styleUrls: ['./alert.component.scss'],\n  exportAs: 'cAlert',\n  standalone: true,\n  imports: [NgTemplateOutlet, ButtonCloseDirective],\n  animations: [\n    trigger('fadeInOut', [\n      state('show', style({ opacity: 1, height: '*', padding: '*', border: '*', margin: '*' })),\n      state('hide', style({ opacity: 0, height: 0, padding: 0, border: 0, margin: 0 })),\n      state('void', style({ opacity: 0, height: 0, padding: 0, border: 0, margin: 0 })),\n      transition('show => hide', [\n        animate('.3s ease-out')\n      ]),\n      transition('hide => show', [\n        animate('.3s ease-in')\n      ]),\n      transition('show => void', [\n        animate('.3s ease-out')\n      ]),\n      transition('void => show', [\n        animate('.3s ease-in')\n      ])\n    ])\n  ]\n})\nexport class AlertComponent implements AfterContentInit {\n\n  hide!: boolean;\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   *\n   * @type Colors\n   * @default 'primary'\n   */\n  @Input() color: Colors = 'primary';\n  /**\n   * Default role for alert. [docs]\n   * @type string\n   * @default 'alert'\n   */\n  @HostBinding('attr.role')\n  @Input() role = 'alert';\n  /**\n   * Set the alert variant to a solid.\n   * @type string\n   */\n  @Input() variant?: 'solid' | string;\n  /**\n   * Event triggered on the alert dismiss.\n   */\n  @Output() visibleChange: EventEmitter<boolean> = new EventEmitter();\n  templates: any = {};\n  @ContentChildren(TemplateIdDirective, { descendants: true }) contentTemplates!: QueryList<TemplateIdDirective>;\n\n  /**\n   * Optionally adds a close button to alert and allow it to self dismiss.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) dismissible: boolean = false;\n\n  /**\n   * Adds animation for dismissible alert.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) fade: boolean = false;\n\n  /**\n   * Toggle the visibility of alert component.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    if (this.#visible !== value) {\n      this.#visible = value;\n      this.visibleChange.emit(value);\n    }\n  };\n\n  get visible() {\n    return this.#visible;\n  }\n\n  #visible: boolean = true;\n\n  @HostBinding('@.disabled')\n  get animationDisabled(): boolean {\n    return !this.fade;\n  }\n\n  @HostBinding('@fadeInOut')\n  get animateType(): AnimateType {\n    return this.visible ? 'show' : 'hide';\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      alert: true,\n      'alert-dismissible': this.dismissible,\n      fade: this.fade,\n      show: !this.hide,\n      [`alert-${this.color}`]: !!this.color && this.variant !== 'solid',\n      [`bg-${this.color}`]: !!this.color && this.variant === 'solid',\n      'text-white': !!this.color && this.variant === 'solid'\n    };\n  }\n\n  @HostListener('@fadeInOut.start', ['$event'])\n  onAnimationStart($event: AnimationEvent): void {\n    this.onAnimationEvent($event);\n  }\n\n  @HostListener('@fadeInOut.done', ['$event'])\n  onAnimationDone($event: AnimationEvent): void {\n    this.onAnimationEvent($event);\n  }\n\n  ngAfterContentInit(): void {\n    this.contentTemplates.forEach((child: TemplateIdDirective) => {\n      this.templates[child.id] = child.templateRef;\n    });\n  }\n\n  onAnimationEvent(event: AnimationEvent): void {\n    this.hide = event.phaseName === 'start' && event.toState === 'show';\n    if (event.phaseName === 'done') {\n      this.hide = (event.toState === 'hide' || event.toState === 'void');\n      if (event.toState === 'show') {\n        this.hide = false;\n      }\n    }\n  }\n}\n","@if (visible || !hide) {\n  @if (dismissible) {\n    <ng-container *ngTemplateOutlet=\"templates?.alertButtonCloseTemplate || defaultAlertButtonCloseTemplate\" />\n  }\n  <ng-content />\n}\n<ng-template #defaultAlertButtonCloseTemplate>\n  <button (click)=\"visible=false\" aria-label=\"Close\" cButtonClose></button>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { AlertComponent } from './alert.component';\nimport { AlertHeadingDirective } from './alert-heading.directive';\nimport { AlertLinkDirective } from './alert-link.directive';\n\n@NgModule({\n  imports: [\n    AlertComponent,\n    AlertHeadingDirective,\n    AlertLinkDirective\n  ],\n  exports: [\n    AlertComponent,\n    AlertHeadingDirective,\n    AlertLinkDirective\n  ]\n})\nexport class AlertModule {}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { Alignment } from '../coreui.types';\n\n@Directive({\n  selector: '[cAlign]',\n  standalone: true\n})\nexport class AlignDirective {\n  /**\n   * Set vertical alignment of inline, inline-block, inline-table, and table cell elements\n   * @type Alignment\n   */\n  @Input('cAlign') align?: Alignment;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      [`align-${this.align}`]: !!this.align,\n    };\n  }\n\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { BackgroundColors } from '../coreui.types';\n\n@Directive({\n  selector: '[cBgColor]',\n  standalone: true\n})\nexport class BgColorDirective {\n  /**\n   * Set the background of an element to any contextual class\n   */\n  @Input('cBgColor') color: BackgroundColors = '';\n  /**\n   * Add linear gradient as background image to the backgrounds.\n   * @type boolean\n   */\n  @Input() gradient?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      [`bg-${this.color}`]: !!this.color,\n      'bg-gradient': this.gradient\n    };\n  }\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { Border, BorderColor, IBorderElement, BorderWidth } from './border.type';\n\n@Directive({\n  selector: '[cBorder]',\n  standalone: true\n})\nexport class BorderDirective {\n  /**\n   * Add or remove an element’s borders\n   * @type Border\n   */\n  @Input('cBorder') border: Border = true;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n\n    if ( typeof this.border === 'boolean' ) {\n      return { border: true };\n    }\n    if ( typeof this.border === 'number' || typeof this.border === 'string' ) {\n      return {\n        border: true,\n        [`border-${this.border}`]: true\n      };\n    }\n    if ( typeof this.border === 'object' ) {\n      const borderObj = { top: undefined, end: undefined, bottom: undefined, start: undefined, color: undefined, ...this.border };\n      // @ts-ignore\n      const keys = Object.keys(borderObj).filter(key => borderObj[key] !== undefined);\n      const classes = {};\n      keys.forEach(key => {\n        // @ts-ignore\n        const val = borderObj[key];\n        if ( typeof val === 'boolean') {\n          // @ts-ignore\n          classes[`border-${key}`] = true;\n        } else if ( typeof val === 'number' || typeof val === 'string' ) {\n          // @ts-ignore\n          classes[`border-${key}-${val}`] = true;\n        } else if ( typeof val === 'object' ) {\n          if ('color' in val) {\n            // @ts-ignore\n            classes[`border-${key}-${val.color}`] = true;\n          }\n          if ('width' in val) {\n            // @ts-ignore\n            classes[`border-${key}-${val.width}`] = true;\n          }\n        }\n      });\n      return Object.entries(classes).length === 0 ? {border: false} : classes;\n    }\n  }\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { Rounded, RoundedSize } from './rounded.type';\n\n@Directive({\n  selector: '[cRounded]',\n  standalone: true\n})\nexport class RoundedDirective {\n\n  /**\n   * Set border radius variant and radius size\n   * @type Rounded\n   */\n  @Input('cRounded') rounded: Rounded = true;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n\n    if ( typeof this.rounded === 'boolean' ) {\n      return { rounded: true };\n    }\n    if ( typeof this.rounded === 'number' || typeof this.rounded === 'string' ) {\n      return {\n        [`rounded-${this.rounded}`]: true\n      };\n    }\n    if ( typeof this.rounded === 'object' ) {\n      const roundedObj = {\n        top: undefined,\n        end: undefined,\n        bottom: undefined,\n        start: undefined,\n        circle: undefined,\n        pill: undefined,\n        size: undefined,\n        ...this.rounded,\n      };\n      // @ts-ignore\n      const keys = Object.keys(roundedObj).filter(key => roundedObj[key] !== undefined );\n      const classes = {};\n      keys.forEach(key => {\n        // @ts-ignore\n        const val = roundedObj[key];\n        if (typeof val === 'boolean') {\n          // @ts-ignore\n          classes[`rounded-${key}`] = val;\n        } else {\n          // @ts-ignore\n          classes[`rounded-${val}`] = true;\n        }\n      });\n      // console.log('rounded keys', keys, classes);\n      return Object.entries(classes).length === 0 ? {rounded: false} : classes;\n    }\n  }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { DestroyRef, Directive, effect, ElementRef, inject, Input, signal, WritableSignal } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, Subscription } from 'rxjs';\n\n@Directive({\n  selector: '[cShadowOnScroll]',\n  standalone: true\n})\nexport class ShadowOnScrollDirective {\n\n  readonly #destroyRef: DestroyRef = inject(DestroyRef);\n  readonly #document: Document = inject(DOCUMENT);\n  readonly #elementRef: ElementRef = inject(ElementRef);\n  readonly #scrolled: WritableSignal<boolean> = signal(false);\n\n  readonly #scrollEffect = effect(() => {\n    this.#elementRef.nativeElement.classList.toggle(this.#shadowClass, this.#scrolled());\n  });\n\n  #observable!: Subscription;\n  #shadowClass = 'shadow-sm';\n\n  constructor() {\n    this.#destroyRef.onDestroy(() => {\n      this.#scrollEffect?.destroy();\n    });\n  }\n\n  @Input()\n  set cShadowOnScroll(value: 'sm' | 'lg' | 'none' | boolean) {\n    this.#scrolled.set(false);\n    if (value) {\n      this.#shadowClass = value === true ? 'shadow' : `shadow-${value}`;\n      this.#observable = fromEvent(this.#document, 'scroll')\n        .pipe(\n          takeUntilDestroyed(this.#destroyRef)\n        )\n        .subscribe(scrolled => {\n          this.#scrolled.set(this.#document.documentElement.scrollTop > 0);\n        });\n    } else {\n      this.#observable?.unsubscribe();\n    }\n  };\n}\n","import { Directive, HostBinding, input, InputSignal } from '@angular/core';\nimport { TextColors } from '../coreui.types';\n\n@Directive({\n  selector: '[cTextColor]',\n  standalone: true\n})\nexport class TextColorDirective {\n  /**\n   * Set text-color of element\n   * @type TextColors\n   */\n  readonly color: InputSignal<TextColors> = input('', { alias: 'cTextColor' });\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    const color = this.color();\n    return {\n      [`text-${color}`]: !!color\n    };\n  }\n}\n","import { Directive, HostBinding, input, InputSignal } from '@angular/core';\nimport { Colors } from '../coreui.types';\n\n@Directive({\n  selector: '[cTextBgColor]',\n  standalone: true\n})\nexport class TextBgColorDirective {\n  /**\n   * Set text-bg-color of element\n   * @type Colors\n   */\n  readonly textBgColor: InputSignal<Colors> = input('', { alias: 'cTextBgColor' });\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    const color = this.textBgColor();\n    return {\n      [`text-bg-${color}`]: !!color\n    };\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport {\n  AlignDirective,\n  BgColorDirective,\n  BorderDirective,\n  RoundedDirective,\n  ShadowOnScrollDirective,\n  TextColorDirective,\n  TextBgColorDirective,\n} from './public_api';\n\nconst UTILITY_DIRECTIVES = [AlignDirective, BgColorDirective, BorderDirective, RoundedDirective, ShadowOnScrollDirective, TextColorDirective, TextBgColorDirective];\n\n@NgModule({\n  imports: [...UTILITY_DIRECTIVES], exports: [...UTILITY_DIRECTIVES]\n})\nexport class UtilitiesModule {}\n","import { NgClass, NgOptimizedImage } from '@angular/common';\nimport { Component, computed, input, InputSignal } from '@angular/core';\n\nimport { Colors, Shapes, Sizes, TextColors } from '../coreui.types';\nimport { TextColorDirective } from '../utilities';\n\n@Component({\n  selector: 'c-avatar',\n  templateUrl: './avatar.component.html',\n  standalone: true,\n  imports: [NgClass, NgOptimizedImage],\n  hostDirectives: [\n    {\n      directive: TextColorDirective,\n      inputs: ['cTextColor: textColor']\n    }\n  ],\n  host: { class: 'avatar', '[class]': 'hostClasses()' }\n})\nexport class AvatarComponent {\n  /**\n   * Sets the background color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color: InputSignal<Colors | undefined> = input();\n\n  /**\n   * Select the shape of the component.\n   * @type Shapes\n   */\n  readonly shape: InputSignal<Shapes | undefined> = input();\n\n  /**\n   * Size the component small, large, or extra large.\n   * @default 'md'\n   */\n  readonly size: InputSignal<Omit<Sizes, 'xxl'>> = input<Omit<Sizes, 'xxl'>>('md');\n\n  /**\n   * The alt attribute for the img element alternate text.\n   * @type string\n   */\n  readonly alt: InputSignal<string> = input('');\n\n  /**\n   * The src attribute for the img element.\n   * @type string\n   */\n  readonly src: InputSignal<string | undefined> = input();\n\n  /**\n   * Sets the color context of the status indicator to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly status: InputSignal<Colors | undefined> = input();\n\n  /**\n   * Sets the text color of the component to one of CoreUI’s themed colors.\n   * via TextColorDirective\n   * @type TextColors\n   */\n  readonly textColor: InputSignal<TextColors | undefined> = input();\n\n  readonly statusClass = computed(() => {\n    return {\n      'avatar-status': true,\n      [`bg-${this.status()}`]: !!this.status()\n    } as Record<string, boolean>;\n  });\n\n  readonly hostClasses = computed(() => {\n    return {\n      avatar: true,\n      [`avatar-${this.size()}`]: !!this.size(),\n      [`bg-${this.color()}`]: !!this.color(),\n      [`${this.shape()}`]: !!this.shape()\n    } as Record<string, boolean>;\n  });\n}\n","<ng-content>\n  @if (src()) {\n    @defer (prefetch on idle) {\n      <img [ngSrc]=\"src() ?? ''\" fill=\"\" class=\"avatar-img\" alt=\"{{alt()}}\" />\n    } @placeholder () {\n      <svg aria-label=\"Avatar placeholder\"\n           focusable=\"false\"\n           preserveAspectRatio=\"xMidYMid slice\"\n           role=\"img\"\n           xmlns=\"http://www.w3.org/2000/svg\"\n           class=\"avatar-img\"\n           style=\"position: absolute; width: 100%; height: 100%; inset: 0;\">\n        <rect fill=\"#868e96\" height=\"100%\" width=\"100%\"></rect>\n      </svg>\n    }\n  }\n</ng-content>\n@if (!!status()) {\n  <span [ngClass]=\"statusClass()\"></span>\n}\n\n","import { NgModule } from '@angular/core';\nimport { AvatarComponent } from './avatar.component';\n\n@NgModule({\n  imports: [\n    AvatarComponent\n  ],\n  exports: [\n    AvatarComponent\n  ]\n})\nexport class AvatarModule {}\n","import { Component, computed, input, InputSignal } from '@angular/core';\nimport { BadgePositions, Colors, Shapes, TextColors } from '../coreui.types';\nimport { TextBgColorDirective, TextColorDirective } from '../utilities';\n\n@Component({\n  selector: 'c-badge',\n  template: '<ng-content />',\n  standalone: true,\n  hostDirectives: [\n    { directive: TextColorDirective, inputs: ['cTextColor: textColor'] },\n    { directive: TextBgColorDirective, inputs: ['cTextBgColor: textBgColor'] }\n  ],\n  host: {\n    class: 'badge',\n    '[class]': 'hostClasses()'\n  }\n})\nexport class BadgeComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color: InputSignal<Colors | undefined> = input();\n  /**\n   * Position badge in one of the corners of a link or button.\n   * @type BadgePositions\n   */\n  readonly position: InputSignal<BadgePositions | undefined> = input();\n\n  /**\n   * Select the shape of the component.\n   * @type Shapes\n   */\n  readonly shape: InputSignal<Shapes | undefined> = input();\n\n  /**\n   * Size the component small.\n   */\n  readonly size: InputSignal<'sm' | undefined> = input();\n\n  /**\n   * Sets the text color of the component to one of CoreUI’s themed colors.\n   * via TextColorDirective\n   * @type TextColors\n   */\n  readonly textColor: InputSignal<TextColors | undefined> = input();\n\n  /**\n   * Sets the component's color scheme to one of CoreUI's themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.\n   * via TextBgColorDirective\n   * @type Colors\n   * @since 5.0.0\n   */\n  readonly textBgColor: InputSignal<Colors | undefined> = input();\n\n  readonly hostClasses = computed(() => {\n    const position = this.position();\n    const positionClasses = {\n      'position-absolute': !!position,\n      'translate-middle': !!position,\n      'top-0': position?.includes('top'),\n      'top-100': position?.includes('bottom'),\n      'start-100': position?.includes('end'),\n      'start-0': position?.includes('start')\n    };\n\n    return Object.assign(\n      {\n        badge: true,\n        [`bg-${this.color()}`]: !!this.color(),\n        [`badge-${this.size()}`]: !!this.size(),\n        [`${this.shape()}`]: !!this.shape()\n      },\n      !!position ? positionClasses : {}\n    ) as Record<string, boolean>;\n  });\n}\n","import { NgModule } from '@angular/core';\nimport { BadgeComponent } from './badge.component';\n\n@NgModule({\n  imports: [\n    BadgeComponent\n  ],\n  exports: [\n    BadgeComponent\n  ]\n})\nexport class BadgeModule {}\n","import { inject, Injectable, RendererFactory2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { Subject } from 'rxjs';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class BackdropService {\n\n  readonly #backdropClick = new Subject<boolean>();\n  readonly backdropClick$ = this.#backdropClick.asObservable();\n\n  #document = inject(DOCUMENT);\n  #rendererFactory = inject(RendererFactory2);\n  #renderer = this.#rendererFactory.createRenderer(null, null);\n  #unListen!: () => void;\n\n  activeBackdrop: any;\n\n  get #scrollbarWidth() {\n    // https://developer.mozilla.org/en-US/docs/Web/API/Window/innerWidth#usage_notes\n    const documentWidth = this.#document.documentElement.clientWidth;\n    const scrollbarWidth = Math.abs((this.#document.defaultView?.innerWidth ?? documentWidth) - documentWidth);\n    return `${scrollbarWidth}px`;\n  }\n\n  scrollbarWidth = this.#scrollbarWidth;\n\n  setBackdrop(type: string = 'modal'): any {\n    const backdropElement = this.#renderer.createElement('div');\n    this.#renderer.addClass(backdropElement, `${type}-backdrop`);\n    this.#renderer.addClass(backdropElement, 'fade');\n    this.#renderer.appendChild(this.#document.body, backdropElement);\n    this.#unListen = this.#renderer.listen(backdropElement, 'click', (e): void => {\n      this.onClickHandler();\n    });\n    this.scrollbarWidth = this.#scrollbarWidth;\n    setTimeout(() => {\n      this.#renderer.addClass(backdropElement, 'show');\n      // this.hideScrollbar();\n    });\n    this.activeBackdrop = backdropElement;\n    return backdropElement;\n  }\n\n  clearBackdrop(backdropElement: any): any {\n    if (backdropElement) {\n      this.#unListen();\n      this.#renderer.removeClass(backdropElement, 'show');\n      setTimeout(() => {\n        this.#renderer.removeChild(this.#document.body, backdropElement);\n        if (this.activeBackdrop === backdropElement) {\n          this.resetScrollbar();\n        }\n        backdropElement = undefined;\n      }, 300);\n    }\n    return undefined;\n  }\n\n  get #isRTL() { return this.#document.documentElement.dir === 'rtl' || this.#document.body.dir === 'rtl'; }\n\n  #scrollBarVisible = true;\n\n  hideScrollbar(): void {\n    if (this.#scrollBarVisible) {\n      this.#renderer.setStyle(this.#document.body, 'overflow', 'hidden');\n      this.#renderer.setStyle(this.#document.body, `padding-${this.#isRTL ? 'left' : 'right'}`, this.scrollbarWidth);\n      this.#scrollBarVisible = false;\n    }\n  }\n\n  resetScrollbar(): void {\n    this.#renderer.removeStyle(this.#document.body, 'overflow');\n    this.#renderer.removeStyle(this.#document.body, `padding-${this.#isRTL ? 'left' : 'right'}`);\n    this.#scrollBarVisible = true;\n  }\n\n  onClickHandler(): void {\n    this.#backdropClick.next(true);\n  }\n}\n","import { booleanAttribute, Component, HostBinding, Input } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\nimport { HtmlAttributesDirective } from '../../shared';\nimport { INavAttributes, INavLinkProps } from './breadcrumb-item';\n\n@Component({\n  selector: 'c-breadcrumb-item',\n  templateUrl: './breadcrumb-item.component.html',\n  styleUrls: ['./breadcrumb-item.component.scss'],\n  standalone: true,\n  imports: [RouterModule, NgTemplateOutlet, HtmlAttributesDirective]\n})\nexport class BreadcrumbItemComponent {\n\n  /**\n   * Toggle the active state for the component. [docs]\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) active?: boolean;\n  /**\n   * The `url` prop for the inner `[routerLink]` directive. [docs]\n   * @type string\n   */\n  @Input() url?: string | any[];\n  /**\n   * Additional html attributes for link. [docs]\n   * @type INavAttributes\n   */\n  @Input() attributes?: INavAttributes;\n  /**\n   * Some `NavigationExtras` props for the inner `[routerLink]` directive and `routerLinkActiveOptions`. [docs]\n   * @type INavLinkProps\n   */\n  @Input() linkProps?: INavLinkProps;\n\n  @HostBinding('attr.aria-current') get ariaCurrent(): string | null {\n    return this.active ? 'page' : null;\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'breadcrumb-item': true,\n      active: this.active\n    };\n  }\n}\n","@if (!active) {\n  <a [routerLink]=\"url\"\n     [cHtmlAttr]=\"attributes ?? {}\"\n     [target]=\"attributes?.['target']\"\n     [queryParams]=\"linkProps?.queryParams ?? null\"\n     [fragment]=\"linkProps?.fragment\"\n     [queryParamsHandling]=\"linkProps?.queryParamsHandling ?? null\"\n     [preserveFragment]=\"linkProps?.preserveFragment ?? false\"\n     [skipLocationChange]=\"linkProps?.skipLocationChange ?? false\"\n     [replaceUrl]=\"linkProps?.replaceUrl ?? false\"\n     [state]=\"linkProps?.state ?? {}\"\n  >\n    <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\" />\n  </a>\n} @else {\n  <span [cHtmlAttr]=\"attributes ?? {}\">\n      <ng-container *ngTemplateOutlet=\"defaultBreadcrumbItemContentTemplate\" />\n  </span>\n}\n\n<ng-template #defaultBreadcrumbItemContentTemplate>\n  <ng-content />\n</ng-template>\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-breadcrumb',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'breadcrumb' }\n})\nexport class BreadcrumbComponent {\n  /**\n   * Default aria-label for breadcrumb. [docs]\n   * @type string\n   * @default 'breadcrumb'\n   */\n  @HostBinding('attr.aria-label')\n  @Input()\n  ariaLabel = 'breadcrumb';\n\n  /**\n   * Default role for breadcrumb. [docs]\n   * @type string\n   * @default 'navigation'\n   */\n  @HostBinding('attr.role')\n  @Input()\n  role = 'navigation';\n}\n","import { Injectable } from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { ActivatedRoute, NavigationEnd, Router } from '@angular/router';\nimport { BehaviorSubject, Observable } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { IBreadcrumbItem } from '../breadcrumb-item/breadcrumb-item';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class BreadcrumbRouterService {\n  public outlet = 'primary';\n\n  readonly #breadcrumbsBehaviorSubject: BehaviorSubject<IBreadcrumbItem[]> = new BehaviorSubject<IBreadcrumbItem[]>(new Array<IBreadcrumbItem>());\n  readonly breadcrumbs$: Observable<IBreadcrumbItem[]> = this.#breadcrumbsBehaviorSubject.asObservable();\n\n  constructor(private router: Router, private route: ActivatedRoute) {\n\n    this.router.events\n      .pipe(\n        takeUntilDestroyed(),\n        filter((event) => event instanceof NavigationEnd)\n      )\n      .subscribe((event) => {\n        const breadcrumbs: any[] = [];\n        let currentRoute: ActivatedRoute | null = this.route.root;\n        let url = '';\n        do {\n          const childrenRoutes: ActivatedRoute[] = currentRoute.children;\n          currentRoute = null;\n          childrenRoutes.forEach((childRoute) => {\n            // console.log('breadcrumb event', event, 'route', route);\n            if (childRoute.outlet === this.outlet) {\n              const routeSnapshot = childRoute.snapshot;\n              url += '/' + routeSnapshot.url.map((segment) => segment.path).join('/');\n              breadcrumbs.push({\n                label: routeSnapshot.data['title'] ?? routeSnapshot.title ?? '',\n                url,\n                queryParams: routeSnapshot.queryParams\n              });\n              currentRoute = childRoute;\n            }\n          });\n        } while (currentRoute);\n\n        this.#breadcrumbsBehaviorSubject.next(Object.assign([], breadcrumbs));\n\n        return breadcrumbs;\n      });\n  }\n}\n","import { Component, Input, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';\nimport { Observable, Observer } from 'rxjs';\nimport { AsyncPipe } from '@angular/common';\n\nimport { IBreadcrumbItem } from '../breadcrumb-item/breadcrumb-item';\nimport { BreadcrumbComponent } from '../breadcrumb/breadcrumb.component';\nimport { BreadcrumbRouterService } from './breadcrumb-router.service';\nimport { BreadcrumbItemComponent } from '../breadcrumb-item/breadcrumb-item.component';\n\n@Component({\n  selector: 'c-breadcrumb-router, [cBreadcrumbRouter]',\n  templateUrl: './breadcrumb-router.component.html',\n  standalone: true,\n  imports: [BreadcrumbComponent, BreadcrumbItemComponent, AsyncPipe]\n})\nexport class BreadcrumbRouterComponent implements OnChanges, OnDestroy, OnInit {\n  constructor(\n    public service: BreadcrumbRouterService\n  ) {}\n\n  /**\n   * Optional array of IBreadcrumbItem to override default BreadcrumbRouter behavior. [docs]\n   * @type IBreadcrumbItem[]\n   */\n  @Input() items?: IBreadcrumbItem[];\n  public breadcrumbs: Observable<IBreadcrumbItem[]> | undefined;\n\n  ngOnInit(): void {\n    this.breadcrumbs = this.service.breadcrumbs$;\n  }\n\n  public ngOnChanges(changes: SimpleChanges): void {\n    if (changes['items']) {\n      this.setup();\n    }\n  }\n\n  setup(): void {\n    if (this.items && this.items.length > 0) {\n      this.breadcrumbs = new Observable<IBreadcrumbItem[]>(\n        (observer: Observer<IBreadcrumbItem[]>) => {\n          if (this.items) {\n            observer.next(this.items);\n          }\n        }\n      );\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.breadcrumbs = undefined;\n  }\n}\n","<c-breadcrumb class=\"m-0\">\n  @for (breadcrumb of breadcrumbs | async; track breadcrumb; let last = $last) {\n    @if (breadcrumb?.label && (breadcrumb?.url?.slice(-1) === '/' || last)) {\n      <c-breadcrumb-item\n        [active]=\"last\"\n        [url]=\"breadcrumb?.url\"\n        [attributes]=\"breadcrumb?.attributes\"\n        [linkProps]=\"breadcrumb?.linkProps\"\n      >\n        {{ breadcrumb?.label }}\n      </c-breadcrumb-item>\n    }\n  }\n</c-breadcrumb>\n","import { NgModule } from '@angular/core';\n\n// CoreUI Breadcrumb Component\nimport { BreadcrumbComponent } from './breadcrumb/breadcrumb.component';\nimport { BreadcrumbItemComponent } from './breadcrumb-item/breadcrumb-item.component';\nimport { BreadcrumbRouterComponent } from './breadcrumb-router/breadcrumb-router.component';\nimport { BreadcrumbRouterService } from './breadcrumb-router/breadcrumb-router.service';\n\n@NgModule({\n  imports: [\n    BreadcrumbComponent,\n    BreadcrumbItemComponent,\n    BreadcrumbRouterComponent\n  ],\n  exports: [\n    BreadcrumbComponent,\n    BreadcrumbItemComponent,\n    BreadcrumbRouterComponent\n  ],\n  providers: [BreadcrumbRouterService]\n})\nexport class BreadcrumbModule {}\n","import { booleanAttribute, Component, computed, input, InputSignal, InputSignalWithTransform } from '@angular/core';\n\n@Component({\n  selector: 'c-button-group',\n  template: '<ng-content />',\n  standalone: true,\n  host: { '[attr.role]': 'role()', '[class]': 'hostClasses()' }\n})\nexport class ButtonGroupComponent {\n  /**\n   * Size the component small or large.\n   * @type { 'sm' | 'lg' }\n   */\n  readonly size: InputSignal<'sm' | 'lg' | undefined> = input();\n\n  /**\n   * Create a set of buttons that appear vertically stacked rather than horizontally. Split button dropdowns are not supported here.\n   * @type boolean\n   */\n  readonly vertical: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Default role attr for ButtonGroup. [docs]\n   * @type InputSignal<string>\n   * @default 'group'\n   */\n  readonly role: InputSignal<string> = input('group');\n\n  readonly hostClasses = computed(() => {\n    return {\n      'btn-group': !this.vertical(),\n      'btn-group-vertical': this.vertical(),\n      [`btn-group-${this.size()}`]: !!this.size()\n    };\n  });\n}\n","import { Component, input, InputSignal } from '@angular/core';\n\n@Component({\n  selector: 'c-button-toolbar',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'btn-toolbar', '[attr.role]': 'role()' }\n})\nexport class ButtonToolbarComponent {\n  /**\n   * Default role attr for ButtonToolbar. [docs]\n   * @type InputSignal<string>\n   * @default 'toolbar'\n   */\n  role: InputSignal<string> = input('toolbar');\n}\n","import { NgModule } from '@angular/core';\nimport { ButtonGroupComponent } from './button-group/button-group.component';\nimport { ButtonToolbarComponent } from './button-toolbar/button-toolbar.component';\n\n@NgModule({\n  imports: [ButtonGroupComponent, ButtonToolbarComponent],\n  exports: [ButtonGroupComponent, ButtonToolbarComponent]\n})\nexport class ButtonGroupModule {}\n","import { Component, computed, input } from '@angular/core';\nimport { Colors } from '../coreui.types';\n\n@Component({\n  selector: 'c-callout, [cCallout]',\n  template: '<ng-content />',\n  styleUrls: ['./callout.component.scss'],\n  standalone: true,\n  host: { class: 'callout', '[class]': 'hostClasses()' }\n})\nexport class CalloutComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color = input<Colors>();\n\n  readonly hostClasses = computed(() => {\n    const color = this.color();\n    return {\n      callout: true,\n      [`callout-${color}`]: !!color\n    } as Record<string, boolean>;\n  });\n}\n","import { NgModule } from '@angular/core';\n\nimport { CalloutComponent } from './callout.component';\n\n@NgModule({\n  exports: [CalloutComponent],\n  imports: [CalloutComponent]\n})\nexport class CalloutModule {}\n","import { Component, computed, input, InputSignal } from '@angular/core';\nimport { Colors, TextColors } from '../coreui.types';\nimport { TextBgColorDirective, TextColorDirective } from '../utilities';\n\n@Component({\n  selector: 'c-card, [c-card]',\n  template: '<ng-content />',\n  standalone: true,\n  hostDirectives: [\n    { directive: TextColorDirective, inputs: ['cTextColor: textColor'] },\n    { directive: TextBgColorDirective, inputs: ['cTextBgColor: textBgColor'] }\n  ],\n  host: { class: 'card', '[class]': 'hostClasses()' }\n})\nexport class CardComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color: InputSignal<Colors | undefined> = input();\n\n  /**\n   * Sets the text color context of the component to one of CoreUI’s themed colors.\n   * via TextColorDirective\n   * @type TextColors\n   */\n  readonly textColor: InputSignal<TextColors | undefined> = input();\n\n  /**\n   * Sets the component's color scheme to one of CoreUI themed colors, ensuring the text color contrast adheres to the WCAG 4.5:1 contrast ratio standard for accessibility.\n   * via TextBgColorDirective\n   * @type Colors\n   * @since 5.0.0\n   */\n  readonly textBgColor: InputSignal<Colors | undefined> = input();\n\n  readonly hostClasses = computed(() => {\n    const color = this.color();\n    return {\n      card: true,\n      [`bg-${color}`]: !!color\n    } as Record<string, boolean>;\n  });\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-body, [c-card-body]',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'card-body' }\n})\nexport class CardBodyComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-footer, [c-card-footer]',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'card-footer' }\n})\nexport class CardFooterComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-group, [c-card-group]',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'card-group' }\n})\nexport class CardGroupComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-header, [c-card-header]',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'card-header' }\n})\nexport class CardHeaderComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-header-actions, [c-card-header-actions]',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'card-header-actions' }\n})\nexport class CardHeaderActionsComponent {}\n","import { computed, Directive, input } from '@angular/core';\n\n@Directive({\n  selector: '[cCardImg]',\n  standalone: true,\n  host: { '[class]': 'hostClasses()' }\n})\nexport class CardImgDirective {\n  /**\n   * Optionally orientate the image to the top, bottom, or make it overlaid across the card.\n   * @type {'top | 'bottom'}\n   */\n  readonly orientation = input<'top' | 'bottom' | 'start' | 'end' | undefined>(undefined, { alias: 'cCardImg' });\n\n  readonly hostClasses = computed(() => {\n    const orientation = this.orientation();\n    const suffix = !!orientation ? `-${orientation}` : '';\n    const horizontal = ['start', 'end'].includes(orientation ?? '-') ? orientation : undefined;\n    return {\n      [`card-img${suffix}`]: !horizontal,\n      'img-fluid': !!horizontal,\n      [`rounded-${horizontal}`]: !!horizontal\n    } as Record<string, boolean>;\n  });\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-card-img-overlay',\n  template: '<ng-content />',\n  styleUrls: ['./card-img-overlay.component.scss'],\n  standalone: true,\n  host: { class: 'card-img-overlay' }\n})\nexport class CardImgOverlayComponent {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cCardLink]',\n  standalone: true,\n  host: { class: 'card-link' }\n})\nexport class CardLinkDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cCardSubtitle]',\n  standalone: true,\n  host: { class: 'card-subtitle' }\n})\nexport class CardSubtitleDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cCardText]',\n  standalone: true,\n  host: { class: 'card-text' }\n})\nexport class CardTextDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cCardTitle]',\n  standalone: true,\n  host: { class: 'card-title' }\n})\nexport class CardTitleDirective {}\n","import { NgModule } from '@angular/core';\n\nimport { CardComponent } from './card.component';\nimport { CardBodyComponent } from './card-body.component';\nimport { CardFooterComponent } from './card-footer.component';\nimport { CardHeaderComponent } from './card-header.component';\nimport { CardHeaderActionsComponent } from './card-header-actions.component';\nimport { CardGroupComponent } from './card-group.component';\nimport { CardImgDirective } from './card-img.directive';\nimport { CardLinkDirective } from './card-link.directive';\nimport { CardSubtitleDirective } from './card-subtitle.directive';\nimport { CardTextDirective } from './card-text.directive';\nimport { CardTitleDirective } from './card-title.directive';\nimport { CardImgOverlayComponent } from './card-img-overlay/card-img-overlay.component';\n\n@NgModule({\n  imports: [\n    CardComponent,\n    CardBodyComponent,\n    CardFooterComponent,\n    CardGroupComponent,\n    CardHeaderComponent,\n    CardHeaderActionsComponent,\n    CardImgDirective,\n    CardImgOverlayComponent,\n    CardLinkDirective,\n    CardSubtitleDirective,\n    CardTextDirective,\n    CardTitleDirective\n  ],\n  exports: [\n    CardComponent,\n    CardBodyComponent,\n    CardFooterComponent,\n    CardGroupComponent,\n    CardHeaderComponent,\n    CardHeaderActionsComponent,\n    CardImgDirective,\n    CardImgOverlayComponent,\n    CardLinkDirective,\n    CardSubtitleDirective,\n    CardTextDirective,\n    CardTitleDirective\n  ]\n})\nexport class CardModule {}\n","import { isPlatformServer } from '@angular/common';\nimport { ElementRef, inject, Injectable, OnDestroy, PLATFORM_ID } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nexport interface IIntersectionObserverInit {\n  root?: Element | null;\n  rootMargin?: string;\n  threshold?: number | number[];\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class IntersectionService implements OnDestroy {\n\n  platformId = inject(PLATFORM_ID);\n\n  readonly #intersecting: BehaviorSubject<any> = new BehaviorSubject({ isIntersecting: false });\n  readonly intersecting$ = this.#intersecting.asObservable();\n\n  private defaultObserverOptions: IIntersectionObserverInit = {\n    root: null,\n    rootMargin: '0px',\n    threshold: 0.2\n  };\n\n  hostElementRefs: Map<ElementRef, IntersectionObserver | null> = new Map();\n\n  createIntersectionObserver(hostElement: ElementRef, observerOptions = this.defaultObserverOptions) {\n\n    if (isPlatformServer(this.platformId)) {\n      this.#intersecting.next({ isIntersecting: true, hostElement });\n      return;\n    }\n\n    const options: IIntersectionObserverInit = { ...this.defaultObserverOptions, ...observerOptions };\n\n    const handleIntersect = (entries: IntersectionObserverEntry[], observer: IntersectionObserver) => {\n      entries.forEach((entry: any) => {\n        this.#intersecting.next({ isIntersecting: entry.isIntersecting, hostElement });\n      });\n    };\n\n    this.hostElementRefs.set(hostElement, new IntersectionObserver(handleIntersect, options));\n    this.hostElementRefs.get(hostElement)?.observe(hostElement.nativeElement);\n  }\n\n  unobserve(elementRef: ElementRef) {\n    this.hostElementRefs.get(elementRef)?.unobserve(elementRef.nativeElement);\n    this.hostElementRefs.set(elementRef, null);\n    this.hostElementRefs.delete(elementRef);\n  }\n\n  ngOnDestroy(): void {\n    this.hostElementRefs.forEach((observer, elementRef) => {\n      observer?.unobserve(elementRef.nativeElement);\n    });\n  }\n}\n","import { ElementRef, inject, Injectable, Renderer2 } from '@angular/core';\nimport { Triggers } from '../coreui.types';\n\nexport interface IListenersConfig {\n  hostElement: ElementRef;\n  trigger?: Triggers | Triggers[];\n  callbackOn?: () => void;\n  callbackOff?: () => void;\n  callbackToggle?: () => void;\n}\n\n@Injectable()\nexport class ListenersService {\n  readonly renderer = inject(Renderer2);\n\n  private listeners: Map<string, () => void> = new Map();\n\n  setListeners({\n    hostElement,\n    trigger,\n    callbackOn,\n    callbackOff,\n    callbackToggle,\n  }: IListenersConfig): void {\n    const host = hostElement.nativeElement;\n    const triggers = Array.isArray(trigger) ? trigger : trigger?.split(' ') ?? [];\n\n    if (triggers?.includes('click')) {\n      typeof callbackToggle === 'function' &&\n        this.listeners.set('click', this.renderer.listen(host, 'click', callbackToggle));\n    }\n    if (triggers?.includes('focus')) {\n      typeof callbackOn === 'function' &&\n        this.listeners.set('focus', this.renderer.listen(host, 'focus', callbackOn));\n    }\n    if (triggers?.includes('focusin')) {\n      typeof callbackOff === 'function' &&\n        this.listeners.set('focusout', this.renderer.listen(host, 'focusout', callbackOff));\n      typeof callbackOn === 'function' &&\n        this.listeners.set('focusin', this.renderer.listen(host, 'focusin', callbackOn));\n    }\n    if (triggers?.includes('click') || triggers?.includes('focus')) {\n      typeof callbackOff === 'function' &&\n        this.listeners.set('blur', this.renderer.listen(host, 'blur', callbackOff));\n    }\n    if (triggers?.includes('hover')) {\n      typeof callbackOn === 'function' &&\n        this.listeners.set('mouseenter', this.renderer.listen(host, 'mouseenter', callbackOn));\n      typeof callbackOff === 'function' &&\n        this.listeners.set('mouseleave', this.renderer.listen(host, 'mouseleave', callbackOff));\n    }\n  }\n\n  clearListeners(): void {\n    this.listeners.forEach((unListen, key) => {\n      unListen();\n    });\n    this.listeners.forEach((unListen, key) => {\n      // @ts-ignore\n      this.listeners.set(key, null);\n    });\n    this.listeners.clear();\n  }\n}\n","import { Inject, Injectable, Renderer2, RendererFactory2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ClassToggleService {\n\n  private renderer: Renderer2;\n\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    private rendererFactory: RendererFactory2\n  ) {\n    this.renderer = rendererFactory.createRenderer(null, null);\n  }\n\n  toggle(selector: any, className: string) {\n    const element = document.querySelector(selector);\n    if (element) {\n      element.classList.contains(className) ?\n        this.renderer.removeClass(element, className) :\n        this.renderer.addClass(element, className);\n    }\n  }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class InMemoryStorageService implements Storage {\n  #storage = new Map<string, string>();\n\n  public setItem(key: string, data: any): void {\n    this.#storage.set(key, JSON.stringify(data));\n  }\n\n  public getItem(key: string): any {\n    return this.#storage.has(key) ? JSON.parse(this.#storage.get(key) ?? 'null') : undefined;\n  }\n\n  public removeItem(key: string): void {\n    this.#storage.delete(key);\n  }\n\n  public clear() {\n    this.#storage.clear();\n  }\n\n  public get length() {\n    return this.#storage.size;\n  }\n\n  public key(index: number) {\n    return Array.from(this.#storage.keys())[index];\n  }\n}\n","import { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport { inject, Injectable, PLATFORM_ID } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\nimport { InMemoryStorageService } from './in-memory-storage.service';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class LocalStorageService {\n  private platformId = inject(PLATFORM_ID);\n  private document = inject(DOCUMENT);\n\n  constructor() {\n    this.#localStorage =\n      isPlatformBrowser(this.platformId) && this.document.defaultView\n        ? this.document.defaultView?.localStorage\n        : new InMemoryStorageService();\n  }\n\n  #localStorage: Storage;\n  readonly #data$ = new BehaviorSubject<{ key: string; data: any } | null>(null);\n  public readonly data$ = this.#data$.asObservable();\n\n  public setItem(key: string, data: any): void {\n    this.#localStorage.setItem(key, JSON.stringify(data));\n    this.#data$.next({ key, data });\n  }\n\n  public getItem(key: string): any {\n    const data = JSON.parse(this.#localStorage.getItem(key) || 'null');\n    this.#data$.next({ key, data });\n    return data;\n  }\n\n  public removeItem(key: string): void {\n    this.#localStorage.removeItem(key);\n    this.#data$.next({ key, data: null });\n  }\n\n  public clear() {\n    this.#localStorage.clear();\n    this.#data$.next(null);\n  }\n}\n","import { DOCUMENT } from '@angular/common';\nimport { afterNextRender, DestroyRef, effect, inject, Injectable, signal, WritableSignal } from '@angular/core';\nimport { takeUntilDestroyed, toObservable } from '@angular/core/rxjs-interop';\nimport { tap } from 'rxjs/operators';\nimport { LocalStorageService } from './local-storage.service';\n\nexport type ColorMode = 'light' | 'dark' | 'auto' | string | undefined;\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ColorModeService {\n  readonly #destroyRef: DestroyRef = inject(DestroyRef);\n  readonly #document: Document = inject(DOCUMENT);\n  readonly #localStorage: LocalStorageService = inject(LocalStorageService);\n\n  readonly eventName = signal('ColorSchemeChange');\n  readonly localStorageItemName: WritableSignal<string | undefined> = signal(undefined);\n  readonly localStorageItemName$ = toObservable(this.localStorageItemName);\n  readonly colorMode: WritableSignal<ColorMode> = signal(undefined);\n\n  readonly colorModeEffect = effect(() => {\n    const colorMode = this.colorMode();\n    if (colorMode) {\n      const localStorageItemName = this.localStorageItemName();\n      localStorageItemName && this.setStoredTheme(localStorageItemName, colorMode);\n      this.#setTheme(colorMode);\n    }\n  });\n\n  constructor() {\n    afterNextRender({\n      read: () => {\n        this.localStorageItemName$\n          .pipe(\n            tap((params) => {\n              this.colorMode.set(this.getDefaultScheme(params));\n            }),\n            takeUntilDestroyed(this.#destroyRef)\n          )\n          .subscribe();\n      }\n    });\n  }\n\n  getStoredTheme(localStorageItemName: string) {\n    return this.#localStorage.getItem(localStorageItemName);\n  }\n\n  setStoredTheme(localStorageItemName: string, colorMode: string) {\n    return this.#localStorage.setItem(localStorageItemName, colorMode);\n  }\n\n  removeStoredTheme(localStorageItemName: string) {\n    this.#localStorage.removeItem(localStorageItemName);\n  }\n\n  getDefaultScheme(localStorageItemName: string | undefined) {\n    if (this.#document.defaultView === undefined) {\n      return this.getDatasetTheme();\n    }\n\n    const storedTheme = localStorageItemName && this.getStoredTheme(localStorageItemName);\n\n    return storedTheme ?? this.getDatasetTheme();\n  }\n\n  getPrefersColorScheme() {\n    return this.#document.defaultView?.matchMedia('(prefers-color-scheme: dark)').matches\n      ? 'dark'\n      : this.#document.defaultView?.matchMedia('(prefers-color-scheme: light)').matches\n        ? 'light'\n        : undefined;\n  }\n\n  getDatasetTheme(): ColorMode {\n    return <ColorMode>this.#document.documentElement.dataset['coreuiTheme'];\n  }\n\n  #setTheme(colorMode: ColorMode) {\n    this.#document.documentElement.dataset['coreuiTheme'] =\n      colorMode === 'auto' ? this.getPrefersColorScheme() : colorMode;\n\n    const event = new Event(this.eventName());\n    this.#document.documentElement.dispatchEvent(event);\n  }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nexport interface ICarouselIndex {\n  active?: number;\n  interval?: number;\n  lastItemIndex?: number;\n}\n\n@Injectable()\nexport class CarouselService {\n  private carouselIndex = new BehaviorSubject<ICarouselIndex>({});\n  carouselIndex$ = this.carouselIndex.asObservable();\n\n  setIndex(index: ICarouselIndex): void {\n    this.carouselIndex.next(index);\n  }\n}\n","import { Injectable } from '@angular/core';\nimport { ICarouselState } from './carousel-state.type';\nimport { CarouselService } from './carousel.service';\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\n\n@Injectable()\nexport class CarouselState {\n  private _state: ICarouselState = {\n    activeItemIndex: -1,\n    animate: true,\n    items: [],\n    direction: 'next',\n    transition: 'slide'\n  };\n\n  constructor(private carouselService: CarouselService) {}\n\n  get state(): ICarouselState {\n    return this._state;\n  }\n\n  set state(state) {\n    const prevState = { ...this._state };\n    const nextState = { ...this._state, ...state };\n    this._state = nextState;\n    if (prevState.activeItemIndex !== nextState.activeItemIndex) {\n      const activeItemIndex = this.state.activeItemIndex || 0;\n      const itemInterval = this.state.items && this.state.items[activeItemIndex]?.interval || -1;\n      this.carouselService.setIndex({\n        active: nextState.activeItemIndex,\n        interval: itemInterval,\n        lastItemIndex: (nextState.items?.length ?? 0) - 1\n      });\n    }\n  }\n\n  setItems(newItems: any): void {\n    if (newItems.length) {\n      const itemsArray = newItems.toArray();\n      itemsArray.forEach((item: CarouselItemComponent, i: number) => {\n        item.index = i;\n      });\n      this.state = {\n        items: itemsArray\n      };\n    } else {\n      this.reset();\n    }\n  }\n\n  setNextIndex(nextIndex: any): void {\n    this.carouselService.setIndex(nextIndex);\n  }\n\n  direction(direction: 'next' | 'prev' = 'next'): number {\n    this.state = { direction };\n    const { activeItemIndex = -1, items } = this.state;\n    const itemsCount = items?.length ?? 0;\n    if (itemsCount > 0) {\n      return direction === 'next' ?\n        (activeItemIndex === itemsCount - 1 ? 0 : activeItemIndex + 1) :\n        (activeItemIndex === 0 ? itemsCount - 1 : activeItemIndex - 1);\n    } else {\n      return 0;\n    }\n  }\n\n  reset(): void {\n    this.state = {\n      activeItemIndex: -1,\n      animate: true,\n      items: [],\n      direction: 'next',\n      transition: 'slide'\n    };\n  }\n}\n","import { Injectable } from '@angular/core';\n\n@Injectable()\nexport class CarouselConfig {\n  /* Animate transition of slides */\n  activeIndex = 0;\n  /* Animate transition of slides */\n  animate = true;\n  /* Darken controls, indicators, and captions */\n  dark? = false;\n  /* Default direction of auto changing of slides */\n  direction: 'next' | 'prev' = 'next';\n  /* Default interval of auto changing of slides */\n  interval = 3000;\n}\n","import {\n  AfterContentInit,\n  Component,\n  DestroyRef,\n  ElementRef,\n  EventEmitter,\n  HostBinding,\n  inject,\n  Inject,\n  Input,\n  OnDestroy,\n  OnInit,\n  Output\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, Subscription } from 'rxjs';\nimport { filter, finalize, withLatestFrom, zipWith } from 'rxjs/operators';\n\nimport { IListenersConfig, IntersectionService, ListenersService } from '../../services';\n\nimport { Triggers } from '../../coreui.types';\nimport { ThemeDirective } from '../../shared/theme.directive';\nimport { CarouselState } from '../carousel-state';\nimport { CarouselService } from '../carousel.service';\nimport { CarouselConfig } from '../carousel.config';\n\n@Component({\n  selector: 'c-carousel',\n  template: '<ng-content />',\n  styleUrls: ['./carousel.component.scss'],\n  providers: [CarouselService, CarouselState, CarouselConfig, ListenersService],\n  standalone: true,\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['dark'] }],\n  host: { class: 'carousel slide' }\n})\nexport class CarouselComponent implements OnInit, OnDestroy, AfterContentInit {\n  constructor(\n    @Inject(CarouselConfig) private config: CarouselConfig,\n    private hostElement: ElementRef,\n    private carouselService: CarouselService,\n    private carouselState: CarouselState,\n    private intersectionService: IntersectionService,\n    private listenersService: ListenersService\n  ) {\n    Object.assign(this, config);\n  }\n\n  /**\n   * Index of the active item.\n   * @type number\n   */\n  @Input() activeIndex: number = 0;\n  /**\n   * Carousel automatically starts cycle items.\n   * @type boolean\n   */\n  @Input() animate: boolean = true;\n  /**\n   * Carousel direction. [docs]\n   * @type {'next' | 'prev'}\n   */\n  @Input() direction: 'next' | 'prev' = 'next';\n  /**\n   * The amount of time to delay between automatically cycling an item. If false, carousel will not automatically cycle.\n   * @type number\n   * @default 0\n   */\n  @Input() interval: number = 0;\n  /**\n   * Sets which event handlers you’d like provided to your pause prop. You can specify one trigger or an array of them.\n   * @type {'hover' | 'focus' | 'click'}\n   */\n  @Input() pause: Triggers | Triggers[] | false = 'hover';\n  /**\n   * Support left/right swipe interactions on touchscreen devices.\n   * @type boolean\n   * @default true\n   */\n  @Input() touch: boolean = true;\n  /**\n   * Set type of the transition.\n   * @type {'slide' | 'crossfade'}\n   * @default 'slide'\n   */\n  @Input() transition: 'slide' | 'crossfade' = 'slide';\n  /**\n   * Set whether the carousel should cycle continuously or have hard stops.\n   * @type boolean\n   * @default true\n   */\n  @Input() wrap: boolean = true;\n  /**\n   * Event emitted on carousel item change. [docs]\n   * @type number\n   */\n  @Output() itemChange: EventEmitter<number> = new EventEmitter<number>();\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      carousel: true,\n      slide: true,\n      'carousel-fade': this.transition === 'crossfade'\n    };\n  }\n\n  private timerId: ReturnType<typeof setTimeout> | undefined;\n  private activeItemInterval = 0;\n  private swipeSubscription?: Subscription;\n  readonly #destroyRef = inject(DestroyRef);\n\n  ngOnInit(): void {\n    this.carouselStateSubscribe();\n  }\n\n  ngOnDestroy(): void {\n    this.resetTimer();\n    this.clearListeners();\n    this.swipeSubscribe(false);\n  }\n\n  ngAfterContentInit(): void {\n    this.intersectionServiceSubscribe();\n    this.carouselState.state = { activeItemIndex: this.activeIndex, animate: this.animate };\n    this.setListeners();\n    this.swipeSubscribe();\n  }\n\n  private setListeners(): void {\n    const config: IListenersConfig = {\n      hostElement: this.hostElement,\n      trigger: this.pause || [],\n      callbackOff: () => {\n        this.setTimer();\n      },\n      callbackOn: () => {\n        this.resetTimer();\n      }\n    };\n    this.listenersService.setListeners(config);\n  }\n\n  private clearListeners(): void {\n    this.listenersService.clearListeners();\n  }\n\n  set visible(value) {\n    this._visible = value;\n  }\n\n  get visible() {\n    return this._visible;\n  }\n\n  private _visible: boolean = true;\n\n  setTimer(): void {\n    const interval = this.activeItemInterval || 0;\n    this.resetTimer();\n    if (interval > 0) {\n      this.timerId = setTimeout(() => {\n        const nextIndex = this.carouselState.direction(this.direction);\n        this.carouselState.state = { activeItemIndex: nextIndex };\n      }, interval);\n    }\n  }\n\n  resetTimer(): void {\n    clearTimeout(this.timerId);\n    this.timerId = undefined;\n  }\n\n  private carouselStateSubscribe(): void {\n    this.carouselService.carouselIndex$.pipe(takeUntilDestroyed(this.#destroyRef)).subscribe((nextItem) => {\n      if ('active' in nextItem) {\n        this.itemChange.emit(nextItem.active);\n      }\n      this.activeItemInterval =\n        typeof nextItem.interval === 'number' && nextItem.interval > -1 ? nextItem.interval : this.interval;\n      const isLastItem =\n        (nextItem.active === nextItem.lastItemIndex && this.direction === 'next') ||\n        (nextItem.active === 0 && this.direction === 'prev');\n      !this.wrap && isLastItem ? this.resetTimer() : this.setTimer();\n    });\n  }\n\n  private intersectionServiceSubscribe(): void {\n    this.intersectionService.createIntersectionObserver(this.hostElement);\n    this.intersectionService.intersecting$\n      .pipe(\n        filter((next) => next.hostElement === this.hostElement),\n        finalize(() => {\n          this.intersectionService.unobserve(this.hostElement);\n        }),\n        takeUntilDestroyed(this.#destroyRef)\n      )\n      .subscribe((next) => {\n        this.visible = next.isIntersecting;\n        next.isIntersecting ? this.setTimer() : this.resetTimer();\n      });\n  }\n\n  private swipeSubscribe(subscribe: boolean = true): void {\n    if (this.touch && subscribe) {\n      const carouselElement = this.hostElement.nativeElement;\n      const touchStart$ = fromEvent<TouchEvent>(carouselElement, 'touchstart');\n      const touchEnd$ = fromEvent<TouchEvent>(carouselElement, 'touchend');\n      const touchMove$ = fromEvent<TouchEvent>(carouselElement, 'touchmove');\n      this.swipeSubscription = touchStart$\n        .pipe(zipWith(touchEnd$.pipe(withLatestFrom(touchMove$))), takeUntilDestroyed(this.#destroyRef))\n        .subscribe(([touchstart, [touchend, touchmove]]) => {\n          touchstart.stopPropagation();\n          touchmove.stopPropagation();\n          const distanceX = touchstart.touches[0].clientX - touchmove.touches[0].clientX;\n          if (Math.abs(distanceX) > 0.3 * carouselElement.clientWidth && touchstart.timeStamp <= touchmove.timeStamp) {\n            const nextIndex = this.carouselState.direction(distanceX > 0 ? 'next' : 'prev');\n            this.carouselState.state = { activeItemIndex: nextIndex };\n          }\n        });\n    } else {\n      this.swipeSubscription?.unsubscribe();\n    }\n  }\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n  selector: 'c-carousel-caption',\n  template: '<ng-content />',\n  styleUrls: ['./carousel-caption.component.scss'],\n  standalone: true\n})\nexport class CarouselCaptionComponent {\n\n  @HostBinding('class.carousel-caption') carouselCaptionClass = true;\n\n}\n","import {\n  AfterViewInit,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  HostBinding,\n  HostListener,\n  Input,\n  ViewChild\n} from '@angular/core';\n\nimport { CarouselState } from '../carousel-state';\n\n@Component({\n  selector: 'c-carousel-control',\n  templateUrl: './carousel-control.component.html',\n  standalone: true\n})\nexport class CarouselControlComponent implements AfterViewInit {\n\n  constructor(\n    private changeDetectorRef: ChangeDetectorRef,\n    private carouselState: CarouselState\n  ) {}\n\n  private _caption?: string;\n  /**\n   * Carousel control caption. [docs]\n   * @type string\n   */\n  @Input()\n  set caption(value) {\n    this._caption = value;\n  }\n\n  get caption(): string {\n    return !!this._caption ? this._caption : this.direction === 'prev' ? 'Previous' : 'Next';\n  }\n\n  /**\n   * Carousel control direction. [docs]\n   * @type {'next' | 'prev'}\n   */\n  @Input() direction: 'prev' | 'next' = 'next';\n\n  @HostBinding('attr.role')\n  get hostRole(): string {\n    return 'button';\n  }\n\n  @HostBinding('class')\n  get hostClasses(): string {\n    return `carousel-control-${this.direction}`;\n  }\n\n  get carouselControlIconClass(): string {\n    return `carousel-control-${this.direction}-icon`;\n  }\n\n  @ViewChild('content') content?: ElementRef;\n\n  hasContent = true;\n\n  @HostListener('keyup', ['$event'])\n  onKeyUp($event: KeyboardEvent): void {\n    if ($event.key === 'Enter') {\n      this.play();\n    }\n    if ($event.key === 'ArrowLeft') {\n      this.play('prev');\n    }\n    if ($event.key === 'ArrowRight') {\n      this.play('next');\n    }\n  }\n\n  @HostListener('click', ['$event'])\n  public onClick($event: MouseEvent): void {\n    this.play();\n  }\n\n  ngAfterViewInit(): void {\n    this.hasContent = this.content?.nativeElement.childNodes.length ?? false;\n    this.changeDetectorRef.detectChanges();\n  }\n\n  private play(direction = this.direction): void {\n    const nextIndex = this.carouselState.direction(direction);\n    this.carouselState.state = { activeItemIndex: nextIndex };\n  }\n}\n","@if (hasContent) {\n  <div #content>\n    <ng-content />\n  </div>\n} @else {\n  <span [class]=\"carouselControlIconClass\" [attr.aria-label]=\"direction\" [attr.aria-hidden]=\"true\"></span>\n  <span class=\"visually-hidden\">{{ caption }}</span>\n}\n","import { Component, OnDestroy, OnInit } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { CarouselState } from '../carousel-state';\nimport { CarouselService } from '../carousel.service';\n\n@Component({\n  selector: 'c-carousel-indicators',\n  templateUrl: './carousel-indicators.component.html',\n  standalone: true\n})\nexport class CarouselIndicatorsComponent implements OnInit, OnDestroy {\n  constructor(\n    private carouselService: CarouselService,\n    private carouselState: CarouselState\n  ) {}\n\n  items: (number | undefined)[] = [];\n  active = 0;\n  private carouselIndexSubscription?: Subscription;\n\n  ngOnInit(): void {\n    this.carouselStateSubscribe();\n  }\n\n  ngOnDestroy(): void {\n    this.carouselStateSubscribe(false);\n  }\n\n  onClick(index: number): void {\n    if (index !== this.active) {\n      const direction = index < this.active ? 'prev' : 'next';\n      this.carouselState.state = { direction, activeItemIndex: index };\n    }\n  }\n\n  private carouselStateSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\n        this.items = this.carouselState?.state?.items?.map(item => item.index) ?? [];\n        if ('active' in nextIndex) {\n          this.active = nextIndex.active ?? 0;\n        }\n      });\n    } else {\n      this.carouselIndexSubscription?.unsubscribe();\n    }\n  }\n}\n","<div class=\"carousel-indicators\">\n  @for (item of items; track item; let i = $index) {\n    <button\n      [attr.data-coreui-target]=\"i\"\n      type=\"button\"\n      (click)=\"onClick(i)\"\n      [class]=\"{ active: active === i }\"\n      [attr.aria-current]=\"active === i\">\n    </button>\n  }\n</div>\n","import {\n  animate,\n  group,\n  query,\n  state,\n  style,\n  transition,\n  trigger,\n} from '@angular/animations';\n\nexport function toLeft(fromState: any, toState: any): boolean {\n  return toState.left === true;\n}\nexport function toRight(fromState: any, toState: any): boolean {\n  return toState.left === false;\n}\n\nexport const slideAnimation = trigger('slideAnimation', [\n  state(\n    '*',\n    style({ transform: 'translateX(0)', display: 'block', opacity: 1 })\n  ),\n  transition(\n    toLeft,\n    group([\n      query(\n        ':leave',\n        [\n          animate(\n            '0.6s ease-in-out',\n            style({\n              transform: 'translateX(-100%)',\n            })\n          ),\n        ],\n        { optional: true }\n      ),\n      query(\n        ':enter',\n        [\n          style({\n            transform: 'translateX(100%)',\n          }),\n          animate('0.6s ease-in-out', style('*')),\n        ],\n        { optional: true }\n      ),\n    ])\n  ),\n  transition(\n    toRight,\n    group([\n      query(\n        ':enter',\n        [\n          style({\n            transform: 'translateX(-100%)',\n          }),\n          animate('0.6s ease-in-out', style('*')),\n        ],\n        { optional: true }\n      ),\n      query(\n        ':leave',\n        [\n          animate(\n            '0.6s ease-in-out',\n            style({\n              transform: 'translateX(100%)',\n            })\n          ),\n        ],\n        { optional: true }\n      ),\n    ])\n  ),\n]);\n\nexport const fadeAnimation = trigger('fadeAnimation', [\n  state(\n    '*',\n    style({ zIndex: 1, opacity: 1 })\n  ),\n  transition(\n    toLeft,\n    group([\n      query(\n        ':leave',\n        [\n          animate(\n            '0.6s ease-in-out',\n            style({\n              zIndex: 0,\n              opacity: 0,\n            })\n          ),\n        ],\n        { optional: true }\n      ),\n      query(\n        ':enter',\n        [\n          style({\n            zIndex: 1,\n            opacity: 1\n          }),\n          animate('0.6s ease-in-out', style('*')),\n        ],\n        { optional: true }\n      ),\n    ])\n  ),\n  transition(\n    toRight,\n    group([\n      query(\n        ':enter',\n        [\n          style({\n            zIndex: 1,\n            opacity: 1\n          }),\n          animate('0.6s ease-in-out', style('*')),\n        ],\n        { optional: true }\n      ),\n      query(\n        ':leave',\n        [\n          animate(\n            '0.6s ease-in-out',\n            style({\n              zIndex: 0,\n              opacity: 0,\n            })\n          ),\n        ],\n        { optional: true }\n      ),\n    ])\n  ),\n]);\n","import {\n  AfterViewInit,\n  booleanAttribute,\n  ChangeDetectorRef,\n  Component,\n  HostBinding,\n  Input,\n  OnDestroy\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { CarouselService } from '../carousel.service';\n\n@Component({\n  selector: 'c-carousel-item',\n  templateUrl: './carousel-item.component.html',\n  styleUrls: ['./carousel-item.component.scss'],\n  standalone: true,\n  host: { class: 'carousel-item' }\n})\nexport class CarouselItemComponent implements OnDestroy, AfterViewInit {\n  index?: number;\n  private carouselIndexSubscription?: Subscription;\n\n  /**\n   * @ignore\n   */\n  @Input({ transform: booleanAttribute })\n  set active(value) {\n    this._active = value;\n    this.changeDetectorRef.markForCheck();\n  }\n\n  get active(): boolean {\n    return this._active;\n  }\n\n  private _active = false;\n\n  /**\n   * Time delay before cycling to next item. If -1, uses carousel interval value.\n   * @type number\n   * @default -1\n   */\n  @Input() interval: number = -1;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'carousel-item': true,\n      active: this.active\n    };\n  }\n\n  constructor(\n    private carouselService: CarouselService,\n    private changeDetectorRef: ChangeDetectorRef\n  ) {}\n\n  ngOnDestroy(): void {\n    this.carouselStateSubscribe(false);\n  }\n\n  ngAfterViewInit(): void {\n    setTimeout(() => {\n      this.carouselStateSubscribe();\n    });\n  }\n\n  private carouselStateSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      this.carouselIndexSubscription = this.carouselService.carouselIndex$.subscribe((nextIndex) => {\n        if ('active' in nextIndex) {\n          this.active = nextIndex.active === this.index;\n        }\n      });\n    } else {\n      this.carouselIndexSubscription?.unsubscribe();\n    }\n  }\n}\n","@if (active) {\n  <ng-content />\n}\n","import {\n  AfterContentChecked,\n  AfterContentInit,\n  Component,\n  ContentChildren,\n  HostBinding,\n  QueryList\n} from '@angular/core';\n\nimport { fadeAnimation, slideAnimation } from '../carousel.animation';\nimport { CarouselItemComponent } from '../carousel-item/carousel-item.component';\nimport { CarouselState } from '../carousel-state';\n\n@Component({\n  selector: 'c-carousel-inner',\n  templateUrl: './carousel-inner.component.html',\n  styleUrls: ['./carousel-inner.component.scss'],\n  animations: [slideAnimation, fadeAnimation],\n  standalone: true\n})\nexport class CarouselInnerComponent implements AfterContentInit, AfterContentChecked {\n  constructor(private carouselState: CarouselState) {}\n\n  @HostBinding('class.carousel-inner') carouselInnerClass = true;\n  activeIndex?: number;\n  animate?: boolean;\n  slide = { left: true };\n  transition = 'slide';\n  @ContentChildren(CarouselItemComponent) private contentItems!: QueryList<CarouselItemComponent>;\n  private prevContentItems!: QueryList<CarouselItemComponent>;\n\n  ngAfterContentInit(): void {\n    this.setItems();\n  }\n\n  ngAfterContentChecked(): void {\n    this.setItems();\n    const state = this.carouselState?.state;\n    const nextIndex = state?.activeItemIndex;\n    const nextDirection = state?.direction;\n    if (this.activeIndex !== nextIndex) {\n      this.animate = state?.animate;\n      this.slide = { left: nextDirection === 'next' };\n      this.activeIndex = state?.activeItemIndex;\n      this.transition = state?.transition ?? 'slide';\n    }\n  }\n\n  setItems(): void {\n    if (this.prevContentItems !== this.contentItems) {\n      this.prevContentItems = this.contentItems;\n      this.carouselState.setItems(this.contentItems);\n    }\n  }\n}\n","<div [@slideAnimation]=\"slide\" [@.disabled]=\"!animate\">\n  <ng-content />\n</div>\n<!--todo-->\n<!--<div [@fadeAnimation]=\"slide\" [@.disabled]=\"!animate\" >-->\n<!--  <ng-content />-->\n<!--</div>-->\n","import { ModuleWithProviders, NgModule } from '@angular/core';\n\nimport { CarouselComponent } from './carousel/carousel.component';\nimport { CarouselCaptionComponent } from './carousel-caption/carousel-caption.component';\nimport { CarouselControlComponent } from './carousel-control/carousel-control.component';\nimport { CarouselIndicatorsComponent } from './carousel-indicators/carousel-indicators.component';\nimport { CarouselInnerComponent } from './carousel-inner/carousel-inner.component';\nimport { CarouselItemComponent } from './carousel-item/carousel-item.component';\nimport { CarouselService } from './carousel.service';\nimport { CarouselState } from './carousel-state';\nimport { CarouselConfig } from './carousel.config';\n\n@NgModule({\n  imports: [\n    CarouselComponent,\n    CarouselCaptionComponent,\n    CarouselControlComponent,\n    CarouselIndicatorsComponent,\n    CarouselInnerComponent,\n    CarouselItemComponent\n  ],\n  providers: [CarouselService, CarouselState, CarouselConfig],\n  exports: [\n    CarouselComponent,\n    CarouselCaptionComponent,\n    CarouselControlComponent,\n    CarouselIndicatorsComponent,\n    CarouselInnerComponent,\n    CarouselItemComponent\n  ]\n})\nexport class CarouselModule {\n  static forRoot(): ModuleWithProviders<CarouselModule> {\n    return { ngModule: CarouselModule, providers: [] };\n  }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cDropdownDivider]',\n  standalone: true,\n  host: { class: 'dropdown-divider' }\n})\nexport class DropdownDividerDirective {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cDropdownHeader]',\n  standalone: true,\n  host: { class: 'dropdown-header' }\n})\nexport class DropdownHeaderDirective {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nexport interface IDropdownState {\n  visible?: boolean | 'toggle';\n  dropdown?: any;\n}\n\n@Injectable()\nexport class DropdownService {\n\n  private dropdownState = new BehaviorSubject<any>({});\n  dropdownState$ = this.dropdownState.asObservable();\n\n  toggle(state: IDropdownState): void {\n    this.dropdownState.next(state);\n  }\n}\n","import {\n  AfterContentInit,\n  ContentChildren,\n  DestroyRef,\n  Directive,\n  ElementRef,\n  forwardRef,\n  HostBinding,\n  HostListener,\n  inject,\n  Input,\n  OnInit,\n  QueryList\n} from '@angular/core';\nimport { FocusKeyManager } from '@angular/cdk/a11y';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { tap } from 'rxjs/operators';\n\nimport { ThemeDirective } from '../../shared/theme.directive';\nimport { DropdownService } from '../dropdown.service';\nimport { DropdownItemDirective } from '../dropdown-item/dropdown-item.directive';\n\n@Directive({\n  selector: '[cDropdownMenu]',\n  exportAs: 'cDropdownMenu',\n  standalone: true,\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['dark'] }],\n  host: { class: 'dropdown-menu' }\n})\nexport class DropdownMenuDirective implements OnInit, AfterContentInit {\n  readonly #destroyRef: DestroyRef = inject(DestroyRef);\n  public readonly elementRef: ElementRef = inject(ElementRef);\n  readonly #dropdownService: DropdownService = inject(DropdownService);\n  #focusKeyManager!: FocusKeyManager<DropdownItemDirective>;\n\n  /**\n   * Set alignment of dropdown menu.\n   * @type {'start' | 'end' }\n   */\n  @Input() alignment?: 'start' | 'end' | string;\n\n  /**\n   * Toggle the visibility of dropdown menu component.\n   * @type boolean\n   */\n  @Input() visible: boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'dropdown-menu': true,\n      [`dropdown-menu-${this.alignment}`]: !!this.alignment,\n      show: this.visible\n    };\n  }\n\n  @HostBinding('style') get hostStyles() {\n    // workaround for popper position calculate (see also: dropdown.component)\n    return {\n      visibility: this.visible ? null : '',\n      display: this.visible ? null : ''\n    };\n  }\n\n  @HostListener('keydown', ['$event']) onKeyDown($event: KeyboardEvent): void {\n    if (!this.visible) {\n      return;\n    }\n    if (['Space', 'ArrowDown'].includes($event.code)) {\n      $event.preventDefault();\n    }\n    this.#focusKeyManager.onKeydown($event);\n  }\n\n  @HostListener('keyup', ['$event']) onKeyUp($event: KeyboardEvent): void {\n    if (!this.visible) {\n      return;\n    }\n    if (['Tab'].includes($event.key)) {\n      if (this.#focusKeyManager.activeItem) {\n        $event.shiftKey ? this.#focusKeyManager.setPreviousItemActive() : this.#focusKeyManager.setNextItemActive();\n      } else {\n        this.#focusKeyManager.setFirstItemActive();\n      }\n    }\n  }\n\n  @ContentChildren(forwardRef(() => DropdownItemDirective), { descendants: true })\n  dropdownItemsContent!: QueryList<DropdownItemDirective>;\n\n  ngAfterContentInit(): void {\n    this.focusKeyManagerInit();\n\n    this.dropdownItemsContent.changes\n      .pipe(\n        tap((change) => {\n          this.focusKeyManagerInit();\n        }),\n        takeUntilDestroyed(this.#destroyRef)\n      )\n      .subscribe();\n  }\n\n  ngOnInit(): void {\n    this.#dropdownService.dropdownState$\n      .pipe(\n        tap((state) => {\n          if ('visible' in state) {\n            this.visible = state.visible === 'toggle' ? !this.visible : state.visible;\n            if (!this.visible) {\n              this.#focusKeyManager?.setActiveItem(-1);\n            }\n          }\n        }),\n        takeUntilDestroyed(this.#destroyRef)\n      )\n      .subscribe();\n  }\n\n  private focusKeyManagerInit(): void {\n    this.#focusKeyManager = new FocusKeyManager(this.dropdownItemsContent)\n      .withHomeAndEnd()\n      .withPageUpDown()\n      .withWrap()\n      .skipPredicate((dropdownItem) => dropdownItem.disabled === true);\n  }\n}\n","import { DOCUMENT } from '@angular/common';\nimport {\n  AfterContentInit,\n  AfterViewInit,\n  booleanAttribute,\n  ChangeDetectorRef,\n  Component,\n  ContentChild,\n  DestroyRef,\n  Directive,\n  ElementRef,\n  EventEmitter,\n  forwardRef,\n  HostBinding,\n  HostListener,\n  inject,\n  Inject,\n  Input,\n  NgZone,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Output,\n  Renderer2,\n  signal,\n  SimpleChanges\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { createPopper, Instance, Options, Placement } from '@popperjs/core';\n\nimport { ThemeDirective } from '../../shared';\nimport { DropdownMenuDirective } from '../dropdown-menu/dropdown-menu.directive';\nimport { DropdownService } from '../dropdown.service';\n\n// lightweight injection token\nexport abstract class DropdownToken {}\n\n@Directive({\n  selector: '[cDropdownToggle]',\n  providers: [{ provide: DropdownToken, useExisting: forwardRef(() => DropdownComponent) }],\n  exportAs: 'cDropdownToggle',\n  standalone: true\n})\nexport class DropdownToggleDirective implements AfterViewInit {\n  // injections\n  readonly #destroyRef = inject(DestroyRef);\n  public readonly elementRef = inject(ElementRef);\n  #dropdownService = inject(DropdownService);\n  public dropdown = inject(DropdownToken, { optional: true });\n\n  /**\n   * Toggle the disabled state for the toggler.\n   * @type DropdownComponent | undefined\n   * @default undefined\n   */\n  @Input() dropdownComponent?: DropdownComponent;\n\n  /**\n   * Disables the toggler.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) disabled: boolean = false;\n\n  /**\n   * Enables pseudo element caret on toggler.\n   * @type boolean\n   */\n  @Input() caret = true;\n\n  /**\n   * Create split button dropdowns with virtually the same markup as single button dropdowns,\n   * but with the addition of `.dropdown-toggle-split` class for proper spacing around the dropdown caret.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) split: boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'dropdown-toggle': this.caret,\n      'dropdown-toggle-split': this.split,\n      disabled: this.disabled\n    };\n  }\n\n  #ariaExpanded = signal(false);\n\n  @HostBinding('attr.aria-expanded')\n  get ariaExpanded() {\n    return this.#ariaExpanded();\n  }\n\n  @HostListener('click', ['$event'])\n  public onClick($event: MouseEvent): void {\n    $event.preventDefault();\n    !this.disabled && this.#dropdownService.toggle({ visible: 'toggle', dropdown: this.dropdown });\n  }\n\n  ngAfterViewInit(): void {\n    if (this.dropdownComponent) {\n      this.dropdown = this.dropdownComponent;\n      this.#dropdownService = this.dropdownComponent?.dropdownService;\n    }\n    if (this.dropdown) {\n      const dropdown = <DropdownComponent>this.dropdown;\n      dropdown?.visibleChange?.pipe(takeUntilDestroyed(this.#destroyRef)).subscribe((visible) => {\n        this.#ariaExpanded.set(visible);\n      });\n    }\n  }\n}\n\n@Component({\n  selector: 'c-dropdown',\n  template: '<ng-content />',\n  styleUrls: ['./dropdown.component.scss'],\n  exportAs: 'cDropdown',\n  providers: [DropdownService],\n  standalone: true,\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['dark'] }]\n})\nexport class DropdownComponent implements AfterContentInit, OnChanges, OnDestroy, OnInit {\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    private elementRef: ElementRef,\n    private renderer: Renderer2,\n    private ngZone: NgZone,\n    private changeDetectorRef: ChangeDetectorRef,\n    public dropdownService: DropdownService\n  ) {\n    this.dropdownStateSubscribe();\n  }\n\n  /**\n   * Set alignment of dropdown menu.\n   * @type {'start' | 'end' | { xs: 'start' | 'end' } | { sm: 'start' | 'end' } | { md: 'start' | 'end' } | { lg: 'start' | 'end' } | { xl: 'start' | 'end'} | { xxl: 'start' | 'end'}}\n   */\n  @Input() alignment?: string;\n\n  @Input() autoClose: boolean | 'inside' | 'outside' = true;\n\n  /**\n   * Sets a specified  direction and location of the dropdown menu.\n   * @type 'dropup' | 'dropend' | 'dropstart'\n   */\n  @Input() direction?: 'center' | 'dropup' | 'dropup-center' | 'dropend' | 'dropstart';\n\n  /**\n   * Describes the placement of your component after Popper.js has applied all the modifiers\n   * that may have flipped or altered the originally provided placement property.\n   * @type Placement\n   */\n  @Input() placement: Placement = 'bottom-start';\n\n  /**\n   * If you want to disable dynamic positioning set this property to `false`.\n   * @type boolean\n   * @default true\n   */\n  @Input({ transform: booleanAttribute }) popper: boolean = true;\n\n  /**\n   * Optional popper Options object, placement prop takes precedence over\n   * @type Partial<Options>\n   */\n  @Input()\n  set popperOptions(value: Partial<Options>) {\n    this._popperOptions = { ...this._popperOptions, ...value };\n  }\n\n  get popperOptions(): Partial<Options> {\n    let placement = this.placement;\n    switch (this.direction) {\n      case 'dropup': {\n        placement = 'top-start';\n        break;\n      }\n      case 'dropend': {\n        placement = 'right-start';\n        break;\n      }\n      case 'dropstart': {\n        placement = 'left-start';\n        break;\n      }\n      case 'center': {\n        placement = 'bottom';\n        break;\n      }\n      case 'dropup-center': {\n        placement = 'top';\n        break;\n      }\n    }\n    if (this.alignment === 'end') {\n      placement = 'bottom-end';\n    }\n    this._popperOptions = { ...this._popperOptions, placement: placement };\n    return this._popperOptions;\n  }\n\n  private _popperOptions: Partial<Options> = {\n    placement: this.placement,\n    modifiers: [],\n    strategy: 'absolute'\n  };\n\n  /**\n   * Set the dropdown variant to a btn-group, dropdown, input-group, and nav-item.\n   */\n  @Input() variant?: 'btn-group' | 'dropdown' | 'input-group' | 'nav-item' = 'dropdown';\n\n  /**\n   * Toggle the visibility of dropdown menu component.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    const _value = value;\n    if (_value !== this._visible) {\n      this.activeTrap = _value;\n      this._visible = _value;\n      _value ? this.createPopperInstance() : this.destroyPopperInstance();\n      this.visibleChange.emit(_value);\n    }\n  }\n\n  get visible(): boolean {\n    return this._visible;\n  }\n\n  private _visible = false;\n\n  @Output() visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n  dropdownContext = { $implicit: this.visible };\n  @ContentChild(DropdownToggleDirective) _toggler!: DropdownToggleDirective;\n  @ContentChild(DropdownMenuDirective) _menu!: DropdownMenuDirective;\n  @ContentChild(DropdownMenuDirective, { read: ElementRef }) _menuElementRef!: ElementRef;\n\n  public activeTrap = false;\n\n  private dropdownStateSubscription!: Subscription;\n  private popperInstance!: Instance | undefined;\n  private listeners: (() => void)[] = [];\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      dropdown: (this.variant === 'dropdown' || this.variant === 'nav-item') && !this.direction,\n      [`${this.direction}`]: !!this.direction,\n      [`${this.variant}`]: !!this.variant,\n      dropup: this.direction === 'dropup' || this.direction === 'dropup-center',\n      show: this.visible\n    };\n  }\n\n  // todo: find better solution\n  @HostBinding('style')\n  get hostStyle(): any {\n    return this.variant === 'input-group' ? { display: 'contents' } : {};\n  }\n\n  private clickedTarget!: HTMLElement;\n\n  @HostListener('click', ['$event'])\n  private onHostClick($event: MouseEvent): void {\n    this.clickedTarget = $event.target as HTMLElement;\n  }\n\n  dropdownStateSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      this.dropdownStateSubscription = this.dropdownService.dropdownState$\n        .pipe(\n          filter((state) => {\n            return this === state.dropdown;\n          })\n        )\n        .subscribe((state) => {\n          if ('visible' in state) {\n            state?.visible === 'toggle' ? this.toggleDropdown() : (this.visible = state.visible);\n          }\n        });\n    } else {\n      this.dropdownStateSubscription?.unsubscribe();\n    }\n  }\n\n  toggleDropdown(): void {\n    this.visible = !this.visible;\n  }\n\n  onClick(event: any): void {\n    if (!this._toggler?.elementRef.nativeElement.contains(event.target?.closest('[cDropdownToggle]'))) {\n      this.toggleDropdown();\n    }\n  }\n\n  ngAfterContentInit(): void {\n    if (this.variant === 'nav-item') {\n      this.renderer.addClass(this._toggler.elementRef.nativeElement, 'nav-link');\n    }\n  }\n\n  ngOnInit(): void {\n    this.setVisibleState(this.visible);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['visible'] && !changes['visible'].firstChange) {\n      this.setVisibleState(changes['visible'].currentValue);\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.clearListeners();\n    this.dropdownStateSubscribe(false);\n    this.destroyPopperInstance();\n  }\n\n  setVisibleState(value: boolean): void {\n    this.dropdownService.toggle({ visible: value, dropdown: this });\n  }\n\n  // todo: turn off popper in navbar-nav\n  createPopperInstance(): void {\n    if (this._toggler && this._menu) {\n      this.ngZone.runOutsideAngular(() => {\n        // workaround for popper position calculate (see also: dropdown-menu.component)\n        this._menu.elementRef.nativeElement.style.visibility = 'hidden';\n        this._menu.elementRef.nativeElement.style.display = 'block';\n        if (this.popper) {\n          this.popperInstance = createPopper(\n            this._toggler.elementRef.nativeElement,\n            this._menu.elementRef.nativeElement,\n            { ...this.popperOptions }\n          );\n        }\n        this.ngZone.run(() => {\n          this.setListeners();\n          this.changeDetectorRef.markForCheck();\n          this.changeDetectorRef.detectChanges();\n        });\n      });\n    }\n  }\n\n  destroyPopperInstance(): void {\n    this.clearListeners();\n    this.popperInstance?.destroy();\n    this.popperInstance = undefined;\n    this.changeDetectorRef.markForCheck();\n  }\n\n  private setListeners(): void {\n    this.listeners.push(\n      this.renderer.listen(this.document, 'click', (event) => {\n        const target = event.target as HTMLElement;\n        if (this._menuElementRef?.nativeElement.contains(event.target)) {\n          this.clickedTarget = target;\n        }\n        if (this._toggler?.elementRef.nativeElement.contains(event.target)) {\n          return;\n        }\n        if (this.autoClose === true) {\n          this.setVisibleState(false);\n          return;\n        }\n        if (this.clickedTarget === target && this.autoClose === 'inside') {\n          this.setVisibleState(false);\n          return;\n        }\n        if (this.clickedTarget !== target && this.autoClose === 'outside') {\n          this.setVisibleState(false);\n          return;\n        }\n      })\n    );\n    this.listeners.push(\n      this.renderer.listen(this.elementRef.nativeElement, 'keyup', (event) => {\n        if (event.key === 'Escape' && this.autoClose !== false) {\n          event.stopPropagation();\n          this.setVisibleState(false);\n          return;\n        }\n      })\n    );\n    this.listeners.push(\n      this.renderer.listen(this.document, 'keyup', (event) => {\n        if (event.key === 'Tab' && this.autoClose !== false && !this.elementRef.nativeElement.contains(event.target)) {\n          this.setVisibleState(false);\n          return;\n        }\n      })\n    );\n  }\n\n  private clearListeners(): void {\n    this.listeners.forEach((unListen) => {\n      unListen();\n    });\n    // @ts-ignore\n    this.listeners.fill(undefined);\n    this.listeners = [];\n  }\n}\n","import { Directive, ElementRef, HostBinding, HostListener, inject, Input, Optional } from '@angular/core';\nimport { FocusableOption, FocusOrigin } from '@angular/cdk/a11y';\nimport { DropdownService } from '../dropdown.service';\nimport { DropdownComponent } from '../dropdown/dropdown.component';\n\n@Directive({\n  selector: '[cDropdownItem]',\n  exportAs: 'cDropdownItem',\n  standalone: true,\n  host: { class: 'dropdown-item' }\n})\nexport class DropdownItemDirective implements FocusableOption {\n  /**\n   * Set active state to a dropdown-item.\n   * @type boolean\n   * @default undefined\n   */\n  @Input() active?: boolean;\n  /**\n   * Configure dropdown-item close dropdown behavior.\n   * @type boolean\n   * @default true\n   */\n  @Input() autoClose: boolean = true;\n  /**\n   * Disables a dropdown-item.\n   * @type boolean\n   * @default undefined\n   */\n  @Input() disabled?: boolean;\n\n  #elementRef: ElementRef = inject(ElementRef);\n\n  constructor(\n    private dropdownService: DropdownService,\n    @Optional() public dropdown?: DropdownComponent\n  ) {}\n\n  focus(origin?: FocusOrigin | undefined): void {\n    this.#elementRef?.nativeElement?.focus();\n  }\n\n  getLabel?(): string {\n    return this.#elementRef?.nativeElement?.textContent.trim();\n  }\n\n  @HostBinding('attr.aria-current')\n  get ariaCurrent(): string | null {\n    return this.active ? 'true' : null;\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'dropdown-item': true,\n      active: this.active,\n      disabled: this.disabled\n    };\n  }\n\n  @HostBinding('attr.tabindex')\n  @Input()\n  set tabIndex(value: string | number | null) {\n    this._tabIndex = value;\n  }\n\n  get tabIndex() {\n    return this.disabled ? '-1' : this._tabIndex;\n  }\n\n  private _tabIndex: string | number | null = null;\n\n  @HostBinding('attr.aria-disabled')\n  get isDisabled(): boolean | null {\n    return this.disabled || null;\n  }\n\n  @HostListener('click', ['$event'])\n  private onClick($event: MouseEvent): void {\n    if (this.autoClose) {\n      this.dropdownService.toggle({ visible: 'toggle', dropdown: this.dropdown });\n    }\n  }\n\n  @HostListener('keyup', ['$event'])\n  private onKeyUp($event: KeyboardEvent): void {\n    if ($event.key === 'Enter') {\n      if (this.autoClose) {\n        this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\n      }\n    }\n  }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cDropdownItemPlain]',\n  standalone: true,\n  host: { class: 'dropdown-item-text' }\n})\nexport class DropdownItemPlainDirective {}\n","import { AfterViewInit, Directive, HostBinding, HostListener, Input, Optional } from '@angular/core';\nimport { DropdownService } from '../dropdown.service';\nimport { DropdownComponent } from '../dropdown/dropdown.component';\n\n@Directive({\n  selector: '[cDropdownClose]',\n  exportAs: 'cDropdownClose',\n  standalone: true\n})\nexport class DropdownCloseDirective implements AfterViewInit {\n\n  constructor(\n    private dropdownService: DropdownService,\n    @Optional() public dropdown?: DropdownComponent\n  ) { }\n\n  /**\n   * Disables a dropdown-close directive.\n   * @type boolean\n   * @default undefined\n   */\n  @Input() disabled?: boolean;\n\n  @Input() dropdownComponent?: DropdownComponent;\n\n  ngAfterViewInit(): void {\n    if (this.dropdownComponent) {\n      this.dropdown = this.dropdownComponent;\n      this.dropdownService = this.dropdownComponent?.dropdownService;\n    }\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      disabled: this.disabled\n    };\n  }\n\n  @HostBinding('attr.tabindex')\n  @Input()\n  set tabIndex(value: string | number | null) {\n    this._tabIndex = value;\n  }\n  get tabIndex() {\n    return this.disabled ? '-1' : this._tabIndex;\n  }\n  private _tabIndex: string | number | null = null;\n\n  @HostBinding('attr.aria-disabled')\n  get isDisabled(): boolean | null {\n    return this.disabled || null;\n  }\n\n  @HostListener('click', ['$event'])\n  private onClick($event: MouseEvent): void {\n    !this.disabled && this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\n  }\n\n  @HostListener('keyup', ['$event'])\n  private onKeyUp($event: KeyboardEvent): void {\n    if ($event.key === 'Enter') {\n      !this.disabled && this.dropdownService.toggle({ visible: false, dropdown: this.dropdown });\n    }\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { DropdownComponent, DropdownToggleDirective } from './dropdown/dropdown.component';\nimport { DropdownDividerDirective } from './dropdown-divider/dropdown-divider.directive';\nimport { DropdownHeaderDirective } from './dropdown-header/dropdown-header.directive';\nimport { DropdownItemDirective } from './dropdown-item/dropdown-item.directive';\nimport { DropdownItemPlainDirective } from './dropdown-item/dropdown-item-plain.directive';\nimport { DropdownMenuDirective } from './dropdown-menu/dropdown-menu.directive';\nimport { DropdownService } from './dropdown.service';\nimport { DropdownCloseDirective } from './dropdown-close/dropdown-close.directive';\n\n@NgModule({\n  imports: [\n    DropdownComponent,\n    DropdownCloseDirective,\n    DropdownDividerDirective,\n    DropdownHeaderDirective,\n    DropdownItemDirective,\n    DropdownItemPlainDirective,\n    DropdownMenuDirective,\n    DropdownToggleDirective\n  ],\n  exports: [\n    DropdownComponent,\n    DropdownCloseDirective,\n    DropdownDividerDirective,\n    DropdownHeaderDirective,\n    DropdownItemDirective,\n    DropdownItemPlainDirective,\n    DropdownMenuDirective,\n    DropdownToggleDirective\n  ],\n  providers: [DropdownService]\n})\nexport class DropdownModule {}\n","import { Component, computed, input, InputSignal } from '@angular/core';\n\nimport { Positions } from '../coreui.types';\n\n@Component({\n  selector: 'c-footer, [cFooter]',\n  template: '<ng-content />',\n  standalone: true,\n  host: {\n    class: 'footer',\n    '[class]': 'hostClasses()',\n    '[attr.role]': 'role()'\n  }\n})\nexport class FooterComponent {\n  /**\n   * Place footer in non-static positions. [docs]\n   * @type Positions\n   */\n  readonly position: InputSignal<Positions | undefined> = input();\n\n  /**\n   * Default role for footer. [docs]\n   * @type string\n   * @default 'contentinfo'\n   */\n  readonly role: InputSignal<string> = input('contentinfo');\n\n  readonly hostClasses = computed(() => {\n    return {\n      footer: true,\n      [`footer-${this.position()}`]: !!this.position()\n    } as Record<string, boolean>;\n  });\n}\n","import { NgModule } from '@angular/core';\n\nimport { FooterComponent } from './footer.component';\n\n@NgModule({\n  imports: [FooterComponent],\n  exports: [FooterComponent]\n})\nexport class FooterModule {}\n","import { booleanAttribute, Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: 'form[cForm]',\n  standalone: true\n})\nexport class FormDirective {\n\n  /**\n   * Mark a form as validated. If you set it `true`, all validation styles will be applied to the form. [docs]\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) validated: string | boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'was-validated': this.validated\n    };\n  }\n}\n","import { booleanAttribute, Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-form-feedback',\n  template: '<ng-content />',\n  standalone: true\n})\nexport class FormFeedbackComponent {\n\n  /**\n   * If your form layout allows it, you can display validation feedback in a styled tooltip.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) tooltip: string | boolean = false;\n\n  /**\n   * Set component validation state to valid.\n   * @type boolean\n   */\n  @Input() valid?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'valid-feedback': this.valid === true && !this.tooltip,\n      'valid-tooltip': this.valid === true && this.tooltip,\n      'invalid-feedback': this.valid !== true && !this.tooltip,\n      'invalid-tooltip': this.valid !== true && this.tooltip\n    };\n  }\n}\n","import { Component, computed, input } from '@angular/core';\n\n@Component({\n  selector: 'c-input-group',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'input-group', '[class]': 'hostClasses()' }\n})\nexport class InputGroupComponent {\n  /**\n   * Size the component small or large.\n   */\n  readonly sizing = input<string | 'sm' | 'lg' | ''>('');\n\n  readonly hostClasses = computed(() => {\n    const sizing = this.sizing();\n    return {\n      'input-group': true,\n      [`input-group-${sizing}`]: !!sizing\n    } as Record<string, boolean>;\n  });\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: 'select[cSelect]',\n  standalone: true,\n  host: { class: 'form-select' }\n})\nexport class FormSelectDirective {\n  /**\n   * Size the component small or large.\n   */\n  @Input() sizing?: '' | 'sm' | 'lg' | string = '';\n\n  /**\n   * Set component validation state to valid.\n   * @type {boolean | undefined}\n   */\n  @Input() valid?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'form-select': true,\n      [`form-select-${this.sizing}`]: !!this.sizing,\n      'is-valid': this.valid === true,\n      'is-invalid': this.valid === false\n    };\n  }\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: '[cLabel]',\n  standalone: true,\n  host: { class: 'form-label' }\n})\nexport class FormLabelDirective {\n  /**\n   * For horizontal forms set labels to 'col' and make them vertically centered with their associated form controls.\n   * @type 'col'\n   */\n  @Input('cLabel') col: 'col' | '' = '';\n  /**\n   * Size the label small or large.\n   */\n  @Input() sizing: '' | 'sm' | 'lg' | string = '';\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'form-label': true,\n      'col-form-label': this.col === 'col',\n      [`col-form-label-${this.sizing}`]: !!this.sizing && this.col === 'col'\n    };\n  }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: 'label[cFormCheckLabel]',\n  standalone: true,\n  host: { class: 'form-check-label' }\n})\nexport class FormCheckLabelDirective {}\n","import { AfterContentInit, booleanAttribute, Component, ContentChild, HostBinding, Input } from '@angular/core';\n\nimport { FormCheckLabelDirective } from './form-check-label.directive';\n\n@Component({\n  selector: 'c-form-check',\n  template: '<ng-content />',\n  exportAs: 'cFormCheck',\n  standalone: true\n})\nexport class FormCheckComponent implements AfterContentInit {\n\n  /**\n   * Group checkboxes or radios on the same horizontal row.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) inline: string | boolean = false;\n\n  /**\n   * Put checkboxes or radios on the opposite side.\n   * @type boolean\n   * @default false\n   * @since 4.4.7\n   */\n  @Input({ transform: booleanAttribute }) reverse: string | boolean = false;\n\n  /**\n   * Size the component large or extra large. Works only with `[switch]=\"true\"` [docs]\n   * @type {'lg' | 'xl' | ''}\n   */\n  @Input() sizing?: 'lg' | 'xl' | '' = '';\n\n  /**\n   * Render a toggle switch on for checkbox.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) switch: string | boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n\n    return {\n      'form-check': this.formCheckClass,\n      'form-switch': this.switch,\n      [`form-switch-${this.sizing}`]: this.switch && !!this.sizing,\n      'form-check-inline': this.inline,\n      'form-check-reverse': this.reverse\n    };\n  }\n\n  @ContentChild(FormCheckLabelDirective) formCheckLabel!: FormCheckLabelDirective;\n\n  #formCheckClass = true;\n  get formCheckClass() {\n    return this.#formCheckClass;\n  }\n\n  ngAfterContentInit(): void {\n    this.#formCheckClass = !!this.formCheckLabel;\n  }\n}\n","import { booleanAttribute, Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\n\n@Directive({\n  selector: 'input[cFormCheckInput]',\n  standalone: true,\n  host: { class: 'form-check-input' }\n})\nexport class FormCheckInputDirective {\n  /**\n   * Specifies the type of component.\n   * @type {'checkbox' | 'radio'}\n   * @default 'checkbox'\n   */\n  @HostBinding('attr.type')\n  @Input()\n  type: 'checkbox' | 'radio' = 'checkbox';\n\n  /**\n   * Set component indeterminate state.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set indeterminate(value: boolean) {\n    const indeterminate = value;\n    if (this._indeterminate !== indeterminate) {\n      this._indeterminate = indeterminate;\n      const htmlInputElement = this.hostElement.nativeElement as HTMLInputElement;\n      if (indeterminate) {\n        this.renderer.setProperty(htmlInputElement, 'checked', false);\n      }\n      this.renderer.setProperty(htmlInputElement, 'indeterminate', indeterminate);\n    }\n  }\n\n  get indeterminate() {\n    return this._indeterminate;\n  }\n\n  private _indeterminate = false;\n\n  /**\n   * Set component validation state to valid.\n   * @type boolean\n   * @default undefined\n   */\n  @Input() valid?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'form-check-input': true,\n      'is-valid': this.valid === true,\n      'is-invalid': this.valid === false\n    };\n  }\n\n  @Input({ transform: booleanAttribute })\n  set checked(value: boolean) {\n    const checked = value;\n    const htmlInputElement = this.hostElement?.nativeElement as HTMLInputElement;\n    if (htmlInputElement) {\n      this.renderer.setProperty(htmlInputElement, 'checked', checked);\n    }\n  }\n\n  get checked(): boolean {\n    return this.hostElement?.nativeElement?.checked;\n  }\n\n  constructor(\n    private renderer: Renderer2,\n    private hostElement: ElementRef\n  ) {}\n}\n","import { booleanAttribute, Directive, ElementRef, HostBinding, Input, OnInit } from '@angular/core';\n\nimport { InputType } from '../../coreui.types';\n\n@Directive({\n  selector: 'input[cFormControl], textarea[cFormControl]',\n  standalone: true\n})\nexport class FormControlDirective implements OnInit {\n\n  constructor(\n    private hostElement: ElementRef\n  ) {}\n\n  /**\n   * Size the component small or large.\n   * @type {'sm' | 'lg'}\n   */\n  @Input() sizing?: '' | 'sm' | 'lg' | string = '';\n  /**\n   * Set component validation state to valid.\n   * @type boolean | undefined\n   */\n  @Input() valid?: boolean;\n\n  /**\n   * Specifies the type of input element.\n   */\n  @HostBinding('attr.type')\n  @Input() type: Omit<InputType, 'checkbox' | 'radio'> = 'text';\n\n  /**\n   * Render the component styled as plain text. Removes the default form field styling and preserve the correct margin and padding. Recommend to use alongside `readonly` [docs]\n   */\n  @Input({ transform: booleanAttribute }) plaintext: string | boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n\n    const isRangeType = this.type === 'range';\n\n    return {\n      'form-control': !isRangeType && !this.plaintext,\n      'form-control-plaintext': !isRangeType && this.plaintext,\n      'form-control-color': this.type === 'color',\n      'form-range': isRangeType,\n      [`form-control-${this.sizing}`]: !!this.sizing && !isRangeType,\n      'is-valid': this.valid === true,\n      'is-invalid': this.valid === false\n    };\n  }\n\n  get hostTag(): string {\n    return this.hostElement.nativeElement.tagName;\n  }\n\n  ngOnInit(): void {\n    const hostTag = this.hostTag.toLowerCase();\n    if (hostTag !== 'input' && hostTag !== 'textarea') {\n      console.warn(`CoreUI [cFormControl] works with '<input>' and '<textarea>' - not with '<${hostTag}>'`);\n    }\n  }\n\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cFormText]',\n  standalone: true,\n  host: { class: 'form-text' }\n})\nexport class FormTextDirective {}\n","import { booleanAttribute, Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: '[cFormFloating]',\n  standalone: true\n})\nexport class FormFloatingDirective {\n  /**\n   * Enable floating labels\n   * @type boolean\n   */\n  @Input({ alias: 'cFormFloating', transform: booleanAttribute }) floating: string | boolean = true;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'form-floating': this.floating\n    };\n  }\n}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cInputGroupText]',\n  standalone: true,\n  host: { class: 'input-group-text' }\n})\nexport class InputGroupTextDirective {}\n","import { NgModule } from '@angular/core';\nimport { FormDirective } from './form/form.directive';\nimport { FormFeedbackComponent } from './form-feedback/form-feedback.component';\nimport { InputGroupComponent } from './input-group/input-group.component';\nimport { FormSelectDirective } from './form-select/form-select.directive';\nimport { FormLabelDirective } from './form-label/form-label.directive';\nimport { FormCheckComponent } from './form-check/form-check.component';\nimport { FormControlDirective } from './form-control/form-control.directive';\nimport { FormTextDirective } from './form-text/form-text.directive';\nimport { FormFloatingDirective } from './form-floating/form-floating.directive';\nimport { InputGroupTextDirective } from './input-group-text/input-group-text.directive';\nimport { FormCheckLabelDirective } from './form-check/form-check-label.directive';\nimport { FormCheckInputDirective } from './form-check/form-check-input.directive';\n\n@NgModule({\n  imports: [\n    FormDirective,\n    FormCheckComponent,\n    FormCheckLabelDirective,\n    FormCheckInputDirective,\n    FormControlDirective,\n    FormFeedbackComponent,\n    FormFloatingDirective,\n    FormLabelDirective,\n    FormSelectDirective,\n    FormTextDirective,\n    InputGroupComponent,\n    InputGroupTextDirective\n  ],\n  exports: [\n    FormDirective,\n    FormCheckComponent,\n    FormCheckLabelDirective,\n    FormCheckInputDirective,\n    FormControlDirective,\n    FormFeedbackComponent,\n    FormFloatingDirective,\n    FormLabelDirective,\n    FormSelectDirective,\n    FormTextDirective,\n    InputGroupComponent,\n    InputGroupTextDirective\n  ]\n})\nexport class FormModule {}\n","import { booleanAttribute, Component, computed, input, InputSignal, InputSignalWithTransform } from '@angular/core';\n\nimport { IContainer } from './container.type';\nimport { Breakpoints } from '../coreui.types';\n\n@Component({\n  selector: 'c-container, [cContainer]',\n  template: '<ng-content />',\n  styleUrls: ['./container.component.scss'],\n  standalone: true,\n  host: { '[class]': 'hostClasses()' }\n})\nexport class ContainerComponent implements IContainer {\n  /**\n   * Set container 100% wide until a breakpoint.\n   */\n  readonly breakpoint: InputSignal<Exclude<Breakpoints, 'xs'>> = input<Exclude<Breakpoints, 'xs'>>('');\n\n  /**\n   * Set container 100% wide, spanning the entire width of the viewport.\n   * @type InputSignalWithTransform<unknown, boolean>\n   */\n  readonly fluid: InputSignalWithTransform<unknown, boolean> = input<unknown, boolean>(false, {\n    transform: booleanAttribute\n  });\n\n  readonly hostClasses = computed(() => {\n    const breakpoint = this.breakpoint();\n    const fluid = this.fluid();\n    return {\n      container: !fluid && !breakpoint,\n      'container-fluid': !!fluid,\n      [`container-${breakpoint}`]: !!breakpoint\n    } as Record<string, boolean>;\n  });\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { BooleanInput, coerceBooleanProperty, coerceNumberProperty, NumberInput } from '@angular/cdk/coercion';\n\nimport { ColOrder, ICol } from './col.type';\nimport { BreakpointInfix } from '../coreui.types';\n\n@Directive({\n  selector: '[cCol]',\n  standalone: true\n})\nexport class ColDirective implements ICol {\n\n  static ngAcceptInputType_cCol: (BooleanInput | NumberInput);\n  static ngAcceptInputType_xs: (BooleanInput | NumberInput);\n  static ngAcceptInputType_sm: (BooleanInput | NumberInput);\n  static ngAcceptInputType_md: (BooleanInput | NumberInput);\n  static ngAcceptInputType_lg: (BooleanInput | NumberInput);\n  static ngAcceptInputType_xl: (BooleanInput | NumberInput);\n  static ngAcceptInputType_xxl: (BooleanInput | NumberInput);\n\n  /**\n   * The number of columns/offset/order on extra small devices (<576px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set cCol(value: (BooleanInput | NumberInput)) {\n    this.xs = this.xs || this.coerceInput(value);\n  }\n  @Input()\n  set xs(value) {\n    this._xs = this.coerceInput(value);\n  }\n  get xs(): (BooleanInput | NumberInput) {\n    return this._xs;\n  }\n  private _xs: (BooleanInput | NumberInput) = false;\n\n  /**\n   * The number of columns/offset/order on small devices (<768px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set sm(value) {\n    this._sm = this.coerceInput(value);\n  }\n  get sm(): (BooleanInput | NumberInput) {\n    return this._sm;\n  }\n  private _sm: (BooleanInput | NumberInput) = false;\n\n  /**\n   * The number of columns/offset/order on medium devices (<992px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set md(value) {\n    this._md = this.coerceInput(value);\n  }\n  get md(): (BooleanInput | NumberInput) {\n    return this._md;\n  }\n  private _md: (BooleanInput | NumberInput) = false;\n\n  /**\n   * The number of columns/offset/order on large devices (<1200px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set lg(value) {\n    this._lg = this.coerceInput(value);\n  }\n  get lg(): (BooleanInput | NumberInput) {\n    return this._lg;\n  }\n  private _lg: (BooleanInput | NumberInput) = false;\n\n  /**\n   * The number of columns/offset/order on X-Large devices (<1400px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set xl(value) {\n    this._xl = this.coerceInput(value);\n  }\n  get xl(): (BooleanInput | NumberInput) {\n    return this._xl;\n  }\n  private _xl: (BooleanInput | NumberInput) = false;\n\n  /**\n   * The number of columns/offset/order on XX-Large devices (≥1400px).\n   * @type { 'auto' | number |  boolean }\n   */\n  @Input()\n  set xxl(value) {\n    this._xxl = this.coerceInput(value);\n  }\n  get xxl(): (BooleanInput | NumberInput) {\n    return this._xxl;\n  }\n  private _xxl: (BooleanInput | NumberInput) = false;\n\n  @Input() offset?: (number | { 'xs'?: number, sm?: number, md?: number, lg?: number, xl?: number, xxl?: number });\n  @Input() order?: (ColOrder | { xs?: ColOrder, sm?: ColOrder, md?: ColOrder, lg?: ColOrder, xl?: ColOrder, xxl?: ColOrder });\n\n  @HostBinding('class')\n  get hostClasses(): any {\n\n    const classes: any = {\n      col: true\n    };\n\n    Object.keys(BreakpointInfix).forEach((breakpoint) => {\n      // @ts-ignore\n      const value: number | string | boolean = this[breakpoint];\n      const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\n      classes[`col${infix}`] = value === true;\n      classes[`col${infix}-${value}`] = (typeof value === 'number') || (typeof value === 'string');\n    });\n\n    if (typeof this.offset === 'object') {\n      const offset = { ...this.offset };\n      Object.entries(offset).forEach((entry) => {\n        const [breakpoint, value] = [...entry];\n        const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\n        classes[`offset${infix}-${value}`] = value >= 0 && value <= 11;\n      });\n    } else {\n      classes[`offset-${this.offset}`] = (typeof this.offset === 'number') && this.offset > 0 && this.offset <= 11;\n    }\n\n    if (typeof this.order === 'object') {\n      const order = { ...this.order };\n      Object.entries(order).forEach((entry) => {\n        const [breakpoint, value] = [...entry];\n        const infix = breakpoint === 'xs' ? '' : `-${breakpoint}`;\n        classes[`order${infix}-${value}`] = value;\n      });\n    } else {\n      classes[`order-${this.order}`] = !!this.order;\n    }\n\n    // if there is no 'col' class, add one\n    classes.col = (!Object.entries(classes).filter(i => i[0].startsWith('col-') && i[1]).length) || this.xs === true;\n    return classes;\n  }\n\n  coerceInput(value: (BooleanInput | NumberInput)) {\n    if (value === 'auto') {\n      return value;\n    }\n    if (value === '' || value === undefined || value === null) {\n      return coerceBooleanProperty(value);\n    }\n    if (typeof value === 'boolean') {\n      return value;\n    }\n    return coerceNumberProperty(value);\n  }\n}\n","import { Component } from '@angular/core';\n\nimport { ColDirective } from './col.directive';\n\n@Component({\n  selector: 'c-col',\n  template: '<ng-content />',\n  styleUrls: ['./col.component.scss'],\n  standalone: true\n})\nexport class ColComponent extends ColDirective {}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\nimport { BreakpointInfix } from '../coreui.types';\nimport { IRow, NumberOfColumns } from './row.type';\n\n@Directive({\n  selector: '[cRow]',\n  standalone: true,\n  host: { class: 'row' }\n})\nexport class RowDirective implements IRow {\n  /**\n   * The number of columns/offset/order on extra small devices (<576px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() xs?: NumberOfColumns;\n  /**\n   * The number of columns/offset/order on small devices (<768px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() sm?: NumberOfColumns;\n  /**\n   * The number of columns/offset/order on medium devices (<992px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() md?: NumberOfColumns;\n  /**\n   * The number of columns/offset/order on large devices (<1200px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() lg?: NumberOfColumns;\n  /**\n   * The number of columns/offset/order on X-Large devices (<1400px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() xl?: NumberOfColumns;\n  /**\n   * The number of columns/offset/order on XX-Large devices (≥1400px).\n   * @type {{ cols: 'auto' | number }\n   */\n  @Input() xxl?: NumberOfColumns;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    const cols = this.xs;\n\n    const classes: any = {\n      row: true,\n      [`row-cols-${cols}`]: !!cols\n    };\n\n    Object.keys(BreakpointInfix).forEach((breakpoint) => {\n      // @ts-ignore\n      const value: any = this[breakpoint];\n      if (typeof value === 'number' || typeof value === 'string') {\n        const infix: string = breakpoint === 'xs' ? '' : `-${breakpoint}`;\n        classes[`row-cols${infix}-${value}`] = !!value;\n      }\n    });\n\n    return classes;\n  }\n}\n","import { Component } from '@angular/core';\n\nimport { RowDirective } from './row.directive';\n\n@Component({\n  selector: 'c-row',\n  template: '<ng-content />',\n  standalone: true\n})\nexport class RowComponent extends RowDirective {}\n","import { Directive, HostBinding, Input } from '@angular/core';\n\nimport { BreakpointInfix } from '../coreui.types';\nimport { GutterBreakpoints, Gutters, IGutter, IGutterObject } from './gutter.type';\n\n@Directive({\n  // eslint-disable-next-line @angular-eslint/directive-selector\n  selector: '[gutter]',\n  standalone: true\n})\nexport class GutterDirective implements IGutter {\n  /**\n   * Define padding between columns to space and align content responsively in the Bootstrap grid system.\n   */\n  @Input() gutter: IGutterObject | GutterBreakpoints | Gutters = {};\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    let gutterClass: any;\n\n    if (typeof this.gutter === 'number') {\n      gutterClass = GutterDirective.getGutterClasses({ g: this.gutter });\n      return gutterClass;\n    }\n\n    {\n      // @ts-ignore\n      const { g, gx, gy } = { ...this.gutter };\n      gutterClass = GutterDirective.getGutterClasses({ g, gx, gy });\n    }\n\n    Object.keys(BreakpointInfix).forEach((key) => {\n      // @ts-ignore\n      const gutter = this.gutter[key] ? { ...this.gutter[key] } : undefined;\n      if (gutter) {\n        const classes = GutterDirective.getGutterClasses(gutter, key);\n        gutterClass = { ...gutterClass, ...classes };\n      }\n    });\n    return gutterClass;\n  }\n\n  private static getGutterClasses(gutter: IGutterObject, breakpoint?: string): any {\n    const { g, gx, gy } = { ...gutter };\n    const infix = breakpoint ? `-${breakpoint}` : '';\n    return {\n      [`g${infix}-${g}`]: typeof g === 'number',\n      [`gx${infix}-${gx}`]: typeof gx === 'number',\n      [`gy${infix}-${gy}`]: typeof gy === 'number'\n    };\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport { ContainerComponent } from './container.component';\nimport { RowComponent } from './row.component';\nimport { ColComponent } from './col.component';\nimport { RowDirective } from './row.directive';\nimport { ColDirective } from './col.directive';\nimport { GutterDirective } from './gutter.directive';\n\n@NgModule({\n  imports: [\n    ColComponent,\n    ColDirective,\n    ContainerComponent,\n    GutterDirective,\n    RowComponent,\n    RowDirective\n  ],\n  exports: [\n    ColComponent,\n    ColDirective,\n    ContainerComponent,\n    GutterDirective,\n    RowComponent,\n    RowDirective\n  ]\n})\nexport class GridModule {}\n","import { Component, computed, input, InputSignal } from '@angular/core';\nimport { NgClass } from '@angular/common';\n\nimport { Positions } from '../../coreui.types';\n\ntype Container = boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid';\n\n@Component({\n  selector: 'c-header, [c-header]',\n  templateUrl: './header.component.html',\n  standalone: true,\n  imports: [NgClass],\n  host: { '[attr.role]': 'role()', '[class]': 'hostClasses()' }\n})\nexport class HeaderComponent {\n  /**\n   * Defines optional container wrapping children elements.\n   */\n  readonly container = input<Container>();\n  /**\n   * Place header in non-static positions.\n   */\n  readonly position = input<Positions>();\n  /**\n   * Default role for header. [docs]\n   * @type string\n   * @default 'banner'\n   */\n  readonly role: InputSignal<string> = input('banner');\n\n  readonly hostClasses = computed(() => {\n    return !!this.container() ? this.containerClasses() : this.headerClasses();\n  });\n\n  readonly headerClasses = computed(() => {\n    const position = this.position();\n    return {\n      header: true,\n      [`header-${position}`]: !!position\n    } as Record<string, boolean>;\n  });\n\n  readonly containerClasses = computed(() => {\n    const container = this.container();\n    return {\n      container: container === true,\n      [`container-${container}`]: typeof container === 'string'\n    } as Record<string, boolean>;\n  });\n}\n","@if (!!container()) {\n  <div [ngClass]=\"headerClasses()\">\n    <ng-content />\n  </div>\n} @else {\n  <ng-content />\n}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-header-brand',\n  template: '<ng-content />',\n  standalone: true\n})\nexport class HeaderBrandComponent {\n  /**\n   * Default role for header-brand. [docs]\n   * @type string\n   * @default 'button'\n   */\n  @HostBinding('attr.role')\n  @Input() role = 'button';\n\n  @HostBinding('class.header-brand') headerBrandClass = true;\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n  selector: 'c-header-divider, [cHeaderDivider]',\n  template: ``,\n  standalone: true\n})\nexport class HeaderDividerComponent {\n\n  @HostBinding('class.header-divider') headerDividerClass = true;\n\n}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-header-nav',\n  template: '<ng-content />',\n  styleUrls: ['./header-nav.component.scss'],\n  standalone: true\n})\nexport class HeaderNavComponent {\n  /**\n   * Default role for header-nav. [docs]\n   * @type string\n   * @default 'navigation'\n   */\n  @HostBinding('attr.role')\n  @Input() role = 'navigation';\n\n  @HostBinding('class.header-nav') headerNavClass = true;\n}\n","import { Component, HostBinding } from '@angular/core';\n\n@Component({\n  selector: 'c-header-text, [cHeaderText]',\n  template: '<ng-content />',\n  standalone: true\n})\nexport class HeaderTextComponent {\n  @HostBinding('class.header-text') headerTextClass = true;\n}\n","import { AfterContentInit, Directive, ElementRef, HostBinding, Input, Renderer2 } from '@angular/core';\n\n@Directive({\n  selector: '[cHeaderToggler]',\n  standalone: true\n})\nexport class HeaderTogglerDirective implements AfterContentInit {\n\n  @HostBinding('class.header-toggler') headerToggler = true;\n  /**\n   * Default role for header-toggler. [docs]\n   * @type string\n   * @default 'button'\n   */\n  @HostBinding('attr.type')\n  @Input() type = 'button';\n  /**\n   * Default aria-label attr for header-toggler. [docs]\n   * @type string\n   * @default 'Toggle navigation'\n   */\n  @HostBinding('attr.aria-label')\n  @Input() ariaLabel = 'Toggle navigation';\n\n  private hasContent!: boolean;\n\n  constructor(\n    private renderer: Renderer2,\n    private hostElement: ElementRef\n  ) { }\n\n  addDefaultIcon(): void {\n    const span = this.renderer.createElement('span');\n    this.renderer.addClass(span, 'header-toggler-icon');\n    this.renderer.appendChild(this.hostElement.nativeElement, span);\n  }\n\n  ngAfterContentInit(): void {\n    this.hasContent = this.hostElement.nativeElement.childNodes.length > 0;\n    if (!this.hasContent) {\n      this.addDefaultIcon();\n    }\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport { HeaderComponent } from './header/header.component';\nimport { HeaderBrandComponent } from './header-brand/header-brand.component';\nimport { HeaderDividerComponent } from './header-divider/header-divider.component';\nimport { HeaderNavComponent } from './header-nav/header-nav.component';\nimport { HeaderTextComponent } from './header-text/header-text.component';\nimport { HeaderTogglerDirective } from './header-toggler/header-toggler.directive';\n\n@NgModule({\n  imports: [\n    HeaderComponent,\n    HeaderBrandComponent,\n    HeaderDividerComponent,\n    HeaderNavComponent,\n    HeaderTextComponent,\n    HeaderTogglerDirective\n  ],\n  exports: [\n    HeaderComponent,\n    HeaderBrandComponent,\n    HeaderDividerComponent,\n    HeaderNavComponent,\n    HeaderTextComponent,\n    HeaderTogglerDirective\n  ]\n})\nexport class HeaderModule {}\n","import { booleanAttribute, computed, Directive, input, InputSignal, InputSignalWithTransform } from '@angular/core';\n\n@Directive({\n  selector: '[cImg]',\n  standalone: true,\n  host: {\n    '[class]': 'hostClasses()',\n    '[style]': 'hostStyles()'\n  }\n})\nexport class ImgDirective {\n  /**\n   * Set the horizontal aligment.\n   * @type {'' | 'start' | 'end' | 'center'}\n   */\n  readonly align: InputSignal<'' | 'start' | 'end' | 'center'> = input<'' | 'start' | 'end' | 'center'>('');\n\n  /**\n   * Make image responsive.\n   * @type boolean\n   */\n  readonly fluid: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Make image rounded.\n   * @type boolean\n   */\n  readonly rounded: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Give an image a rounded 1px border appearance.\n   * @type boolean\n   */\n  readonly thumbnail: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Color for image placeholder.\n   */\n  readonly placeholderColor = input('transparent');\n\n  readonly hostStyles = computed(() => {\n    return { backgroundColor: this.placeholderColor() };\n  });\n\n  readonly hostClasses = computed(() => {\n    const align = this.align();\n    return {\n      [`float-${align}`]: align === 'start' || align === 'end',\n      'd-block': align === 'center',\n      'mx-auto': align === 'center',\n      'img-fluid': this.fluid(),\n      rounded: this.rounded(),\n      'img-thumbnail': this.thumbnail()\n    } as Record<string, boolean>;\n  });\n}\n","import { NgModule } from '@angular/core';\nimport { ImgDirective } from './img.directive';\n\n@NgModule({\n  imports: [ImgDirective],\n  exports: [ImgDirective]\n})\nexport class ImgModule {}\n","import { booleanAttribute, computed, Directive, input, InputSignalWithTransform } from '@angular/core';\nimport { Sizes } from '../coreui.types';\n\n@Directive({\n  selector: '[cListGroup]',\n  standalone: true,\n  host: {\n    class: 'list-group',\n    '[class]': 'hostClasses()'\n  }\n})\nexport class ListGroupDirective {\n  /**\n   * Remove some borders and rounded corners to render list group items edge-to-edge in a parent component (e.g., `<CCard>`).\n   * @type boolean\n   */\n  readonly flush: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  /**\n   * Specify horizontal layout type.\n   */\n  readonly horizontal = input<boolean | Sizes>();\n\n  readonly hostClasses = computed(() => {\n    const horizontal = this.horizontal();\n    return {\n      'list-group': true,\n      'list-group-horizontal': horizontal === true || horizontal === '',\n      [`list-group-horizontal-${horizontal}`]: !!horizontal && typeof horizontal !== 'boolean',\n      'list-group-flush': this.flush()\n    } as Record<string, boolean>;\n  });\n}\n","import {\n  booleanAttribute,\n  computed,\n  Directive,\n  ElementRef,\n  inject,\n  input,\n  InputSignal,\n  InputSignalWithTransform\n} from '@angular/core';\nimport { Colors } from '../coreui.types';\n\n@Directive({\n  selector: '[cListGroupItem], c-list-group-item',\n  exportAs: 'cListGroupItem',\n  standalone: true,\n  host: {\n    '[class]': 'hostClasses()',\n    '[attr.aria-disabled]': 'ariaDisabled()',\n    '[attr.aria-current]': 'ariaCurrent()',\n    '[attr.disabled]': 'attrDisabled()',\n    '[attr.tabindex]': 'tabIndex()'\n  }\n})\nexport class ListGroupItemDirective {\n  readonly hostElement = inject(ElementRef);\n\n  /**\n   * Toggle the active state for the component.\n   * @type InputSignal<boolean | undefined>\n   */\n  readonly active: InputSignal<boolean | undefined> = input();\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type InputSignal<boolean | undefined>\n   */\n  readonly color: InputSignal<Colors | undefined> = input();\n\n  /**\n   * Set disabled attr for the host element. [docs]\n   * @type boolean\n   */\n  readonly disabled: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  readonly hostClasses = computed(() => {\n    const host: HTMLElement = this.hostElement.nativeElement;\n    return {\n      'list-group-item': true,\n      'list-group-item-action': host.nodeName === 'A' || host.nodeName === 'BUTTON',\n      active: !!this.active(),\n      disabled: this._disabled(),\n      [`list-group-item-${this.color()}`]: !!this.color()\n    };\n  });\n\n  readonly _disabled = computed(() => this.disabled());\n\n  readonly ariaDisabled = computed(() => {\n    return this._disabled() ? true : null;\n  });\n\n  readonly attrDisabled = computed(() => {\n    return this._disabled() ? '' : null;\n  });\n\n  readonly tabIndex = computed(() => {\n    return this._disabled() ? '-1' : null;\n  });\n\n  readonly ariaCurrent = computed(() => {\n    return <boolean>this.active() || null;\n  });\n}\n","import { NgModule } from '@angular/core';\n\nimport { ListGroupDirective } from './list-group.directive';\nimport { ListGroupItemDirective } from './list-group-item.directive';\n\n@NgModule({\n  exports: [ListGroupDirective, ListGroupItemDirective],\n  imports: [ListGroupDirective, ListGroupItemDirective]\n})\nexport class ListGroupModule {}\n","import { booleanAttribute, Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: '[cNavLink]',\n  standalone: true\n})\nexport class NavLinkDirective {\n\n  /**\n   * Sets .nav-link class to the host. [docs]\n   * @type boolean\n   * @default true\n   */\n  @Input({ transform: booleanAttribute }) cNavLink: string | boolean = true;\n\n  /**\n   * Toggle the active state for the component. [docs]\n   * @type boolean\n   */\n  @Input() active?: boolean;\n  /**\n   * Set disabled attr for the host element. [docs]\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) disabled: string | boolean = false;\n\n  @HostBinding('attr.aria-current')\n  get ariaCurrent(): string | null {\n    return this.active ? 'page' : null;\n  }\n\n  @HostBinding('attr.aria-disabled')\n  get isDisabled(): boolean | null {\n    return <boolean>this.disabled || null;\n  }\n\n  @HostBinding('attr.disabled')\n  get attrDisabled() {\n    return this.disabled ? '' : null;\n  };\n\n  @HostBinding('attr.tabindex')\n  get getTabindex(): string | null {\n    return this.disabled ? '-1' : null;\n  }\n\n  @HostBinding('style.cursor')\n  get getCursorStyle(): string | null {\n    return this.disabled ? null : 'pointer';\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'nav-link': this.cNavLink,\n      disabled: this.disabled,\n      active: this.active\n    };\n  }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-nav-item',\n  template: '<ng-content />',\n  styleUrls: ['./nav-item.component.scss'],\n  standalone: true,\n  host: { class: 'nav-item' }\n})\nexport class NavItemComponent {}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-nav',\n  template: '<ng-content />',\n  styleUrls: ['./nav.component.scss'],\n  standalone: true,\n  host: { class: 'nav' }\n})\nexport class NavComponent {\n  /**\n   * Specify a layout type for component.\n   * @type {'fill' | 'justified'}\n   */\n  @Input() layout?: 'fill' | 'justified';\n  /**\n   * Set the nav variant to tabs or pills.\n   * @type 'tabs' | 'pills' | 'underline' | 'underline-border'\n   */\n  @Input() variant?: '' | 'tabs' | 'pills' | 'underline' | 'underline-border';\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      nav: true,\n      [`nav-${this.layout}`]: !!this.layout,\n      [`nav-${this.variant}`]: !!this.variant\n    };\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { NavComponent } from './nav.component';\nimport { NavItemComponent } from './nav-item.component';\nimport { NavLinkDirective } from './nav-link.directive';\n\n@NgModule({\n  imports: [\n    NavComponent,\n    NavItemComponent,\n    NavLinkDirective\n  ],\n  exports: [\n    NavComponent,\n    NavItemComponent,\n    NavLinkDirective\n  ]\n})\nexport class NavModule {}\n","import {\n  AfterContentInit,\n  afterRender,\n  Component,\n  computed,\n  contentChild,\n  ElementRef,\n  inject,\n  input,\n  OnDestroy,\n  signal\n} from '@angular/core';\nimport { DOCUMENT, NgClass, NgTemplateOutlet } from '@angular/common';\nimport { BreakpointObserver } from '@angular/cdk/layout';\n\nimport { CollapseDirective } from '../collapse';\nimport { Colors } from '../coreui.types';\nimport { ThemeDirective } from '../shared';\nimport { Subscription } from 'rxjs';\n\n// todo: fix container prop issue not rendering children\n// todo: workaround -  use <c-container> component directly in template\n\n@Component({\n  selector: 'c-navbar',\n  templateUrl: './navbar.component.html',\n  standalone: true,\n  imports: [NgClass, NgTemplateOutlet],\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['colorScheme'] }],\n  host: { '[class]': 'hostClasses()', '[attr.role]': 'role()' }\n})\nexport class NavbarComponent implements AfterContentInit, OnDestroy {\n  readonly #breakpointObserver = inject(BreakpointObserver);\n  readonly #document = inject(DOCUMENT);\n  readonly #hostElement = inject(ElementRef);\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color = input<Colors>();\n\n  /**\n   * Defines optional container wrapping children elements.\n   */\n  readonly container = input<boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' | 'fluid'>();\n\n  /**\n   * Defines the responsive breakpoint to determine when content collapses.\n   */\n  readonly expand = input<boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'>();\n\n  /**\n   * Place component in non-static positions.\n   */\n  readonly placement = input<'fixed-top' | 'fixed-bottom' | 'sticky-top'>();\n\n  readonly role = input('navigation');\n\n  readonly collapse = contentChild(CollapseDirective);\n\n  readonly hostClasses = computed(() => {\n    const color = this.color();\n    const expand = this.expand();\n    const expandClassSuffix: string = expand === true ? '' : `-${expand}`;\n    const placement = this.placement();\n    return {\n      navbar: true,\n      [`navbar-expand${expandClassSuffix}`]: !!expand,\n      [`bg-${color}`]: !!color,\n      [`${placement}`]: !!placement\n    } as Record<string, boolean>;\n  });\n\n  readonly containerClass = computed(() => {\n    const container = this.container();\n    return `container${container !== true ? '-' + container : ''}`;\n  });\n\n  readonly computedStyle = signal<string>('');\n\n  readonly afterNextRenderFn = afterRender({\n    read: () => {\n      const expand = this.expand();\n      if (typeof expand === 'string') {\n        const computedStyle =\n          this.#document.defaultView\n            ?.getComputedStyle(this.#hostElement.nativeElement)\n            ?.getPropertyValue(`--cui-breakpoint-${expand}`) ?? false;\n        computedStyle && this.computedStyle.set(computedStyle);\n      }\n    }\n  });\n\n  readonly breakpoint = computed(() => {\n    const expand = this.expand();\n    if (typeof expand === 'string') {\n      return this.computedStyle();\n    }\n    return false;\n  });\n\n  #observer!: Subscription;\n\n  ngAfterContentInit(): void {\n    const breakpoint = this.breakpoint();\n    if (breakpoint) {\n      const onBreakpoint = `(min-width: ${breakpoint})`;\n      this.#observer = this.#breakpointObserver\n        .observe([onBreakpoint])\n        .pipe()\n        .subscribe((result) => {\n          const collapse = this.collapse();\n          if (collapse) {\n            const animate = collapse.animate();\n            collapse.animate.set(false);\n            collapse.toggle(false);\n            setTimeout(() => {\n              collapse.toggle(result.matches);\n              setTimeout(() => {\n                collapse.animate.set(animate);\n              });\n            });\n          }\n        });\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.#observer?.unsubscribe();\n  }\n}\n","<ng-container *ngTemplateOutlet=\"container() ? withContainerTemplate : noContainerTemplate\" />\n\n<ng-template #withContainerTemplate>\n  <div [ngClass]=\"containerClass()\">\n    <ng-content />\n  </div>\n</ng-template>\n\n<ng-template #noContainerTemplate>\n  <ng-content />\n</ng-template>\n","import { Directive, input } from '@angular/core';\n\n@Directive({\n  selector: '[cNavbarBrand]',\n  standalone: true,\n  host: { class: 'navbar-brand', '[attr.role]': 'role()' }\n})\nexport class NavbarBrandDirective {\n  readonly role = input('button');\n}\n","import { booleanAttribute, Component, computed, input } from '@angular/core';\n\n@Component({\n  selector: 'c-navbar-nav',\n  template: '<ng-content />',\n  standalone: true,\n  host: { '[class]': 'hostClasses()' }\n})\nexport class NavbarNavComponent {\n  /**\n   * Enable vertical scrolling of a collapsed navbar toggleable contents.\n   * @type boolean\n   */\n  readonly scroll = input(false, { transform: booleanAttribute });\n\n  readonly hostClasses = computed(() => {\n    return {\n      'navbar-nav': true,\n      'navbar-nav-scroll': this.scroll()\n    } as Record<string, boolean>;\n  });\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-navbar-text',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'navbar-text' }\n})\nexport class NavbarTextComponent {}\n","import { afterNextRender, Directive, ElementRef, HostListener, inject, input, Renderer2 } from '@angular/core';\nimport { CollapseDirective } from '../../collapse';\n\n@Directive({\n  selector: '[cNavbarToggler]',\n  standalone: true,\n  host: {\n    '[attr.aria-label]': 'ariaLabel()',\n    '[attr.type]': 'type()',\n    class: 'navbar-toggler'\n  }\n})\nexport class NavbarTogglerDirective {\n  readonly #renderer = inject(Renderer2);\n  readonly #hostElement = inject(ElementRef);\n\n  constructor() {\n    afterNextRender({\n      read: () => {\n        const hasContent = this.#hostElement.nativeElement.childNodes.length as boolean;\n        if (!hasContent) {\n          this.addDefaultIcon();\n        }\n      }\n    });\n  }\n\n  /**\n   * Reference to navbar collapse element (via # template variable) . [docs]\n   * @type string\n   * @default 'button'\n   */\n  readonly collapseRef = input<CollapseDirective | undefined>(undefined, { alias: 'cNavbarToggler' });\n\n  /**\n   * Default type for navbar-toggler. [docs]\n   * @type string\n   * @default 'button'\n   */\n  readonly type = input('button');\n\n  /**\n   * Default aria-label attr for navbar-toggler. [docs]\n   * @type string\n   * @default 'Toggle navigation'\n   */\n  readonly ariaLabel = input('Toggle navigation');\n\n  @HostListener('click', ['$event'])\n  handleClick() {\n    const collapseRef = this.collapseRef();\n    collapseRef?.toggle(!collapseRef?.visible());\n  }\n\n  addDefaultIcon(): void {\n    const span = this.#renderer.createElement('span');\n    this.#renderer.addClass(span, 'navbar-toggler-icon');\n    this.#renderer.appendChild(this.#hostElement.nativeElement, span);\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport { NavbarComponent } from './navbar.component';\nimport { NavbarBrandDirective } from './navbar-brand/navbar-brand.directive';\nimport { NavbarNavComponent } from './navbar-nav/navbar-nav.component';\nimport { NavbarTextComponent } from './navbar-text/navbar-text.component';\nimport { NavbarTogglerDirective } from './navbar-toggler/navbar-toggler.directive';\n\n@NgModule({\n  exports: [\n    NavbarBrandDirective,\n    NavbarComponent,\n    NavbarNavComponent,\n    NavbarTextComponent,\n    NavbarTogglerDirective\n  ],\n  imports: [\n    NavbarBrandDirective,\n    NavbarComponent,\n    NavbarNavComponent,\n    NavbarTextComponent,\n    NavbarTogglerDirective\n  ]\n})\nexport class NavbarModule {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-modal-body',\n  template: '<ng-content />',\n  styleUrls: ['./modal-body.component.scss'],\n  standalone: true,\n  host: { class: 'modal-body' }\n})\nexport class ModalBodyComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-modal-content',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'modal-content' }\n})\nexport class ModalContentComponent {}\n","import { Component, HostBinding, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-modal-dialog',\n  template: '<ng-content />',\n  styleUrls: ['./modal-dialog.component.scss'],\n  standalone: true,\n  host: { class: 'modal-dialog' }\n})\nexport class ModalDialogComponent {\n  /**\n   * Align the modal in the center or top of the screen.\n   * @type {'top' | 'center'}\n   */\n  @Input() alignment?: 'top' | 'center';\n  /**\n   * Set modal to covers the entire user viewport.\n   * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\n   */\n  @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\n  /**\n   * Does the modal dialog itself scroll, or does the whole dialog scroll within the window.\n   * @type boolean\n   */\n  @Input() scrollable?: boolean;\n  /**\n   * Size the component small, large, or extra large.\n   */\n  @Input() size?: 'sm' | 'lg' | 'xl';\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'modal-dialog': true,\n      'modal-dialog-centered': this.alignment === 'center',\n      'modal-fullscreen': this.fullscreen === true,\n      [`modal-fullscreen-${this.fullscreen}-down`]: this.fullscreen,\n      'modal-dialog-scrollable': this.scrollable,\n      [`modal-${this.size}`]: this.size\n    };\n  }\n}\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { ModalComponent } from './modal/modal.component';\n\nexport interface IModalAction {\n  show?: boolean | 'toggle';\n  modal?: ModalComponent;\n  id?: string;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ModalService {\n  private modalState = new Subject<any>();\n  modalState$ = this.modalState.asObservable();\n\n  toggle(action: IModalAction): void {\n    this.modalState.next(action);\n  }\n}\n","import { Directive, HostListener, Input } from '@angular/core';\n\nimport { ModalService } from '../modal.service';\n\n@Directive({\n  selector: '[cModalToggle]',\n  standalone: true\n})\nexport class ModalToggleDirective {\n  /**\n   * Html id attr of modal to dismiss.\n   */\n  @Input('cModalToggle') id: string | undefined;\n\n  constructor(\n    private modalService: ModalService\n  ) { }\n\n  @HostListener('click', ['$event'])\n  dismiss($event: any): void {\n    $event.preventDefault();\n    this.modalService.toggle({show: 'toggle', id: this.id});\n  }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-modal-footer',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'modal-footer' }\n})\nexport class ModalFooterComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-modal-header',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'modal-header' }\n})\nexport class ModalHeaderComponent {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cModalTitle]',\n  standalone: true,\n  host: { class: 'modal-title' }\n})\nexport class ModalTitleDirective {}\n","import { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { DOCUMENT } from '@angular/common';\nimport {\n  AfterViewInit,\n  booleanAttribute,\n  Component,\n  DestroyRef,\n  effect,\n  ElementRef,\n  EventEmitter,\n  HostBinding,\n  HostListener,\n  inject,\n  Inject,\n  Input,\n  OnDestroy,\n  OnInit,\n  Output,\n  Renderer2,\n  signal,\n  ViewChild,\n  WritableSignal\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { A11yModule, FocusMonitor } from '@angular/cdk/a11y';\n\nimport { ModalService } from '../modal.service';\nimport { BackdropService } from '../../backdrop/backdrop.service';\nimport { ModalContentComponent } from '../modal-content/modal-content.component';\nimport { ModalDialogComponent } from '../modal-dialog/modal-dialog.component';\n\n@Component({\n  selector: 'c-modal',\n  animations: [\n    trigger('showHide', [\n      state(\n        'visible',\n        style({\n          // display: 'block'\n        })\n      ),\n      state(\n        'hidden',\n        style({\n          // display: 'none'\n        })\n      ),\n      transition('visible <=> *', [animate('150ms')])\n    ])\n  ],\n  templateUrl: './modal.component.html',\n  exportAs: 'cModal',\n  standalone: true,\n  imports: [ModalDialogComponent, ModalContentComponent, A11yModule],\n  host: { class: 'modal' }\n})\nexport class ModalComponent implements OnInit, OnDestroy, AfterViewInit {\n  #destroyRef = inject(DestroyRef);\n  #focusMonitor = inject(FocusMonitor);\n\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    private modalService: ModalService,\n    private backdropService: BackdropService\n  ) {}\n\n  /**\n   * Align the modal in the center or top of the screen.\n   * @type {'top' | 'center'}\n   * @default 'top'\n   */\n  @Input() alignment?: 'top' | 'center' = 'top';\n  /**\n   * Apply a backdrop on body while modal is open.\n   * @type boolean | 'static'\n   * @default true\n   */\n  @Input() backdrop: boolean | 'static' = true;\n  /**\n   * Set modal to cover the entire user viewport.\n   * @type {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\n   * @default undefined\n   */\n  @Input() fullscreen?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\n  /**\n   * Closes the modal when escape key is pressed.\n   * @type boolean\n   * @default true\n   */\n  @Input({ transform: booleanAttribute }) keyboard: boolean = true;\n\n  @Input() id?: string;\n\n  /**\n   * Size the component small, large, or extra large.\n   */\n  @Input() size?: 'sm' | 'lg' | 'xl';\n\n  /**\n   * Remove animation to create modal that simply appear rather than fade in to view.\n   */\n  @Input({ transform: booleanAttribute }) transition = true;\n\n  /**\n   * Default role for modal. [docs]\n   * @type string\n   * @default 'dialog'\n   */\n  @Input() @HostBinding('attr.role') role: string = 'dialog';\n\n  /**\n   * Set aria-modal html attr for modal. [docs]\n   * @type boolean\n   * @default null\n   */\n  @Input()\n  @HostBinding('attr.aria-modal')\n  set ariaModal(value: boolean | null) {\n    this.#ariaModal = value;\n  }\n\n  get ariaModal(): boolean | null {\n    return this.visible || this.#ariaModal ? true : null;\n  }\n\n  #ariaModal: boolean | null = null;\n\n  /**\n   * Create a scrollable modal that allows scrolling the modal body.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) scrollable: boolean = false;\n\n  /**\n   * Toggle the visibility of modal component.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    if (this.#visible() !== value) {\n      this.#visible.set(value);\n      this.setBackdrop(this.backdrop !== false && value);\n      this.setBodyStyles(value);\n      this.visibleChange.emit(value);\n    }\n  }\n\n  get visible(): boolean {\n    return this.#visible();\n  }\n\n  #visible: WritableSignal<boolean> = signal(false);\n\n  #activeElement: HTMLElement | null = null;\n\n  #visibleEffect = effect(() => {\n    if (this.#visible() && this.#afterViewInit()) {\n      this.#activeElement = this.document.activeElement as HTMLElement;\n      // this.#activeElement?.blur();\n      setTimeout(() => {\n        const focusable = this.modalContentRef.nativeElement.querySelectorAll(\n          '[tabindex]:not([tabindex=\"-1\"]), button:not([disabled]), [href], input:not([disabled]), select:not([disabled]), textarea:not([disabled])'\n        );\n        if (focusable.length) {\n          this.#focusMonitor.focusVia(focusable[0], 'keyboard');\n        }\n      });\n    } else {\n      if (this.document.contains(this.#activeElement)) {\n        setTimeout(() => {\n          this.#activeElement?.focus();\n          this.#activeElement = null;\n        });\n      }\n    }\n  });\n\n  /**\n   * Event triggered on modal dismiss.\n   */\n  @Output() visibleChange = new EventEmitter<boolean>();\n\n  @ViewChild(ModalContentComponent, { read: ElementRef }) modalContent!: ElementRef;\n  @ViewChild('modalContentRef', { read: ElementRef }) modalContentRef!: ElementRef;\n\n  #activeBackdrop!: any;\n\n  // private inBoundingClientRect!: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      modal: true,\n      fade: this.transition,\n      show: this.show\n    };\n  }\n\n  @HostBinding('attr.aria-hidden')\n  get ariaHidden(): boolean | null {\n    return this.visible ? null : true;\n  }\n\n  @HostBinding('attr.tabindex')\n  get tabIndex(): string | null {\n    return '-1';\n  }\n\n  @HostBinding('@showHide')\n  get animateTrigger(): string {\n    return this.visible ? 'visible' : 'hidden';\n  }\n\n  get show(): boolean {\n    return this.visible && this._show;\n  }\n\n  set show(value: boolean) {\n    this._show = value;\n  }\n\n  private _show = true;\n\n  @HostListener('@showHide.start', ['$event'])\n  animateStart(event: AnimationEvent) {\n    if (event.toState === 'visible') {\n      this.backdropService.hideScrollbar();\n      this.renderer.setStyle(this.hostElement.nativeElement, 'display', 'block');\n    } else {\n      if (!this.transition) {\n        this.renderer.setStyle(this.hostElement.nativeElement, 'display', 'none');\n      }\n    }\n  }\n\n  @HostListener('@showHide.done', ['$event'])\n  animateDone(event: AnimationEvent) {\n    setTimeout(() => {\n      if (event.toState === 'hidden') {\n        this.renderer.setStyle(this.hostElement.nativeElement, 'display', 'none');\n      }\n    });\n    this.show = this.visible;\n  }\n\n  @HostListener('document:keyup', ['$event'])\n  onKeyDownHandler(event: KeyboardEvent): void {\n    if (event.key === 'Escape' && this.keyboard && this.visible) {\n      if (this.backdrop === 'static') {\n        this.setStaticBackdrop();\n      } else {\n        this.modalService.toggle({ show: false, modal: this });\n      }\n    }\n  }\n\n  private mouseDownTarget: EventTarget | null = null;\n\n  @HostListener('mousedown', ['$event'])\n  public onMouseDownHandler($event: MouseEvent): void {\n    this.mouseDownTarget = $event.target;\n  }\n\n  @HostListener('click', ['$event'])\n  public onClickHandler($event: MouseEvent): void {\n    if (this.mouseDownTarget !== $event.target) {\n      this.mouseDownTarget = null;\n      return;\n    }\n\n    const targetElement = $event.target;\n    if (targetElement === this.hostElement.nativeElement) {\n      if (this.backdrop === 'static') {\n        this.setStaticBackdrop();\n        return;\n      }\n\n      this.modalService.toggle({ show: false, modal: this });\n    }\n  }\n\n  ngOnInit(): void {\n    this.stateToggleSubscribe();\n  }\n\n  #afterViewInit = signal(false);\n\n  ngAfterViewInit(): void {\n    this.#afterViewInit.set(true);\n  }\n\n  ngOnDestroy(): void {\n    this.modalService.toggle({ show: false, modal: this });\n    this.#afterViewInit.set(false);\n  }\n\n  private stateToggleSubscribe(): void {\n    this.modalService.modalState$.pipe(takeUntilDestroyed(this.#destroyRef)).subscribe((action) => {\n      if (this === action.modal || this.id === action.id) {\n        if ('show' in action) {\n          this.visible = action?.show === 'toggle' ? !this.visible : action.show;\n        }\n      } else {\n        if (this.visible) {\n          this.visible = false;\n        }\n      }\n    });\n  }\n\n  private setBackdrop(setBackdrop: boolean): void {\n    this.#activeBackdrop = setBackdrop\n      ? this.backdropService.setBackdrop('modal')\n      : this.backdropService.clearBackdrop(this.#activeBackdrop);\n  }\n\n  private setBodyStyles(open: boolean): void {\n    if (open) {\n      if (this.backdrop === true) {\n        this.renderer.addClass(this.document.body, 'modal-open');\n      }\n    } else {\n      this.renderer.removeClass(this.document.body, 'modal-open');\n    }\n  }\n\n  private setStaticBackdrop(): void {\n    if (this.transition) {\n      this.renderer.addClass(this.hostElement.nativeElement, 'modal-static');\n      this.renderer.setStyle(this.hostElement.nativeElement, 'overflow-y', 'hidden');\n      setTimeout(() => {\n        this.renderer.removeClass(this.hostElement.nativeElement, 'modal-static');\n        this.renderer.removeStyle(this.hostElement.nativeElement, 'overflow-y');\n      }, 300);\n    }\n  }\n}\n","<c-modal-dialog\n  [alignment]=\"alignment\"\n  [fullscreen]=\"fullscreen\"\n  [scrollable]=\"scrollable\"\n  [size]=\"size\">\n  <c-modal-content>\n    <div [cdkTrapFocus]=\"visible\" [cdkTrapFocusAutoCapture]=\"visible\" style=\"display: contents;\" #modalContentRef>\n      <ng-content />\n    </div>\n  </c-modal-content>\n</c-modal-dialog>\n","import { NgModule } from '@angular/core';\n\nimport { ModalBodyComponent } from './modal-body/modal-body.component';\nimport { ModalContentComponent } from './modal-content/modal-content.component';\nimport { ModalDialogComponent } from './modal-dialog/modal-dialog.component';\nimport { ModalToggleDirective } from './modal-dismiss/modal-toggle.directive';\nimport { ModalFooterComponent } from './modal-footer/modal-footer.component';\nimport { ModalHeaderComponent } from './modal-header/modal-header.component';\nimport { ModalTitleDirective } from './modal-title/modal-title.directive';\nimport { ModalComponent } from './modal/modal.component';\nimport { ModalService } from './modal.service';\n\n@NgModule({\n  exports: [\n    ModalBodyComponent,\n    ModalComponent,\n    ModalContentComponent,\n    ModalDialogComponent,\n    ModalFooterComponent,\n    ModalHeaderComponent,\n    ModalTitleDirective,\n    ModalToggleDirective\n  ],\n  imports: [\n    ModalBodyComponent,\n    ModalComponent,\n    ModalContentComponent,\n    ModalDialogComponent,\n    ModalFooterComponent,\n    ModalHeaderComponent,\n    ModalTitleDirective,\n    ModalToggleDirective\n  ],\n  providers: [ModalService]\n})\nexport class ModalModule {}\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\n\nexport interface IOffcanvasAction {\n  show?: boolean | 'toggle';\n  offcanvas?: OffcanvasComponent;\n  id?: string;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class OffcanvasService {\n  private offcanvasState = new Subject<any>();\n  offcanvasState$ = this.offcanvasState.asObservable();\n\n  toggle(action: IOffcanvasAction): void {\n    this.offcanvasState.next(action);\n  }\n}\n","import { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { DOCUMENT, isPlatformBrowser } from '@angular/common';\nimport {\n  booleanAttribute,\n  Component,\n  DestroyRef,\n  ElementRef,\n  EventEmitter,\n  HostBinding,\n  HostListener,\n  inject,\n  Inject,\n  Input,\n  OnDestroy,\n  OnInit,\n  Output,\n  PLATFORM_ID,\n  Renderer2\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { A11yModule } from '@angular/cdk/a11y';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { BackdropService } from '../../backdrop/backdrop.service';\nimport { ThemeDirective } from '../../shared';\nimport { OffcanvasService } from '../offcanvas.service';\n\nlet nextId = 0;\n\n@Component({\n  selector: 'c-offcanvas',\n  animations: [\n    trigger('showHide', [\n      state(\n        'visible',\n        style({\n          // visibility: 'visible'\n        })\n      ),\n      state(\n        'hidden',\n        style({\n          // visibility: 'hidden'\n        })\n      ),\n      transition('visible <=> *', [animate('300ms')])\n    ])\n  ],\n  templateUrl: './offcanvas.component.html',\n  styleUrls: ['./offcanvas.component.scss'],\n  exportAs: 'cOffcanvas',\n  standalone: true,\n  imports: [A11yModule],\n  hostDirectives: [{ directive: ThemeDirective, inputs: ['dark'] }],\n  host: { ngSkipHydration: 'true' }\n})\nexport class OffcanvasComponent implements OnInit, OnDestroy {\n  #destroyRef = inject(DestroyRef);\n\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    @Inject(PLATFORM_ID) private platformId: any,\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    private offcanvasService: OffcanvasService,\n    private backdropService: BackdropService,\n    private breakpointObserver: BreakpointObserver\n  ) {}\n\n  /**\n   * Apply a backdrop on body while offcanvas is open.\n   * @type boolean | 'static'\n   * @default true\n   */\n  @Input() backdrop: boolean | 'static' = true;\n\n  /**\n   * Closes the offcanvas when escape key is pressed [docs]\n   * @type boolean\n   * @default true\n   */\n  @Input({ transform: booleanAttribute }) keyboard = true;\n\n  /**\n   * Components placement, there’s no default placement.\n   * @type {'start' | 'end' | 'top' | 'bottom'}\n   * @default 'start'\n   */\n  @Input() placement: string | 'start' | 'end' | 'top' | 'bottom' = 'start';\n\n  /**\n   * Responsive offcanvas property hides content outside the viewport from a specified breakpoint and down.\n   * @type boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl';\n   * @default true\n   * @since 4.3.10\n   */\n  @Input() responsive?: boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl' = true;\n  @Input() id = `offcanvas-${this.placement}-${nextId++}`;\n  /**\n   * Default role for offcanvas. [docs]\n   * @type string\n   * @default 'dialog'\n   */\n  @Input() @HostBinding('attr.role') role = 'dialog';\n  /**\n   * Set aria-modal html attr for offcanvas. [docs]\n   * @type boolean\n   * @default true\n   */\n  @Input({ transform: booleanAttribute }) @HostBinding('attr.aria-modal') ariaModal = true;\n\n  #activeBackdrop!: HTMLDivElement;\n  #backdropClickSubscription!: Subscription;\n  #layoutChangeSubscription!: Subscription;\n  #show = false;\n\n  /**\n   * Allow body scrolling while offcanvas is visible.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) scroll: boolean = false;\n\n  /**\n   * Toggle the visibility of offcanvas component.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    this.#visible = value;\n    if (this.#visible) {\n      this.setBackdrop(this.backdrop);\n      this.setFocus();\n    } else {\n      this.setBackdrop(false);\n    }\n    this.layoutChangeSubscribe(this.#visible);\n    this.visibleChange.emit(value);\n  }\n\n  get visible(): boolean {\n    return this.#visible;\n  }\n\n  #visible: boolean = false;\n\n  /**\n   * Event triggered on visible change.\n   * @type EventEmitter<boolean>\n   */\n  @Output() readonly visibleChange: EventEmitter<boolean> = new EventEmitter<boolean>();\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      offcanvas: typeof this.responsive === 'boolean',\n      [`offcanvas-${this.responsive}`]: typeof this.responsive !== 'boolean',\n      [`offcanvas-${this.placement}`]: !!this.placement,\n      show: this.show\n    };\n  }\n\n  @HostBinding('attr.aria-hidden')\n  get ariaHidden(): boolean | null {\n    return this.visible ? null : true;\n  }\n\n  @HostBinding('attr.tabindex')\n  get tabIndex(): string | null {\n    return '-1';\n  }\n\n  @HostBinding('@showHide')\n  get animateTrigger(): string {\n    return this.visible ? 'visible' : 'hidden';\n  }\n\n  get show(): boolean {\n    return this.visible && this.#show;\n  }\n\n  set show(value: boolean) {\n    this.#show = value;\n  }\n\n  get responsiveBreakpoint(): string | false {\n    if (typeof this.responsive !== 'string') {\n      return false;\n    }\n    const element: Element = this.document.documentElement;\n    const responsiveBreakpoint = this.responsive;\n    const breakpointValue =\n      this.document.defaultView\n        ?.getComputedStyle(element)\n        ?.getPropertyValue(`--cui-breakpoint-${responsiveBreakpoint.trim()}`) ?? false;\n    return breakpointValue ? `${parseFloat(breakpointValue.trim()) - 0.02}px` : false;\n  }\n\n  @HostListener('@showHide.start', ['$event'])\n  animateStart(event: AnimationEvent) {\n    if (event.toState === 'visible') {\n      if (!this.scroll) {\n        this.backdropService.hideScrollbar();\n      }\n      this.renderer.addClass(this.hostElement.nativeElement, 'showing');\n    } else {\n      this.renderer.addClass(this.hostElement.nativeElement, 'hiding');\n    }\n  }\n\n  @HostListener('@showHide.done', ['$event'])\n  animateDone(event: AnimationEvent) {\n    setTimeout(() => {\n      if (event.toState === 'visible') {\n        this.renderer.removeClass(this.hostElement.nativeElement, 'showing');\n      }\n      if (event.toState === 'hidden') {\n        this.renderer.removeClass(this.hostElement.nativeElement, 'hiding');\n        this.renderer.removeStyle(this.document.body, 'overflow');\n        this.renderer.removeStyle(this.document.body, 'paddingRight');\n      }\n    });\n    this.show = this.visible;\n  }\n\n  @HostListener('document:keydown', ['$event'])\n  onKeyDownHandler(event: KeyboardEvent): void {\n    if (event.key === 'Escape' && this.keyboard && this.visible && this.backdrop !== 'static') {\n      this.offcanvasService.toggle({ show: false, id: this.id });\n    }\n  }\n\n  ngOnInit(): void {\n    this.stateToggleSubscribe();\n    setTimeout(() => {\n      // hotfix to avoid offcanvas flicker on the first render\n      this.renderer.setStyle(this.hostElement.nativeElement, 'display', 'flex');\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.offcanvasService.toggle({ show: false, id: this.id });\n  }\n\n  setFocus(): void {\n    if (isPlatformBrowser(this.platformId)) {\n      setTimeout(() => this.hostElement.nativeElement.focus());\n    }\n  }\n\n  private stateToggleSubscribe(): void {\n    this.offcanvasService.offcanvasState$.pipe(takeUntilDestroyed(this.#destroyRef)).subscribe((action) => {\n      if (this === action.offcanvas || this.id === action.id) {\n        if ('show' in action) {\n          this.visible = action?.show === 'toggle' ? !this.visible : action.show;\n        }\n      }\n    });\n  }\n\n  private backdropClickSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      this.#backdropClickSubscription = this.backdropService.backdropClick$\n        .pipe(takeUntilDestroyed(this.#destroyRef))\n        .subscribe((clicked) => {\n          this.offcanvasService.toggle({ show: !clicked, id: this.id });\n        });\n    } else {\n      this.#backdropClickSubscription?.unsubscribe();\n    }\n  }\n\n  private setBackdrop(setBackdrop: boolean | 'static'): void {\n    this.#activeBackdrop = !!setBackdrop\n      ? this.backdropService.setBackdrop('offcanvas')\n      : this.backdropService.clearBackdrop(this.#activeBackdrop);\n    setBackdrop === true ? this.backdropClickSubscribe() : this.backdropClickSubscribe(false);\n  }\n\n  private layoutChangeSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      if (!this.responsiveBreakpoint) {\n        return;\n      }\n\n      const responsiveBreakpoint = `(max-width: ${this.responsiveBreakpoint})`;\n\n      const layoutChanges = this.breakpointObserver.observe([responsiveBreakpoint]);\n\n      this.#layoutChangeSubscription = layoutChanges\n        .pipe(\n          filter((breakpointState) => !breakpointState.matches),\n          takeUntilDestroyed(this.#destroyRef)\n        )\n        .subscribe((breakpointState: BreakpointState) => {\n          this.visible = breakpointState.matches;\n        });\n    } else {\n      this.#layoutChangeSubscription?.unsubscribe();\n    }\n  }\n}\n","<div cdkTrapFocus cdkTrapFocusAutoCapture>\n  <ng-content />\n</div>\n\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-offcanvas-body',\n  template: '<ng-content />',\n  styleUrls: ['./offcanvas-body.component.scss'],\n  standalone: true,\n  host: { class: 'offcanvas-body' }\n})\nexport class OffcanvasBodyComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-offcanvas-header',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'offcanvas-header' }\n})\nexport class OffcanvasHeaderComponent {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cOffcanvasTitle]',\n  standalone: true,\n  host: { class: 'offcanvas-title' }\n})\nexport class OffcanvasTitleDirective {}\n","import { Directive, HostListener, Input } from '@angular/core';\n\nimport { OffcanvasService } from '../offcanvas.service';\n\n@Directive({\n  selector: '[cOffcanvasToggle]',\n  standalone: true\n})\nexport class OffcanvasToggleDirective {\n\n  /**\n   * Html id attr of offcanvas to toggle.\n   * @type string\n   */\n  @Input('cOffcanvasToggle') id?: string;\n\n  constructor(\n    private offcanvasService: OffcanvasService\n  ) {}\n\n  @HostListener('click', ['$event'])\n  toggleOpen($event: any): void {\n    $event.preventDefault();\n    this.offcanvasService.toggle({ show: 'toggle', id: this.id });\n  }\n}\n","import { NgModule } from '@angular/core';\n\nimport { OffcanvasComponent } from './offcanvas/offcanvas.component';\nimport { OffcanvasBodyComponent } from './offcanvas-body/offcanvas-body.component';\nimport { OffcanvasHeaderComponent } from './offcanvas-header/offcanvas-header.component';\nimport { OffcanvasTitleDirective } from './offcanvas-title/offcanvas-title.directive';\nimport { OffcanvasToggleDirective } from './offcanvas-toggle/offcanvas-toggle.directive';\nimport { OffcanvasService } from './offcanvas.service';\nimport { BackdropService } from '../backdrop/backdrop.service';\n\n@NgModule({\n  exports: [\n    OffcanvasBodyComponent,\n    OffcanvasComponent,\n    OffcanvasHeaderComponent,\n    OffcanvasTitleDirective,\n    OffcanvasToggleDirective\n  ],\n  imports: [\n    OffcanvasBodyComponent,\n    OffcanvasComponent,\n    OffcanvasHeaderComponent,\n    OffcanvasTitleDirective,\n    OffcanvasToggleDirective\n  ],\n  providers: [\n    OffcanvasService,\n    BackdropService\n  ]\n})\nexport class OffcanvasModule {}\n","import { Directive } from '@angular/core';\n\n@Directive({\n  selector: '[cPageLink]',\n  standalone: true,\n  host: { class: 'page-link' }\n})\nexport class PageLinkDirective {}\n","import {\n  AfterContentInit,\n  ContentChild,\n  Directive,\n  ElementRef,\n  HostBinding,\n  Input,\n  OnChanges,\n  Renderer2,\n  SimpleChanges\n} from '@angular/core';\n\nimport { PageLinkDirective } from '../page-link/page-link.directive';\n\n@Directive({\n  selector: '[cPageItem]',\n  standalone: true,\n  host: { class: 'page-item' }\n})\nexport class PageItemDirective implements AfterContentInit, OnChanges {\n  /**\n   * Toggle the active state for the component.\n   * @type boolean\n   */\n  @Input() active?: boolean;\n  /**\n   * Toggle the disabled state for the component.\n   * @type boolean\n   */\n  @Input() disabled?: boolean;\n\n  @HostBinding('attr.aria-current')\n  get ariaCurrent(): string | null {\n    return this.active ? 'page' : null;\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'page-item': true,\n      disabled: this.disabled,\n      active: this.active\n    };\n  }\n\n  @ContentChild(PageLinkDirective, { read: ElementRef }) pageLinkElementRef!: ElementRef;\n\n  constructor(private renderer: Renderer2) {}\n\n  ngAfterContentInit(): void {\n    this.setAttributes();\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['disabled']) {\n      this.setAttributes();\n    }\n  }\n\n  setAttributes(): void {\n    if (!this.pageLinkElementRef) {\n      return;\n    }\n    const pageLinkElement = this.pageLinkElementRef.nativeElement;\n\n    if (this.disabled) {\n      this.renderer.setAttribute(pageLinkElement, 'aria-disabled', 'true');\n      this.renderer.setAttribute(pageLinkElement, 'tabindex', '-1');\n    } else {\n      this.renderer.removeAttribute(pageLinkElement, 'aria-disabled');\n      this.renderer.removeAttribute(pageLinkElement, 'tabindex');\n    }\n  }\n}\n","import { Component } from '@angular/core';\nimport { PageItemDirective } from './page-item.directive';\n\n@Component({\n  selector: 'c-page-item',\n  template: '<ng-content />',\n  styleUrls: ['./page-item.component.scss'],\n  standalone: true\n})\nexport class PageItemComponent extends PageItemDirective { }\n\n","import { Component, HostBinding, Input } from '@angular/core';\nimport { NgClass } from '@angular/common';\n\n@Component({\n  selector: 'c-pagination',\n  templateUrl: './pagination.component.html',\n  standalone: true,\n  imports: [NgClass]\n})\nexport class PaginationComponent {\n\n  /**\n   * Set the alignment of pagination components.\n   * @values 'start', 'center', 'end'\n   */\n  @Input() align: 'start' | 'center' | 'end' | '' = '';\n  /**\n   * Size the component small or large.\n   * @values 'sm', 'lg'\n   */\n  @Input() size?: 'sm' | 'lg';\n  /**\n   * Default role for pagination. [docs]\n   * @type string\n   * @default 'navigation'\n   */\n  @HostBinding('attr.role')\n  @Input() role = 'navigation';\n\n  get paginationClass(): any {\n    return {\n      pagination: true,\n      [`pagination-${this.size}`]: !!this.size,\n      [`justify-content-${this.align}`]: !!this.align\n    };\n  }\n\n}\n","<ul [ngClass]=\"paginationClass\">\n  <ng-content />\n</ul>\n","import { NgModule } from '@angular/core';\nimport { PaginationComponent } from './pagination/pagination.component';\nimport { PageItemComponent } from './page-item/page-item.component';\nimport { PageItemDirective } from './page-item/page-item.directive';\nimport { PageLinkDirective } from './page-link/page-link.directive';\n\n@NgModule({\n  exports: [\n    PageItemComponent,\n    PageItemDirective,\n    PageLinkDirective,\n    PaginationComponent\n  ],\n  imports: [\n    PageItemComponent,\n    PageItemDirective,\n    PageLinkDirective,\n    PaginationComponent\n  ]\n})\nexport class PaginationModule {}\n","import { booleanAttribute, computed, Directive, input, InputSignalWithTransform } from '@angular/core';\n\n@Directive({\n  selector: '[cPlaceholder]',\n  exportAs: 'cPlaceholder',\n  standalone: true,\n  host: {\n    '[class]': 'hostClasses()',\n    '[attr.aria-hidden]': 'ariaHidden()'\n  }\n})\nexport class PlaceholderDirective {\n  /**\n   * placeholder toggler\n   * @type boolean\n   * @default false\n   */\n  readonly visible: InputSignalWithTransform<boolean, unknown> = input<boolean, unknown>(false, {\n    transform: booleanAttribute,\n    alias: 'cPlaceholder'\n  });\n\n  /**\n   * Size the placeholder xs, small, large.\n   */\n  readonly size = input<'xs' | 'sm' | 'lg' | undefined>(undefined, { alias: 'cPlaceholderSize' });\n\n  readonly ariaHidden = computed(() => {\n    return this.visible() ? null : true;\n  });\n\n  readonly hostClasses = computed(() => {\n    return {\n      placeholder: this.visible(),\n      [`placeholder-${this.size()}`]: !!this.size()\n    };\n  });\n}\n","import { computed, contentChild, Directive, input, InputSignal } from '@angular/core';\nimport { PlaceholderDirective } from './placeholder.directive';\n\n@Directive({\n  selector: '[cPlaceholderAnimation]',\n  standalone: true,\n  host: {\n    '[class]': 'hostClasses()'\n  }\n})\nexport class PlaceholderAnimationDirective {\n  /**\n   * Animation type for placeholder\n   * @type 'glow' | 'wave'\n   * @default undefined\n   */\n  readonly animation: InputSignal<'glow' | 'wave' | undefined> = input<'glow' | 'wave' | undefined>(undefined, {\n    alias: 'cPlaceholderAnimation'\n  });\n\n  readonly placeholder = contentChild(PlaceholderDirective);\n\n  readonly hostClasses = computed(() => {\n    return {\n      [`placeholder-${this.animation()}`]: this.placeholder()?.visible() && !!this.animation()\n    };\n  });\n}\n","import { NgModule } from '@angular/core';\nimport { PlaceholderDirective } from './placeholder.directive';\nimport { PlaceholderAnimationDirective } from './placeholder-animation.directive';\n\n@NgModule({\n  imports: [\n    PlaceholderDirective,\n    PlaceholderAnimationDirective\n  ],\n  exports: [\n    PlaceholderDirective,\n    PlaceholderAnimationDirective\n  ]\n})\nexport class PlaceholderModule {\n}\n","import {\n  booleanAttribute,\n  Component,\n  computed,\n  effect,\n  inject,\n  input,\n  OnDestroy,\n  Renderer2,\n  TemplateRef,\n  viewChild,\n  ViewContainerRef\n} from '@angular/core';\nimport { NgClass } from '@angular/common';\n\n@Component({\n  selector: 'c-popover',\n  templateUrl: './popover.component.html',\n  standalone: true,\n  imports: [NgClass],\n  host: {\n    class: 'popover fade bs-popover-auto',\n    '[class]': 'hostClasses()',\n    '[attr.role]': 'role()',\n    '[attr.id]': 'id()'\n  }\n})\nexport class PopoverComponent implements OnDestroy {\n  readonly renderer = inject(Renderer2);\n\n  /**\n   * Content of popover\n   * @type {string | TemplateRef}\n   */\n  readonly content = input<string | TemplateRef<any>>('');\n\n  readonly contentEffect = effect(() => {\n    this.updateView(this.content());\n  });\n\n  /**\n   * Toggle the visibility of popover component.\n   * @type boolean\n   */\n  readonly visible = input(false, { transform: booleanAttribute });\n  readonly id = input<string>();\n  readonly role = input('tooltip');\n\n  readonly viewContainerRef = viewChild('popoverTemplate', { read: ViewContainerRef });\n  private textNode!: Text;\n\n  readonly hostClasses = computed<Record<string, boolean>>(() => {\n    return {\n      popover: true,\n      fade: true,\n      show: this.visible(),\n      'bs-popover-auto': true\n    };\n  });\n\n  ngOnDestroy(): void {\n    this.clear();\n  }\n\n  private clear(): void {\n    this.viewContainerRef()?.clear();\n    if (!!this.textNode) {\n      this.renderer.removeChild(this.textNode.parentNode, this.textNode);\n    }\n  }\n\n  private updateView(content: string | TemplateRef<any>): void {\n    this.clear();\n\n    if (!content) {\n      return;\n    }\n\n    if (content instanceof TemplateRef) {\n      this.viewContainerRef()?.createEmbeddedView(content);\n    } else {\n      const textNodeContent = this.renderer.createText(content);\n      this.textNode = this.renderer.createElement('div');\n      this.renderer.addClass(this.textNode, 'popover-body');\n      this.renderer.appendChild(this.textNode, textNodeContent);\n\n      const element = this.viewContainerRef()?.element.nativeElement;\n      this.renderer.appendChild(element.parentNode, this.textNode);\n    }\n  }\n}\n","<ng-container>\n  <div [ngClass]=\"{'popover-arrow': !!content()}\" data-popper-arrow></div>\n  <ng-container #popoverTemplate />\n</ng-container>\n","import { DOCUMENT } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectorRef,\n  ComponentRef,\n  computed,\n  DestroyRef,\n  Directive,\n  effect,\n  ElementRef,\n  inject,\n  input,\n  model,\n  OnDestroy,\n  OnInit,\n  Renderer2,\n  TemplateRef,\n  ViewContainerRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { debounceTime, filter, finalize } from 'rxjs/operators';\nimport { createPopper, Instance, Options } from '@popperjs/core';\n\nimport { Triggers } from '../coreui.types';\nimport { IListenersConfig, IntersectionService, ListenersService } from '../services';\nimport { ElementRefDirective } from '../shared';\nimport { PopoverComponent } from './popover/popover.component';\n\n@Directive({\n  selector: '[cPopover]',\n  exportAs: 'cPopover',\n  providers: [ListenersService, IntersectionService],\n  standalone: true,\n  host: { '[attr.aria-describedby]': 'ariaDescribedBy' }\n})\nexport class PopoverDirective implements OnDestroy, OnInit, AfterViewInit {\n  /**\n   * Content of popover\n   * @type {string | TemplateRef}\n   */\n  readonly content = input<string | TemplateRef<any> | undefined>(undefined, { alias: 'cPopover' });\n\n  contentEffect = effect(() => {\n    if (this.content()) {\n      this.destroyTooltipElement();\n    }\n  });\n\n  /**\n   * Optional popper Options object, takes precedence over cPopoverPlacement prop\n   * @type Partial<Options>\n   */\n  readonly popperOptions = input<Partial<Options>>({}, { alias: 'cPopoverOptions' });\n\n  popperOptionsEffect = effect(() => {\n    this._popperOptions = {\n      ...this._popperOptions,\n      placement: this.placement(),\n      ...this.popperOptions()\n    };\n  });\n\n  popperOptionsComputed = computed(() => {\n    return { placement: this.placement(), ...this._popperOptions };\n  });\n\n  /**\n   * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\n   * @type: 'top' | 'bottom' | 'left' | 'right'\n   * @default: 'top'\n   */\n  readonly placement = input<'top' | 'bottom' | 'left' | 'right'>('top', { alias: 'cPopoverPlacement' });\n\n  /**\n   * ElementRefDirective for positioning the tooltip on reference element\n   * @type: ElementRefDirective\n   * @default: undefined\n   */\n  readonly reference = input<ElementRefDirective | undefined>(undefined, { alias: 'cTooltipRef' });\n\n  readonly referenceRef = computed(() => this.reference()?.elementRef ?? this.hostElement);\n\n  /**\n   * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\n   * @type: 'Triggers | Triggers[]\n   */\n  readonly trigger = input<Triggers | Triggers[]>('hover', { alias: 'cPopoverTrigger' });\n\n  /**\n   * Toggle the visibility of popover component.\n   * @type boolean\n   */\n  readonly visible = model(false, { alias: 'cPopoverVisible' });\n\n  visibleEffect = effect(() => {\n    this.visible() ? this.addTooltipElement() : this.removeTooltipElement();\n  });\n\n  get ariaDescribedBy(): string | null {\n    return this.tooltipId ? this.tooltipId : null;\n  }\n\n  private tooltip!: HTMLDivElement;\n  private tooltipId!: string;\n  private tooltipRef!: ComponentRef<PopoverComponent>;\n  private popperInstance!: Instance;\n\n  private _popperOptions: Partial<Options> = {\n    modifiers: [\n      {\n        name: 'offset',\n        options: {\n          offset: [0, 9]\n        }\n      }\n    ]\n  };\n\n  readonly #destroyRef = inject(DestroyRef);\n  readonly #document = inject(DOCUMENT);\n\n  constructor(\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    private viewContainerRef: ViewContainerRef,\n    private listenersService: ListenersService,\n    private changeDetectorRef: ChangeDetectorRef,\n    private intersectionService: IntersectionService\n  ) {}\n\n  ngAfterViewInit(): void {\n    this.intersectionServiceSubscribe();\n  }\n\n  ngOnDestroy(): void {\n    this.clearListeners();\n    this.destroyTooltipElement();\n  }\n\n  ngOnInit(): void {\n    this.setListeners();\n  }\n\n  private setListeners(): void {\n    const config: IListenersConfig = {\n      hostElement: this.hostElement,\n      trigger: this.trigger(),\n      callbackToggle: () => {\n        this.visible.set(!this.visible());\n      },\n      callbackOff: () => {\n        this.visible.set(false);\n      },\n      callbackOn: () => {\n        this.visible.set(true);\n      }\n    };\n    this.listenersService.setListeners(config);\n  }\n\n  private clearListeners(): void {\n    this.listenersService.clearListeners();\n  }\n\n  private intersectionServiceSubscribe(): void {\n    this.intersectionService.createIntersectionObserver(this.referenceRef());\n    this.intersectionService.intersecting$\n      .pipe(\n        filter((next) => next.hostElement === this.referenceRef()),\n        debounceTime(100),\n        finalize(() => {\n          this.intersectionService.unobserve(this.referenceRef());\n        }),\n        takeUntilDestroyed(this.#destroyRef)\n      )\n      .subscribe((next) => {\n        this.visible.set(next.isIntersecting ? this.visible() : false);\n      });\n  }\n\n  private getUID(prefix: string): string {\n    let uid = prefix ?? 'random-id';\n    do {\n      uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\n    } while (this.#document.getElementById(uid));\n\n    return uid;\n  }\n\n  private createTooltipElement(): void {\n    if (!this.tooltipRef) {\n      this.tooltipRef = this.viewContainerRef.createComponent<PopoverComponent>(PopoverComponent);\n      // this.viewContainerRef.detach();\n    }\n  }\n\n  private destroyTooltipElement(): void {\n    this.tooltip?.remove();\n    this.tooltipRef?.destroy();\n    // @ts-ignore\n    this.tooltipRef = undefined;\n    this.popperInstance?.destroy();\n    this.viewContainerRef?.detach();\n    this.viewContainerRef?.clear();\n  }\n\n  private addTooltipElement(): void {\n    if (!this.content()) {\n      this.destroyTooltipElement();\n      return;\n    }\n\n    if (!this.tooltipRef) {\n      this.createTooltipElement();\n    }\n\n    this.tooltipRef?.setInput('content', this.content() ?? '');\n\n    this.tooltip = this.tooltipRef?.location.nativeElement;\n    this.renderer.addClass(this.tooltip, 'd-none');\n    this.renderer.addClass(this.tooltip, 'fade');\n\n    this.popperInstance?.destroy();\n\n    this.viewContainerRef.insert(this.tooltipRef.hostView);\n    this.renderer.appendChild(this.#document.body, this.tooltip);\n\n    this.popperInstance = createPopper(this.referenceRef().nativeElement, this.tooltip, {\n      ...this.popperOptionsComputed()\n    });\n\n    if (!this.visible()) {\n      this.removeTooltipElement();\n      return;\n    }\n    setTimeout(() => {\n      this.tooltipId = this.getUID('popover');\n      this.tooltipRef?.setInput('id', this.tooltipId);\n      this.renderer.removeClass(this.tooltip, 'd-none');\n      this.tooltipRef?.setInput('visible', this.visible());\n      this.popperInstance?.forceUpdate();\n      this.changeDetectorRef?.markForCheck();\n    }, 100);\n  }\n\n  private removeTooltipElement(): void {\n    this.tooltipId = '';\n    if (!this.tooltipRef) {\n      return;\n    }\n    this.tooltipRef.setInput('visible', false);\n    this.tooltipRef.setInput('id', undefined);\n    this.changeDetectorRef.markForCheck();\n    setTimeout(() => {\n      this.viewContainerRef?.detach();\n    }, 300);\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { PopoverDirective } from './popover.directive';\nimport { PopoverComponent } from './popover/popover.component';\n\n@NgModule({\n  exports: [\n    PopoverDirective,\n    PopoverComponent\n  ],\n  imports: [\n    PopoverDirective,\n    PopoverComponent\n  ]\n})\nexport class PopoverModule {}\n","import {\n  booleanAttribute,\n  computed,\n  Directive,\n  effect,\n  EffectRef,\n  ElementRef,\n  inject,\n  Input,\n  numberAttribute,\n  Renderer2,\n  signal,\n  WritableSignal\n} from '@angular/core';\nimport { Colors } from '../coreui.types';\nimport { IProgressBar } from './progress.type';\n\n@Directive({\n  selector: '[cProgressBar]',\n  standalone: true\n})\nexport class ProgressBarDirective implements IProgressBar {\n  readonly #renderer = inject(Renderer2);\n  readonly #hostElement = inject(ElementRef);\n\n  readonly #max = signal(100);\n  readonly #min = 0;\n  readonly #value: WritableSignal<number | undefined> = signal(undefined);\n  readonly #width: WritableSignal<number | undefined> = signal(undefined);\n\n  readonly percent = computed(() => {\n    return +((((this.#value() ?? this.#width() ?? 0) - this.#min) / (this.#max() - this.#min)) * 100).toFixed(\n      this.precision\n    );\n  });\n\n  readonly #valuesEffect: EffectRef = effect(() => {\n    const host: HTMLElement = this.#hostElement.nativeElement;\n    if (this.#value() === undefined || this.#width()) {\n      for (const name of ['aria-valuenow', 'aria-valuemax', 'aria-valuemin', 'role']) {\n        this.#renderer.removeAttribute(host, name);\n      }\n    } else {\n      this.#renderer.setAttribute(host, 'aria-valuenow', String(this.#value()));\n      this.#renderer.setAttribute(host, 'aria-valuemin', String(this.#min));\n      this.#renderer.setAttribute(host, 'aria-valuemax', String(this.#max()));\n      this.#renderer.setAttribute(host, 'role', this.role);\n    }\n    const tagName = host.tagName;\n    if (\n      this.percent() >= 0 &&\n      ((this.stacked && tagName === 'C-PROGRESS') || (!this.stacked && tagName !== 'C-PROGRESS'))\n    ) {\n      this.#renderer.setStyle(host, 'width', `${this.percent()}%`);\n    } else {\n      this.#renderer.removeStyle(host, 'width');\n    }\n  });\n\n  /**\n   * Use to animate the stripes right to left via CSS3 animations.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) animated?: boolean;\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @values 'primary', 'secondary', 'success', 'danger', 'warning', 'info', 'dark', 'light'\n   */\n  @Input() color?: Colors;\n\n  // TODO: check if this is necessary.\n  @Input({ transform: numberAttribute }) precision: number = 0;\n\n  /**\n   * The percent value the ProgressBar.\n   * @type number\n   * @default 0\n   */\n  @Input({ transform: numberAttribute })\n  set value(value: number | undefined) {\n    this.#value.set(value);\n  }\n\n  get value() {\n    return this.#value();\n  }\n\n  @Input({ transform: numberAttribute })\n  set width(value: number | undefined) {\n    this.#width.set(value);\n  }\n\n  /**\n   * Set the progress bar variant to optional striped.\n   * @values 'striped'\n   * @default undefined\n   */\n  @Input() variant?: 'striped';\n\n  /**\n   * The max value of the ProgressBar.\n   * @type number\n   * @default 100\n   */\n  @Input({ transform: numberAttribute })\n  set max(max: number) {\n    this.#max.set(isNaN(max) || max <= 0 ? 100 : max);\n  }\n\n  /**\n   * Stacked ProgressBars.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) stacked?: boolean = false;\n\n  /**\n   * Set default html role attribute.\n   * @type string\n   */\n  @Input() role: string = 'progressbar';\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, inject } from '@angular/core';\nimport { ProgressBarDirective } from './progress-bar.directive';\n\n@Component({\n  selector: 'c-progress-bar',\n  template: '<ng-content />',\n  standalone: true,\n  hostDirectives: [\n    {\n      directive: ProgressBarDirective,\n      inputs: ['animated', 'color', 'max', 'role', 'stacked', 'value', 'variant', 'width']\n    }\n  ],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: { class: 'progress-bar' }\n})\nexport class ProgressBarComponent {\n  readonly #progressBarDirective: ProgressBarDirective | null = inject(ProgressBarDirective, { optional: true });\n\n  @HostBinding('class')\n  get hostClasses(): Record<string, boolean> {\n    const animated = this.#progressBarDirective?.animated;\n    const color = this.#progressBarDirective?.color;\n    const variant = this.#progressBarDirective?.variant;\n    return {\n      'progress-bar': true,\n      'progress-bar-animated': !!animated,\n      [`progress-bar-${variant}`]: !!variant,\n      [`bg-${color}`]: !!color\n    };\n  }\n}\n","import { ChangeDetectionStrategy, Component, HostBinding, Input } from '@angular/core';\nimport { IProgressBarStacked } from './progress.type';\n\n@Component({\n  selector: 'c-progress-stacked',\n  standalone: true,\n  template: '<ng-content />',\n  styles: `:host { display: flex }`,\n  changeDetection: ChangeDetectionStrategy.OnPush\n})\nexport class ProgressStackedComponent implements IProgressBarStacked {\n\n  @Input()\n  @HostBinding('class.progress-stacked') stacked = true;\n\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport {\n  booleanAttribute,\n  ChangeDetectionStrategy,\n  Component,\n  ContentChildren,\n  ElementRef,\n  HostBinding,\n  inject,\n  Input,\n  numberAttribute,\n  QueryList\n} from '@angular/core';\nimport { IProgress } from './progress.type';\nimport { ProgressBarComponent } from './progress-bar.component';\nimport { ProgressBarDirective } from './progress-bar.directive';\nimport { ProgressStackedComponent } from './progress-stacked.component';\n\n@Component({\n  selector: 'c-progress',\n  templateUrl: './progress.component.html',\n  imports: [ProgressBarComponent, NgTemplateOutlet],\n  standalone: true,\n  styleUrl: './progress.component.scss',\n  hostDirectives: [\n    {\n      directive: ProgressBarDirective,\n      inputs: ['animated', 'color', 'max', 'role', 'value', 'variant']\n    }\n  ],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  host: { class: 'progress' }\n})\nexport class ProgressComponent implements IProgress {\n  protected readonly pbd: ProgressBarDirective | null = inject(ProgressBarDirective, { optional: true });\n  readonly #stacked?: boolean = inject(ProgressStackedComponent, { optional: true })?.stacked;\n  readonly #elementRef = inject(ElementRef);\n\n  constructor() {\n    if (this.pbd) {\n      this.pbd.stacked = this.#stacked;\n    }\n  }\n\n  @ContentChildren(ProgressBarComponent) contentProgressBars!: QueryList<ProgressBarComponent>;\n  /**\n   * Sets the height of the component. If you set that value the inner `<CProgressBar>` will automatically resize accordingly.\n   * @type number\n   */\n  @Input({ transform: numberAttribute }) height: number = 0;\n\n  /**\n   * Displays thin progress.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) thin: boolean = false;\n\n  /**\n   * Change the default color to white.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) white: boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): Record<string, boolean> {\n    return {\n      progress: true,\n      'progress-thin': this.thin,\n      'progress-white': this.white\n    };\n  }\n\n  @HostBinding('style.height') get hostStyle(): any {\n    return !!this.height ? `${this.height}px` : (this.#elementRef?.nativeElement?.style?.height ?? undefined);\n  }\n}\n","@if (contentProgressBars.length) {\n  <ng-container *ngTemplateOutlet=\"defaultContent\" />\n} @else if (pbd?.stacked) {\n  <c-progress-bar [animated]=\"pbd?.animated\" [variant]=\"pbd?.variant\" [color]=\"pbd?.color\" stacked>\n    <ng-container *ngTemplateOutlet=\"defaultContent\" />\n  </c-progress-bar>\n} @else {\n  <c-progress-bar [width]=\"pbd?.percent()\" [animated]=\"pbd?.animated\" [variant]=\"pbd?.variant\" [color]=\"pbd?.color\">\n    <ng-container *ngTemplateOutlet=\"defaultContent\" />\n  </c-progress-bar>\n}\n\n<ng-template #defaultContent>\n  <ng-content />\n</ng-template>\n\n","import { NgModule } from '@angular/core';\nimport { ProgressComponent } from './progress.component';\nimport { ProgressBarComponent } from './progress-bar.component';\nimport { ProgressBarDirective } from './progress-bar.directive';\nimport { ProgressStackedComponent } from './progress-stacked.component';\n\n@NgModule({\n  exports: [\n    ProgressComponent,\n    ProgressBarComponent,\n    ProgressBarDirective,\n    ProgressStackedComponent\n  ],\n  imports: [\n    ProgressComponent,\n    ProgressBarComponent,\n    ProgressBarDirective,\n    ProgressStackedComponent\n  ]\n})\nexport class ProgressModule {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SidebarComponent } from './sidebar/sidebar.component';\n\nexport interface ISidebarAction {\n  unfoldable?: boolean | 'toggle';\n  visible?: boolean | 'toggle';\n  toggle?: 'visible' | 'unfoldable';\n  narrow?: boolean;\n  mobile?: boolean;\n  sidebar?: SidebarComponent;\n  id?: string;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class SidebarService {\n  private sidebarState = new BehaviorSubject<ISidebarAction>({});\n  sidebarState$ = this.sidebarState.asObservable();\n\n  toggle(action: ISidebarAction): void {\n    this.sidebarState.next(action);\n  }\n}\n","import { Inject, Injectable, Renderer2 } from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { SidebarService } from '../sidebar.service';\nimport { SidebarComponent } from '../sidebar/sidebar.component';\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class SidebarBackdropService {\n  private backdrop!: HTMLElement;\n  renderer!: Renderer2;\n  private clickListener = (): void => {\n    /* empty */\n  };\n\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    // private rendererFactory: RendererFactory2,\n    private sidebarService: SidebarService\n  ) {\n    // this.renderer = rendererFactory.createRenderer(null, null);\n  }\n\n  setBackdrop(sidebar: SidebarComponent): void {\n    const backdrop = this.document.getElementsByClassName('sidebar-backdrop');\n    // console.log(`sidebar-${this.id}`, ' setBackdrop', backdrop);\n    if (backdrop.length === 0) {\n      this.backdrop = this.renderer.createElement('div');\n      this.renderer.addClass(this.backdrop, 'sidebar-backdrop');\n      this.renderer.appendChild(this.document.body, this.backdrop);\n      this.clickListener = this.renderer.listen(this.backdrop, 'click', (e) => {\n        // console.log(`sidebar-${this.id}`, ' backdrop click', e);\n        this.sidebarService.toggle({ toggle: 'visible', sidebar });\n      });\n    }\n    // console.log(this.backdrop, sidebar.sidebarState.mobile, sidebar.sidebarState.show);\n    if (this.backdrop && sidebar.sidebarState.mobile && sidebar.sidebarState.visible) {\n      this.renderer.addClass(this.backdrop, 'fade');\n      this.renderer.addClass(this.backdrop, 'show');\n      // this.renderer.removeClass(this.backdrop, 'd-none');\n    } else {\n      this.renderer.removeClass(this.backdrop, 'show');\n      this.renderer.removeClass(this.backdrop, 'fade');\n      // this.renderer.addClass(this.backdrop, 'd-none');\n    }\n  }\n\n  clearBackdrop(): void {\n    if (this.backdrop) {\n      // clear backdrop click Listener\n      this.clickListener();\n      // this.renderer.listen(this.backdrop, 'click', (e): void => {} );\n      this.renderer.removeChild(this.document.body, this.backdrop);\n      // @ts-ignore\n      this.backdrop = undefined;\n    }\n  }\n}\n","import {\n  booleanAttribute,\n  Component,\n  EventEmitter,\n  HostBinding,\n  Inject,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Output,\n  Renderer2,\n  SimpleChanges\n} from '@angular/core';\nimport { DOCUMENT } from '@angular/common';\nimport { BreakpointObserver, BreakpointState } from '@angular/cdk/layout';\nimport { Subscription } from 'rxjs';\n\nimport { ISidebarAction, SidebarService } from '../sidebar.service';\nimport { SidebarBackdropService } from '../sidebar-backdrop/sidebar-backdrop.service';\n\n@Component({\n  selector: 'c-sidebar',\n  exportAs: 'cSidebar',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'sidebar' }\n})\nexport class SidebarComponent implements OnChanges, OnDestroy, OnInit {\n  #visible = false;\n  #onMobile = false;\n  #layoutChangeSubscription!: Subscription;\n  #stateToggleSubscription!: Subscription;\n\n  state: ISidebarAction = {\n    sidebar: this\n  };\n\n  #stateInitial = {\n    narrow: false,\n    visible: false,\n    unfoldable: false\n  };\n\n  /**\n   * Sets if the color of text should be colored for a light or dark background. [docs]\n   *\n   * @type 'dark' | 'light'\n   */\n  @Input() colorScheme?: 'dark' | 'light';\n\n  /**\n   * Sets html attribute id. [docs]\n   *\n   * @type string\n   */\n  @Input() id?: string;\n\n  /**\n   * Make sidebar narrow. [docs]\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) narrow: boolean = false;\n\n  /**\n   * Set sidebar to overlaid variant.\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) overlaid: boolean = false;\n\n  /**\n   * Components placement, there’s no default placement. [docs]\n   * @type 'start' | 'end'\n   */\n  @Input() placement?: 'start' | 'end';\n\n  /**\n   * Place sidebar in non-static positions. [docs]\n   * @default 'fixed'\n   */\n  @Input() position: 'fixed' | 'sticky' = 'fixed';\n\n  /**\n   * Size the component small, large, or extra large. [docs]\n   */\n  @Input() size?: 'sm' | 'lg' | 'xl';\n\n  /**\n   * Expand narrowed sidebar on hover. [docs]\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute }) unfoldable: boolean = false;\n\n  /**\n   * Toggle the visibility of sidebar component. [docs]\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    const visible = value;\n    if (this.#visible !== visible) {\n      this.#visible = visible;\n      this.visibleChange.emit(this.#visible);\n    }\n  }\n\n  get visible() {\n    return this.#visible;\n  }\n\n  /**\n   * Event emitted on visibility change. [docs]\n   * @type boolean\n   */\n  @Output() visibleChange = new EventEmitter<boolean>();\n\n  set sidebarState(value: ISidebarAction) {\n    const newState = value;\n    if ('toggle' in newState) {\n      if (newState.toggle === 'visible') {\n        newState.visible = !this.state.visible;\n        this.visible = newState.visible;\n      } else if (newState.toggle === 'unfoldable') {\n        newState.unfoldable = !this.state.unfoldable;\n        this.unfoldable = newState.unfoldable;\n      }\n    } else {\n      this.visible = (newState.visible ?? this.visible) && !this.overlaid;\n    }\n    this.state = {\n      ...this.state,\n      ...newState\n    };\n    this.state.mobile && this.state.visible\n      ? this.backdropService.setBackdrop(this)\n      : this.backdropService.clearBackdrop();\n  }\n\n  get sidebarState(): ISidebarAction {\n    return this.state;\n  }\n\n  get getMobileBreakpoint(): string {\n    const element: Element = this.document.documentElement;\n    const mobileBreakpoint =\n      this.document.defaultView?.getComputedStyle(element)?.getPropertyValue('--cui-mobile-breakpoint') ?? 'md';\n    const breakpointValue =\n      this.document.defaultView\n        ?.getComputedStyle(element)\n        ?.getPropertyValue(`--cui-breakpoint-${mobileBreakpoint.trim()}`) ?? '768px';\n    return `${parseFloat(breakpointValue.trim()) - 0.02}px`;\n  }\n\n  constructor(\n    @Inject(DOCUMENT) private document: Document,\n    private renderer: Renderer2,\n    private breakpointObserver: BreakpointObserver,\n    private sidebarService: SidebarService,\n    private backdropService: SidebarBackdropService\n  ) {\n    this.backdropService.renderer = renderer;\n  }\n\n  @HostBinding('class')\n  get getClasses(): any {\n    const { mobile, visible } = this.sidebarState;\n    return {\n      sidebar: true,\n      'sidebar-fixed': this.position === 'fixed' && !mobile,\n      'sidebar-narrow': this.narrow && !this.unfoldable,\n      'sidebar-narrow-unfoldable': this.unfoldable,\n      'sidebar-overlaid': this.overlaid,\n      [`sidebar-${this.placement}`]: !!this.placement,\n      [`sidebar-${this.colorScheme}`]: !!this.colorScheme,\n      [`sidebar-${this.size}`]: !!this.size,\n      show: visible,\n      // show: visible && this.#onMobile, //todo: check\n      hide: !visible\n    };\n  }\n\n  ngOnInit(): void {\n    this.setInitialState();\n    this.layoutChangeSubscribe();\n    this.stateToggleSubscribe();\n  }\n\n  ngOnDestroy(): void {\n    this.stateToggleSubscribe(false);\n    this.layoutChangeSubscribe(false);\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    const oldStateMap = new Map(Object.entries(this.state));\n    const newStateMap = new Map();\n    newStateMap.set('sidebar', this);\n\n    const propList = ['visible', 'unfoldable', 'narrow'];\n\n    for (const propName in changes) {\n      if (propList.includes(propName)) {\n        if (changes[propName] && !changes[propName].firstChange) {\n          const value = booleanAttribute(changes[propName].currentValue);\n          if (oldStateMap.get(propName) !== value) {\n            newStateMap.set(propName, value);\n          }\n        }\n      }\n    }\n\n    if (newStateMap.size > 1) {\n      const state = Object.fromEntries(newStateMap.entries());\n      this.sidebarService.toggle(state);\n    }\n  }\n\n  setInitialState(): void {\n    this.#stateInitial = {\n      narrow: this.narrow,\n      visible: this.visible,\n      unfoldable: this.unfoldable\n    };\n    this.sidebarService.toggle({\n      ...this.#stateInitial,\n      sidebar: this\n    });\n  }\n\n  private stateToggleSubscribe(subscribe: boolean = true): void {\n    if (subscribe) {\n      this.#stateToggleSubscription = this.sidebarService.sidebarState$.subscribe((state) => {\n        if (this === state.sidebar || this.id === state.id) {\n          this.sidebarState = state;\n        }\n      });\n    } else {\n      this.#stateToggleSubscription?.unsubscribe();\n    }\n  }\n\n  layoutChangeSubscribe(subscribe: boolean = true): void {\n    const onMobile = `(max-width: ${this.getMobileBreakpoint})`;\n\n    if (subscribe) {\n      const layoutChanges = this.breakpointObserver.observe([onMobile]);\n\n      this.#layoutChangeSubscription = layoutChanges.subscribe((result: BreakpointState) => {\n        const isOnMobile = result.breakpoints[onMobile];\n        const isUnfoldable = isOnMobile ? false : this.unfoldable;\n        if (this.#onMobile !== isOnMobile) {\n          this.#onMobile = isOnMobile;\n          this.sidebarService.toggle({\n            mobile: isOnMobile,\n            unfoldable: isUnfoldable,\n            visible: isOnMobile ? !isOnMobile : this.#stateInitial.visible,\n            sidebar: this\n          });\n        }\n      });\n    } else {\n      this.#layoutChangeSubscription?.unsubscribe();\n    }\n  }\n}\n","import { Component, HostBinding, Input, OnInit } from '@angular/core';\nimport { NgClass } from '@angular/common';\nimport { RouterLink } from '@angular/router';\n\nimport { HtmlAttributesDirective } from '../../shared';\n\n@Component({\n  selector: 'c-sidebar-brand',\n  templateUrl: './sidebar-brand.component.html',\n  standalone: true,\n  imports: [RouterLink, HtmlAttributesDirective, NgClass]\n})\nexport class SidebarBrandComponent implements OnInit {\n\n  @Input() brandFull?: any;\n  @Input() brandNarrow?: any;\n  @Input() routerLink?: any[] | string;\n\n  @HostBinding('class.sidebar-brand') sidebarBrandClass = true;\n\n  brandImg = false;\n\n  ngOnInit(): void {\n    this.brandImg = Boolean(this.brandFull || this.brandNarrow);\n  }\n}\n","@if (brandImg) {\n  <a [routerLink]=\"routerLink\">\n    @if (brandFull) {\n      <img [cHtmlAttr]=\"brandFull\" [ngClass]=\"'sidebar-brand-full'\">\n    }\n    @if (brandNarrow) {\n      <img [cHtmlAttr]=\"brandNarrow\" [ngClass]=\"'sidebar-brand-narrow'\">\n    }\n  </a>\n} @else {\n  <ng-content />\n}\n","import {Directive, HostListener, Input} from '@angular/core';\n\nimport {SidebarService} from '../sidebar.service';\n\n/**\n * Allows the sidebar to be toggled/folded via click on host element.\n */\n@Directive({\n  selector: '[cSidebarToggle]',\n  exportAs: 'cSidebarToggle',\n  standalone: true\n})\nexport class SidebarToggleDirective {\n  /**\n   * Id of sidebar for toggle action. [docs]\n   *\n   * @type string\n   */\n  @Input('cSidebarToggle') id?: string;\n  /**\n   * Sidebar property name for toggle action. [docs]\n   *\n   * @type 'visible' | 'unfoldable'\n   * @default 'visible'\n   */\n  @Input() toggle: 'visible' | 'unfoldable' = 'visible'\n\n  constructor(\n    private sidebarService: SidebarService\n  ) {}\n\n  @HostListener('click', ['$event'])\n  toggleOpen($event: any): void {\n    $event.preventDefault();\n    this.sidebarService.toggle({ toggle: this.toggle, id: this.id });\n  }\n}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { SidebarToggleDirective } from '../sidebar-toggle/sidebar-toggle.directive';\n\n@Directive({\n  selector: '[cSidebarToggler]',\n  standalone: true,\n  hostDirectives: [{ directive: SidebarToggleDirective, inputs: ['cSidebarToggle: cSidebarToggler', 'toggle'] }]\n})\nexport class SidebarTogglerDirective {\n\n  @HostBinding('attr.role')\n  @Input() role = 'button';\n\n  @HostBinding('class.sidebar-toggler') sidebarTogglerClass = true;\n\n  @HostBinding('style')\n  get getStyles(): any {\n    return {\n      appearance: 'button',\n      'align-items': 'flex-start',\n      cursor: 'pointer'\n    };\n  }\n\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-sidebar-header',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'sidebar-header' }\n})\nexport class SidebarHeaderComponent {}\n","import { Component } from '@angular/core';\n\n@Component({\n  selector: 'c-sidebar-footer',\n  template: '<ng-content />',\n  standalone: true,\n  host: { class: 'sidebar-footer' }\n})\nexport class SidebarFooterComponent {}\n","import { Injectable } from '@angular/core';\n\nimport { INavData } from './sidebar-nav';\n\n@Injectable()\nexport abstract class SidebarNavService {\n  /**\n   * Returns a sidebar-nav items config NavData\n   */\n  abstract getSidebarNavItemsConfig(): INavData[];\n}\n\n@Injectable()\nexport class SidebarNavHelper {\n\n  itemType(item: INavData): string {\n    if (item.divider) {\n      return 'divider';\n    } else if (item.title) {\n      return 'title';\n    } else if (item.children && item.children.length > 0 ) {\n      return 'group';\n    } else if (item.label) {\n      return 'label';\n    } else if (!Object.keys(item).length) {\n      return 'empty';\n    } else {\n      return 'link';\n    }\n  }\n\n  public isActive(router: any, item: INavData): boolean {\n    return router.isActive(item.url, false);\n  }\n\n  public hasBadge = (item: INavData) => Boolean(item.badge);\n  public hasIcon = (item: INavData) => Boolean(item.icon) || item.icon === '';\n  public hasIconComponent = (item: INavData) => Boolean(item.iconComponent);\n\n  public getIconClass(item: INavData): any {\n    const classes = {\n      'nav-icon': true\n    };\n    const icon = item.icon;\n    // @ts-ignore\n    classes[icon] = this.hasIcon(item);\n    return classes;\n  }\n}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { SidebarNavGroupComponent } from './sidebar-nav.component';\n\nexport interface ISidebarAction {\n  open?: boolean;\n  sidebarNavGroup?: SidebarNavGroupComponent;\n}\n\n@Injectable()\nexport class SidebarNavGroupService {\n  private sidebarNavGroupState = new BehaviorSubject<ISidebarAction>({});\n  sidebarNavGroupState$ = this.sidebarNavGroupState.asObservable();\n\n  toggle(action: ISidebarAction): void {\n    this.sidebarNavGroupState.next(action);\n  }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n  name: 'cSidebarNavIcon',\n  standalone: true\n})\nexport class SidebarNavIconPipe implements PipeTransform {\n\n  transform(item: any, args?: any): any {\n    const icon = item.icon;\n    return {\n      'nav-icon': true,\n      [`${icon}`]: !!icon\n    };\n  }\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n  name: 'cSidebarNavBadge',\n  standalone: true\n})\nexport class SidebarNavBadgePipe implements PipeTransform {\n\n  transform(item: any, args?: any): any {\n    const badge = item.badge;\n    return {\n      badge: true,\n      'ms-auto': true,\n      'badge-sm': !badge.size,\n      [`badge-${badge.size}`]: !!badge.size,\n      [`bg-${badge.color}`]: !!badge.color,\n      [`${badge.class}`]: !!badge.class\n    };\n  }\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\n@Pipe({\n  name: 'cSidebarNavLink',\n  standalone: true\n})\nexport class SidebarNavLinkPipe implements PipeTransform {\n\n  transform(item: any): any {\n\n    const disabled = item?.attributes?.disabled;\n\n    return {\n      'nav-link': true,\n      disabled,\n      'btn-link': disabled,\n      [`nav-link-${item.variant}`]: !!item.variant\n    };\n  }\n}\n","import { NgClass, NgTemplateOutlet } from '@angular/common';\nimport { Component, EventEmitter, Input, OnDestroy, OnInit, Output } from '@angular/core';\nimport { NavigationEnd, Router, RouterModule } from '@angular/router';\nimport { Observable, Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\nimport { IconDirective } from '@coreui/icons-angular';\n\n// import {SidebarService} from '../sidebar.service';\nimport { HtmlAttributesDirective } from '../../shared';\nimport { SidebarNavHelper } from './sidebar-nav.service';\nimport { INavData } from './sidebar-nav';\nimport { SidebarNavLinkPipe } from './sidebar-nav-link.pipe';\nimport { SidebarNavBadgePipe } from './sidebar-nav-badge.pipe';\nimport { SidebarNavIconPipe } from './sidebar-nav-icon.pipe';\n\n@Component({\n  selector: 'c-sidebar-nav-link-content',\n  template: `\n    @if (true) {\n      <ng-container>{{ item?.name ?? '' }}</ng-container>\n    }\n  `,\n  providers: [SidebarNavHelper],\n  standalone: true\n})\nexport class SidebarNavLinkContentComponent {\n  @Input() item?: INavData;\n\n  constructor(public helper: SidebarNavHelper) {}\n}\n\n@Component({\n  selector: 'c-sidebar-nav-link',\n  templateUrl: './sidebar-nav-link.component.html',\n  providers: [SidebarNavHelper],\n  standalone: true,\n  imports: [\n    RouterModule,\n    HtmlAttributesDirective,\n    IconDirective,\n    SidebarNavLinkContentComponent,\n    SidebarNavLinkPipe,\n    SidebarNavBadgePipe,\n    SidebarNavIconPipe,\n    NgTemplateOutlet,\n    NgClass\n  ]\n})\nexport class SidebarNavLinkComponent implements OnInit, OnDestroy {\n  protected _item: INavData = {};\n\n  @Input()\n  set item(item: INavData) {\n    this._item = JSON.parse(JSON.stringify(item));\n  }\n\n  get item(): INavData {\n    return this._item;\n  }\n\n  @Output() linkClick = new EventEmitter();\n\n  public linkType!: string;\n  public href!: string;\n  public linkActive!: boolean;\n  private url!: string;\n\n  private navigationEndObservable: Observable<NavigationEnd>;\n  private navSubscription!: Subscription;\n\n  constructor(\n    public router: Router\n    // private renderer: Renderer2,\n    // private hostElement: ElementRef,\n    // private sidebarService: SidebarService\n  ) {\n    this.navigationEndObservable = router.events.pipe(\n      filter((event) => {\n        return event instanceof NavigationEnd;\n      })\n    ) as Observable<NavigationEnd>;\n  }\n\n  ngOnInit(): void {\n    this.url =\n      typeof this.item.url === 'string'\n        ? this.item.url\n        : this.router.serializeUrl(this.router.createUrlTree((this.item.url as any[]) ?? ['']));\n    this.linkType = this.getLinkType();\n    this.href = this.isDisabled() ? '' : this.item.href || this.url;\n    this.linkActive = this.router.url.split(/[?#(;]/)[0] === this.href.split(/[?#(;]/)[0];\n    this.navSubscription = this.navigationEndObservable.subscribe((event) => {\n      const itemUrlArray = this.href.split(/[?#(;]/)[0].split('/');\n      const urlArray = event.urlAfterRedirects.split(/[?#(;]/)[0].split('/');\n      this.linkActive = itemUrlArray.every((value, index) => value === urlArray[index]);\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.navSubscription?.unsubscribe();\n  }\n\n  public getLinkType(): string {\n    return this.isDisabled() ? 'disabled' : this.isExternalLink() ? 'external' : 'link';\n  }\n\n  public isDisabled(): boolean {\n    return this.item?.attributes?.['disabled'];\n  }\n\n  public isExternalLink(): boolean {\n    const linkPath = Array.isArray(this.item.url) ? this.item.url[0] : this.item.url;\n    return !!this.item.href || linkPath?.substring(0, 4) === 'http';\n  }\n\n  linkClicked(): void {\n    this.linkClick.emit();\n  }\n\n  // public hideMobile() {\n  //   // todo: proper scrollIntoView() after NavigationEnd\n  //   setTimeout(() => {\n  //     console.log('scroll')\n  //     this.hostElement.nativeElement.scrollIntoView();\n  //   }, 1000)\n  //   this.sidebarService.toggle({open: false, breakpoint: ''});\n  // }\n}\n","@switch (linkType) {\n  @case ('disabled') {\n    <a [cHtmlAttr]=\"item.attributes ?? {}\" [ngClass]=\"item | cSidebarNavLink\">\n      <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\" />\n      <c-sidebar-nav-link-content [item]=\"item\" />\n      @if (item.badge) {\n        <span [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\n      }\n    </a>\n  }\n  @case ('external') {\n    <a (click)=\"linkClicked()\" [cHtmlAttr]=\"item.attributes ?? {}\" [href]=\"href\" [ngClass]=\"item | cSidebarNavLink\">\n      <ng-container *ngTemplateOutlet=\"iconTemplate; context: {$implicit: item}\" />\n      <c-sidebar-nav-link-content [item]=\"item\" />\n      @if (item.badge) {\n        <span [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\n      }\n    </a>\n  }\n  @default {\n    <a (click)=\"linkClicked()\"\n       [cHtmlAttr]=\"item.attributes ?? {}\"\n       [fragment]=\"item.linkProps?.fragment\"\n       [ngClass]=\"item | cSidebarNavLink\"\n       [preserveFragment]=\"item.linkProps?.preserveFragment ?? false\"\n       [queryParamsHandling]=\"item.linkProps?.queryParamsHandling\"\n       [queryParams]=\"item.linkProps?.queryParams ?? null\"\n       [replaceUrl]=\"item.linkProps?.replaceUrl ?? false\"\n       [routerLinkActiveOptions]=\"item.linkProps?.routerLinkActiveOptions ?? { exact: false }\"\n       [routerLink]=\"item.url\"\n       [skipLocationChange]=\"item.linkProps?.skipLocationChange ?? false\"\n       [state]=\"item.linkProps?.state ?? {}\"\n       [target]=\"item.attributes?.['target']\"\n       routerLinkActive=\"active\"\n    >\n      <!--    [class.active]=\"linkActive\"-->\n      <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\" />\n      <c-sidebar-nav-link-content [item]=\"item\" />\n      @if (item.badge) {\n        <span [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge?.text }}</span>\n      }\n    </a>\n  }\n}\n<ng-template #iconTemplate let-item>\n  <!--  <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>-->\n  @if (item?.icon) {\n    <span class=\"nav-icon\">\n      <span [ngClass]=\"item.icon ?? ''\"></span>\n    </span>\n  }\n  @if (item?.iconComponent) {\n    <svg\n      [cIcon]=\"item.iconComponent?.content\"\n      [customClasses]=\"item | cSidebarNavIcon\"\n      [name]=\"item.iconComponent?.name\"\n    ></svg>\n  }\n  @if (!item?.icon && !item?.iconComponent) {\n    <span [ngClass]=\"item | cSidebarNavIcon\"></span>\n  }\n</ng-template>\n","import { Component, Input, OnInit } from '@angular/core';\nimport { NgClass } from '@angular/common';\n\nimport { HtmlAttributesDirective } from '../../shared';\nimport { SidebarNavHelper } from './sidebar-nav.service';\nimport { SidebarNavBadgePipe } from './sidebar-nav-badge.pipe';\n\n@Component({\n  selector: 'c-sidebar-nav-label',\n  templateUrl: './sidebar-nav-label.component.html',\n  standalone: true,\n  imports: [HtmlAttributesDirective, SidebarNavBadgePipe, NgClass]\n})\nexport class SidebarNavLabelComponent implements OnInit {\n\n  constructor(\n    public helper: SidebarNavHelper\n  ) { }\n\n  @Input() item: any;\n\n  private classes = {\n    'c-nav-label': true,\n    'c-active': true\n  };\n  private iconClasses = {};\n\n  ngOnInit() {\n    this.iconClasses = this.helper.getIconClass(this.item);\n  }\n\n  getItemClass() {\n    const itemClass = this.item.class;\n    // @ts-ignore\n    this.classes[itemClass] = !!itemClass;\n    return this.classes;\n  }\n\n  getLabelIconClass() {\n    const variant = `text-${this.item.label.variant}`;\n    // @ts-ignore\n    this.iconClasses[variant] = !!this.item.label.variant;\n    const labelClass = this.item.label.class;\n    // @ts-ignore\n    this.iconClasses[labelClass] = !!labelClass;\n    return this.iconClasses;\n  }\n}\n","<a [cHtmlAttr]=\"item.attributes\"\n   [ngClass]=\"getItemClass()\"\n   href=\"{{item.url}}\">\n  @if (helper.hasIcon(item)) {\n    <i [ngClass]=\"getLabelIconClass()\"></i>\n  }\n  <ng-container>{{ item.name }}</ng-container>\n  @if (helper.hasBadge(item)) {\n    <span [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\n  }\n</a>\n","import { Component, ElementRef, Input, OnInit, Renderer2 } from '@angular/core';\n\n@Component({\n  selector: 'c-sidebar-nav-title',\n  template: '',\n  standalone: true\n})\nexport class SidebarNavTitleComponent implements OnInit {\n  @Input() item: any;\n\n  constructor(\n    private el: ElementRef,\n    private renderer: Renderer2\n  ) {}\n\n  ngOnInit(): void {\n    const nativeElement: HTMLElement = this.el.nativeElement;\n    const name = this.renderer.createText(this.item.name);\n\n    if (this.item.class) {\n      const classes = this.item.class;\n      this.renderer.addClass(nativeElement, classes);\n    }\n\n    if (this.item.wrapper) {\n      const wrapper = this.renderer.createElement(this.item.wrapper.element);\n      this.addAttribs(this.item.wrapper.attributes, wrapper);\n      this.renderer.appendChild(wrapper, name);\n      this.renderer.appendChild(nativeElement, wrapper);\n    } else {\n      this.renderer.appendChild(nativeElement, name);\n    }\n  }\n\n  private addAttribs(attribs: { [x: string]: any }, element: any): void {\n    if (attribs) {\n      for (const attr in attribs) {\n        if (attr === 'style' && typeof attribs[attr] === 'object') {\n          this.setStyle(attribs[attr], element);\n        } else if (attr === 'class') {\n          this.addClass(attribs[attr], element);\n        } else {\n          this.setAttrib(attr, attribs[attr], element);\n        }\n      }\n    }\n  }\n\n  private setStyle(styles: { [x: string]: any }, el: any): void {\n    for (const style in styles) {\n      if (style) {\n        this.renderer.setStyle(el, style, styles[style]);\n      }\n    }\n  }\n\n  private addClass(classes: string | string[], el: any): void {\n    const classArray = Array.isArray(classes) ? classes : classes.split(' ');\n    classArray\n      .filter((element) => element.length > 0)\n      .forEach((element) => {\n        this.renderer.addClass(el, element);\n      });\n  }\n\n  private setAttrib(key: string, value: string, el: any): void {\n    this.renderer.setAttribute(el, key, value);\n  }\n}\n","import { Component, Input } from '@angular/core';\n\n@Component({\n  selector: 'c-sidebar-nav-divider',\n  template: ``,\n  standalone: true\n})\nexport class SidebarNavDividerComponent {\n\n  @Input() item: any;\n\n}\n","import { Pipe, PipeTransform } from '@angular/core';\n\nimport {SidebarNavHelper} from './sidebar-nav.service';\n\n@Pipe({\n  name: 'cSidebarNavItemClass',\n  standalone: true\n})\nexport class SidebarNavItemClassPipe implements PipeTransform {\n\n  constructor(\n    public helper: SidebarNavHelper\n  ) {}\n\n  // transform(item: any, ...args: any[]): any {\n  transform(item: any, args?: any[]): any {\n      const itemType = this.helper.itemType(item);\n      let itemClass;\n      if (['divider', 'title'].includes(itemType)) {\n        itemClass = `nav-${itemType}`;\n      } else if (itemType === 'group') {\n        // itemClass = 'c-sidebar-nav-group' ;\n        itemClass = '' ;\n      } else {\n        itemClass = 'nav-item';\n      }\n      return item.class ? `${itemClass} ${item.class}` : itemClass;\n    }\n}\n","import { animate, AnimationEvent, state, style, transition, trigger } from '@angular/animations';\nimport { NgClass, NgStyle, NgTemplateOutlet } from '@angular/common';\nimport {\n  booleanAttribute,\n  Component,\n  ElementRef,\n  forwardRef,\n  HostBinding,\n  Input,\n  OnChanges,\n  OnDestroy,\n  OnInit,\n  Optional,\n  Renderer2,\n  SimpleChanges,\n  ViewChild\n} from '@angular/core';\nimport { NavigationEnd, Router, RouterModule } from '@angular/router';\nimport { Observable, Subscription } from 'rxjs';\nimport { filter } from 'rxjs/operators';\n\nimport { SidebarService } from '../sidebar.service';\nimport { SidebarComponent } from '../sidebar/sidebar.component';\nimport { INavData } from './sidebar-nav';\nimport { SidebarNavHelper } from './sidebar-nav.service';\nimport { SidebarNavGroupService } from './sidebar-nav-group.service';\nimport { HtmlAttributesDirective } from '../../shared';\nimport { SidebarNavIconPipe } from './sidebar-nav-icon.pipe';\nimport { SidebarNavBadgePipe } from './sidebar-nav-badge.pipe';\nimport { SidebarNavLinkComponent } from './sidebar-nav-link.component';\nimport { SidebarNavLabelComponent } from './sidebar-nav-label.component';\nimport { SidebarNavTitleComponent } from './sidebar-nav-title.component';\nimport { SidebarNavDividerComponent } from './sidebar-nav-divider.component';\nimport { SidebarNavItemClassPipe } from './sidebar-nav-item-class.pipe';\nimport { IconDirective } from '@coreui/icons-angular';\n\n@Component({\n  selector: 'c-sidebar-nav-group',\n  templateUrl: './sidebar-nav-group.component.html',\n  styleUrls: ['./sidebar-nav-group.component.scss'],\n  providers: [SidebarNavHelper, SidebarNavGroupService],\n  standalone: true,\n  imports: [\n    HtmlAttributesDirective,\n    IconDirective,\n    NgTemplateOutlet,\n    NgClass,\n    SidebarNavIconPipe,\n    SidebarNavBadgePipe,\n    forwardRef(() => SidebarNavComponent),\n    NgStyle\n  ],\n  animations: [\n    trigger('openClose', [\n      state(\n        'open',\n        style({\n          height: '*'\n        })\n      ),\n      state(\n        'closed',\n        style({\n          height: '0px'\n        })\n      ),\n      transition('open <=> closed', [animate('.15s ease')])\n    ])\n  ]\n})\nexport class SidebarNavGroupComponent implements OnInit, OnDestroy {\n  constructor(\n    private router: Router,\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    public helper: SidebarNavHelper,\n    private sidebarNavGroupService: SidebarNavGroupService\n  ) {\n    this.navigationEndObservable = router.events.pipe(\n      filter((event: any) => event instanceof NavigationEnd)\n    ) as Observable<NavigationEnd>;\n  }\n\n  @Input() item: any;\n  @Input() dropdownMode: 'path' | 'none' | 'close' = 'path';\n  @Input() show?: boolean;\n  @Input({ transform: booleanAttribute }) compact?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'nav-group': true,\n      show: this.open\n    };\n  }\n\n  @ViewChild(forwardRef(() => SidebarNavComponent), { read: ElementRef }) sidebarNav!: ElementRef;\n\n  navigationEndObservable: Observable<NavigationEnd>;\n  navSubscription!: Subscription;\n  navGroupSubscription!: Subscription;\n\n  public open!: boolean;\n  public navItems: INavData[] = [];\n  public display: any = { display: 'block' };\n\n  ngOnInit(): void {\n    this.navItems = [...this.item.children];\n\n    this.navSubscription = this.navigationEndObservable.subscribe((event: NavigationEnd) => {\n      if (this.dropdownMode !== 'none') {\n        const samePath = this.samePath(event.url);\n        this.openGroup(samePath);\n      }\n    });\n\n    if (this.samePath(this.router.routerState.snapshot.url)) {\n      this.openGroup(true);\n    }\n\n    this.navGroupSubscription = this.sidebarNavGroupService.sidebarNavGroupState$.subscribe((next) => {\n      if (this.dropdownMode === 'close' && next.sidebarNavGroup && next.sidebarNavGroup !== this) {\n        if (next.sidebarNavGroup.item.url.startsWith(this.item.url)) {\n          return;\n        }\n        if (this.samePath(this.router.routerState.snapshot.url)) {\n          this.openGroup(true);\n          return;\n        }\n        this.openGroup(false);\n      }\n    });\n  }\n\n  samePath(url: string): boolean {\n    // console.log('item:', this.item.name, this.item.url, 'url:', url);\n    const itemArray = this.item.url?.split('/');\n    const urlArray = url.split('/');\n    return itemArray?.every((value: string, index: number) => {\n      // console.log(value === urlArray[index], 'value:', value, 'index:', index, urlArray[index], url);\n      return value === urlArray[index];\n    });\n  }\n\n  openGroup(open: boolean): void {\n    this.open = open;\n  }\n\n  toggleGroup($event: any): void {\n    $event.preventDefault();\n    this.openGroup(!this.open);\n    if (this.open) {\n      this.sidebarNavGroupService.toggle({ open: this.open, sidebarNavGroup: this });\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.navSubscription?.unsubscribe();\n  }\n\n  onAnimationStart($event: AnimationEvent) {\n    this.display = { display: 'block' };\n    setTimeout(() => {\n      const host = this.sidebarNav?.nativeElement;\n      if ($event.toState === 'open' && host) {\n        this.renderer.setStyle(host, 'height', `${host['scrollHeight']}px`);\n      }\n    });\n  }\n\n  onAnimationDone($event: AnimationEvent) {\n    setTimeout(() => {\n      const host = this.sidebarNav?.nativeElement;\n      if ($event.toState === 'open' && host) {\n        this.renderer.setStyle(host, 'height', 'auto');\n      }\n      if ($event.toState === 'closed') {\n        setTimeout(() => {\n          this.display = null;\n        });\n      }\n    });\n  }\n}\n\n@Component({\n  selector: 'c-sidebar-nav',\n  templateUrl: './sidebar-nav.component.html',\n  standalone: true,\n  imports: [\n    NgClass,\n    HtmlAttributesDirective,\n    SidebarNavLinkComponent,\n    SidebarNavLabelComponent,\n    SidebarNavTitleComponent,\n    SidebarNavDividerComponent,\n    SidebarNavGroupComponent,\n    SidebarNavItemClassPipe,\n    RouterModule\n  ]\n})\nexport class SidebarNavComponent implements OnChanges {\n  constructor(\n    @Optional() public sidebar: SidebarComponent,\n    public helper: SidebarNavHelper,\n    public router: Router,\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    private sidebarService: SidebarService\n  ) {}\n\n  @Input() navItems?: INavData[] = [];\n  @Input() dropdownMode: 'path' | 'none' | 'close' = 'path';\n  @Input({ transform: booleanAttribute }) groupItems?: boolean;\n  @Input({ transform: booleanAttribute }) compact?: boolean;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'sidebar-nav': !this.groupItems,\n      'nav-group-items': this.groupItems,\n      compact: this.groupItems && this.compact\n    };\n  }\n\n  // @HostBinding('class.nav-group-items')\n  // get sidebarNavGroupItemsClass(): boolean {\n  //   return !!this.groupItems;\n  // }\n\n  @HostBinding('attr.role')\n  @Input()\n  role = 'navigation';\n\n  public navItemsArray: INavData[] = [];\n\n  public ngOnChanges(changes: SimpleChanges): void {\n    this.navItemsArray = Array.isArray(this.navItems) ? this.navItems.slice() : [];\n  }\n\n  public hideMobile(): void {\n    // todo: proper scrollIntoView() after NavigationEnd\n    if (this.sidebar && this.sidebar.sidebarState.mobile) {\n      this.sidebarService.toggle({ toggle: 'visible', sidebar: this.sidebar });\n    }\n  }\n}\n","<a (click)=\"toggleGroup($event)\"\n   [cHtmlAttr]=\"item.attributes\"\n   class=\"nav-link nav-group-toggle\"\n   href>\n  <ng-container *ngTemplateOutlet=\"iconTemplate ; context: {$implicit: item}\" />\n  <ng-container>{{ item.name }}</ng-container>\n  @if (helper.hasBadge(item)) {\n    <span [ngClass]=\"item | cSidebarNavBadge\">{{ item.badge.text }}</span>\n  }\n</a>\n<c-sidebar-nav\n  (@openClose.done)=\"onAnimationDone($event)\"\n  (@openClose.start)=\"onAnimationStart($event)\"\n  [@openClose]=\"open ? 'open' : 'closed'\"\n  [compact]=\"compact\"\n  [dropdownMode]=\"dropdownMode\"\n  [groupItems]=\"true\"\n  [navItems]=\"navItems\"\n  [ngStyle]=\"display\"\n/>\n\n<ng-template #iconTemplate let-item>\n  <!--  <i *ngIf=\"item?.icon\" [ngClass]=\"item | cSidebarNavIcon\"></i>-->\n  @if (item?.icon) {\n    <span class=\"nav-icon\">\n    <span [ngClass]=\"item.icon ?? ''\"></span>\n  </span>\n  }\n  @if (item?.iconComponent) {\n    <svg\n      [cIcon]=\"item.iconComponent?.content\"\n      [customClasses]=\"item | cSidebarNavIcon\"\n      [name]=\"item.iconComponent?.name\"\n    />\n  }\n  @if (!item?.icon && !item?.iconComponent) {\n    <span [ngClass]=\"item | cSidebarNavIcon\"></span>\n  }\n</ng-template>\n","@for (item of navItemsArray; track item) {\n  @switch (helper.itemType(item)) {\n    @case ('group') {\n      <c-sidebar-nav-group\n        #rla=\"routerLinkActive\"\n        [dropdownMode]=\"dropdownMode\"\n        [item]=\"item\"\n        [ngClass]=\"item | cSidebarNavItemClass\"\n        [routerLinkActiveOptions]=\"{exact: true}\"\n        routerLinkActive=\"show\"\n        [compact]=\"compact\"\n      />\n    }\n    @case ('divider') {\n      <c-sidebar-nav-divider\n        [cHtmlAttr]=\"item.attributes ?? {}\"\n        [item]=\"item\"\n        [ngClass]=\"item | cSidebarNavItemClass\"\n      />\n    }\n    @case ('title') {\n      <c-sidebar-nav-title\n        [cHtmlAttr]=\"item.attributes ?? {}\"\n        [item]=\"item\"\n        [ngClass]=\"item | cSidebarNavItemClass\"\n      />\n    }\n    @case ('label') {\n      <c-sidebar-nav-label\n        [item]=\"item\"\n        [ngClass]=\"item | cSidebarNavItemClass\"\n      />\n    }\n    @case ('empty') {\n      <ng-container />\n    }\n    @default {\n      <c-sidebar-nav-link\n        (linkClick)=\"hideMobile()\"\n        [item]=\"item\"\n        [ngClass]=\"item | cSidebarNavItemClass\"\n      />\n    }\n  }\n}\n<ng-content />\n","import { NgModule } from '@angular/core';\n\nimport { SidebarComponent } from './sidebar/sidebar.component';\nimport { SidebarService } from './sidebar.service';\nimport { SidebarBrandComponent } from './sidebar-brand/sidebar-brand.component';\nimport { SidebarToggleDirective } from './sidebar-toggle/sidebar-toggle.directive';\nimport { SidebarTogglerDirective } from './sidebar-toggler/sidebar-toggler.directive';\nimport { SidebarHeaderComponent } from './sidebar-header/sidebar-header.component';\nimport { SidebarFooterComponent } from './sidebar-footer/sidebar-footer.component';\nimport { SidebarNavGroupService } from './sidebar-nav/sidebar-nav-group.service';\n\nimport {\n  SidebarNavBadgePipe,\n  SidebarNavComponent,\n  SidebarNavDividerComponent,\n  SidebarNavGroupComponent,\n  SidebarNavHelper,\n  SidebarNavIconPipe,\n  SidebarNavItemClassPipe,\n  SidebarNavLabelComponent,\n  SidebarNavLinkComponent,\n  SidebarNavLinkContentComponent,\n  SidebarNavLinkPipe,\n  SidebarNavTitleComponent\n} from './sidebar-nav';\n\n@NgModule({\n  imports: [\n    SidebarComponent,\n    SidebarBrandComponent,\n    SidebarFooterComponent,\n    SidebarHeaderComponent,\n    SidebarNavComponent,\n    SidebarNavBadgePipe,\n    SidebarNavDividerComponent,\n    SidebarNavGroupComponent,\n    SidebarNavIconPipe,\n    SidebarNavItemClassPipe,\n    SidebarNavLabelComponent,\n    SidebarNavLinkComponent,\n    SidebarNavLinkContentComponent,\n    SidebarNavLinkPipe,\n    SidebarNavTitleComponent,\n    SidebarToggleDirective,\n    SidebarTogglerDirective\n  ],\n  exports: [\n    SidebarComponent,\n    SidebarToggleDirective,\n    SidebarTogglerDirective,\n    SidebarBrandComponent,\n    SidebarNavComponent,\n    SidebarHeaderComponent,\n    SidebarFooterComponent\n  ],\n  providers: [\n    SidebarService,\n    SidebarNavHelper,\n    SidebarNavGroupService\n  ]\n})\nexport class SidebarModule {}\n","import { Component, computed, input } from '@angular/core';\n\nimport { Colors } from '../coreui.types';\n\n@Component({\n  selector: 'c-spinner',\n  templateUrl: './spinner.component.html',\n  standalone: true,\n  host: {\n    '[attr.role]': 'role()',\n    '[class]': 'hostClasses()'\n  }\n})\nexport class SpinnerComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color = input<Colors>();\n\n  /**\n   * Label for accessibility.\n   * @type string\n   * @default 'Loading...'\n   */\n  readonly label = input('Loading...');\n\n  /**\n   * Size the component small.\n   * @type string\n   * @values 'sm'\n   */\n  readonly size = input<'sm'>();\n\n  /**\n   * Set the button variant to an outlined button or a ghost button.\n   * @values 'border' | 'grow'\n   * @default 'border'\n   */\n  readonly variant = input<'border' | 'grow'>('border');\n  /**\n   * Default role attr for Spinner. [docs]\n   * @type string\n   * @default 'status'\n   */\n  readonly role = input('status');\n\n  readonly hostClasses = computed(() => {\n    return {\n      [`spinner-${this.variant()}`]: true,\n      [`text-${this.color()}`]: !!this.color(),\n      [`spinner-${this.variant()}-${this.size()}`]: !!this.size()\n    };\n  });\n}\n","<ng-content>\n  <span class=\"visually-hidden\">{{ label() }}</span>\n</ng-content>\n","import { NgModule } from '@angular/core';\n\nimport { SpinnerComponent } from './spinner.component';\n\n@NgModule({\n  exports: [\n    SpinnerComponent\n  ],\n  imports: [\n    SpinnerComponent\n  ]\n})\nexport class SpinnerModule {}\n","import { Directive, HostBinding, Input } from '@angular/core';\nimport { Colors } from '../coreui.types';\n\n@Directive({\n  selector: '[cTableColor]',\n  standalone: true\n})\nexport class TableColorDirective {\n\n  /**\n   * Use contextual color for tables, table rows or individual cells.\n   * @type Colors\n   */\n  @Input('cTableColor') color?: Colors;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      [`table-${this.color}`]: !!this.color,\n    };\n  }\n}\n","import { booleanAttribute, Directive, HostBinding, Input } from '@angular/core';\n\n@Directive({\n  selector: '[cTableActive]',\n  standalone: true\n})\nexport class TableActiveDirective {\n\n  /**\n   * Highlight a table row or cell\n   * @type boolean\n   */\n  @Input({ alias: 'cTableActive', transform: booleanAttribute }) active: string | boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      'table-active': this.active\n    };\n  }\n}\n","import { booleanAttribute, Directive, ElementRef, HostBinding, Input, OnInit, Renderer2 } from '@angular/core';\nimport { Breakpoints, Colors } from '../coreui.types';\nimport { ITable } from './table.type';\n\n@Directive({\n  selector: 'table[cTable]',\n  standalone: true,\n  host: { class: 'table' }\n})\nexport class TableDirective implements ITable, OnInit {\n  constructor(\n    private renderer: Renderer2,\n    private hostElement: ElementRef\n  ) {}\n\n  /**\n   * Set the vertical alignment.\n   * @type string\n   * @values 'bottom' | 'middle' | 'top'\n   */\n  @Input() align?: 'bottom' | 'middle' | 'top';\n\n  /**\n   * Sets the border color of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  @Input() borderColor?: Colors;\n\n  /**\n   * Add borders on all sides of the table and cells.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) bordered: string | boolean = false;\n\n  /**\n   * Remove borders on all sides of the table and cells.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) borderless: string | boolean = false;\n\n  /**\n   * Put the `<caption>` on the top of the table.\n   * @values 'top'\n   */\n  @Input() caption?: 'top';\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  @Input() color?: Colors;\n\n  /**\n   * Enable a hover state on table rows within table body.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) hover: string | boolean = false;\n\n  /**\n   * Make table responsive across all viewports or pick a maximum breakpoint with which to have a responsive table up to.\n   * @type: {boolean | 'sm' | 'md' | 'lg' | 'xl' | 'xxl'}\n   */\n  @Input() responsive?: boolean | Omit<Breakpoints, 'xs'>;\n\n  /**\n   * Make table more compact by cutting all cell `padding` in half.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) small: string | boolean = false;\n\n  /**\n   * Add zebra-striping to any table row within the table body.\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute }) striped: string | boolean = false;\n\n  /**\n   * Add zebra-striping to any table column.\n   * @type boolean\n   * @since 4.2.4\n   */\n  @Input({ transform: booleanAttribute }) stripedColumns: string | boolean = false;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      table: true,\n      [`align-${this.align}`]: !!this.align,\n      [`caption-${this.caption}`]: !!this.caption,\n      [`border-${this.borderColor}`]: !!this.borderColor,\n      'table-bordered': this.bordered,\n      'table-borderless': this.borderless,\n      [`table-${this.color}`]: !!this.color,\n      'table-hover': this.hover,\n      'table-sm': this.small,\n      'table-striped': this.striped,\n      'table-striped-columns': this.stripedColumns\n    };\n  }\n\n  ngOnInit(): void {\n    this.setResponsiveWrapper();\n  }\n\n  // todo\n  setResponsiveWrapper(): void {\n    if (!!this.responsive) {\n      const nativeElement: HTMLElement = this.hostElement.nativeElement;\n      const wrapper = this.renderer.createElement('div');\n      const className = this.responsive === true ? 'table-responsive' : `table-responsive-${this.responsive}`;\n      this.renderer.addClass(wrapper, className);\n      const parentNode = this.renderer.parentNode(nativeElement);\n      this.renderer.appendChild(parentNode, wrapper);\n      this.renderer.insertBefore(parentNode, wrapper, nativeElement);\n      this.renderer.appendChild(wrapper, nativeElement);\n    }\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { TableDirective } from './table.directive';\nimport { TableColorDirective } from './table-color.directive';\nimport { TableActiveDirective } from './table-active.directive';\n\n@NgModule({\n  exports: [\n    TableDirective,\n    TableColorDirective,\n    TableActiveDirective\n  ],\n  imports: [\n    TableDirective,\n    TableColorDirective,\n    TableActiveDirective\n  ]\n})\nexport class TableModule {}\n","import { Injectable } from '@angular/core';\nimport { Subject } from 'rxjs';\nimport { TabContentComponent } from './tab-content/tab-content.component';\n\nexport interface ITabContentState {\n  activeIdx: number;\n  tabContent: TabContentComponent;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class TabService {\n  private activeTabPaneIdx = new Subject<ITabContentState>();\n  activeTabPaneIdx$ = this.activeTabPaneIdx.asObservable();\n\n  setActiveTabIdx(tabContentState: ITabContentState) {\n    this.activeTabPaneIdx.next(tabContentState);\n  }\n}\n","import { booleanAttribute, ChangeDetectorRef, Component, HostBinding, Input, OnDestroy } from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { TabContentComponent } from '../tab-content/tab-content.component';\nimport { ITabContentState, TabService } from '../tab.service';\n\n@Component({\n  selector: 'c-tab-pane',\n  template: '<ng-content />',\n  styleUrls: ['./tab-pane.component.scss'],\n  exportAs: 'cTabPane',\n  standalone: true,\n  host: { class: 'tab-pane' }\n})\nexport class TabPaneComponent implements OnDestroy {\n  constructor(\n    private changeDetectorRef: ChangeDetectorRef,\n    private tabService: TabService\n  ) {\n    this.subscribeTabService();\n  }\n\n  public tabPaneIdx!: number;\n  public tabContent!: TabContentComponent;\n  private tabServiceSubscription!: Subscription;\n\n  set active(value: boolean) {\n    const newValue = booleanAttribute(value);\n    if (this._active !== newValue) {\n      this._active = newValue;\n      this.changeDetectorRef.markForCheck();\n    }\n  }\n\n  get active(): boolean {\n    return this._active;\n  }\n\n  private _active: boolean = false;\n\n  @HostBinding('class')\n  get hostClasses() {\n    return {\n      'tab-pane': true,\n      fade: true,\n      show: this.active,\n      active: this.active\n    };\n  }\n\n  @Input()\n  @HostBinding('attr.role')\n  role = 'tabpanel';\n\n  ngOnDestroy(): void {\n    this.subscribeTabService(false);\n  }\n\n  subscribeTabService(subscribe: boolean = true) {\n    if (subscribe) {\n      this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState: ITabContentState) => {\n        if (tabContentState.tabContent === this.tabContent) {\n          this.active = tabContentState.activeIdx === this.tabPaneIdx;\n        }\n      });\n    } else {\n      this.tabServiceSubscription?.unsubscribe();\n    }\n  }\n}\n","import {\n  AfterContentChecked,\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  EventEmitter,\n  Input,\n  numberAttribute,\n  OnChanges,\n  OnDestroy,\n  Output,\n  QueryList,\n  SimpleChanges\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { TabPaneComponent } from '../tab-pane/tab-pane.component';\nimport { TabService } from '../tab.service';\n\n@Component({\n  selector: 'c-tab-content',\n  template: '<ng-content />',\n  styleUrls: ['./tab-content.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  exportAs: 'cTabContent',\n  standalone: true,\n  host: { class: 'tab-content' }\n})\nexport class TabContentComponent implements AfterContentChecked, AfterContentInit, OnChanges, OnDestroy {\n  /**\n   * Set active tabPane index\n   * @type number\n   */\n  @Input({ transform: numberAttribute })\n  set activeTabPaneIdx(value: number) {\n    const newValue = value;\n    if (this._activeTabPaneIdx != newValue) {\n      this._activeTabPaneIdx = newValue;\n      this.activeTabPaneIdxChange.emit(newValue);\n      this.changeDetectorRef.markForCheck();\n      this.changeDetectorRef.detectChanges();\n    }\n  }\n\n  get activeTabPaneIdx() {\n    return this._activeTabPaneIdx;\n  }\n\n  private _activeTabPaneIdx = -1;\n\n  /**\n   * Event emitted on the active tab pane index change.\n   */\n  @Output() activeTabPaneIdxChange: EventEmitter<number> = new EventEmitter<number>();\n\n  @ContentChildren(TabPaneComponent) public panes!: QueryList<TabPaneComponent>;\n  private tabServiceSubscription!: Subscription;\n\n  constructor(\n    private changeDetectorRef: ChangeDetectorRef,\n    private tabService: TabService\n  ) {}\n\n  ngAfterContentInit(): void {\n    this.subscribeTabService();\n  }\n\n  ngAfterContentChecked(): void {\n    this.panes?.forEach((tabPane, index) => {\n      tabPane.tabContent = this;\n      tabPane.tabPaneIdx = index;\n    });\n    this.refreshTabPaneActive(this.activeTabPaneIdx);\n    this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: this.activeTabPaneIdx });\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['activeTabPaneIdx']?.currentValue) {\n      this.tabService.setActiveTabIdx({ tabContent: this, activeIdx: changes['activeTabPaneIdx'].currentValue });\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.subscribeTabService(false);\n  }\n\n  subscribeTabService(subscribe: boolean = true) {\n    if (subscribe) {\n      this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\n        if (this === tabContentState.tabContent) {\n          this.activeTabPaneIdx = tabContentState.activeIdx;\n        }\n      });\n    } else {\n      this.tabServiceSubscription?.unsubscribe();\n    }\n  }\n\n  refreshTabPaneActive(idx: number) {\n    // hack for active state pane refresh todo?\n    this.panes?.forEach((tabPane, index) => {\n      tabPane.active = idx === index;\n    });\n  }\n}\n","import {\n  booleanAttribute,\n  ChangeDetectorRef,\n  Directive,\n  HostBinding,\n  HostListener,\n  Input,\n  numberAttribute,\n  OnChanges,\n  OnDestroy,\n  SimpleChanges\n} from '@angular/core';\nimport { Subscription } from 'rxjs';\n\nimport { TabService } from './tab.service';\n\n@Directive({\n  selector: '[cTabContent]',\n  standalone: true\n})\nexport class TabContentRefDirective implements OnChanges, OnDestroy {\n  constructor(\n    private changeDetectorRef: ChangeDetectorRef,\n    private tabService: TabService\n  ) {\n    this.subscribeTabService();\n  }\n\n  private tabServiceSubscription!: Subscription;\n\n  /**\n   * Template Ref\n   * @type TemplateRef\n   */\n  @Input('cTabContent') tabContentRef!: any;\n\n  /**\n   * Set active state of tab content\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set active(value: boolean) {\n    const newValue = value;\n    if (this._active !== newValue) {\n      this._active = newValue;\n      this.changeDetectorRef.detectChanges();\n    }\n  }\n\n  get active() {\n    return this._active;\n  }\n\n  private _active = false;\n\n  /**\n   * Set disabled state of tab content\n   * @type boolean\n   */\n  @Input({ transform: booleanAttribute })\n  set disabled(value: boolean) {\n    this._disabled = value;\n  }\n\n  get disabled(): boolean {\n    return this._disabled || this.tabPaneIdx >= this.tabContentRef?.panes?.length;\n  }\n\n  private _disabled = false;\n\n  /**\n   * c-tab-pane index respectively\n   * @type number\n   */\n  @Input({ transform: numberAttribute }) tabPaneIdx = -1;\n\n  @HostBinding('class')\n  get hostClasses() {\n    return {\n      active: this.active,\n      disabled: this.disabled\n    };\n  }\n\n  @HostBinding('attr.aria-disabled')\n  get isDisabled(): boolean | null {\n    return this.disabled || null;\n  }\n\n  @HostBinding('attr.disabled')\n  get attrDisabled() {\n    return this.disabled ? '' : null;\n  }\n\n  @HostBinding('attr.aria-selected')\n  private get ariaSelected() {\n    return this.active;\n  }\n\n  @Input()\n  @HostBinding('attr.role')\n  role = 'tab';\n\n  @HostBinding('attr.tabindex')\n  get getTabindex(): string | null {\n    return this.disabled ? '-1' : null;\n  }\n\n  ngOnChanges(changes: SimpleChanges): void {\n    if (changes['active']?.currentValue) {\n      this.setActiveTabPane();\n    }\n  }\n\n  @HostListener('click', ['$event'])\n  toggleOpen($event: any): void {\n    $event.preventDefault();\n    this.setActiveTabPane();\n  }\n\n  setActiveTabPane() {\n    setTimeout(() => {\n      if (this.tabPaneIdx < this.tabContentRef.panes.length) {\n        this.active = true;\n        this.tabService.setActiveTabIdx({ tabContent: this.tabContentRef, activeIdx: this.tabPaneIdx });\n      } else {\n        this.active = false;\n      }\n    });\n  }\n\n  ngOnDestroy(): void {\n    this.subscribeTabService(false);\n  }\n\n  subscribeTabService(subscribe: boolean = true) {\n    if (subscribe) {\n      this.tabServiceSubscription = this.tabService.activeTabPaneIdx$.subscribe((tabContentState) => {\n        if (tabContentState.tabContent === this.tabContentRef) {\n          this.active = tabContentState.activeIdx === this.tabPaneIdx;\n        }\n      });\n    } else {\n      this.tabServiceSubscription?.unsubscribe();\n    }\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { TabContentComponent } from './tab-content/tab-content.component';\nimport { TabPaneComponent } from './tab-pane/tab-pane.component';\nimport { TabService } from './tab.service';\nimport { TabContentRefDirective } from './tab-content-ref.directive';\n\n@NgModule({\n  imports: [\n    TabContentComponent,\n    TabContentRefDirective,\n    TabPaneComponent\n  ],\n  exports: [\n    TabContentComponent,\n    TabPaneComponent,\n    TabContentRefDirective\n  ],\n  providers: [\n    TabService\n  ]\n})\nexport class TabsModule {}\n","import { Injectable, signal } from '@angular/core';\n\n@Injectable()\nexport class TabsService {\n  readonly activeItem = signal<any>(undefined);\n  readonly activeItemKey = signal<string | number | undefined>(undefined);\n  readonly id = signal<string | number | undefined>(undefined);\n}\n","import { Component, effect, inject, input, model, ModelSignal } from '@angular/core';\nimport { TabsService } from './tabs.service';\n\nlet nextId = 0;\n\n@Component({\n  exportAs: 'cTabs',\n  selector: 'c-tabs',\n  standalone: true,\n  imports: [],\n  template: '<ng-content />',\n  styleUrl: './tabs.component.scss',\n  providers: [TabsService],\n  host: {\n    '[id]': 'id()',\n    class: 'tabs'\n  }\n})\nexport class TabsComponent {\n  readonly tabsService = inject(TabsService);\n\n  /**\n   * The active item key.\n   * @type <string | number | undefined>\n   */\n  readonly activeItemKey: ModelSignal<string | number | undefined> = model<number | string>();\n\n  /**\n   * The id attribute\n   * @type string\n   */\n  tabsId = `tabs-${nextId++}`;\n  readonly id = input<string>(this.tabsId);\n\n  readonly activeItemEffect = effect(\n    () => {\n      this.tabsService.id.set(this.id());\n      this.tabsService.activeItemKey.set(this.activeItemKey());\n    },\n    { allowSignalWrites: true }\n  );\n\n  readonly tabsServiceEffect = effect(\n    () => {\n      this.activeItemKey.set(this.tabsService.activeItemKey());\n    },\n    { allowSignalWrites: true }\n  );\n}\n","import { FocusableOption, FocusOrigin } from '@angular/cdk/a11y';\nimport {\n  booleanAttribute,\n  computed,\n  DestroyRef,\n  Directive,\n  effect,\n  ElementRef,\n  inject,\n  Input,\n  input,\n  InputSignal,\n  signal,\n  untracked\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { fromEvent, merge, takeWhile } from 'rxjs';\nimport { filter, tap } from 'rxjs/operators';\nimport { TabsService } from '../tabs.service';\n\n@Directive({\n  exportAs: 'cTab',\n  selector: 'button[cTab]',\n  standalone: true,\n  host: {\n    '[class]': 'hostClasses()',\n    type: 'button',\n    role: 'tab',\n    '[attr.aria-selected]': 'isActive()',\n    '[attr.aria-controls]': 'attrAriaControls()',\n    '[attr.disabled]': 'attrDisabled() || null',\n    '[id]': 'propId()',\n    '[tabindex]': 'isActive() ? 0 : -1'\n  }\n})\nexport class TabDirective implements FocusableOption {\n  readonly #destroyRef = inject(DestroyRef);\n  readonly #elementRef = inject(ElementRef);\n  readonly #tabsService = inject(TabsService);\n\n  /**\n   * Disabled attribute\n   * @type boolean\n   * @default false\n   */\n  @Input({ transform: booleanAttribute })\n  set disabled(value: boolean) {\n    this.#disabled.set(value);\n  }\n\n  get disabled() {\n    return this.#disabled();\n  }\n\n  readonly #disabled = signal(false);\n  readonly attrDisabled = computed(() => this.#disabled() || null);\n\n  /**\n   * Item key.\n   * @type string | number\n   * @required\n   */\n  readonly itemKey: InputSignal<string | number> = input.required<string | number>();\n\n  /**\n   * Element id attribute\n   * @type string\n   * @default undefined\n   */\n  readonly id: InputSignal<string | undefined> = input<string>();\n\n  /**\n   * aria-controls attribute\n   * @type string\n   * @default undefined\n   */\n  readonly ariaControls: InputSignal<string | undefined> = input<string | undefined>(undefined, {\n    alias: 'aria-controls'\n  });\n\n  readonly isActive = computed<boolean>(\n    () => !this.#disabled() && this.#tabsService.activeItemKey() === this.itemKey()\n  );\n\n  readonly hostClasses = computed(() => ({\n    'nav-link': true,\n    active: this.isActive(),\n    disabled: this.#disabled()\n  }));\n\n  readonly propId = computed(() => this.id() ?? `${this.#tabsService.id()}-tab-${this.itemKey()}`);\n\n  readonly attrAriaControls = computed(\n    () => this.ariaControls() ?? `${this.#tabsService.id()}-panel-${this.itemKey()}`\n  );\n\n  disabledEffect = effect(\n    () => {\n      if (!this.#disabled()) {\n        const click$ = fromEvent<MouseEvent>(this.#elementRef.nativeElement, 'click');\n        const focusIn$ = fromEvent<FocusEvent>(this.#elementRef.nativeElement, 'focusin');\n\n        merge(focusIn$, click$)\n          .pipe(\n            filter(($event) => !this.#disabled()),\n            tap(($event) => {\n              this.#tabsService.activeItemKey.set(untracked(this.itemKey));\n            }),\n            takeWhile(() => !this.#disabled()),\n            takeUntilDestroyed(this.#destroyRef)\n          )\n          .subscribe();\n      }\n    },\n    { allowSignalWrites: true }\n  );\n\n  focus(origin?: FocusOrigin): void {\n    this.#elementRef.nativeElement.focus();\n  }\n}\n","import { FocusKeyManager } from '@angular/cdk/a11y';\nimport {\n  Component,\n  computed,\n  contentChildren,\n  DestroyRef,\n  effect,\n  HostListener,\n  inject,\n  input,\n  InputSignal,\n  untracked\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { tap } from 'rxjs/operators';\nimport { TabDirective } from '../tab/tab.directive';\nimport { TabsService } from '../tabs.service';\n\n@Component({\n  exportAs: 'cTabsList',\n  selector: 'c-tabs-list',\n  standalone: true,\n  imports: [],\n  template: '<ng-content />',\n  host: {\n    '[attr.role]': 'role()',\n    '[class]': 'hostClasses()'\n  }\n})\nexport class TabsListComponent {\n  readonly #destroyRef = inject(DestroyRef);\n  readonly tabsService = inject(TabsService);\n\n  /**\n   * Specify a layout type for component.\n   * @type 'fill' | 'justified' | undefined\n   * @default undefined\n   */\n  readonly layout: InputSignal<'fill' | 'justified' | undefined> = input();\n\n  /**\n   * Set the variant to tabs, pills or underline.\n   * @type 'pills' | 'tabs' | 'underline' | 'underline-border' | undefined\n   * @default undefined\n   */\n  readonly variant: InputSignal<'pills' | 'tabs' | 'underline' | 'underline-border' | undefined> = input();\n\n  /**\n   * Set the role to tab list.\n   * @default 'tablist'\n   */\n  readonly role = input('tablist');\n\n  readonly hostClasses = computed(() => ({\n    nav: true,\n    [`nav-${this.layout()}`]: this.layout(),\n    [`nav-${this.variant()}`]: this.variant()\n  }));\n\n  readonly tabs = contentChildren(TabDirective);\n  #focusKeyManager!: FocusKeyManager<TabDirective>;\n\n  readonly tabsEffect = effect(\n    () => {\n      if (this.tabs().length === 0) {\n        return;\n      }\n      this.#focusKeyManager = new FocusKeyManager(this.tabs())\n        .skipPredicate((tab) => tab.disabled === true)\n        .withHorizontalOrientation('ltr')\n        .withHomeAndEnd()\n        .withWrap();\n\n      this.#focusKeyManager.change\n        .pipe(\n          tap((value) => {\n            this.tabsService.activeItemKey.set(this.#focusKeyManager.activeItem?.itemKey());\n            this.tabsService.activeItem.set(this.#focusKeyManager.activeItem);\n          }),\n          takeUntilDestroyed(this.#destroyRef)\n        )\n        .subscribe();\n\n      const activeItem = this.tabs().find((tab) => untracked(tab.isActive)) ?? this.tabs().find((tab) => !tab.disabled);\n      const activeItemIndex = this.tabs().findIndex((tab) => tab === activeItem);\n      this.#focusKeyManager?.updateActiveItem(activeItemIndex < 0 ? 0 : activeItemIndex);\n      this.tabsService.activeItemKey.set(this.#focusKeyManager.activeItem?.itemKey());\n      this.tabsService.activeItem.set(this.#focusKeyManager.activeItem);\n    },\n    { allowSignalWrites: true }\n  );\n\n  tabsServiceEffect = effect(\n    () => {\n      const activeItemIndex = this.tabs().findIndex(\n        (tab) => untracked(tab.isActive) && untracked(tab.itemKey) === this.tabsService.activeItemKey()\n      );\n      this.#focusKeyManager?.updateActiveItem(activeItemIndex < 0 ? 0 : activeItemIndex);\n    },\n    { allowSignalWrites: true }\n  );\n\n  @HostListener('keydown', ['$event'])\n  onKeydown($event: any) {\n    if (['ArrowLeft', 'ArrowRight'].includes($event.key)) {\n      this.#focusKeyManager.onKeydown($event);\n      return;\n    }\n    if (['Tab'].includes($event.key)) {\n      this.#focusKeyManager?.tabOut.next();\n    }\n    return;\n  }\n}\n","import { Component } from '@angular/core';\n\n@Component({\n  exportAs: 'cTabsContent',\n  selector: 'c-tabs-content',\n  standalone: true,\n  template: '<ng-content />',\n  host: {\n    class: 'tab-content'\n  }\n})\nexport class TabsContentComponent {}\n","import { animate, animateChild, AnimationEvent, query, state, style, transition, trigger } from '@angular/animations';\nimport {\n  Component,\n  computed,\n  HostBinding,\n  HostListener,\n  inject,\n  input,\n  InputSignal,\n  InputSignalWithTransform,\n  numberAttribute,\n  output,\n  OutputEmitterRef,\n  signal\n} from '@angular/core';\nimport { TabsService } from '../tabs.service';\n\ntype AnimateType = 'hide' | 'show';\ntype VisibleChangeEvent = { itemKey: string | number; visible: boolean };\n\n@Component({\n  exportAs: 'cTabPanel',\n  selector: 'c-tab-panel',\n  standalone: true,\n  template: '<ng-content />',\n  host: {\n    '[class]': 'hostClasses()',\n    '[tabindex]': 'visible() ? tabindex(): -1',\n    '[attr.aria-labelledby]': 'attrAriaLabelledBy()',\n    '[id]': 'propId()',\n    role: 'tabpanel'\n  },\n  animations: [\n    trigger('fadeInOut', [\n      state('show', style({ opacity: 1 })),\n      state('hide', style({ opacity: 0 })),\n      state('void', style({ opacity: 0 })),\n      transition('* => *', [query('@*', [animateChild()], { optional: true }), animate('150ms linear')])\n    ])\n  ]\n})\nexport class TabPanelComponent {\n  readonly tabsService = inject(TabsService);\n\n  /**\n   * aria-labelledby attribute\n   * @type string\n   * @default undefined\n   */\n  readonly ariaLabelledBy: InputSignal<string | undefined> = input<string | undefined>(undefined, {\n    alias: 'aria-labelledby'\n  });\n\n  /**\n   * Element id attribute\n   * @type string\n   * @default undefined\n   */\n  readonly id: InputSignal<string | undefined> = input<string>();\n\n  /**\n   * Item key.\n   * @type string | number\n   * @required\n   */\n  readonly itemKey: InputSignal<string | number> = input.required();\n\n  /**\n   * tabindex attribute.\n   * @type number\n   * @default 0\n   */\n  readonly tabindex: InputSignalWithTransform<number, unknown> = input(0, { transform: numberAttribute });\n\n  /**\n   * Enable fade in transition.\n   * @type boolean\n   * @default true\n   */\n  readonly transition: InputSignal<boolean> = input(true);\n\n  /**\n   * visible change output\n   * @type OutputEmitterRef<VisibleChangeEvent>\n   */\n  readonly visibleChange: OutputEmitterRef<VisibleChangeEvent> = output<VisibleChangeEvent>();\n\n  readonly show = signal(false);\n\n  readonly visible = computed(() => {\n    const visible = this.tabsService.activeItemKey() === this.itemKey() && !this.tabsService.activeItem()?.disabled;\n    this.visibleChange.emit({ itemKey: this.itemKey(), visible });\n    return visible;\n  });\n\n  readonly propId = computed(() => this.id() ?? `${this.tabsService.id()}-panel-${this.itemKey()}`);\n\n  readonly attrAriaLabelledBy = computed(\n    () => this.ariaLabelledBy() ?? `${this.tabsService.id()}-tab-${this.itemKey()}`\n  );\n\n  readonly hostClasses = computed(() => ({\n    'tab-pane': true,\n    active: this.show(),\n    fade: this.transition(),\n    show: this.show(),\n    invisible: this.tabsService.activeItem()?.disabled\n  }));\n\n  @HostBinding('@.disabled')\n  get animationDisabled(): boolean {\n    return !this.transition();\n  }\n\n  @HostBinding('@fadeInOut')\n  get animateType(): AnimateType {\n    return this.visible() ? 'show' : 'hide';\n  }\n\n  @HostListener('@fadeInOut.done', ['$event'])\n  onAnimationDone($event: AnimationEvent): void {\n    this.show.set(this.visible());\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { TabsService } from './tabs.service';\nimport { TabsComponent } from './tabs.component';\nimport { TabDirective } from './tab/tab.directive';\nimport { TabsListComponent } from './tabs-list/tabs-list.component';\nimport { TabsContentComponent } from './tabs-content/tabs-content.component';\nimport { TabPanelComponent } from './tab-panel/tab-panel.component';\n\n@NgModule({\n  imports: [TabsComponent, TabsListComponent, TabDirective, TabsContentComponent, TabPanelComponent],\n  exports: [TabsComponent, TabsListComponent, TabDirective, TabsContentComponent, TabPanelComponent],\n  providers: [TabsService]\n})\nexport class Tabs2Module {}\n","import { Injectable } from '@angular/core';\nimport { BehaviorSubject } from 'rxjs';\n\nimport { TToasterPlacement } from './toaster.component';\nimport { ToastComponent } from '../toast/toast.component';\n\nexport interface IToasterAction {\n  placement?: TToasterPlacement;\n  toast?: ToastComponent;\n  show?: boolean;\n}\n\n@Injectable({\n  providedIn: 'root'\n})\nexport class ToasterService {\n  readonly #toasterState = new BehaviorSubject<IToasterAction>({});\n  readonly toasterState$ = this.#toasterState.asObservable();\n\n  setState(state: IToasterAction): void {\n    this.#toasterState.next({ ...state });\n  }\n}\n","import {\n  booleanAttribute,\n  ChangeDetectorRef,\n  Component,\n  ElementRef,\n  HostBinding,\n  HostListener,\n  Input,\n  input,\n  numberAttribute,\n  OnDestroy,\n  OnInit,\n  output,\n  Renderer2\n} from '@angular/core';\n\nimport { animate, state, style, transition, trigger } from '@angular/animations';\n\nimport { Colors } from '../../coreui.types';\nimport { ToasterService } from '../toaster/toaster.service';\nimport { TToasterPlacement } from '../toaster/toaster.component';\n\ntype AnimateType = 'hide' | 'show';\n\n@Component({\n  selector: 'c-toast',\n  template: '<ng-content />',\n  styleUrls: ['./toast.component.scss'],\n  exportAs: 'cToast',\n  standalone: true,\n  animations: [\n    trigger('fadeInOut', [\n      state('show', style({ opacity: 1, height: '*', padding: '*', border: '*', margin: '*' })),\n      state('hide', style({ opacity: 0, height: 0, padding: 0, border: 0, margin: 0 })),\n      state('void', style({ opacity: 0, height: 0, padding: 0, border: 0, margin: 0 })),\n      transition('show => hide', [animate('{{ time }} {{ easing }}')], {\n        params: { time: '300ms', easing: 'ease-out' }\n      }),\n      transition('hide => show', [animate('{{ time }} {{ easing }}')], {\n        params: { time: '300ms', easing: 'ease-in' }\n      }),\n      transition('show => void', [animate('{{ time }} {{ easing }}')], {\n        params: { time: '300ms', easing: 'ease-out' }\n      }),\n      transition('void => show', [animate('{{ time }} {{ easing }}')], {\n        params: { time: '300ms', easing: 'ease-in' }\n      })\n    ])\n  ],\n  host: { class: 'toast show' }\n})\nexport class ToastComponent implements OnInit, OnDestroy {\n  constructor(\n    public hostElement: ElementRef,\n    public renderer: Renderer2,\n    public toasterService: ToasterService,\n    public changeDetectorRef: ChangeDetectorRef\n  ) {}\n\n  readonly dynamic = input<boolean>();\n  readonly placement = input<TToasterPlacement>();\n\n  /**\n   * Auto hide the toast.\n   * @type boolean\n   */\n  readonly autohide = input(true);\n\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  readonly color = input<Colors>('');\n\n  /**\n   * Delay hiding the toast (ms).\n   * @type number\n   */\n  readonly delay = input(5000, { transform: numberAttribute });\n\n  /**\n   * Apply fade transition to the toast.\n   * @type boolean\n   */\n  readonly fade = input(true);\n\n  /**\n   * Toggle the visibility of component.\n   * @type boolean\n   */\n\n  @Input({ transform: booleanAttribute })\n  set visible(value: boolean) {\n    const newValue = value;\n    if (this._visible !== newValue) {\n      this._visible = newValue;\n      newValue ? this.setTimer() : this.clearTimer();\n      this.visibleChange.emit(newValue);\n      this.changeDetectorRef.markForCheck();\n    }\n  }\n\n  get visible() {\n    return this._visible;\n  }\n\n  private _visible = false;\n\n  /**\n   * @ignore\n   */\n  readonly index = input(0, { transform: numberAttribute });\n\n  /**\n   * Event emitted on visibility change. [docs]\n   * @type <boolean>\n   */\n  readonly visibleChange = output<boolean>();\n\n  /**\n   * Event emitted on timer tick. [docs]\n   * @type number\n   */\n  readonly timer = output<number>();\n\n  private timerId: ReturnType<typeof setTimeout> | undefined;\n  private clockId: ReturnType<typeof setInterval> | undefined;\n  private clockTimerId: ReturnType<typeof setTimeout> | undefined;\n\n  private _clock!: number;\n\n  get clock(): number {\n    return this._clock;\n  }\n\n  set clock(value) {\n    this._clock = value;\n    this.timer.emit(this._clock);\n    this.changeDetectorRef.markForCheck();\n  }\n\n  @HostBinding('@.disabled')\n  get animationDisabled(): boolean {\n    return !this.fade();\n  }\n\n  @HostBinding('@fadeInOut')\n  get animateType(): AnimateType {\n    return this.visible ? 'show' : 'hide';\n  }\n\n  @HostListener('mouseover') onMouseOver(): void {\n    this.clearTimer();\n  }\n\n  @HostListener('mouseout') onMouseOut(): void {\n    this.setTimer();\n  }\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      toast: true,\n      show: true,\n      [`bg-${this.color()}`]: !!this.color(),\n      'border-0': !!this.color()\n    };\n  }\n\n  ngOnInit(): void {\n    if (this.visible) {\n      this.toasterService.setState({\n        toast: this,\n        show: this.visible,\n        placement: this.placement()\n      });\n      this.clearTimer();\n      this.setTimer();\n    }\n  }\n\n  ngOnDestroy(): void {\n    this.clearTimer();\n  }\n\n  setTimer(): void {\n    this.clearTimer();\n    if (this.autohide() && this.visible) {\n      this.timerId = this.delay() > 0 ? setTimeout(() => this.onClose(), this.delay()) : undefined;\n      this.setClock();\n    }\n  }\n\n  clearTimer(): void {\n    this.clearClock();\n    clearTimeout(this.timerId);\n    this.timerId = undefined;\n  }\n\n  onClose(): void {\n    this.clearTimer();\n    this.toasterService.setState({\n      toast: this,\n      show: false,\n      placement: this.placement()\n    });\n  }\n\n  setClock(): void {\n    this.clearClock();\n    this.clock = 0;\n    this.clockId = setInterval(() => {\n      this.clock += 1;\n      this.changeDetectorRef.markForCheck();\n    }, 1000);\n    this.clockTimerId = setTimeout(() => {\n      this.clearClock();\n    }, this.delay());\n  }\n\n  clearClock(): void {\n    clearTimeout(this.clockTimerId);\n    clearInterval(this.clockId);\n    this.clockId = undefined;\n  }\n}\n","import { Component, HostBinding, Optional } from '@angular/core';\nimport { ToastComponent } from '../toast/toast.component';\n\n@Component({\n  selector: 'c-toast-body',\n  template: '<ng-content />',\n  styleUrls: ['./toast-body.component.scss'],\n  exportAs: 'cToastBody',\n  standalone: true\n})\nexport class ToastBodyComponent {\n\n  @HostBinding('class.toast-body') toastBodyClass = true;\n\n  constructor(\n    @Optional() public toast?: ToastComponent\n  ) { }\n\n}\n","import { Directive, HostListener, Input } from '@angular/core';\nimport { ToasterService } from './toaster/toaster.service';\n\n@Directive({\n  selector: '[cToastClose]',\n  exportAs: 'cToastClose',\n  standalone: true\n})\nexport class ToastCloseDirective {\n\n  @Input('cToastClose') toast: any;\n\n  constructor(private toasterService: ToasterService) { }\n\n  @HostListener('click', ['$event'])\n  toggleOpen($event: any): void {\n    $event.preventDefault();\n    this.toasterService.setState({ show: false, toast: this.toast });\n  }\n\n}\n","import { Component, HostBinding, Input, Optional } from '@angular/core';\n\nimport { ButtonCloseDirective } from '../../button';\nimport { ToastComponent } from '../toast/toast.component';\nimport { ToastCloseDirective } from '../toast-close.directive';\n\n@Component({\n  selector: 'c-toast-header',\n  templateUrl: './toast-header.component.html',\n  exportAs: 'cToastHeader',\n  standalone: true,\n  imports: [ToastCloseDirective, ButtonCloseDirective]\n})\nexport class ToastHeaderComponent {\n\n  /**\n   * Add close button to a toast header\n   * @type boolean\n   */\n  @Input() closeButton = true;\n\n  @HostBinding('class.toast-header') toastHeaderClass = true;\n\n  constructor(\n    @Optional() public toast?: ToastComponent\n  ) { }\n\n}\n","<ng-container>\n  <ng-content />\n  @if (closeButton) {\n    <button [cToastClose]=\"toast\" [style]=\"{outline: 0}\" aria-label=\"close\" cButtonClose class=\"ms-auto\"></button>\n  }\n</ng-container>\n","import { Directive, ViewContainerRef } from '@angular/core';\n\n@Directive({\n  selector: '[cToasterHost]',\n  exportAs: 'cToasterHost',\n  standalone: true\n})\nexport class ToasterHostDirective {\n\n  constructor(\n    public viewContainerRef: ViewContainerRef\n  ) { }\n}\n","import {\n  AfterContentChecked,\n  Component,\n  ComponentRef,\n  ContentChildren,\n  DestroyRef,\n  ElementRef,\n  HostBinding,\n  inject,\n  Injector,\n  Input,\n  NgModuleRef,\n  OnInit,\n  QueryList,\n  Renderer2,\n  ViewChild,\n  ViewContainerRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\n\nimport { IToasterAction, ToasterService } from './toaster.service';\nimport { ToasterHostDirective } from './toaster-host.directive';\nimport { ToastComponent } from '../toast/toast.component';\n\nexport enum ToasterPlacement {\n  Static = 'static',\n  TopStart = 'top-start',\n  TopCenter = 'top-center',\n  TopEnd = 'top-end',\n  MiddleStart = 'middle-start',\n  MiddleCenter = 'middle-center',\n  MiddleEnd = 'middle-end',\n  BottomStart = 'bottom-start',\n  BottomCenter = 'bottom-center',\n  BottomEnd = 'bottom-end'\n}\n\nexport type TToasterPlacement =\n  | ToasterPlacement.Static\n  | ToasterPlacement.TopStart\n  | ToasterPlacement.TopCenter\n  | ToasterPlacement.TopEnd\n  | ToasterPlacement.MiddleStart\n  | ToasterPlacement.MiddleCenter\n  | ToasterPlacement.MiddleEnd\n  | ToasterPlacement.BottomStart\n  | ToasterPlacement.BottomCenter\n  | ToasterPlacement.BottomEnd\n  | string;\n\n@Component({\n  selector: 'c-toaster',\n  templateUrl: './toaster.component.html',\n  exportAs: 'cToaster',\n  standalone: true,\n  imports: [ToasterHostDirective],\n  host: { class: 'toaster toast-container' }\n})\nexport class ToasterComponent implements OnInit, AfterContentChecked {\n  readonly #destroyRef = inject(DestroyRef);\n\n  constructor(\n    private hostElement: ElementRef,\n    private renderer: Renderer2,\n    private toasterService: ToasterService\n  ) {}\n\n  placements = Object.values(ToasterPlacement);\n  toasts!: QueryList<ViewContainerRef>;\n  toastsDynamic: any[] = [];\n\n  /**\n   * Toaster placement\n   * @type TToasterPlacement\n   */\n  @Input() placement: TToasterPlacement = ToasterPlacement.TopEnd;\n\n  /**\n   * Toaster position\n   * @type (string | 'absolute' | 'fixed' | 'static')\n   */\n  @Input() position: string | 'absolute' | 'fixed' | 'static' = 'absolute';\n\n  @ViewChild(ToasterHostDirective, { static: true }) toasterHost!: ToasterHostDirective;\n  @ContentChildren(ToastComponent, { read: ViewContainerRef }) contentToasts!: QueryList<ViewContainerRef>;\n\n  @HostBinding('class')\n  get hostClasses(): any {\n    return {\n      toaster: true,\n      'toast-container': true,\n      [`position-${this.position}`]: !!this.position,\n      'top-0': this.placement.includes('top'),\n      'top-50': this.placement.includes('middle'),\n      'bottom-0': this.placement.includes('bottom'),\n      'start-0': this.placement.includes('start'),\n      'start-50': this.placement.includes('center'),\n      'end-0': this.placement.includes('end'),\n      'translate-middle-x': this.placement.includes('center') && !this.placement.includes('middle'),\n      'translate-middle-y': this.placement.includes('middle') && !this.placement.includes('center'),\n      'translate-middle': this.placement.includes('middle') && this.placement.includes('center')\n    };\n  }\n\n  ngOnInit(): void {\n    this.stateToasterSubscribe();\n  }\n\n  ngAfterContentChecked(): void {\n    this.toasts = this.contentToasts;\n  }\n\n  public addToast(\n    toast: any,\n    props: any,\n    options?: {\n      index?: number;\n      injector?: Injector;\n      ngModuleRef?: NgModuleRef<unknown>;\n      projectableNodes?: Node[][];\n    }\n  ): ComponentRef<any> {\n    const componentRef: ComponentRef<any> = this.toasterHost.viewContainerRef.createComponent(toast, options);\n    this.toastsDynamic.push(componentRef);\n    const index = this.toastsDynamic.indexOf(componentRef);\n    for (const [key, value] of Object.entries(props)) {\n      componentRef.setInput(key, value);\n    }\n    componentRef.setInput('placement', this.placement);\n    componentRef.setInput('dynamic', true);\n    componentRef.setInput('index', index);\n    componentRef.setInput('visible', true);\n    componentRef.instance['visibleChange'].emit(true);\n    componentRef.changeDetectorRef?.detectChanges();\n    return componentRef;\n  }\n\n  public removeToast(state: IToasterAction): void {\n    this.toastsDynamic?.forEach((item) => {\n      if (state.toast?.dynamic() && item.instance === state.toast) {\n        item.setInput('visible', false);\n        item.instance['visibleChange'].emit(false);\n        item.destroy();\n      }\n    });\n\n    this.toasts?.forEach((item) => {\n      if (state.toast && item.element.nativeElement === state.toast.hostElement.nativeElement) {\n        if (!state.toast.dynamic()) {\n          state.toast['visible'] = false;\n        }\n      }\n    });\n  }\n\n  private stateToasterSubscribe(): void {\n    this.toasterService.toasterState$.pipe(takeUntilDestroyed(this.#destroyRef)).subscribe((state) => {\n      if (state.show === false) {\n        this.removeToast(state);\n      }\n      // if (state.show === true && state.toast?.dynamic() === undefined) {\n      //   /* empty */\n      // }\n    });\n  }\n}\n","<ng-template cToasterHost />\n<ng-content cToasterHost />\n","import { NgModule } from '@angular/core';\nimport { ToastComponent } from './toast/toast.component';\nimport { ToastHeaderComponent } from './toast-header/toast-header.component';\nimport { ToastBodyComponent } from './toast-body/toast-body.component';\nimport { ToasterComponent } from './toaster/toaster.component';\nimport { ToasterService } from './toaster/toaster.service';\nimport { ToasterHostDirective } from './toaster/toaster-host.directive';\nimport { ToastCloseDirective } from './toast-close.directive';\n\n@NgModule({\n  imports: [\n    ToastBodyComponent,\n    ToastComponent,\n    ToastCloseDirective,\n    ToastHeaderComponent,\n    ToasterComponent,\n    ToasterHostDirective\n  ],\n  providers: [ToasterService],\n  exports: [\n    ToastBodyComponent,\n    ToastComponent,\n    ToastCloseDirective,\n    ToastHeaderComponent,\n    ToasterComponent,\n    ToasterHostDirective\n  ]\n})\nexport class ToastModule {\n}\n","import {\n  booleanAttribute,\n  Component,\n  computed,\n  effect,\n  inject,\n  input,\n  OnDestroy,\n  Renderer2,\n  TemplateRef,\n  viewChild,\n  ViewContainerRef\n} from '@angular/core';\n\n@Component({\n  selector: 'c-tooltip',\n  templateUrl: './tooltip.component.html',\n  standalone: true,\n  host: {\n    class: 'tooltip fade bs-tooltip-auto',\n    '[class]': 'hostClasses()',\n    '[attr.role]': 'role()',\n    '[attr.id]': 'id()'\n  }\n})\nexport class TooltipComponent implements OnDestroy {\n  readonly renderer = inject(Renderer2);\n\n  /**\n   * Content of tooltip\n   * @type {string | TemplateRef}\n   */\n  readonly content = input<string | TemplateRef<any>>('');\n\n  readonly contentEffect = effect(() => {\n    this.updateView(this.content());\n  });\n\n  /**\n   * Toggle the visibility of popover component.\n   * @type boolean\n   */\n  readonly visible = input(false, { transform: booleanAttribute });\n  readonly id = input<string>();\n  readonly role = input('tooltip');\n\n  readonly viewContainerRef = viewChild('tooltipTemplate', { read: ViewContainerRef });\n  private textNode!: Text;\n\n  readonly hostClasses = computed<Record<string, boolean>>(() => {\n    return {\n      tooltip: true,\n      fade: true,\n      show: this.visible(),\n      'bs-tooltip-auto': true\n    };\n  });\n\n  ngOnDestroy(): void {\n    this.clear();\n  }\n\n  private clear(): void {\n    this.viewContainerRef()?.clear();\n    if (!!this.textNode) {\n      this.renderer.removeChild(this.textNode.parentNode, this.textNode);\n    }\n  }\n\n  private updateView(content: string | TemplateRef<any>): void {\n    this.clear();\n\n    if (!content) {\n      return;\n    }\n\n    if (content instanceof TemplateRef) {\n      this.viewContainerRef()?.createEmbeddedView(content);\n    } else {\n      this.textNode = this.renderer.createText(content);\n\n      const element = this.viewContainerRef()?.element.nativeElement;\n      this.renderer.appendChild(element.parentNode, this.textNode);\n    }\n  }\n}\n","<ng-container>\n  <div class=\"tooltip-arrow\" data-popper-arrow></div>\n  <div class=\"tooltip-inner\">\n    <ng-container #tooltipTemplate />\n  </div>\n</ng-container>\n","import { DOCUMENT } from '@angular/common';\nimport {\n  AfterViewInit,\n  ChangeDetectorRef,\n  ComponentRef,\n  computed,\n  DestroyRef,\n  Directive,\n  effect,\n  ElementRef,\n  inject,\n  input,\n  model,\n  OnDestroy,\n  OnInit,\n  Renderer2,\n  TemplateRef,\n  ViewContainerRef\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { debounceTime, filter, finalize } from 'rxjs/operators';\nimport { createPopper, Instance, Options } from '@popperjs/core';\n\nimport { Triggers } from '../coreui.types';\nimport { IListenersConfig, IntersectionService, ListenersService } from '../services';\nimport { ElementRefDirective } from '../shared';\nimport { TooltipComponent } from './tooltip/tooltip.component';\n\n@Directive({\n  selector: '[cTooltip]',\n  exportAs: 'cTooltip',\n  providers: [ListenersService, IntersectionService],\n  standalone: true,\n  host: { '[attr.aria-describedby]': 'ariaDescribedBy' }\n})\nexport class TooltipDirective implements OnDestroy, OnInit, AfterViewInit {\n  /**\n   * Content of tooltip\n   * @type {string | TemplateRef}\n   */\n  readonly content = input<string | TemplateRef<any> | undefined>(undefined, { alias: 'cTooltip' });\n\n  contentEffect = effect(() => {\n    if (this.content()) {\n      this.destroyTooltipElement();\n    }\n  });\n\n  /**\n   * Optional popper Options object, takes precedence over cPopoverPlacement prop\n   * @type Partial<Options>\n   */\n  readonly popperOptions = input<Partial<Options>>({}, { alias: 'cTooltipOptions' });\n\n  popperOptionsEffect = effect(() => {\n    this._popperOptions = {\n      ...this._popperOptions,\n      placement: this.placement(),\n      ...this.popperOptions()\n    };\n  });\n\n  popperOptionsComputed = computed(() => {\n    return { placement: this.placement(), ...this._popperOptions };\n  });\n\n  /**\n   * Describes the placement of your component after Popper.js has applied all the modifiers that may have flipped or altered the originally provided placement property.\n   * @type: 'top' | 'bottom' | 'left' | 'right'\n   * @default: 'top'\n   */\n  readonly placement = input<'top' | 'bottom' | 'left' | 'right'>('top', { alias: 'cTooltipPlacement' });\n\n  /**\n   * ElementRefDirective for positioning the tooltip on reference element\n   * @type: ElementRefDirective\n   * @default: undefined\n   */\n  readonly reference = input<ElementRefDirective | undefined>(undefined, { alias: 'cTooltipRef' });\n\n  readonly referenceRef = computed(() => this.reference()?.elementRef ?? this.hostElement);\n\n  /**\n   * Sets which event handlers you’d like provided to your toggle prop. You can specify one trigger or an array of them.\n   * @type: 'Triggers | Triggers[]\n   */\n  readonly trigger = input<Triggers | Triggers[]>('hover', { alias: 'cTooltipTrigger' });\n\n  /**\n   * Toggle the visibility of tooltip component.\n   * @type boolean\n   */\n  readonly visible = model(false, { alias: 'cTooltipVisible' });\n\n  visibleEffect = effect(() => {\n    this.visible() ? this.addTooltipElement() : this.removeTooltipElement();\n  });\n\n  get ariaDescribedBy(): string | null {\n    return this.tooltipId ? this.tooltipId : null;\n  }\n\n  private tooltip!: HTMLDivElement;\n  private tooltipId!: string;\n  private tooltipRef!: ComponentRef<TooltipComponent>;\n  private popperInstance!: Instance;\n\n  private _popperOptions: Partial<Options> = {\n    modifiers: [\n      {\n        name: 'offset',\n        options: {\n          offset: [0, 5]\n        }\n      }\n    ]\n  };\n\n  readonly #destroyRef = inject(DestroyRef);\n  readonly #document = inject(DOCUMENT);\n\n  constructor(\n    private renderer: Renderer2,\n    private hostElement: ElementRef,\n    private viewContainerRef: ViewContainerRef,\n    private listenersService: ListenersService,\n    private changeDetectorRef: ChangeDetectorRef,\n    private intersectionService: IntersectionService\n  ) {}\n\n  ngAfterViewInit(): void {\n    this.intersectionServiceSubscribe();\n  }\n\n  ngOnDestroy(): void {\n    this.clearListeners();\n    this.destroyTooltipElement();\n  }\n\n  ngOnInit(): void {\n    this.setListeners();\n  }\n\n  private setListeners(): void {\n    const config: IListenersConfig = {\n      hostElement: this.hostElement,\n      trigger: this.trigger(),\n      callbackToggle: () => {\n        this.visible.set(!this.visible());\n      },\n      callbackOff: () => {\n        this.visible.set(false);\n      },\n      callbackOn: () => {\n        this.visible.set(true);\n      }\n    };\n    this.listenersService.setListeners(config);\n  }\n\n  private clearListeners(): void {\n    this.listenersService.clearListeners();\n  }\n\n  private intersectionServiceSubscribe(): void {\n    this.intersectionService.createIntersectionObserver(this.referenceRef());\n    this.intersectionService.intersecting$\n      .pipe(\n        filter((next) => next.hostElement === this.referenceRef()),\n        debounceTime(100),\n        finalize(() => {\n          this.intersectionService.unobserve(this.referenceRef());\n        }),\n        takeUntilDestroyed(this.#destroyRef)\n      )\n      .subscribe((next) => {\n        this.visible.set(next.isIntersecting ? this.visible() : false);\n      });\n  }\n\n  private getUID(prefix: string): string {\n    let uid = prefix ?? 'random-id';\n    do {\n      uid = `${prefix}-${Math.floor(Math.random() * 1000000).toString(10)}`;\n    } while (this.#document.getElementById(uid));\n\n    return uid;\n  }\n\n  private createTooltipElement(): void {\n    if (!this.tooltipRef) {\n      this.tooltipRef = this.viewContainerRef.createComponent<TooltipComponent>(TooltipComponent);\n      // this.viewContainerRef.detach();\n    }\n  }\n\n  private destroyTooltipElement(): void {\n    this.tooltip?.remove();\n    this.tooltipRef?.destroy();\n    // @ts-ignore\n    this.tooltipRef = undefined;\n    this.popperInstance?.destroy();\n    this.viewContainerRef?.detach();\n    this.viewContainerRef?.clear();\n  }\n\n  private addTooltipElement(): void {\n    if (!this.content()) {\n      this.destroyTooltipElement();\n      return;\n    }\n\n    if (!this.tooltipRef) {\n      this.createTooltipElement();\n    }\n\n    this.tooltipRef?.setInput('content', this.content() ?? '');\n\n    this.tooltip = this.tooltipRef?.location.nativeElement;\n    this.renderer.addClass(this.tooltip, 'd-none');\n    this.renderer.addClass(this.tooltip, 'fade');\n\n    this.popperInstance?.destroy();\n\n    this.viewContainerRef.insert(this.tooltipRef.hostView);\n    this.renderer.appendChild(this.#document.body, this.tooltip);\n\n    this.popperInstance = createPopper(this.referenceRef().nativeElement, this.tooltip, {\n      ...this.popperOptionsComputed()\n    });\n\n    if (!this.visible()) {\n      this.removeTooltipElement();\n      return;\n    }\n    setTimeout(() => {\n      this.tooltipId = this.getUID('tooltip');\n      this.tooltipRef?.setInput('id', this.tooltipId);\n      this.renderer.removeClass(this.tooltip, 'd-none');\n      this.tooltipRef?.setInput('visible', this.visible());\n      this.popperInstance?.forceUpdate();\n      this.changeDetectorRef?.markForCheck();\n    }, 100);\n  }\n\n  private removeTooltipElement(): void {\n    this.tooltipId = '';\n    if (!this.tooltipRef) {\n      return;\n    }\n    this.tooltipRef.setInput('visible', false);\n    this.tooltipRef.setInput('id', undefined);\n    this.changeDetectorRef.markForCheck();\n    setTimeout(() => {\n      this.viewContainerRef?.detach();\n    }, 300);\n  }\n}\n","import { NgModule } from '@angular/core';\nimport { TooltipComponent } from './tooltip/tooltip.component';\nimport { TooltipDirective } from './tooltip.directive';\n\n@NgModule({\n  exports: [\n    TooltipComponent,\n    TooltipDirective\n  ],\n  imports: [\n    TooltipComponent,\n    TooltipDirective\n  ]\n})\nexport class TooltipModule {}\n","import { Component, computed, contentChildren, effect, input, InputSignal, TemplateRef } from '@angular/core';\n\nimport { Colors } from '../../coreui.types';\nimport { TemplateIdDirective } from '../../shared';\nimport { CardBodyComponent, CardComponent } from '../../card';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\n\n@Component({\n  selector: 'c-widget-stat-a',\n  templateUrl: './widget-stat-a.component.html',\n  exportAs: 'cWidgetStatA',\n  imports: [CardBodyComponent, NgClass, NgTemplateOutlet],\n  standalone: true,\n  host: { class: 'card', '[class]': 'hostClasses()' }\n})\nexport class WidgetStatAComponent extends CardComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  // override readonly color = input<Colors>();\n\n  /**\n   * Title of the widget to display\n   * @type string\n   */\n  readonly title: InputSignal<string | undefined> = input();\n\n  /**\n   * Value for your widget to display\n   * @type string\n   */\n  readonly value: InputSignal<string | undefined> = input<string>();\n\n  templates: Record<string, TemplateRef<any>> = {};\n\n  readonly contentTemplates = contentChildren(TemplateIdDirective, { descendants: true });\n\n  readonly contentTemplatesEffect = effect(() => {\n    this.contentTemplates().forEach((child: TemplateIdDirective) => {\n      this.templates[child.id] = child.templateRef;\n    });\n  });\n\n  override readonly hostClasses = computed(() => {\n    const color = this.color();\n    return {\n      card: true,\n      [`bg-${color}`]: !!color,\n      'text-white': !!color\n    } as Record<string, boolean>;\n  });\n\n  get bodyClasses() {\n    return {\n      'pb-0': true,\n      'd-flex': true,\n      'justify-content-between': true,\n      'align-items-start': true\n    };\n  }\n}\n","<ng-container>\n  <c-card-body [ngClass]=\"bodyClasses\">\n    <div>\n      @if (!!value() || templates?.['widgetValueTemplate']) {\n        <div class=\"fs-4 fw-semibold\">\n          <ng-container *ngTemplateOutlet=\"templates?.['widgetValueTemplate'] || defaultWidgetValueTemplate\" />\n        </div>\n      }\n      @if (!!title() || templates?.['widgetTitleTemplate']) {\n        <div>\n          <ng-container *ngTemplateOutlet=\"templates?.['widgetTitleTemplate'] || defaultWidgetTitleTemplate\" />\n        </div>\n      }\n    </div>\n    <ng-container *ngTemplateOutlet=\"templates?.['widgetActionTemplate'] || defaultWidgetActionTemplate\" />\n  </c-card-body>\n  <ng-container *ngTemplateOutlet=\"templates?.['widgetChartTemplate'] || defaultWidgetChartTemplate\" />\n</ng-container>\n\n<ng-template #defaultWidgetTitleTemplate>\n  {{ title() }}\n</ng-template>\n\n<ng-template #defaultWidgetValueTemplate>\n  {{ value() }}\n</ng-template>\n\n<ng-template #defaultWidgetChartTemplate>\n  <ng-content select=\".chart-wrapper\" />\n</ng-template>\n\n<ng-template #defaultWidgetActionTemplate>\n  <ng-content />\n</ng-template>\n","import { booleanAttribute, Component, computed, input, InputSignal, InputSignalWithTransform } from '@angular/core';\nimport { NgClass } from '@angular/common';\n\nimport { CardBodyComponent, CardComponent } from '../../card';\n\n@Component({\n  selector: 'c-widget-stat-b',\n  templateUrl: './widget-stat-b.component.html',\n  exportAs: 'cWidgetStatB',\n  standalone: true,\n  imports: [CardBodyComponent, NgClass],\n  host: { class: 'card', '[class]': 'hostClasses()' }\n})\nexport class WidgetStatBComponent extends CardComponent {\n  constructor() {\n    super();\n  }\n\n  /**\n   * Sets the color context of the component to one of CoreUI themed colors.\n   * @type Colors\n   */\n  // override readonly color: InputSignal<Colors | undefined> = input();\n\n  /**\n   * Sets the text-color context of the component to one of CoreUI themed colors.\n   * via TextColorDirective\n   * @type TextColors\n   */\n  // override readonly textColor: InputSignal<TextColors | undefined> = input();\n\n  /**\n   * Title of the widget to display\n   * @type string\n   */\n  readonly title: InputSignal<string | undefined> = input<string>();\n\n  /**\n   * Helper text for your widget.\n   * @type string\n   */\n  readonly text: InputSignal<string | undefined> = input<string>();\n\n  /**\n   * Value for your widget to display\n   * @type string\n   */\n  readonly value: InputSignal<string | undefined> = input<string>();\n\n  /**\n   * Invert colors from their default dark shade.\n   * @type boolean\n   */\n  readonly inverse: InputSignalWithTransform<boolean, unknown> = input(false, { transform: booleanAttribute });\n\n  override readonly hostClasses = computed(() => {\n    const color = this.color();\n    const textColor = this.textColor();\n    return {\n      card: true,\n      [`bg-${color}`]: !!color,\n      [`text-${textColor}`]: !!textColor,\n      'text-white': this.inverse()\n    } as Record<string, boolean>;\n  });\n}\n","<c-card-body>\n  @if (!!value()) {\n    <div class=\"fs-4 fw-semibold\">{{ value() }}</div>\n  }\n  @if (!!title()) {\n    <div>{{ title() }}</div>\n  }\n  <ng-content />\n  @if (text()) {\n    <small [ngClass]=\"inverse() ? 'text-white text-opacity-75' : 'text-body-secondary'\">\n      {{ text() }}\n    </small>\n  }\n</c-card-body>\n","import { booleanAttribute, Component, computed, contentChildren, effect, input, TemplateRef } from '@angular/core';\n\nimport { CardBodyComponent, CardComponent } from '../../card';\nimport { TemplateIdDirective } from '../../shared';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\n\n@Component({\n  selector: 'c-widget-stat-c',\n  templateUrl: './widget-stat-c.component.html',\n  exportAs: 'cWidgetStatC',\n  standalone: true,\n  imports: [CardBodyComponent, NgClass, NgTemplateOutlet],\n  host: { '[class]': 'hostExtendedClass()' }\n})\nexport class WidgetStatCComponent extends CardComponent {\n  constructor() {\n    super();\n  }\n\n  /**\n   * Icon for your component.\n   * @type string\n   */\n  readonly icon = input<string>();\n\n  /**\n   * Title of the widget to display\n   * @type string\n   */\n  readonly title = input<string>();\n\n  /**\n   * Value for your widget to display\n   * @type string|number\n   */\n  readonly value = input<string | number>();\n\n  /**\n   * Invert colors from their default dark shade.\n   * @type boolean\n   */\n  readonly inverse = input(false, { transform: booleanAttribute });\n\n  templates: Record<string, TemplateRef<any>> = {};\n  readonly contentTemplates = contentChildren(TemplateIdDirective, { descendants: true });\n\n  readonly contentTemplatesEffect = effect(() => {\n    this.contentTemplates().forEach((child: TemplateIdDirective) => {\n      this.templates[child.id] = child.templateRef;\n    });\n  });\n\n  readonly hostExtendedClass = computed(() => {\n    return { ...this.hostClasses(), 'text-white': this.inverse() } as Record<string, boolean>;\n  });\n\n  readonly titleClasses = computed(() => {\n    const inverse = this.inverse();\n    return {\n      'text-body-secondary': !inverse,\n      'text-white': inverse,\n      'text-opacity-75': inverse,\n      [`text-${this.textColor()}`]: !!this.textColor()\n    } as Record<string, boolean>;\n  });\n\n  readonly valueClasses = computed(() => {\n    return {\n      'fs-4': !this.textColor(),\n      'fw-semibold': true,\n      ...this.titleClasses(),\n      'text-opacity-75': false\n    } as Record<string, boolean>;\n  });\n\n  readonly iconClasses = computed(() => {\n    return {\n      'mb-4': !this.textColor(),\n      'text-end': true,\n      ...this.titleClasses()\n    } as Record<string, boolean>;\n  });\n}\n","<c-card-body>\n  @if (icon() || templates?.['widgetIconTemplate']) {\n    <div [ngClass]=\"iconClasses()\">\n      <ng-container *ngTemplateOutlet=\"templates?.['widgetIconTemplate'] || defaultWidgetIconTemplate\" />\n    </div>\n  }\n  @if (!!value()) {\n    <div [ngClass]=\"valueClasses()\">\n      {{ value() }}\n    </div>\n  }\n  @if (!!title()) {\n    <div [ngClass]=\"titleClasses()\">\n      {{ title() }}\n    </div>\n  }\n  @if (templates?.['widgetProgressTemplate']) {\n    <ng-container *ngTemplateOutlet=\"templates?.['widgetProgressTemplate'] || defaultWidgetProgressTemplate\" />\n  }\n</c-card-body>\n\n<ng-template #defaultWidgetIconTemplate>\n  {{ icon() }}\n</ng-template>\n\n<ng-template #defaultWidgetProgressTemplate>\n  <ng-content />\n</ng-template>\n","import { Component, computed, input } from '@angular/core';\nimport { Colors } from '../../coreui.types';\nimport { CardBodyComponent, CardComponent, CardHeaderComponent } from '../../card';\nimport { ColComponent, RowDirective } from '../../grid';\nimport { NgClass } from '@angular/common';\n\nexport type WidgetStatDValue = {\n  title?: string;\n  value?: number | string;\n};\n\n@Component({\n  selector: 'c-widget-stat-d',\n  templateUrl: './widget-stat-d.component.html',\n  exportAs: 'cWidgetStatD',\n  standalone: true,\n  imports: [CardHeaderComponent, CardBodyComponent, ColComponent, RowDirective, NgClass],\n  host: { class: 'card' }\n})\nexport class WidgetStatDComponent extends CardComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  // override readonly color = input<Colors>();\n\n  /**\n   * Values and subtitles for your component.\n   * @type WidgetStatDValue\n   */\n  readonly values = input<WidgetStatDValue[]>();\n\n  readonly headerClasses = computed(() => {\n    return {\n      'position-relative': true,\n      'd-flex': true,\n      'justify-content-center': true,\n      'align-items-center': true,\n      [`bg-${this.color()}`]: this.color()\n    } as Record<string, boolean>;\n  });\n}\n","<c-card-header [ngClass]=\"headerClasses()\">\n  <ng-content />\n</c-card-header>\n<c-card-body cRow class=\"text-center\">\n  @for (item of values(); track item; let i = $index) {\n    @if (i % 2 !== 0) {\n      <div class=\"vr\"></div>\n    }\n    <c-col>\n      <div class=\"fs-5 fw-semibold\">{{ item.value }}</div>\n      <div class=\"text-uppercase text-body-secondary small\">{{ item.title }}</div>\n    </c-col>\n  }\n</c-card-body>\n","import { Component, computed, input } from '@angular/core';\nimport { NgClass } from '@angular/common';\nimport { CardBodyComponent, CardComponent } from '../../card';\n\n@Component({\n  selector: 'c-widget-stat-e',\n  templateUrl: './widget-stat-e.component.html',\n  exportAs: 'cWidgetStatE',\n  standalone: true,\n  imports: [CardBodyComponent, NgClass]\n})\nexport class WidgetStatEComponent extends CardComponent {\n  constructor() {\n    super();\n  }\n\n  /**\n   * Title of the widget to display\n   * @type string\n   */\n  readonly title = input<string>();\n\n  /**\n   * Value for your widget to display\n   * @type string | number\n   */\n  readonly value = input<string | number>();\n\n  readonly titleClasses = computed(() => {\n    const textColor = this.textColor();\n    return {\n      'text-body-secondary': !textColor,\n      small: true,\n      'text-uppercase': true,\n      'fw-semibold': true,\n      [`text-${textColor}`]: !!textColor\n    } as Record<string, boolean>;\n  });\n}\n","<c-card-body class=\"text-center\">\n  @if (!!title()) {\n    <div [ngClass]=\"titleClasses()\">{{ title() }}</div>\n  }\n  @if (!!value()) {\n    <div class=\"fs-6 fw-semibold py-3\">{{ value() }}</div>\n  }\n  <ng-content />\n</c-card-body>\n","import { booleanAttribute, Component, computed, contentChildren, effect, input, TemplateRef } from '@angular/core';\nimport { NgClass, NgTemplateOutlet } from '@angular/common';\n\nimport { Colors } from '../../coreui.types';\nimport { TemplateIdDirective } from '../../shared';\nimport { CardBodyComponent, CardComponent, CardFooterComponent } from '../../card';\n\n@Component({\n  selector: 'c-widget-stat-f',\n  templateUrl: './widget-stat-f.component.html',\n  exportAs: 'cWidgetStatB',\n  standalone: true,\n  imports: [CardBodyComponent, CardFooterComponent, NgClass, NgTemplateOutlet],\n  host: { class: 'card', '[class]': 'hostClasses()' }\n})\nexport class WidgetStatFComponent extends CardComponent {\n  /**\n   * Sets the color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  // override readonly color = input<Colors>();\n\n  /**\n   * Sets the text-color context of the component to one of CoreUI’s themed colors.\n   * @type Colors\n   */\n  // override readonly textColor = input<TextColors | 'white' | 'muted'>();\n\n  /**\n   * Footer for your widget\n   * @type string\n   */\n  readonly footer = input<string>();\n\n  /**\n   * Icon for your widget\n   * @type string\n   */\n  readonly icon = input<string>();\n\n  /**\n   * Set padding of your component.\n   * @type boolean\n   */\n  readonly padding = input(false, { transform: booleanAttribute });\n\n  /**\n   * Title of the widget to display\n   * @type string\n   */\n  readonly title = input<string>();\n\n  /**\n   * Value for your widget to display\n   * @type string\n   */\n  readonly value = input<string | number>();\n\n  templates: Record<string, TemplateRef<any>> = {};\n  readonly contentTemplates = contentChildren(TemplateIdDirective, { descendants: true });\n\n  readonly contentTemplatesEffect = effect(() => {\n    this.contentTemplates().forEach((child: TemplateIdDirective) => {\n      this.templates[child.id] = child.templateRef;\n    });\n  });\n\n  readonly cardBodyClasses = computed(() => {\n    return {\n      'd-flex': true,\n      'align-items-center': true,\n      'p-0': !this.padding()\n    } as Record<string, boolean>;\n  });\n\n  readonly iconClasses = computed(() => {\n    const color = this.color();\n    const padding = this.padding();\n\n    return {\n      'me-3': !this.textColor(),\n      'text-white': true,\n      [`bg-${color}`]: !!color,\n      'p-3': padding,\n      'p-4': !padding,\n      'rounded-start-1': !padding\n    } as Record<string, boolean>;\n  });\n\n  readonly titleClasses = computed(() => {\n    const textColor = this.textColor();\n    return {\n      'text-body-secondary': !textColor,\n      small: true,\n      'text-uppercase': true,\n      'fw-semibold': true,\n      [`text-${textColor}`]: !!textColor\n    } as Record<string, boolean>;\n  });\n\n  readonly valueClasses = computed(() => {\n    const textColor = this.textColor();\n    return {\n      'fs-6': !textColor,\n      'fw-semibold': true,\n      [`text-${textColor}`]: !!textColor\n    } as Record<string, boolean>;\n  });\n}\n","<ng-container>\n  <c-card-body [ngClass]=\"cardBodyClasses()\">\n    <div [ngClass]=\"iconClasses()\">\n      <ng-container *ngTemplateOutlet=\"templates?.['widgetIconTemplate'] || defaultWidgetIconTemplate\" />\n    </div>\n    <div>\n      <div [ngClass]=\"valueClasses()\">{{ value() }}</div>\n      <div [ngClass]=\"titleClasses()\">{{ title() }}</div>\n    </div>\n  </c-card-body>\n  @if (footer() || templates?.['widgetFooterTemplate']) {\n    <c-card-footer>\n      <ng-container *ngTemplateOutlet=\"templates?.['widgetFooterTemplate'] || defaultFooterIconTemplate\" />\n    </c-card-footer>\n  }\n</ng-container>\n\n<ng-template #defaultWidgetIconTemplate>\n  <span>{{ icon() }}</span>\n</ng-template>\n\n<ng-template #defaultFooterIconTemplate>\n  <span>{{ footer() }}</span>\n</ng-template>\n","import { NgModule } from '@angular/core';\n\nimport { WidgetStatAComponent } from './widget-stat-a/widget-stat-a.component';\nimport { WidgetStatBComponent } from './widget-stat-b/widget-stat-b.component';\nimport { WidgetStatCComponent } from './widget-stat-c/widget-stat-c.component';\nimport { WidgetStatDComponent } from './widget-stat-d/widget-stat-d.component';\nimport { WidgetStatEComponent } from './widget-stat-e/widget-stat-e.component';\nimport { WidgetStatFComponent } from './widget-stat-f/widget-stat-f.component';\n\n@NgModule({\n  imports: [\n    WidgetStatAComponent,\n    WidgetStatBComponent,\n    WidgetStatCComponent,\n    WidgetStatDComponent,\n    WidgetStatEComponent,\n    WidgetStatFComponent\n  ],\n  exports: [\n    WidgetStatAComponent,\n    WidgetStatBComponent,\n    WidgetStatCComponent,\n    WidgetStatDComponent,\n    WidgetStatEComponent,\n    WidgetStatFComponent\n  ]\n})\nexport class WidgetModule {}\n","/*\n * Public API Surface of coreui-angular\n */\n\nexport * from './lib/coreui.types';\nexport * from './lib/shared';\nexport * from './lib/accordion';\nexport * from './lib/alert';\nexport * from './lib/avatar';\nexport * from './lib/badge';\nexport * from './lib/backdrop';\nexport * from './lib/breadcrumb';\nexport * from './lib/button';\nexport * from './lib/button-group';\nexport * from './lib/callout';\nexport * from './lib/card';\nexport * from './lib/carousel';\nexport * from './lib/collapse';\nexport * from './lib/dropdown';\nexport * from './lib/footer';\nexport * from './lib/form';\nexport * from './lib/grid';\nexport * from './lib/header';\nexport * from './lib/image';\nexport * from './lib/list-group';\nexport * from './lib/nav';\nexport * from './lib/navbar';\nexport * from './lib/modal';\nexport * from './lib/offcanvas';\nexport * from './lib/pagination';\nexport * from './lib/placeholder';\nexport * from './lib/popover';\nexport * from './lib/progress';\nexport * from './lib/services';\nexport * from './lib/sidebar';\nexport * from './lib/spinner';\nexport * from './lib/table';\nexport * from './lib/tabs';\nexport * from './lib/tabs-2';\nexport * from './lib/toast';\nexport * from './lib/tooltip';\nexport * from './lib/utilities';\nexport * from './lib/widget';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["nextId","i1.ThemeDirective","i1.TextColorDirective","i1.BreadcrumbRouterService","i1.CarouselService","i2.CarouselState","i3.IntersectionService","i3.ListenersService","i4.ThemeDirective","i1.CarouselState","i1.DropdownService","i2.DropdownComponent","i1.ModalService","i2.BackdropService","i1.OffcanvasService","i3","i5","i1.ListenersService","i1.IntersectionService","i1.ProgressBarDirective","i1.SidebarService","i1","i2.SidebarService","i3.SidebarBackdropService","i1.SidebarToggleDirective","i1.SidebarNavHelper","i2","i2.SidebarNavHelper","i3.SidebarNavGroupService","i4.SidebarComponent","i5.SidebarService","i1.TabService","i1.ToasterService","i1.ToastComponent"],"mappings":"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"}