{"version":3,"file":"ng-doc-ui-kit-components-option-group.mjs","sources":["../../../../libs/ui-kit/components/option-group/option-group.component.ts","../../../../libs/ui-kit/components/option-group/option-group.component.html","../../../../libs/ui-kit/components/option-group/ng-doc-ui-kit-components-option-group.ts"],"sourcesContent":["import {\n  AfterContentInit,\n  ChangeDetectionStrategy,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  DestroyRef,\n  Directive,\n  inject,\n  QueryList,\n} from '@angular/core';\nimport { takeUntilDestroyed } from '@angular/core/rxjs-interop';\nimport { NgDocOptionComponent } from '@ng-doc/ui-kit/components/option';\nimport { NgDocTextComponent } from '@ng-doc/ui-kit/components/text';\nimport { startWith } from 'rxjs/operators';\n\n@Directive({\n  selector: '[ngDocOptionGroupHeader]',\n  standalone: true,\n})\nexport class NgDocOptionGroupHeaderDirective {}\n\n@Component({\n  selector: 'ng-doc-option-group',\n  templateUrl: './option-group.component.html',\n  styleUrls: ['./option-group.component.scss'],\n  changeDetection: ChangeDetectionStrategy.OnPush,\n  imports: [NgDocTextComponent],\n})\nexport class NgDocOptionGroupComponent<T> implements AfterContentInit {\n  private changeDetectorRef = inject(ChangeDetectorRef);\n\n  @ContentChildren(NgDocOptionComponent, { descendants: true })\n  options: QueryList<NgDocOptionComponent<T>> = new QueryList<NgDocOptionComponent<T>>();\n  hasHeader: boolean = false;\n\n  private readonly destroyRef = inject(DestroyRef);\n\n  constructor() {}\n\n  ngAfterContentInit(): void {\n    this.options.changes\n      .pipe(startWith(this.options), takeUntilDestroyed(this.destroyRef))\n      .subscribe((options: QueryList<NgDocOptionComponent<T>>) => {\n        this.hasHeader = !!options.length;\n        this.changeDetectorRef.markForCheck();\n      });\n  }\n}\n","<div class=\"ng-doc-option-group-wrapper\">\n  @if (hasHeader) {\n    <div class=\"ng-doc-option-group-header\" ng-doc-text>\n      <ng-content select=\"[ngDocOptionGroupHeader]\"></ng-content>\n    </div>\n  }\n  <div class=\"ng-doc-option-group\">\n    <ng-content></ng-content>\n  </div>\n</div>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;;;MAoBa,+BAA+B,CAAA;8GAA/B,+BAA+B,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAA/B,+BAA+B,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,0BAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAA/B,+BAA+B,EAAA,UAAA,EAAA,CAAA;kBAJ3C,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,0BAA0B;AACpC,oBAAA,UAAU,EAAE,IAAI;AACjB,iBAAA;;MAUY,yBAAyB,CAAA;AASpC,IAAA,WAAA,GAAA;AARQ,QAAA,IAAA,CAAA,iBAAiB,GAAG,MAAM,CAAC,iBAAiB,CAAC;AAGrD,QAAA,IAAA,CAAA,OAAO,GAAuC,IAAI,SAAS,EAA2B;QACtF,IAAA,CAAA,SAAS,GAAY,KAAK;AAET,QAAA,IAAA,CAAA,UAAU,GAAG,MAAM,CAAC,UAAU,CAAC;IAEjC;IAEf,kBAAkB,GAAA;QAChB,IAAI,CAAC,OAAO,CAAC;AACV,aAAA,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC,IAAI,CAAC,UAAU,CAAC;AACjE,aAAA,SAAS,CAAC,CAAC,OAA2C,KAAI;YACzD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC,OAAO,CAAC,MAAM;AACjC,YAAA,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE;AACvC,QAAA,CAAC,CAAC;IACN;8GAlBW,yBAAyB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAzB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,yBAAyB,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,qBAAA,EAAA,OAAA,EAAA,CAAA,EAAA,YAAA,EAAA,SAAA,EAAA,SAAA,EAGnB,oBAAoB,EAAA,WAAA,EAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,EAAA,EAAA,QAAA,EChCvC,8SAUA,ifDiBY,kBAAkB,EAAA,QAAA,EAAA,eAAA,EAAA,MAAA,EAAA,CAAA,MAAA,EAAA,OAAA,EAAA,OAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,EAAA,eAAA,EAAA,EAAA,CAAA,uBAAA,CAAA,MAAA,EAAA,CAAA,CAAA;;2FAEjB,yBAAyB,EAAA,UAAA,EAAA,CAAA;kBAPrC,SAAS;AACE,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,qBAAqB,mBAGd,uBAAuB,CAAC,MAAM,EAAA,OAAA,EACtC,CAAC,kBAAkB,CAAC,EAAA,QAAA,EAAA,8SAAA,EAAA,MAAA,EAAA,CAAA,ybAAA,CAAA,EAAA;;sBAK5B,eAAe;AAAC,gBAAA,IAAA,EAAA,CAAA,oBAAoB,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;;;AEhC9D;;AAEG;;;;"}