{"version":3,"file":"spinque-angular-ui-scroll.mjs","sources":["../../../projects/spinque-angular-ui/scroll/src/scroll.directive.ts","../../../projects/spinque-angular-ui/scroll/spinque-angular-ui-scroll.ts"],"sourcesContent":["import { Directive, ElementRef, HostListener, Output, EventEmitter, inject, output } from '@angular/core';\n\n\n/**\n * Emits SpinqueScroll with top and bottom when the user scrolls in the host element.\n * To be used when implementing infinite scrolling result views.\n */\n@Directive({\n  selector: '[spinqueScroll]',\n  standalone: true\n})\nexport class SpinqueScroll {\n  private el = inject(ElementRef);\n\n  spinqueScroll = output<{ top: number; bottom: number; }>();\n\n  @HostListener('scroll') scroll() {\n    const el = this.el.nativeElement;\n    const top = el.scrollTop;\n    const bottom = el.scrollHeight - (el.scrollTop + el.offsetHeight);\n    this.spinqueScroll.emit({ top, bottom });\n  }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;AAGA;;;AAGG;MAKU,aAAa,CAAA;AAJ1B,IAAA,WAAA,GAAA;AAKU,QAAA,IAAA,CAAA,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC;QAE/B,IAAA,CAAA,aAAa,GAAG,MAAM,EAAoC;AAQ3D,IAAA;IANyB,MAAM,GAAA;AAC5B,QAAA,MAAM,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC,aAAa;AAChC,QAAA,MAAM,GAAG,GAAG,EAAE,CAAC,SAAS;AACxB,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,IAAI,EAAE,CAAC,SAAS,GAAG,EAAE,CAAC,YAAY,CAAC;QACjE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;IAC1C;8GAVW,aAAa,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;kGAAb,aAAa,EAAA,YAAA,EAAA,IAAA,EAAA,QAAA,EAAA,iBAAA,EAAA,OAAA,EAAA,EAAA,aAAA,EAAA,eAAA,EAAA,EAAA,IAAA,EAAA,EAAA,SAAA,EAAA,EAAA,QAAA,EAAA,UAAA,EAAA,EAAA,EAAA,QAAA,EAAA,EAAA,EAAA,CAAA,CAAA;;2FAAb,aAAa,EAAA,UAAA,EAAA,CAAA;kBAJzB,SAAS;AAAC,YAAA,IAAA,EAAA,CAAA;AACT,oBAAA,QAAQ,EAAE,iBAAiB;AAC3B,oBAAA,UAAU,EAAE;AACb,iBAAA;;sBAME,YAAY;uBAAC,QAAQ;;;AChBxB;;AAEG;;;;"}