{"version":3,"sources":["jsdelivr-header.js","/build/src/stop-prop.directives.ts","/build/src/stop-prop.module.ts"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,8VCNA,IAAA,EAAA,W,aAIA,KAAA,aAAoC,CAChC,eAAgB,KAChB,SAAU,K,QAIF,EAAZ,UAAA,OAAA,SAAA,EAAA,EAAA,EAAA,EAAA,GACI,OAAO,EAAS,OAAO,EAAe,GAAO,SAAjD,IAcA,SAAA,EAAyB,GACvB,IAAF,EAAA,EAAA,eAAA,EAAA,EAAA,SACA,GAAA,EAAA,iB,uBAfM,CAAc,EAAc,GAC5B,EAAM,kBACN,EAAQ,KAAK,E,KAIjB,EAAF,UAAA,YAAA,WACI,KAAK,c,IAnBT,GAIA,EAAA,eAAA,C,iDAoCA,SAAA,EAAA,EAAA,GAFA,IAAA,EAAA,EAAsC,KAAtC,OAAoD,K,OAIpD,EAAA,W,wCANA,O,iDAFA,KAAA,aAAA,KAAA,OAAA,QAAA,KAAA,SAAA,KAAA,KAAA,cAAA,KAAA,QAAA,KAAA,a,EAEA,C,4CApCA,SAAA,mBAsCA,EAAA,eAAA,kB,mBAeA,CAAA,KAAA,c,mEAGA,IAAE,EAAF,SAAA,G,yCAMA,O,aAFA,EAAA,OACI,EAAJ,QAAA,IAAwB,eACxB,C,QALA,YAAA,EAAA,GALA,EAAA,UAAA,SAAA,W,gHAIA,CAxDA,GAAA,EAAA,WAAA,C,kIAuEA,EAAyC,eAAzC,CACA,QAAW,CAAC,CAAZ,KAAA,SAAA,KAAA,mBADA,IAAA,EAAA,SAAA,GAIE,SAAF,EAAA,EAAA,GACI,IAAI,EAAR,EAAA,KAA4B,OAA5B,KAXA,OAYA,EAAA,W,sCAZA,C,QAIA,YAAA,EAAA,G,gCArEA,KAAA,aAAA,KAAA,OAAA,YAAA,KAAA,SAAA,KAAA,KAAA,cAAA,KAAA,QAAA,KAAA,a,IAuEA,C,GAFA,EAAA,WAAA,C,yBAcA,SAAA,uB,mCAGE,CAAF,KAAA,aACA,CAAA,KAAA,cADA,EAAA,EAAA,eAAA,CAFA,QAAA,EAAA,KAAA,SAAA,KAAA,CAAuD,qB,kEAJvD,EAAA,WACA,EAAA,OACA,EAAA,QAAA,IAAA,e,+KAgBA,G,wEAGA,EAAA,eAAA,mBAAA,KAAA,aAFA,CAAA,KAAA,cAIA,E,sEAEA,IAAE,EAAF,SAAA,GATA,SAAA,EAAA,EAAA,GACA,IAAA,EAAA,EAAA,KAAA,YAjGA,O,mDAAA,C,CAgHE,OANF,YAAA,EAAA,G,gCAIA,KAAA,aAAA,KAAA,OAAA,aAAA,KAAA,SAAA,KAAA,KAAA,cAAA,KAAA,QAAA,KAAA,a,EAEA,C,CAPA,CAQA,GACA,EAAA,WAAA,EAAA,KAAA,YAAA,KAAA,E,oEClHA,CAeA,KAfA,a,sBAIA,EAAA,eAAA,CACA,QAAA,CAAE,CAAF,KAAA,SAAA,KAAA,uBAEA,IAAA,EAAA,CACA,EACA,EACA,EACA,G","file":"/npm/ngx-stop-propagation@1.0.1/bundles/ngx-stop-propagation.umd.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/ngx-stop-propagation@1.0.1/bundles/ngx-stop-propagation.umd.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","import {Directive, ElementRef, EventEmitter, Input, OnDestroy, OnInit, Output, Renderer2} from \"@angular/core\";\n\n\nexport class StopProp implements OnDestroy {\n  @Input() protected eventOptions = {\n    preventDefault: null,\n    stopProp: null\n  };\n  protected _unsubscribe;\n\n  protected listen(event, renderer, nativeElement, emitter, eventOptions) {\n    return renderer.listen(nativeElement, event, event => {\n      _handleEvents(eventOptions, event);\n      event.stopPropagation();\n      emitter.emit(event);\n    });\n  }\n\n  ngOnDestroy() {\n    this._unsubscribe();\n  }\n}\n\n\nfunction _handleEvents({preventDefault, stopProp}, event) {\n  preventDefault && event.preventDefault();\n  stopProp && event.stopPropagation();\n}\n\n/**\n * The click event's propagation will be stopped\n * Usage:\n * <button (click.stop)=\"onClick($event, extraData)\" [eventOptions]=\"{preventDefault: true}\">Click Me!!</button>\n */\n@Directive({\n  selector: \"[click.stop]\"\n})\nexport class StopPropClickDirective extends StopProp implements OnInit {\n  @Output(\"click.stop\") emitter = new EventEmitter();\n\n  constructor(private renderer: Renderer2, private host: ElementRef) {\n    super();\n  }\n\n  ngOnInit() {\n    this._unsubscribe = this.listen(\"click\", this.renderer, this.host.nativeElement, this.emitter, this.eventOptions);\n  }\n}\n\n\n@Directive({\n  selector: \"[change.stop]\"\n})\nexport class StopPropChangeDirective extends StopProp implements OnInit {\n  @Output(\"change.stop\") emitter = new EventEmitter();\n\n  constructor(private renderer: Renderer2, private host: ElementRef) {\n    super();\n  }\n\n  ngOnInit() {\n    this._unsubscribe = this.listen(\"change\", this.renderer, this.host.nativeElement, this.emitter, this.eventOptions);\n  }\n}\n\n@Directive({\n  selector: \"[mouseover.stop]\"\n})\nexport class StopPropMouseoverDirective extends StopProp implements OnInit {\n  @Output(\"mouseover.stop\") emitter = new EventEmitter();\n\n  constructor(private renderer: Renderer2, private host: ElementRef) {\n    super();\n  }\n\n  ngOnInit() {\n    this._unsubscribe = this.listen(\"mouseover\", this.renderer, this.host.nativeElement, this.emitter, this.eventOptions);\n  }\n}\n\n@Directive({\n  selector: \"[mouseenter.stop]\"\n})\nexport class StopPropMouseenterDirective extends StopProp implements OnInit {\n  @Output(\"mouseenter.stop\") emitter = new EventEmitter();\n\n  constructor(private renderer: Renderer2, private host: ElementRef) {\n    super();\n  }\n\n  ngOnInit() {\n    this._unsubscribe = this.listen(\"mouseenter\", this.renderer, this.host.nativeElement, this.emitter, this.eventOptions);\n  }\n}\n\n@Directive({\n  selector: \"[mouseleave.stop]\"\n})\nexport class StopPropMouseleaveDirective extends StopProp implements OnInit {\n  @Output(\"mouseleave.stop\") emitter = new EventEmitter();\n\n  constructor(private renderer: Renderer2, private host: ElementRef) {\n    super();\n  }\n\n  ngOnInit() {\n    this._unsubscribe = this.listen(\"mouseleave\", this.renderer, this.host.nativeElement, this.emitter, this.eventOptions);\n  }\n}\n\nexport const stopPropDirectives = [\n  StopPropClickDirective,\n  StopPropChangeDirective,\n  StopPropMouseoverDirective,\n  StopPropMouseenterDirective];\n","import {NgModule} from \"@angular/core\";\nimport {CommonModule} from \"@angular/common\";\nimport {stopPropDirectives} from \"./stop-prop.directives\";\n\n@NgModule({\n  imports: [\n    CommonModule\n  ],\n  declarations: [\n    stopPropDirectives\n  ],\n  exports: [\n    stopPropDirectives\n  ]\n})\nexport class StopPropagationModule {\n}\n"]}