@trademe/ng-defer-load
Advanced tools
Comparing version 8.1.0 to 8.2.0
@@ -212,2 +212,3 @@ (function (global, factory) { | ||
this.fallbackEnabled = true; | ||
this.removeListenersAfterLoad = true; | ||
this.deferLoad = new core.EventEmitter(); | ||
@@ -278,3 +279,5 @@ this.checkForIntersection = function (entries) { | ||
DeferLoadDirective.prototype.load = function () { | ||
this.removeListeners(); | ||
if (this.removeListenersAfterLoad) { | ||
this.removeListeners(); | ||
} | ||
this.deferLoad.emit(); | ||
@@ -324,2 +327,5 @@ }; | ||
__decorate([ | ||
core.Input() | ||
], DeferLoadDirective.prototype, "removeListenersAfterLoad", void 0); | ||
__decorate([ | ||
core.Output() | ||
@@ -326,0 +332,0 @@ ], DeferLoadDirective.prototype, "deferLoad", void 0); |
@@ -15,3 +15,3 @@ !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("@angular/core"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define("@trademe/ng-defer-load",["exports","@angular/common","@angular/core","rxjs","rxjs/operators"],t):t(((e=e||self).trademe=e.trademe||{},e.trademe["ng-defer-load"]={}),e.ng.common,e.ng.core,e.rxjs,e.rxjs.operators)}(this,(function(e,t,r,n,o){"use strict"; | ||
and limitations under the License. | ||
***************************************************************************** */function i(e,t,r,n){var o,i=arguments.length,s=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(s=(i<3?o(s):i>3?o(t,r,s):o(t,r))||s);return i>3&&s&&Object.defineProperty(t,r,s),s}var s=function(){function e(e,t,n){var o=this;this._element=e,this._zone=t,this.platformId=n,this.preRender=!0,this.fallbackEnabled=!0,this.deferLoad=new r.EventEmitter,this.checkForIntersection=function(e){e.forEach((function(e){o.checkIfIntersecting(e)&&(o.load(),o._intersectionObserver&&o._element.nativeElement&&o._intersectionObserver.unobserve(o._element.nativeElement))}))},this.onScroll=function(){o.isVisible()&&o._zone.run((function(){return o.load()}))}}var s,c;return e.prototype.ngOnInit=function(){(t.isPlatformServer(this.platformId)&&!0===this.preRender||t.isPlatformBrowser(this.platformId)&&!1===this.fallbackEnabled&&!this.hasCompatibleBrowser())&&this.load()},e.prototype.ngAfterViewInit=function(){t.isPlatformBrowser(this.platformId)&&(this.hasCompatibleBrowser()?(this.registerIntersectionObserver(),this._intersectionObserver&&this._element.nativeElement&&this._intersectionObserver.observe(this._element.nativeElement)):!0===this.fallbackEnabled&&this.addScrollListeners())},e.prototype.hasCompatibleBrowser=function(){var e="IntersectionObserver"in window,t=window.navigator.userAgent.match(/Edge\/(\d*)\./i),r=!!t&&t.length>1,n=r&&!!t&&parseInt(t[1],10)>15;return e&&(!r||n)},e.prototype.ngOnDestroy=function(){this.removeListeners()},e.prototype.registerIntersectionObserver=function(){var e=this;this._intersectionObserver||(this._intersectionObserver=new IntersectionObserver((function(t){e.checkForIntersection(t)}),{}))},e.prototype.checkIfIntersecting=function(e){return e&&e.time?e.isIntersecting&&e.target===this._element.nativeElement:this.isVisible()},e.prototype.load=function(){this.removeListeners(),this.deferLoad.emit()},e.prototype.addScrollListeners=function(){var e=this;this.isVisible()?this.load():this._zone.runOutsideAngular((function(){e._scrollSubscription=n.fromEvent(window,"scroll").pipe(o.debounceTime(50)).subscribe(e.onScroll)}))},e.prototype.removeListeners=function(){this._scrollSubscription&&this._scrollSubscription.unsubscribe(),this._intersectionObserver&&this._intersectionObserver.disconnect()},e.prototype.isVisible=function(){var e=this.getScrollPosition();return this._element.nativeElement.offsetTop<=e},e.prototype.getScrollPosition=function(){return(window.scrollY||window.pageYOffset)+(document.documentElement.clientHeight||document.body.clientHeight)},e.ctorParameters=function(){return[{type:r.ElementRef},{type:r.NgZone},{type:Object,decorators:[{type:r.Inject,args:[r.PLATFORM_ID]}]}]},i([r.Input()],e.prototype,"preRender",void 0),i([r.Input()],e.prototype,"fallbackEnabled",void 0),i([r.Output()],e.prototype,"deferLoad",void 0),e=i([r.Directive({selector:"[deferLoad]"}),(s=2,c=r.Inject(r.PLATFORM_ID),function(e,t){c(e,t,s)})],e)}(),c=function(){function e(){}return e=i([r.NgModule({imports:[t.CommonModule],declarations:[s],exports:[s]})],e)}();e.DeferLoadDirective=s,e.DeferLoadModule=c,Object.defineProperty(e,"__esModule",{value:!0})})); | ||
***************************************************************************** */function i(e,t,r,n){var o,i=arguments.length,s=i<3?t:null===n?n=Object.getOwnPropertyDescriptor(t,r):n;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)s=Reflect.decorate(e,t,r,n);else for(var c=e.length-1;c>=0;c--)(o=e[c])&&(s=(i<3?o(s):i>3?o(t,r,s):o(t,r))||s);return i>3&&s&&Object.defineProperty(t,r,s),s}var s=function(){function e(e,t,n){var o=this;this._element=e,this._zone=t,this.platformId=n,this.preRender=!0,this.fallbackEnabled=!0,this.removeListenersAfterLoad=!0,this.deferLoad=new r.EventEmitter,this.checkForIntersection=function(e){e.forEach((function(e){o.checkIfIntersecting(e)&&(o.load(),o._intersectionObserver&&o._element.nativeElement&&o._intersectionObserver.unobserve(o._element.nativeElement))}))},this.onScroll=function(){o.isVisible()&&o._zone.run((function(){return o.load()}))}}var s,c;return e.prototype.ngOnInit=function(){(t.isPlatformServer(this.platformId)&&!0===this.preRender||t.isPlatformBrowser(this.platformId)&&!1===this.fallbackEnabled&&!this.hasCompatibleBrowser())&&this.load()},e.prototype.ngAfterViewInit=function(){t.isPlatformBrowser(this.platformId)&&(this.hasCompatibleBrowser()?(this.registerIntersectionObserver(),this._intersectionObserver&&this._element.nativeElement&&this._intersectionObserver.observe(this._element.nativeElement)):!0===this.fallbackEnabled&&this.addScrollListeners())},e.prototype.hasCompatibleBrowser=function(){var e="IntersectionObserver"in window,t=window.navigator.userAgent.match(/Edge\/(\d*)\./i),r=!!t&&t.length>1,n=r&&!!t&&parseInt(t[1],10)>15;return e&&(!r||n)},e.prototype.ngOnDestroy=function(){this.removeListeners()},e.prototype.registerIntersectionObserver=function(){var e=this;this._intersectionObserver||(this._intersectionObserver=new IntersectionObserver((function(t){e.checkForIntersection(t)}),{}))},e.prototype.checkIfIntersecting=function(e){return e&&e.time?e.isIntersecting&&e.target===this._element.nativeElement:this.isVisible()},e.prototype.load=function(){this.removeListenersAfterLoad&&this.removeListeners(),this.deferLoad.emit()},e.prototype.addScrollListeners=function(){var e=this;this.isVisible()?this.load():this._zone.runOutsideAngular((function(){e._scrollSubscription=n.fromEvent(window,"scroll").pipe(o.debounceTime(50)).subscribe(e.onScroll)}))},e.prototype.removeListeners=function(){this._scrollSubscription&&this._scrollSubscription.unsubscribe(),this._intersectionObserver&&this._intersectionObserver.disconnect()},e.prototype.isVisible=function(){var e=this.getScrollPosition();return this._element.nativeElement.offsetTop<=e},e.prototype.getScrollPosition=function(){return(window.scrollY||window.pageYOffset)+(document.documentElement.clientHeight||document.body.clientHeight)},e.ctorParameters=function(){return[{type:r.ElementRef},{type:r.NgZone},{type:Object,decorators:[{type:r.Inject,args:[r.PLATFORM_ID]}]}]},i([r.Input()],e.prototype,"preRender",void 0),i([r.Input()],e.prototype,"fallbackEnabled",void 0),i([r.Input()],e.prototype,"removeListenersAfterLoad",void 0),i([r.Output()],e.prototype,"deferLoad",void 0),e=i([r.Directive({selector:"[deferLoad]"}),(s=2,c=r.Inject(r.PLATFORM_ID),function(e,t){c(e,t,s)})],e)}(),c=function(){function e(){}return e=i([r.NgModule({imports:[t.CommonModule],declarations:[s],exports:[s]})],e)}();e.DeferLoadDirective=s,e.DeferLoadModule=c,Object.defineProperty(e,"__esModule",{value:!0})})); | ||
//# sourceMappingURL=trademe-ng-defer-load.umd.min.js.map |
@@ -8,2 +8,3 @@ import { AfterViewInit, ElementRef, EventEmitter, NgZone, OnDestroy, OnInit } from '@angular/core'; | ||
fallbackEnabled: boolean; | ||
removeListenersAfterLoad: boolean; | ||
deferLoad: EventEmitter<any>; | ||
@@ -10,0 +11,0 @@ private _intersectionObserver?; |
@@ -13,2 +13,3 @@ import * as tslib_1 from "tslib"; | ||
this.fallbackEnabled = true; | ||
this.removeListenersAfterLoad = true; | ||
this.deferLoad = new EventEmitter(); | ||
@@ -78,3 +79,5 @@ this.checkForIntersection = (entries) => { | ||
load() { | ||
this.removeListeners(); | ||
if (this.removeListenersAfterLoad) { | ||
this.removeListeners(); | ||
} | ||
this.deferLoad.emit(); | ||
@@ -124,2 +127,5 @@ } | ||
tslib_1.__decorate([ | ||
Input() | ||
], DeferLoadDirective.prototype, "removeListenersAfterLoad", void 0); | ||
tslib_1.__decorate([ | ||
Output() | ||
@@ -134,2 +140,2 @@ ], DeferLoadDirective.prototype, "deferLoad", void 0); | ||
export { DeferLoadDirective }; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmZXItbG9hZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdHJhZGVtZS9uZy1kZWZlci1sb2FkLyIsInNvdXJjZXMiOlsiZGVmZXItbG9hZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xKLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUs5QyxJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQVMzQixZQUNZLFFBQW9CLEVBQ3BCLEtBQWEsRUFDUSxVQUFrQjtRQUZ2QyxhQUFRLEdBQVIsUUFBUSxDQUFZO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDUSxlQUFVLEdBQVYsVUFBVSxDQUFRO1FBVm5DLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFDMUIsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDL0IsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBdUQzRCx5QkFBb0IsR0FBRyxDQUFDLE9BQXlDLEVBQUUsRUFBRTtZQUN6RSxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsS0FBZ0MsRUFBRSxFQUFFO2dCQUNqRCxJQUFJLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDakMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNaLElBQUksSUFBSSxDQUFDLHFCQUFxQixJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsYUFB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QUM7Y0FDdkMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hGLENBQUM7Q0FDSixDQUFBOztZQWpIeUIsVUFBVTtZQUNiLE1BQU07WUFDb0IsTUFBTSx1QkFBOUMsTUFBTSxTQUFDLFdBQVc7O0FBVmQ7SUFBUixLQUFLLEVBQUU7cURBQWtDO0FBQ2pDO0lBQVIsS0FBSyxFQUFFOzJEQUF3QztBQUN0QztJQUFULE1BQU0sRUFBRTtxREFBMEQ7QUFKMUQsa0JBQWtCO0lBSDlCLFNBQVMsQ0FBQztRQUNQLFFBQVEsRUFBRSxhQUFhO0tBQzFCLENBQUM7SUFhTyxtQkFBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7R0FaZixrQkFBa0IsQ0EySDlCO1NBM0hZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyLCBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tkZWZlckxvYWRdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVmZXJMb2FkRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBwcmVSZW5kZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIGZhbGxiYWNrRW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRlZmVyTG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/OiBJbnRlcnNlY3Rpb25PYnNlcnZlcjtcclxuICAgIHByaXZhdGUgX3Njcm9sbFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAoXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXHJcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3RcclxuICAgICkgeyB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0ICgpIHtcclxuICAgICAgICBpZiAoKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLnByZVJlbmRlciA9PT0gdHJ1ZSkgfHxcclxuICAgICAgICAgICAgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5mYWxsYmFja0VuYWJsZWQgPT09IGZhbHNlICYmICF0aGlzLmhhc0NvbXBhdGlibGVCcm93c2VyKCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0ICgpIHtcclxuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNDb21wYXRpYmxlQnJvd3NlcigpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ2lzdGVySW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlciAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZhbGxiYWNrRW5hYmxlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hZGRTY3JvbGxMaXN0ZW5lcnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFzQ29tcGF0aWJsZUJyb3dzZXIgKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGhhc0ludGVyc2VjdGlvbk9ic2VydmVyID0gJ0ludGVyc2VjdGlvbk9ic2VydmVyJyBpbiB3aW5kb3c7XHJcbiAgICAgICAgY29uc3QgdXNlckFnZW50ID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHVzZXJBZ2VudC5tYXRjaCgvRWRnZVxcLyhcXGQqKVxcLi9pKTtcclxuXHJcbiAgICAgICAgY29uc3QgaXNFZGdlID0gISFtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMTtcclxuICAgICAgICBjb25zdCBpc0VkZ2VWZXJzaW9uMTZPckJldHRlciA9IGlzRWRnZSAmJiAoISFtYXRjaGVzICYmIHBhcnNlSW50KG1hdGNoZXNbMV0sIDEwKSA+IDE1KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGhhc0ludGVyc2VjdGlvbk9ic2VydmVyICYmICghaXNFZGdlIHx8IGlzRWRnZVZlcnNpb24xNk9yQmV0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3kgKCkge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWdpc3RlckludGVyc2VjdGlvbk9ic2VydmVyICgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoISF0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrRm9ySW50ZXJzZWN0aW9uKGVudHJpZXMpO1xyXG4gICAgICAgIH0sIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrRm9ySW50ZXJzZWN0aW9uID0gKGVudHJpZXM6IEFycmF5PEludGVyc2VjdGlvbk9ic2VydmVyRW50cnk+KSA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja0lmSW50ZXJzZWN0aW5nKGVudHJ5KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIgJiYgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIudW5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZkludGVyc2VjdGluZyAoZW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgICAgICAvLyBGb3IgU2Ftc3VuZyBuYXRpdmUgYnJvd3NlciwgSU8gaGFzIGJlZW4gcGFydGlhbGx5IGltcGxlbWVudGVkIHdoZXJlIGJ5IHRoZVxyXG4gICAgICAgIC8vIGNhbGxiYWNrIGZpcmVzLCBidXQgZW50cnkgb2JqZWN0IGlzIGVtcHR5LiBXZSB3aWxsIGNoZWNrIG1hbnVhbGx5LlxyXG4gICAgICAgIGlmIChlbnRyeSAmJiBlbnRyeS50aW1lKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAoPGFueT5lbnRyeSkuaXNJbnRlcnNlY3RpbmcgJiYgZW50cnkudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9hZCAoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcclxuICAgICAgICB0aGlzLmRlZmVyTG9hZC5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhZGRTY3JvbGxMaXN0ZW5lcnMgKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQod2luZG93LCAnc2Nyb2xsJylcclxuICAgICAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCkpXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHRoaXMub25TY3JvbGwpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVtb3ZlTGlzdGVuZXJzICgpIHtcclxuICAgICAgICBpZiAodGhpcy5fc2Nyb2xsU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Njcm9sbFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvblNjcm9sbCA9ICgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5pc1Zpc2libGUoKSkge1xyXG4gICAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB0aGlzLmxvYWQoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNWaXNpYmxlICgpIHtcclxuICAgICAgICBsZXQgc2Nyb2xsUG9zaXRpb24gPSB0aGlzLmdldFNjcm9sbFBvc2l0aW9uKCk7XHJcbiAgICAgICAgbGV0IGVsZW1lbnRPZmZzZXQgPSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0VG9wO1xyXG4gICAgICAgIHJldHVybiBlbGVtZW50T2Zmc2V0IDw9IHNjcm9sbFBvc2l0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsUG9zaXRpb24gKCkge1xyXG4gICAgICAgIC8vIEdldHRpbmcgc2NyZWVuIHNpemUgYW5kIHNjcm9sbCBwb3NpdGlvbiBmb3IgSUVcclxuICAgICAgICByZXR1cm4gKHdpbmRvdy5zY3JvbGxZIHx8IHdpbmRvdy5wYWdlWU9mZnNldClcclxuICAgICAgICAgICAgKyAoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCB8fCBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCk7XHJcbiAgICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmZXItbG9hZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdHJhZGVtZS9uZy1kZWZlci1sb2FkLyIsInNvdXJjZXMiOlsiZGVmZXItbG9hZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xKLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUs5QyxJQUFhLGtCQUFrQixHQUEvQixNQUFhLGtCQUFrQjtJQVUzQixZQUNZLFFBQW9CLEVBQ3BCLEtBQWEsRUFDUSxVQUFrQjtRQUZ2QyxhQUFRLEdBQVIsUUFBUSxDQUFZO1FBQ3BCLFVBQUssR0FBTCxLQUFLLENBQVE7UUFDUSxlQUFVLEdBQVYsVUFBVSxDQUFRO1FBWG5DLGNBQVMsR0FBWSxJQUFJLENBQUM7UUFDMUIsb0JBQWUsR0FBWSxJQUFJLENBQUM7UUFDaEMsNkJBQXdCLEdBQVksSUFBSSxDQUFDO1FBQ3hDLGNBQVMsR0FBc0IsSUFBSSxZQUFZLEVBQUUsQ0FBQztRQXVEM0QseUJBQW9CLEdBQUcsQ0FBQyxPQUF5QyxFQUFFLEVBQUU7WUFDekUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLEtBQWdDLEVBQUUsRUFBRTtnQkFDakQsSUFBSSxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ2pDLElBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDWixJQUFJLElBQUksQ0FBQyxxQkFBcUIs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UUFDckIsaURBQWlEO1FBQ2pELE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7Y0FDdkMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hGLENBQUM7Q0FDSixDQUFBOztZQW5IeUIsVUFBVTtZQUNiLE1BQU07WUFDb0IsTUFBTSx1QkFBOUMsTUFBTSxTQUFDLFdBQVc7O0FBWGQ7SUFBUixLQUFLLEVBQUU7cURBQWtDO0FBQ2pDO0lBQVIsS0FBSyxFQUFFOzJEQUF3QztBQUN2QztJQUFSLEtBQUssRUFBRTtvRUFBaUQ7QUFDL0M7SUFBVCxNQUFNLEVBQUU7cURBQTBEO0FBTDFELGtCQUFrQjtJQUg5QixTQUFTLENBQUM7UUFDUCxRQUFRLEVBQUUsYUFBYTtLQUMxQixDQUFDO0lBY08sbUJBQUEsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFBO0dBYmYsa0JBQWtCLENBOEg5QjtTQTlIWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbZGVmZXJMb2FkXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIERlZmVyTG9hZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJlUmVuZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBmYWxsYmFja0VuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIHJlbW92ZUxpc3RlbmVyc0FmdGVyTG9hZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRlZmVyTG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/OiBJbnRlcnNlY3Rpb25PYnNlcnZlcjtcclxuICAgIHByaXZhdGUgX3Njcm9sbFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAoXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXHJcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3RcclxuICAgICkgeyB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0ICgpIHtcclxuICAgICAgICBpZiAoKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLnByZVJlbmRlciA9PT0gdHJ1ZSkgfHxcclxuICAgICAgICAgICAgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5mYWxsYmFja0VuYWJsZWQgPT09IGZhbHNlICYmICF0aGlzLmhhc0NvbXBhdGlibGVCcm93c2VyKCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0ICgpIHtcclxuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNDb21wYXRpYmxlQnJvd3NlcigpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ2lzdGVySW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlciAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZhbGxiYWNrRW5hYmxlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hZGRTY3JvbGxMaXN0ZW5lcnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFzQ29tcGF0aWJsZUJyb3dzZXIgKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGhhc0ludGVyc2VjdGlvbk9ic2VydmVyID0gJ0ludGVyc2VjdGlvbk9ic2VydmVyJyBpbiB3aW5kb3c7XHJcbiAgICAgICAgY29uc3QgdXNlckFnZW50ID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHVzZXJBZ2VudC5tYXRjaCgvRWRnZVxcLyhcXGQqKVxcLi9pKTtcclxuXHJcbiAgICAgICAgY29uc3QgaXNFZGdlID0gISFtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMTtcclxuICAgICAgICBjb25zdCBpc0VkZ2VWZXJzaW9uMTZPckJldHRlciA9IGlzRWRnZSAmJiAoISFtYXRjaGVzICYmIHBhcnNlSW50KG1hdGNoZXNbMV0sIDEwKSA+IDE1KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGhhc0ludGVyc2VjdGlvbk9ic2VydmVyICYmICghaXNFZGdlIHx8IGlzRWRnZVZlcnNpb24xNk9yQmV0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3kgKCkge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWdpc3RlckludGVyc2VjdGlvbk9ic2VydmVyICgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoISF0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrRm9ySW50ZXJzZWN0aW9uKGVudHJpZXMpO1xyXG4gICAgICAgIH0sIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrRm9ySW50ZXJzZWN0aW9uID0gKGVudHJpZXM6IEFycmF5PEludGVyc2VjdGlvbk9ic2VydmVyRW50cnk+KSA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja0lmSW50ZXJzZWN0aW5nKGVudHJ5KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIgJiYgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIudW5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZkludGVyc2VjdGluZyAoZW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgICAgICAvLyBGb3IgU2Ftc3VuZyBuYXRpdmUgYnJvd3NlciwgSU8gaGFzIGJlZW4gcGFydGlhbGx5IGltcGxlbWVudGVkIHdoZXJlIGJ5IHRoZVxyXG4gICAgICAgIC8vIGNhbGxiYWNrIGZpcmVzLCBidXQgZW50cnkgb2JqZWN0IGlzIGVtcHR5LiBXZSB3aWxsIGNoZWNrIG1hbnVhbGx5LlxyXG4gICAgICAgIGlmIChlbnRyeSAmJiBlbnRyeS50aW1lKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAoPGFueT5lbnRyeSkuaXNJbnRlcnNlY3RpbmcgJiYgZW50cnkudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9hZCAoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMucmVtb3ZlTGlzdGVuZXJzQWZ0ZXJMb2FkKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZGVmZXJMb2FkLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFkZFNjcm9sbExpc3RlbmVycyAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNWaXNpYmxlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Njcm9sbFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdzY3JvbGwnKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwKSlcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodGhpcy5vblNjcm9sbCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZW1vdmVMaXN0ZW5lcnMgKCkge1xyXG4gICAgICAgIGlmICh0aGlzLl9zY3JvbGxTdWJzY3JpcHRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5fc2Nyb2xsU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIG9uU2Nyb2xsID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHRoaXMubG9hZCgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc1Zpc2libGUgKCkge1xyXG4gICAgICAgIGxldCBzY3JvbGxQb3NpdGlvbiA9IHRoaXMuZ2V0U2Nyb2xsUG9zaXRpb24oKTtcclxuICAgICAgICBsZXQgZWxlbWVudE9mZnNldCA9IHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XHJcbiAgICAgICAgcmV0dXJuIGVsZW1lbnRPZmZzZXQgPD0gc2Nyb2xsUG9zaXRpb247XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRTY3JvbGxQb3NpdGlvbiAoKSB7XHJcbiAgICAgICAgLy8gR2V0dGluZyBzY3JlZW4gc2l6ZSBhbmQgc2Nyb2xsIHBvc2l0aW9uIGZvciBJRVxyXG4gICAgICAgIHJldHVybiAod2luZG93LnNjcm9sbFkgfHwgd2luZG93LnBhZ2VZT2Zmc2V0KVxyXG4gICAgICAgICAgICArIChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0IHx8IGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0KTtcclxuICAgIH1cclxufVxyXG4iXX0= |
@@ -14,2 +14,3 @@ import * as tslib_1 from "tslib"; | ||
this.fallbackEnabled = true; | ||
this.removeListenersAfterLoad = true; | ||
this.deferLoad = new EventEmitter(); | ||
@@ -80,3 +81,5 @@ this.checkForIntersection = function (entries) { | ||
DeferLoadDirective.prototype.load = function () { | ||
this.removeListeners(); | ||
if (this.removeListenersAfterLoad) { | ||
this.removeListeners(); | ||
} | ||
this.deferLoad.emit(); | ||
@@ -126,2 +129,5 @@ }; | ||
tslib_1.__decorate([ | ||
Input() | ||
], DeferLoadDirective.prototype, "removeListenersAfterLoad", void 0); | ||
tslib_1.__decorate([ | ||
Output() | ||
@@ -138,2 +144,2 @@ ], DeferLoadDirective.prototype, "deferLoad", void 0); | ||
export { DeferLoadDirective }; | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmZXItbG9hZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdHJhZGVtZS9uZy1kZWZlci1sb2FkLyIsInNvdXJjZXMiOlsiZGVmZXItbG9hZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xKLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUs5QztJQVNJLDRCQUNZLFFBQW9CLEVBQ3BCLEtBQWEsRUFDUSxVQUFrQjtRQUhuRCxpQkFJSztRQUhPLGFBQVEsR0FBUixRQUFRLENBQVk7UUFDcEIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNRLGVBQVUsR0FBVixVQUFVLENBQVE7UUFWbkMsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMxQixvQkFBZSxHQUFZLElBQUksQ0FBQztRQUMvQixjQUFTLEdBQXNCLElBQUksWUFBWSxFQUFFLENBQUM7UUF1RDNELHlCQUFvQixHQUFHLFVBQUMsT0FBeUM7WUFDckUsT0FBTyxDQUFDLE9BQU8sQ0FBQyxVQUFDLEtBQWdDO2dCQUM3QyxJQUFJLEtBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsRUFBRTtvQkFDakMsS0FBSSxDQUFDLElBQUksRUFBRSxDQUFDO29CQUNaLElBQUksS0FBSSxDQUFDLHFCQUFxQixJQUFJLEtBQUksQ0FBQyxRQUFRLENBQUMsYUFBYSxFQUFFO3dCQUMzRCxLQUFJLENBQUMscUJBQXFCLENBQUMsU0FB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T0FBTyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7Y0FDdkMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hGLENBQUM7O2dCQWhIcUIsVUFBVTtnQkFDYixNQUFNO2dCQUNvQixNQUFNLHVCQUE5QyxNQUFNLFNBQUMsV0FBVzs7SUFWZDtRQUFSLEtBQUssRUFBRTt5REFBa0M7SUFDakM7UUFBUixLQUFLLEVBQUU7K0RBQXdDO0lBQ3RDO1FBQVQsTUFBTSxFQUFFO3lEQUEwRDtJQUoxRCxrQkFBa0I7UUFIOUIsU0FBUyxDQUFDO1lBQ1AsUUFBUSxFQUFFLGFBQWE7U0FDMUIsQ0FBQztRQWFPLG1CQUFBLE1BQU0sQ0FBQyxXQUFXLENBQUMsQ0FBQTtPQVpmLGtCQUFrQixDQTJIOUI7SUFBRCx5QkFBQztDQUFBLEFBM0hELElBMkhDO1NBM0hZLGtCQUFrQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGlzUGxhdGZvcm1Ccm93c2VyLCBpc1BsYXRmb3JtU2VydmVyIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcclxuaW1wb3J0IHsgQWZ0ZXJWaWV3SW5pdCwgRGlyZWN0aXZlLCBFbGVtZW50UmVmLCBFdmVudEVtaXR0ZXIsIEluamVjdCwgSW5wdXQsIE5nWm9uZSwgT25EZXN0cm95LCBPbkluaXQsIE91dHB1dCwgUExBVEZPUk1fSUQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuaW1wb3J0IHsgZnJvbUV2ZW50LCBTdWJzY3JpcHRpb24gfSBmcm9tICdyeGpzJztcclxuaW1wb3J0IHsgZGVib3VuY2VUaW1lIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xyXG5cclxuQERpcmVjdGl2ZSh7XHJcbiAgICBzZWxlY3RvcjogJ1tkZWZlckxvYWRdJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgRGVmZXJMb2FkRGlyZWN0aXZlIGltcGxlbWVudHMgT25Jbml0LCBBZnRlclZpZXdJbml0LCBPbkRlc3Ryb3kge1xyXG5cclxuICAgIEBJbnB1dCgpIHB1YmxpYyBwcmVSZW5kZXI6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIGZhbGxiYWNrRW5hYmxlZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRlZmVyTG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/OiBJbnRlcnNlY3Rpb25PYnNlcnZlcjtcclxuICAgIHByaXZhdGUgX3Njcm9sbFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAoXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXHJcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3RcclxuICAgICkgeyB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0ICgpIHtcclxuICAgICAgICBpZiAoKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLnByZVJlbmRlciA9PT0gdHJ1ZSkgfHxcclxuICAgICAgICAgICAgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5mYWxsYmFja0VuYWJsZWQgPT09IGZhbHNlICYmICF0aGlzLmhhc0NvbXBhdGlibGVCcm93c2VyKCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0ICgpIHtcclxuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNDb21wYXRpYmxlQnJvd3NlcigpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ2lzdGVySW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlciAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZhbGxiYWNrRW5hYmxlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hZGRTY3JvbGxMaXN0ZW5lcnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFzQ29tcGF0aWJsZUJyb3dzZXIgKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGhhc0ludGVyc2VjdGlvbk9ic2VydmVyID0gJ0ludGVyc2VjdGlvbk9ic2VydmVyJyBpbiB3aW5kb3c7XHJcbiAgICAgICAgY29uc3QgdXNlckFnZW50ID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHVzZXJBZ2VudC5tYXRjaCgvRWRnZVxcLyhcXGQqKVxcLi9pKTtcclxuXHJcbiAgICAgICAgY29uc3QgaXNFZGdlID0gISFtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMTtcclxuICAgICAgICBjb25zdCBpc0VkZ2VWZXJzaW9uMTZPckJldHRlciA9IGlzRWRnZSAmJiAoISFtYXRjaGVzICYmIHBhcnNlSW50KG1hdGNoZXNbMV0sIDEwKSA+IDE1KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGhhc0ludGVyc2VjdGlvbk9ic2VydmVyICYmICghaXNFZGdlIHx8IGlzRWRnZVZlcnNpb24xNk9yQmV0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3kgKCkge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWdpc3RlckludGVyc2VjdGlvbk9ic2VydmVyICgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoISF0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrRm9ySW50ZXJzZWN0aW9uKGVudHJpZXMpO1xyXG4gICAgICAgIH0sIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrRm9ySW50ZXJzZWN0aW9uID0gKGVudHJpZXM6IEFycmF5PEludGVyc2VjdGlvbk9ic2VydmVyRW50cnk+KSA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja0lmSW50ZXJzZWN0aW5nKGVudHJ5KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIgJiYgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIudW5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZkludGVyc2VjdGluZyAoZW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgICAgICAvLyBGb3IgU2Ftc3VuZyBuYXRpdmUgYnJvd3NlciwgSU8gaGFzIGJlZW4gcGFydGlhbGx5IGltcGxlbWVudGVkIHdoZXJlIGJ5IHRoZVxyXG4gICAgICAgIC8vIGNhbGxiYWNrIGZpcmVzLCBidXQgZW50cnkgb2JqZWN0IGlzIGVtcHR5LiBXZSB3aWxsIGNoZWNrIG1hbnVhbGx5LlxyXG4gICAgICAgIGlmIChlbnRyeSAmJiBlbnRyeS50aW1lKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAoPGFueT5lbnRyeSkuaXNJbnRlcnNlY3RpbmcgJiYgZW50cnkudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9hZCAoKTogdm9pZCB7XHJcbiAgICAgICAgdGhpcy5yZW1vdmVMaXN0ZW5lcnMoKTtcclxuICAgICAgICB0aGlzLmRlZmVyTG9hZC5lbWl0KCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBhZGRTY3JvbGxMaXN0ZW5lcnMgKCkge1xyXG4gICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX3pvbmUucnVuT3V0c2lkZUFuZ3VsYXIoKCkgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLl9zY3JvbGxTdWJzY3JpcHRpb24gPSBmcm9tRXZlbnQod2luZG93LCAnc2Nyb2xsJylcclxuICAgICAgICAgICAgICAgIC5waXBlKGRlYm91bmNlVGltZSg1MCkpXHJcbiAgICAgICAgICAgICAgICAuc3Vic2NyaWJlKHRoaXMub25TY3JvbGwpO1xyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgcmVtb3ZlTGlzdGVuZXJzICgpIHtcclxuICAgICAgICBpZiAodGhpcy5fc2Nyb2xsU3Vic2NyaXB0aW9uKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Njcm9sbFN1YnNjcmlwdGlvbi51bnN1YnNjcmliZSgpO1xyXG4gICAgICAgIH1cclxuXHJcbiAgICAgICAgaWYgKHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyLmRpc2Nvbm5lY3QoKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBvblNjcm9sbCA9ICgpID0+IHtcclxuICAgICAgICBpZiAodGhpcy5pc1Zpc2libGUoKSkge1xyXG4gICAgICAgICAgICB0aGlzLl96b25lLnJ1bigoKSA9PiB0aGlzLmxvYWQoKSk7XHJcbiAgICAgICAgfVxyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgaXNWaXNpYmxlICgpIHtcclxuICAgICAgICBsZXQgc2Nyb2xsUG9zaXRpb24gPSB0aGlzLmdldFNjcm9sbFBvc2l0aW9uKCk7XHJcbiAgICAgICAgbGV0IGVsZW1lbnRPZmZzZXQgPSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQub2Zmc2V0VG9wO1xyXG4gICAgICAgIHJldHVybiBlbGVtZW50T2Zmc2V0IDw9IHNjcm9sbFBvc2l0aW9uO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgZ2V0U2Nyb2xsUG9zaXRpb24gKCkge1xyXG4gICAgICAgIC8vIEdldHRpbmcgc2NyZWVuIHNpemUgYW5kIHNjcm9sbCBwb3NpdGlvbiBmb3IgSUVcclxuICAgICAgICByZXR1cm4gKHdpbmRvdy5zY3JvbGxZIHx8IHdpbmRvdy5wYWdlWU9mZnNldClcclxuICAgICAgICAgICAgKyAoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LmNsaWVudEhlaWdodCB8fCBkb2N1bWVudC5ib2R5LmNsaWVudEhlaWdodCk7XHJcbiAgICB9XHJcbn1cclxuIl19 | ||
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGVmZXItbG9hZC5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9AdHJhZGVtZS9uZy1kZWZlci1sb2FkLyIsInNvdXJjZXMiOlsiZGVmZXItbG9hZC5kaXJlY3RpdmUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQUFBLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxhQUFhLEVBQUUsU0FBUyxFQUFFLFVBQVUsRUFBRSxZQUFZLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsU0FBUyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ2xKLE9BQU8sRUFBRSxTQUFTLEVBQWdCLE1BQU0sTUFBTSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQztBQUs5QztJQVVJLDRCQUNZLFFBQW9CLEVBQ3BCLEtBQWEsRUFDUSxVQUFrQjtRQUhuRCxpQkFJSztRQUhPLGFBQVEsR0FBUixRQUFRLENBQVk7UUFDcEIsVUFBSyxHQUFMLEtBQUssQ0FBUTtRQUNRLGVBQVUsR0FBVixVQUFVLENBQVE7UUFYbkMsY0FBUyxHQUFZLElBQUksQ0FBQztRQUMxQixvQkFBZSxHQUFZLElBQUksQ0FBQztRQUNoQyw2QkFBd0IsR0FBWSxJQUFJLENBQUM7UUFDeEMsY0FBUyxHQUFzQixJQUFJLFlBQVksRUFBRSxDQUFDO1FBdUQzRCx5QkFBb0IsR0FBRyxVQUFDLE9BQXlDO1lBQ3JFLE9BQU8sQ0FBQyxPQUFPLENBQUMsVUFBQyxLQUFnQztnQkFDN0MsSUFBSSxLQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEVBQUU7b0JBQ2pDLEtBQUksQ0FBQyxJQUFJLEVBQUUsQ0FBQztvQkFDWixJQUFJLEtBQUksQ0FBQyxxQkFBcUIsSUFBSSxLQUFJLENBQUMsUUFBUSxDQUFDLGFBQWEsRUFBRTt3QkFD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QUMzQyxDQUFDO0lBRU8sOENBQWlCLEdBQXpCO1FBQ0ksaURBQWlEO1FBQ2pELE9BQU8sQ0FBQyxNQUFNLENBQUMsT0FBTyxJQUFJLE1BQU0sQ0FBQyxXQUFXLENBQUM7Y0FDdkMsQ0FBQyxRQUFRLENBQUMsZUFBZSxDQUFDLFlBQVksSUFBSSxRQUFRLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDO0lBQ2hGLENBQUM7O2dCQWxIcUIsVUFBVTtnQkFDYixNQUFNO2dCQUNvQixNQUFNLHVCQUE5QyxNQUFNLFNBQUMsV0FBVzs7SUFYZDtRQUFSLEtBQUssRUFBRTt5REFBa0M7SUFDakM7UUFBUixLQUFLLEVBQUU7K0RBQXdDO0lBQ3ZDO1FBQVIsS0FBSyxFQUFFO3dFQUFpRDtJQUMvQztRQUFULE1BQU0sRUFBRTt5REFBMEQ7SUFMMUQsa0JBQWtCO1FBSDlCLFNBQVMsQ0FBQztZQUNQLFFBQVEsRUFBRSxhQUFhO1NBQzFCLENBQUM7UUFjTyxtQkFBQSxNQUFNLENBQUMsV0FBVyxDQUFDLENBQUE7T0FiZixrQkFBa0IsQ0E4SDlCO0lBQUQseUJBQUM7Q0FBQSxBQTlIRCxJQThIQztTQTlIWSxrQkFBa0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBpc1BsYXRmb3JtQnJvd3NlciwgaXNQbGF0Zm9ybVNlcnZlciB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XHJcbmltcG9ydCB7IEFmdGVyVmlld0luaXQsIERpcmVjdGl2ZSwgRWxlbWVudFJlZiwgRXZlbnRFbWl0dGVyLCBJbmplY3QsIElucHV0LCBOZ1pvbmUsIE9uRGVzdHJveSwgT25Jbml0LCBPdXRwdXQsIFBMQVRGT1JNX0lEIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcbmltcG9ydCB7IGZyb21FdmVudCwgU3Vic2NyaXB0aW9uIH0gZnJvbSAncnhqcyc7XHJcbmltcG9ydCB7IGRlYm91bmNlVGltZSB9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcclxuXHJcbkBEaXJlY3RpdmUoe1xyXG4gICAgc2VsZWN0b3I6ICdbZGVmZXJMb2FkXSdcclxufSlcclxuZXhwb3J0IGNsYXNzIERlZmVyTG9hZERpcmVjdGl2ZSBpbXBsZW1lbnRzIE9uSW5pdCwgQWZ0ZXJWaWV3SW5pdCwgT25EZXN0cm95IHtcclxuXHJcbiAgICBASW5wdXQoKSBwdWJsaWMgcHJlUmVuZGVyOiBib29sZWFuID0gdHJ1ZTtcclxuICAgIEBJbnB1dCgpIHB1YmxpYyBmYWxsYmFja0VuYWJsZWQ6IGJvb2xlYW4gPSB0cnVlO1xyXG4gICAgQElucHV0KCkgcHVibGljIHJlbW92ZUxpc3RlbmVyc0FmdGVyTG9hZDogYm9vbGVhbiA9IHRydWU7XHJcbiAgICBAT3V0cHV0KCkgcHVibGljIGRlZmVyTG9hZDogRXZlbnRFbWl0dGVyPGFueT4gPSBuZXcgRXZlbnRFbWl0dGVyKCk7XHJcblxyXG4gICAgcHJpdmF0ZSBfaW50ZXJzZWN0aW9uT2JzZXJ2ZXI/OiBJbnRlcnNlY3Rpb25PYnNlcnZlcjtcclxuICAgIHByaXZhdGUgX3Njcm9sbFN1YnNjcmlwdGlvbj86IFN1YnNjcmlwdGlvbjtcclxuXHJcbiAgICBjb25zdHJ1Y3RvciAoXHJcbiAgICAgICAgcHJpdmF0ZSBfZWxlbWVudDogRWxlbWVudFJlZixcclxuICAgICAgICBwcml2YXRlIF96b25lOiBOZ1pvbmUsXHJcbiAgICAgICAgQEluamVjdChQTEFURk9STV9JRCkgcHJpdmF0ZSBwbGF0Zm9ybUlkOiBPYmplY3RcclxuICAgICkgeyB9XHJcblxyXG4gICAgcHVibGljIG5nT25Jbml0ICgpIHtcclxuICAgICAgICBpZiAoKGlzUGxhdGZvcm1TZXJ2ZXIodGhpcy5wbGF0Zm9ybUlkKSAmJiB0aGlzLnByZVJlbmRlciA9PT0gdHJ1ZSkgfHxcclxuICAgICAgICAgICAgKGlzUGxhdGZvcm1Ccm93c2VyKHRoaXMucGxhdGZvcm1JZCkgJiYgdGhpcy5mYWxsYmFja0VuYWJsZWQgPT09IGZhbHNlICYmICF0aGlzLmhhc0NvbXBhdGlibGVCcm93c2VyKCkpKSB7XHJcbiAgICAgICAgICAgIHRoaXMubG9hZCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdBZnRlclZpZXdJbml0ICgpIHtcclxuICAgICAgICBpZiAoaXNQbGF0Zm9ybUJyb3dzZXIodGhpcy5wbGF0Zm9ybUlkKSkge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5oYXNDb21wYXRpYmxlQnJvd3NlcigpKSB7XHJcbiAgICAgICAgICAgICAgICB0aGlzLnJlZ2lzdGVySW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKTtcclxuICAgICAgICAgICAgICAgIGlmICh0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlciAmJiB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpIHtcclxuICAgICAgICAgICAgICAgICAgICB0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlci5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfSBlbHNlIGlmICh0aGlzLmZhbGxiYWNrRW5hYmxlZCA9PT0gdHJ1ZSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5hZGRTY3JvbGxMaXN0ZW5lcnMoKTtcclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgaGFzQ29tcGF0aWJsZUJyb3dzZXIgKCk6IGJvb2xlYW4ge1xyXG4gICAgICAgIGNvbnN0IGhhc0ludGVyc2VjdGlvbk9ic2VydmVyID0gJ0ludGVyc2VjdGlvbk9ic2VydmVyJyBpbiB3aW5kb3c7XHJcbiAgICAgICAgY29uc3QgdXNlckFnZW50ID0gd2luZG93Lm5hdmlnYXRvci51c2VyQWdlbnQ7XHJcbiAgICAgICAgY29uc3QgbWF0Y2hlcyA9IHVzZXJBZ2VudC5tYXRjaCgvRWRnZVxcLyhcXGQqKVxcLi9pKTtcclxuXHJcbiAgICAgICAgY29uc3QgaXNFZGdlID0gISFtYXRjaGVzICYmIG1hdGNoZXMubGVuZ3RoID4gMTtcclxuICAgICAgICBjb25zdCBpc0VkZ2VWZXJzaW9uMTZPckJldHRlciA9IGlzRWRnZSAmJiAoISFtYXRjaGVzICYmIHBhcnNlSW50KG1hdGNoZXNbMV0sIDEwKSA+IDE1KTtcclxuXHJcbiAgICAgICAgcmV0dXJuIGhhc0ludGVyc2VjdGlvbk9ic2VydmVyICYmICghaXNFZGdlIHx8IGlzRWRnZVZlcnNpb24xNk9yQmV0dGVyKTtcclxuICAgIH1cclxuXHJcbiAgICBwdWJsaWMgbmdPbkRlc3Ryb3kgKCkge1xyXG4gICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZWdpc3RlckludGVyc2VjdGlvbk9ic2VydmVyICgpOiB2b2lkIHtcclxuICAgICAgICBpZiAoISF0aGlzLl9pbnRlcnNlY3Rpb25PYnNlcnZlcikge1xyXG4gICAgICAgICAgICByZXR1cm47XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuX2ludGVyc2VjdGlvbk9ic2VydmVyID0gbmV3IEludGVyc2VjdGlvbk9ic2VydmVyKGVudHJpZXMgPT4ge1xyXG4gICAgICAgICAgICB0aGlzLmNoZWNrRm9ySW50ZXJzZWN0aW9uKGVudHJpZXMpO1xyXG4gICAgICAgIH0sIHt9KTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGNoZWNrRm9ySW50ZXJzZWN0aW9uID0gKGVudHJpZXM6IEFycmF5PEludGVyc2VjdGlvbk9ic2VydmVyRW50cnk+KSA9PiB7XHJcbiAgICAgICAgZW50cmllcy5mb3JFYWNoKChlbnRyeTogSW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeSkgPT4ge1xyXG4gICAgICAgICAgICBpZiAodGhpcy5jaGVja0lmSW50ZXJzZWN0aW5nKGVudHJ5KSkge1xyXG4gICAgICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIgJiYgdGhpcy5fZWxlbWVudC5uYXRpdmVFbGVtZW50KSB7XHJcbiAgICAgICAgICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIudW5vYnNlcnZlKDxFbGVtZW50Pih0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQpKTtcclxuICAgICAgICAgICAgICAgIH1cclxuICAgICAgICAgICAgfVxyXG4gICAgICAgIH0pO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgY2hlY2tJZkludGVyc2VjdGluZyAoZW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgICAgICAvLyBGb3IgU2Ftc3VuZyBuYXRpdmUgYnJvd3NlciwgSU8gaGFzIGJlZW4gcGFydGlhbGx5IGltcGxlbWVudGVkIHdoZXJlIGJ5IHRoZVxyXG4gICAgICAgIC8vIGNhbGxiYWNrIGZpcmVzLCBidXQgZW50cnkgb2JqZWN0IGlzIGVtcHR5LiBXZSB3aWxsIGNoZWNrIG1hbnVhbGx5LlxyXG4gICAgICAgIGlmIChlbnRyeSAmJiBlbnRyeS50aW1lKSB7XHJcbiAgICAgICAgICAgIHJldHVybiAoPGFueT5lbnRyeSkuaXNJbnRlcnNlY3RpbmcgJiYgZW50cnkudGFyZ2V0ID09PSB0aGlzLl9lbGVtZW50Lm5hdGl2ZUVsZW1lbnQ7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHJldHVybiB0aGlzLmlzVmlzaWJsZSgpO1xyXG4gICAgfVxyXG5cclxuICAgIHByaXZhdGUgbG9hZCAoKTogdm9pZCB7XHJcbiAgICAgICAgaWYgKHRoaXMucmVtb3ZlTGlzdGVuZXJzQWZ0ZXJMb2FkKSB7XHJcbiAgICAgICAgICAgIHRoaXMucmVtb3ZlTGlzdGVuZXJzKCk7XHJcbiAgICAgICAgfVxyXG4gICAgICAgIHRoaXMuZGVmZXJMb2FkLmVtaXQoKTtcclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIGFkZFNjcm9sbExpc3RlbmVycyAoKSB7XHJcbiAgICAgICAgaWYgKHRoaXMuaXNWaXNpYmxlKCkpIHtcclxuICAgICAgICAgICAgdGhpcy5sb2FkKCk7XHJcbiAgICAgICAgICAgIHJldHVybjtcclxuICAgICAgICB9XHJcbiAgICAgICAgdGhpcy5fem9uZS5ydW5PdXRzaWRlQW5ndWxhcigoKSA9PiB7XHJcbiAgICAgICAgICAgIHRoaXMuX3Njcm9sbFN1YnNjcmlwdGlvbiA9IGZyb21FdmVudCh3aW5kb3csICdzY3JvbGwnKVxyXG4gICAgICAgICAgICAgICAgLnBpcGUoZGVib3VuY2VUaW1lKDUwKSlcclxuICAgICAgICAgICAgICAgIC5zdWJzY3JpYmUodGhpcy5vblNjcm9sbCk7XHJcbiAgICAgICAgfSk7XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSByZW1vdmVMaXN0ZW5lcnMgKCkge1xyXG4gICAgICAgIGlmICh0aGlzLl9zY3JvbGxTdWJzY3JpcHRpb24pIHtcclxuICAgICAgICAgICAgdGhpcy5fc2Nyb2xsU3Vic2NyaXB0aW9uLnVuc3Vic2NyaWJlKCk7XHJcbiAgICAgICAgfVxyXG5cclxuICAgICAgICBpZiAodGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIpIHtcclxuICAgICAgICAgICAgdGhpcy5faW50ZXJzZWN0aW9uT2JzZXJ2ZXIuZGlzY29ubmVjdCgpO1xyXG4gICAgICAgIH1cclxuICAgIH1cclxuXHJcbiAgICBwcml2YXRlIG9uU2Nyb2xsID0gKCkgPT4ge1xyXG4gICAgICAgIGlmICh0aGlzLmlzVmlzaWJsZSgpKSB7XHJcbiAgICAgICAgICAgIHRoaXMuX3pvbmUucnVuKCgpID0+IHRoaXMubG9hZCgpKTtcclxuICAgICAgICB9XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBpc1Zpc2libGUgKCkge1xyXG4gICAgICAgIGxldCBzY3JvbGxQb3NpdGlvbiA9IHRoaXMuZ2V0U2Nyb2xsUG9zaXRpb24oKTtcclxuICAgICAgICBsZXQgZWxlbWVudE9mZnNldCA9IHRoaXMuX2VsZW1lbnQubmF0aXZlRWxlbWVudC5vZmZzZXRUb3A7XHJcbiAgICAgICAgcmV0dXJuIGVsZW1lbnRPZmZzZXQgPD0gc2Nyb2xsUG9zaXRpb247XHJcbiAgICB9XHJcblxyXG4gICAgcHJpdmF0ZSBnZXRTY3JvbGxQb3NpdGlvbiAoKSB7XHJcbiAgICAgICAgLy8gR2V0dGluZyBzY3JlZW4gc2l6ZSBhbmQgc2Nyb2xsIHBvc2l0aW9uIGZvciBJRVxyXG4gICAgICAgIHJldHVybiAod2luZG93LnNjcm9sbFkgfHwgd2luZG93LnBhZ2VZT2Zmc2V0KVxyXG4gICAgICAgICAgICArIChkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQuY2xpZW50SGVpZ2h0IHx8IGRvY3VtZW50LmJvZHkuY2xpZW50SGVpZ2h0KTtcclxuICAgIH1cclxufVxyXG4iXX0= |
@@ -14,2 +14,3 @@ import { __decorate, __param } from 'tslib'; | ||
this.fallbackEnabled = true; | ||
this.removeListenersAfterLoad = true; | ||
this.deferLoad = new EventEmitter(); | ||
@@ -79,3 +80,5 @@ this.checkForIntersection = (entries) => { | ||
load() { | ||
this.removeListeners(); | ||
if (this.removeListenersAfterLoad) { | ||
this.removeListeners(); | ||
} | ||
this.deferLoad.emit(); | ||
@@ -125,2 +128,5 @@ } | ||
__decorate([ | ||
Input() | ||
], DeferLoadDirective.prototype, "removeListenersAfterLoad", void 0); | ||
__decorate([ | ||
Output() | ||
@@ -127,0 +133,0 @@ ], DeferLoadDirective.prototype, "deferLoad", void 0); |
@@ -15,2 +15,3 @@ import { __decorate, __param } from 'tslib'; | ||
this.fallbackEnabled = true; | ||
this.removeListenersAfterLoad = true; | ||
this.deferLoad = new EventEmitter(); | ||
@@ -81,3 +82,5 @@ this.checkForIntersection = function (entries) { | ||
DeferLoadDirective.prototype.load = function () { | ||
this.removeListeners(); | ||
if (this.removeListenersAfterLoad) { | ||
this.removeListeners(); | ||
} | ||
this.deferLoad.emit(); | ||
@@ -127,2 +130,5 @@ }; | ||
__decorate([ | ||
Input() | ||
], DeferLoadDirective.prototype, "removeListenersAfterLoad", void 0); | ||
__decorate([ | ||
Output() | ||
@@ -129,0 +135,0 @@ ], DeferLoadDirective.prototype, "deferLoad", void 0); |
{ | ||
"$schema": "./node_modules/ng-packagr/package.schema.json", | ||
"name": "@trademe/ng-defer-load", | ||
"version": "8.1.0", | ||
"version": "8.2.0", | ||
"description": "Angular directive to load elements lazily", | ||
@@ -6,0 +6,0 @@ "main": "bundles/trademe-ng-defer-load.umd.js", |
@@ -85,1 +85,3 @@ # ng-defer-load | ||
v8.1.0 - Supports more package formats (using ng-packagr) | ||
v8.2.0 - Added option to remove listeners after load |
@@ -1,1 +0,1 @@ | ||
{"__symbolic":"module","version":4,"metadata":{"DeferLoadModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":3,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":4,"character":14}],"declarations":[{"__symbolic":"reference","name":"DeferLoadDirective"}],"exports":[{"__symbolic":"reference","name":"DeferLoadDirective"}]}]}],"members":{}},"DeferLoadDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[deferLoad]"}]}],"members":{"preRender":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}}]}],"fallbackEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}],"deferLoad":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":12,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":20,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":20,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":18,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":19,"character":23},{"__symbolic":"reference","name":"Object"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"hasCompatibleBrowser":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"registerIntersectionObserver":[{"__symbolic":"method"}],"checkIfIntersecting":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"addScrollListeners":[{"__symbolic":"method"}],"removeListeners":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}],"getScrollPosition":[{"__symbolic":"method"}]}}},"origins":{"DeferLoadModule":"./defer-load.module","DeferLoadDirective":"./defer-load.directive"},"importAs":"@trademe/ng-defer-load"} | ||
{"__symbolic":"module","version":4,"metadata":{"DeferLoadModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":3,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":4,"character":14}],"declarations":[{"__symbolic":"reference","name":"DeferLoadDirective"}],"exports":[{"__symbolic":"reference","name":"DeferLoadDirective"}]}]}],"members":{}},"DeferLoadDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":5,"character":1},"arguments":[{"selector":"[deferLoad]"}]}],"members":{"preRender":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":10,"character":5}}]}],"fallbackEnabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":11,"character":5}}]}],"removeListenersAfterLoad":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":12,"character":5}}]}],"deferLoad":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":13,"character":5}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":21,"character":9},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"PLATFORM_ID","line":21,"character":16}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":19,"character":26},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":20,"character":23},{"__symbolic":"reference","name":"Object"}]}],"ngOnInit":[{"__symbolic":"method"}],"ngAfterViewInit":[{"__symbolic":"method"}],"hasCompatibleBrowser":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"registerIntersectionObserver":[{"__symbolic":"method"}],"checkIfIntersecting":[{"__symbolic":"method"}],"load":[{"__symbolic":"method"}],"addScrollListeners":[{"__symbolic":"method"}],"removeListeners":[{"__symbolic":"method"}],"isVisible":[{"__symbolic":"method"}],"getScrollPosition":[{"__symbolic":"method"}]}}},"origins":{"DeferLoadModule":"./defer-load.module","DeferLoadDirective":"./defer-load.directive"},"importAs":"@trademe/ng-defer-load"} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
155086
1014
86