{"version":3,"file":"scroll-dropdown.mjs","sources":["../../../projects/scroll-dropdown/src/lib/custom-dropdown-scroll/custom-select.service.ts","../../../projects/scroll-dropdown/src/lib/custom-dropdown-scroll/custom-select-option.component.ts","../../../projects/scroll-dropdown/src/lib/custom-dropdown-scroll/shared-scroll-dropdown.module.ts","../../../projects/scroll-dropdown/src/lib/custom-dropdown-scroll/custom-dropdown-scroll.component.ts","../../../projects/scroll-dropdown/src/lib/custom-dropdown-scroll/custom-dropdown-scroll.component.html","../../../projects/scroll-dropdown/src/lib/scroll-dropdown.module.ts","../../../projects/scroll-dropdown/src/public-api.ts","../../../projects/scroll-dropdown/src/scroll-dropdown.ts"],"sourcesContent":["import { Injectable } from '@angular/core';\r\nimport { CustomDropdownScrollComponent } from './custom-dropdown-scroll.component';\r\n\r\n@Injectable()\r\nexport class CustomSelectService {\r\n  private select!: CustomDropdownScrollComponent;\r\n\r\n  public register(select: CustomDropdownScrollComponent): void {\r\n    this.select = select;\r\n  }\r\n\r\n  public getSelect(): CustomDropdownScrollComponent {\r\n    return this.select;\r\n  }\r\n}\r\n","import {\r\n    Component,\r\n    ElementRef,\r\n    HostBinding,\r\n    HostListener,\r\n    Input,\r\n    ViewChild,\r\n} from '@angular/core';\r\nimport { CustomDropdownScrollComponent } from './custom-dropdown-scroll.component';\r\nimport { CustomSelectService } from './custom-select.service';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@Component({\r\n    selector: 'custom-select-option',\r\n    standalone: true,\r\n    imports: [CommonModule],\r\n    template: `<span #option><ng-content ></ng-content></span>`,\r\n    styleUrls: ['./custom-select-option.component.scss'],\r\n    host: {\r\n        role: 'listbox',\r\n        '[attr.aria-label]': 'value',\r\n    },\r\n})\r\nexport class CustomSelectOptionComponent {\r\n    @Input()\r\n    public value!: any;\r\n\r\n    @HostBinding('class.disabled')\r\n    @Input()\r\n    public disabled = false;\r\n\r\n    private select: CustomDropdownScrollComponent;\r\n\r\n    @ViewChild('option')\r\n    private option!: ElementRef;\r\n\r\n    constructor(private dropdownService: CustomSelectService) {\r\n        this.select = this.dropdownService.getSelect();\r\n    }\r\n\r\n    @HostListener('click', ['$event'])\r\n    public onClick(event: UIEvent): void {\r\n        event.preventDefault();\r\n        if (!this.disabled) {\r\n            this.select.selectOption(this);\r\n        }\r\n    }\r\n\r\n    public getOptionElement(): any {\r\n        return this.option.nativeElement;\r\n    }\r\n}\r\n","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { OverlayModule } from \"@angular/cdk/overlay\";\r\nimport { PortalModule } from \"@angular/cdk/portal\";\r\nimport { CustomSelectOptionComponent } from \"./custom-select-option.component\";\r\n\r\n@NgModule({\r\n  imports: [\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    OverlayModule,\r\n    CommonModule,\r\n    CustomSelectOptionComponent,\r\n    PortalModule\r\n  ],\r\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n  exports: [\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    OverlayModule,\r\n    CommonModule,\r\n    CustomSelectOptionComponent,\r\n    PortalModule\r\n  ],\r\n})\r\nexport class SharedHomeModule {\r\n  ScriptElement?: HTMLScriptElement;\r\n  JquerySrciptElement?: HTMLScriptElement;\r\n\r\n  constructor() {\r\n\r\n  }\r\n}","import { Overlay, OverlayConfig, OverlayRef } from '@angular/cdk/overlay';\nimport { CdkPortal } from '@angular/cdk/portal';\nimport {\n  AfterViewInit,\n  ChangeDetectorRef,\n  Component,\n  ContentChildren,\n  ElementRef,\n  EventEmitter,\n  forwardRef,\n  HostListener,\n  Input,\n  OnInit,\n  Output,\n  QueryList,\n  ViewChild,\n  ViewChildren,\n} from '@angular/core';\nimport {\n  AbstractControl,\n  ControlValueAccessor,\n  NG_VALIDATORS,\n  NG_VALUE_ACCESSOR,\n  ValidationErrors,\n  Validator,\n} from '@angular/forms';\n\nimport { noop } from 'rxjs';\nimport { CustomSelectOptionComponent } from './custom-select-option.component';\nimport { DomSanitizer, SafeHtml } from '@angular/platform-browser';\nimport { CustomSelectService } from './custom-select.service';\nimport { SharedHomeModule } from './shared-scroll-dropdown.module';\n\nexport interface CustomSelectEvent {\n  source: CustomDropdownScrollComponent;\n  selected: any;\n}\n\n@Component({\n  selector: 'dropdown-scroll',\n  templateUrl: './custom-dropdown-scroll.component.html',\n  styleUrls: ['./custom-dropdown-scroll.component.scss'],\n  standalone: true,\n  imports: [SharedHomeModule],\n  providers: [\n    {\n      provide: NG_VALUE_ACCESSOR,\n      useExisting: forwardRef(() => CustomDropdownScrollComponent),\n      multi: true,\n    },\n    {\n      provide: NG_VALIDATORS,\n      multi: true,\n      useExisting: CustomDropdownScrollComponent,\n    },\n    CustomSelectService,\n  ],\n})\nexport class CustomDropdownScrollComponent implements OnInit, ControlValueAccessor, Validator, AfterViewInit {\n  @Input('id') public inputId: string = '';\n\n  @Input() public label: string = '';\n  @Input() public bindLabel: string = '';\n  @Input() public bindValue: string = '';\n  @Input() public placeholder: string = '';\n  @Input() public selectedIndex: number = -1;\n  @Input() public required = false;\n  @Input() public disabled = false;\n  @Input() public error = false;\n  @Input() public multiple = false;\n  @Input() public search = false;\n\n  @Input('aria-label') public ariaLabel = '';\n  @Input('aria-labelledby') public ariaLabelledby = '';\n\n  @Output() readonly change = new EventEmitter<CustomSelectEvent>();\n  @Input() items: any = [];\n  @Output() eventScroll: EventEmitter<any> = new EventEmitter();\n\n  @ViewChild('select') public select!: ElementRef;\n  @ViewChild(CdkPortal) public contentTemplate!: CdkPortal;\n  @ViewChild(\"dropdownContainers\") dropdownContainers!: any;\n  @ViewChild(\"InpudropdownContainer\") InpudropdownContainer!: any;\n  @ContentChildren(CustomSelectOptionComponent)\n  public options!: QueryList<CustomSelectOptionComponent>;\n  itemsPerLoad = 50;\n  public displayText!: SafeHtml;\n  public displayX: boolean = false;\n  private selectedOption: CustomSelectOptionComponent | any;\n  private showPlaceholder: boolean = true;\n  private overlayRef!: OverlayRef;\n  filteredOptions: any = []; // Search results\n  displayedOptions: any = []; // Shown on UI\n  itemsPerPage = 10;\n  currentPage = 1;\n  showing?: boolean;\n\n  constructor(\n    private cd: ChangeDetectorRef,\n    private domSanitizer: DomSanitizer,\n    private overlay: Overlay,\n    private selectService: CustomSelectService\n  ) {\n    this.selectService.register(this);\n  }\n\n  public onChangeFn: any = (_: any) => noop();\n\n  public onTouchedFn: any = () => noop();\n\n  public registerOnChange(fn: any): void {\n    this.onChangeFn = fn;\n  }\n\n  public registerOnTouched(fn: any): void {\n    this.onTouchedFn = fn;\n  }\n\n  public validate(control: AbstractControl): ValidationErrors | null {\n    return null;\n  }\n\n  public ngOnInit(): void {\n    if (!this.displayText) {\n      this.displayText = this.domSanitizer.bypassSecurityTrustHtml(\n        this.placeholder\n      );\n    }\n    this.filteredOptions = [...this.items]; // Copy full list\n    this.displayedOptions = this.filteredOptions.slice(0, this.itemsPerPage); // Show first 10\n  }\n\n  filterOptions(event: Event, bindLabel: any) {\n    const input = (event.target as HTMLInputElement).value.toLowerCase();\n    this.filteredOptions = this.items.filter((option: any) => option[bindLabel]?.toLowerCase()?.includes(input));\n    this.currentPage = 1;\n    this.displayedOptions = this.filteredOptions.slice(0, this.itemsPerPage);\n  }\n\n  loadMore() {\n    const nextBatch = this.filteredOptions.slice(this.displayedOptions.length, this.displayedOptions.length + this.itemsPerPage);\n    if (nextBatch.length > 0) {\n      this.displayedOptions = [...this.displayedOptions, ...nextBatch];\n    }\n  }\n\n  removeOldItems() {\n    if (this.displayedOptions.length > this.itemsPerPage) {\n      this.displayedOptions.splice(0, this.itemsPerPage); // Remove first 10 items\n    }\n  }\n\n  hasMoreItems(): boolean {\n    return this.displayedOptions.length < this.filteredOptions.length;\n  }\n\n  ngAfterViewInit() {\n    console.log(this.contentTemplate, \"dropdownContainer\")\n  }\n\n  public writeValue(obj: any): void { }\n\n  public onTouched(): void {\n    this.onTouchedFn();\n  }\n\n  private onChange(): void {\n    if (this.bindValue != '') {\n      this.onChangeFn(this.selectedOption.value[this.bindValue]);\n      this.change.emit({\n        source: this,\n        selected: this.selectedOption[this.bindValue],\n      });\n    } else {\n      this.onChangeFn(this.selectedOption.value);\n      this.change.emit({\n        source: this,\n        selected: this.selectedOption,\n      });\n    }\n  }\n\n  generateData(id: number) {\n    return Array.from({ length: 5000 }, (_, i) => ({ name: `Item ${i + 1} - D${id}` })).slice(0, 50);\n  }\n\n  public mainSelectClasses(): { [key: string]: any } {\n    return {\n      mainSelect: true,\n      error: this.error,\n      disabled: this.disabled,\n      placeholder: this.showPlaceholder,\n    };\n  }\n\n  public onDropMenuIconClick(event: UIEvent): void {\n    if (!this.disabled) {\n      event.stopPropagation();\n      this.select.nativeElement.focus();\n      this.select.nativeElement.click();\n    }\n  }\n\n  public selectOption(option: CustomSelectOptionComponent) {\n    this.hide();\n    if (this.selectedOption !== option) {\n      this.selectedOption = option;\n      this.onChange();\n      this.updateDisplayText();\n    }\n  }\n\n  private updateDisplayText(): void {\n    if (this.selectedOption !== undefined) {\n      this.displayText = this.domSanitizer.bypassSecurityTrustHtml(\n        this.selectedOption.getOptionElement().innerHTML\n      );\n      this.showPlaceholder = false;\n    } else {\n      this.displayText = this.domSanitizer.bypassSecurityTrustHtml(\n        this.placeholder\n      );\n      this.showPlaceholder = true;\n    }\n  }\n\n  public onKeyDown(event: KeyboardEvent): void { }\n\n  public showDropdown(): void {\n    this.overlayRef = this.overlay.create(this.getOverlayConfig());\n    this.overlayRef.attach(this.contentTemplate);\n    this.syncWidth();\n    this.overlayRef.backdropClick().subscribe(() => this.hide());\n    this.showing = true;\n    this.ngOnInit();\n  }\n\n  private hide(): void {\n    this.overlayRef.detach();\n    this.showing = false;\n  }\n\n  private syncWidth(): void {\n    if (!this.overlayRef) {\n      return;\n    }\n\n    const refRectWidth =\n      this.select.nativeElement.getBoundingClientRect().width;\n    this.overlayRef.updateSize({ width: refRectWidth });\n  }\n\n  private getOverlayConfig(): OverlayConfig {\n    const positionStrategy = this.overlay\n      .position()\n      .flexibleConnectedTo(this.select.nativeElement)\n      .withPush(true)\n      .withPositions([{\n        originX: 'start',\n        originY: 'bottom',\n        overlayX: 'start',\n        overlayY: 'top',\n        offsetY: 4,\n      }, {\n        originX: 'start',\n        originY: 'top',\n        overlayX: 'start',\n        overlayY: 'bottom',\n        offsetY: -4,\n      }]);\n\n    const scrollStrategy = this.overlay.scrollStrategies.reposition();\n    return new OverlayConfig({\n      positionStrategy: positionStrategy,\n      scrollStrategy: scrollStrategy,\n      hasBackdrop: true,\n      backdropClass: 'cdk-overlay-transparent-backdrop',\n    });\n  }\n\n\n  onScroll(index: number) {\n    this.eventScroll.emit(index)\n    this.loadMore()\n  }\n\n  // 🔥 Detect clicks outside the dropdown & close it\n  @HostListener('document:click', ['$event'])\n  closeDropdown(event: Event) {\n    if (this.contentTemplate.templateRef.elementRef.nativeElement &&\n      !this.contentTemplate.templateRef.elementRef.nativeElement.contains(event.target) &&\n      this.select && this.InpudropdownContainer &&\n      !this.InpudropdownContainer.nativeElement.contains(event.target) &&\n      !this.select.nativeElement.contains(event.target)) {\n      this.hide()\n    }\n  }\n\n  selectedIndexfunc(item: any, index: any) {\n    this.selectedIndex = index\n  }\n\n}","<div class=\"select-wrapper\" [class.required]=\"required\">\n    <label *ngIf=\"label.length > 0\" [class.error]=\"error\" class=\"label-text\">{{\n        label\n        }}</label>\n    <div #select role=\"listbox\" class=\"select-content-controller\" tabindex=\"{{ this.disabled ? -1 : 0 }}\"\n        [ngClass]=\"mainSelectClasses()\" (click)=\"showDropdown()\" (keydown)=\"onKeyDown($event)\" (blur)=\"onTouched()\"\n        [attr.id]=\"inputId\" [attr.aria-label]=\"ariaLabel || null\" [attr.aria-labelledby]=\"ariaLabelledby || null\"\n        [attr.aria-multiselectable]=\"false\" [innerHTML]=\"displayText\"></div>\n    <ng-template cdk-portal #dropdownContainer #overlayTemplate=\"cdkPortal\" class=\"dropdown\">\n        <div class=\"custom-dropdown-menu\">\n            <div class=\"dropdown-options-container\" (keydown)=\"onKeyDown($event)\">\n                <input type=\"text\" #InpudropdownContainer placeholder=\"Search\" class=\"form-control\"\n                    (input)=\"filterOptions($event,this.bindLabel)\">\n                <div class=\"item-drop-down\" (scroll)=\"onScroll(0)\">\n                    <custom-select-option [ngClass]=\"{'selected-item':this.selectedIndex==i}\"\n                        *ngFor=\"let item of this.displayedOptions;let i=index\" [value]=\"item\"\n                        (click)=\"selectedIndexfunc(item,i)\">{{this.bindLabel!=''?item[this.bindLabel]:item}}</custom-select-option>\n                </div>\n                <p class=\"total-items\">Total Items : {{this.items?.length}}</p>\n            </div>\n        </div>\n    </ng-template>\n</div>","import { NgModule, CUSTOM_ELEMENTS_SCHEMA } from \"@angular/core\";\r\nimport { FormsModule, ReactiveFormsModule } from \"@angular/forms\";\r\nimport { CommonModule } from \"@angular/common\";\r\nimport { OverlayModule } from \"@angular/cdk/overlay\";\r\nimport { PortalModule } from \"@angular/cdk/portal\";\r\nimport { SharedHomeModule } from \"./custom-dropdown-scroll/shared-scroll-dropdown.module\";\r\nimport { CustomDropdownScrollComponent } from \"./custom-dropdown-scroll/custom-dropdown-scroll.component\";\r\n\r\n@NgModule({\r\n  imports: [\r\n    SharedHomeModule,\r\n    CustomDropdownScrollComponent,\r\n    PortalModule\r\n  ],\r\n  schemas: [CUSTOM_ELEMENTS_SCHEMA],\r\n  exports: [\r\n    FormsModule,\r\n    ReactiveFormsModule,\r\n    OverlayModule,\r\n    CommonModule,\r\n    CustomDropdownScrollComponent,\r\n    PortalModule\r\n  ],\r\n})\r\nexport class ScrollDropDownModule {\r\n\r\n  constructor() {\r\n\r\n  }\r\n}","/*\r\n * Public API Surface of modal-pop-up\r\n */\r\n\r\nexport * from './lib/custom-dropdown-scroll/custom-dropdown-scroll.component';\r\nexport * from './lib/custom-dropdown-scroll/custom-select-option.component'\r\nexport * from './lib/custom-dropdown-scroll/custom-select.service'\r\nexport * from './lib/custom-dropdown-scroll/shared-scroll-dropdown.module';\r\nexport * from './lib/scroll-dropdown.module';\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1.CustomSelectService","i3.CustomSelectService","i5.CustomSelectOptionComponent"],"mappings":"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"}