ngx-infinite-scroll
Advanced tools
Comparing version 8.0.2 to 9.0.0
@@ -9,3 +9,3 @@ (function (global, factory) { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -62,3 +62,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -140,3 +140,3 @@ /** @type {?} */ | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -172,3 +172,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -193,3 +193,3 @@ /** | ||
: windowElement.nativeElement; | ||
return Object.assign({}, resolver, { container: container }); | ||
return Object.assign(Object.assign({}, resolver), { container: container }); | ||
} | ||
@@ -202,3 +202,6 @@ /** | ||
/** @type {?} */ | ||
var isWindow = ['Window', 'global'].some(function (obj) { return Object.prototype.toString.call(windowElement).includes(obj); }); | ||
var isWindow = ['Window', 'global'].some(( /** | ||
* @param {?} obj | ||
* @return {?} | ||
*/function (obj) { return Object.prototype.toString.call(windowElement).includes(obj); })); | ||
return isWindow; | ||
@@ -328,3 +331,3 @@ } | ||
var offsetTop = axis.offsetTopKey(); | ||
if (isNaN(window[pageYOffset])) { | ||
if (isNaN(window.pageYOffset)) { | ||
return getDocumentElement(isWindow, elem)[scrollTop]; | ||
@@ -341,3 +344,3 @@ } | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -432,3 +435,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -503,3 +506,3 @@ var ScrollState = /** @class */ (function () { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -531,12 +534,26 @@ /** | ||
}; | ||
return attachScrollEvent(options).pipe(rxjs_operators.mergeMap(function () { return rxjs.of(calculatePoints(element, resolver)); }), rxjs_operators.map(function (positionStats) { return toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance); }), rxjs_operators.tap(function (_a) { | ||
return attachScrollEvent(options).pipe(rxjs_operators.mergeMap(( /** | ||
* @return {?} | ||
*/function () { return rxjs.of(calculatePoints(element, resolver)); })), rxjs_operators.map(( /** | ||
* @param {?} positionStats | ||
* @return {?} | ||
*/function (positionStats) { return toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance); })), rxjs_operators.tap(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var stats = _a.stats; | ||
return scrollState.updateScroll(stats.scrolled, stats.totalToScroll); | ||
}), rxjs_operators.filter(function (_a) { | ||
})), rxjs_operators.filter(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var fire = _a.fire, scrollDown = _a.scrollDown, totalToScroll = _a.stats.totalToScroll; | ||
return shouldTriggerEvents(config.alwaysCallback, fire, scrollState.isTriggeredScroll(totalToScroll, scrollDown)); | ||
}), rxjs_operators.tap(function (_a) { | ||
})), rxjs_operators.tap(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var scrollDown = _a.scrollDown, totalToScroll = _a.stats.totalToScroll; | ||
scrollState.updateTriggeredFlag(totalToScroll, scrollDown); | ||
}), rxjs_operators.map(toInfiniteScrollAction)); | ||
})), rxjs_operators.map(toInfiniteScrollAction)); | ||
} | ||
@@ -592,3 +609,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -652,3 +669,5 @@ var InfiniteScrollDirective = /** @class */ (function () { | ||
if (hasWindowDefined()) { | ||
this.zone.runOutsideAngular(function () { | ||
this.zone.runOutsideAngular(( /** | ||
* @return {?} | ||
*/function () { | ||
_this.disposeScroller = createScroller({ | ||
@@ -665,4 +684,9 @@ fromRoot: _this.fromRoot, | ||
upDistance: _this.infiniteScrollUpDistance | ||
}).subscribe(function (payload) { return _this.zone.run(function () { return _this.handleOnScroll(payload); }); }); | ||
}); | ||
}).subscribe(( /** | ||
* @param {?} payload | ||
* @return {?} | ||
*/function (payload) { return _this.zone.run(( /** | ||
* @return {?} | ||
*/function () { return _this.handleOnScroll(payload); })); })); | ||
})); | ||
} | ||
@@ -727,3 +751,3 @@ }; | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -730,0 +754,0 @@ var InfiniteScrollModule = /** @class */ (function () { |
@@ -1,2 +0,2 @@ | ||
!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define(["exports","@angular/core","rxjs","rxjs/operators"],factory):factory((global.ng=global.ng||{},global.ng.ngxInfiniteScroll=global.ng.ngxInfiniteScroll||{}),global.ng.core,global.rxjs,global.rxjs_operators)}(this,function(exports,_angular_core,rxjs,rxjs_operators){"use strict";function resolveContainerElement(selector,scrollWindow,defaultElement,fromRoot){var hasWindow=window&&!!window.document&&window.document.documentElement,container=hasWindow&&scrollWindow?window:defaultElement;if(selector){if(!(container=selector&&hasWindow&&"string"==typeof selector?findElement(selector,defaultElement.nativeElement,fromRoot):selector))throw new Error("ngx-infinite-scroll {resolveContainerElement()}: selector for")}return container}function findElement(selector,customRoot,fromRoot){return(fromRoot?window.document:customRoot).querySelector(selector)}function inputPropChanged(prop){return prop&&!prop.firstChange}function hasWindowDefined(){return"undefined"!=typeof window}function shouldTriggerEvents(alwaysCallback,shouldFireScrollEvent,isTriggeredCurrentTotal){return!(!alwaysCallback||!shouldFireScrollEvent)||!(isTriggeredCurrentTotal||!shouldFireScrollEvent)}function createResolver(_a){var windowElement=_a.windowElement;return createResolverWithContainer({axis:_a.axis,isWindow:isElementWindow(windowElement)},windowElement)}function createResolverWithContainer(resolver,windowElement){var container=resolver.isWindow||windowElement&&!windowElement.nativeElement?windowElement:windowElement.nativeElement;return Object.assign({},resolver,{container:container})}function isElementWindow(windowElement){return["Window","global"].some(function(obj){return Object.prototype.toString.call(windowElement).includes(obj)})}function getDocumentElement(isContainerWindow,windowElement){return isContainerWindow?windowElement.document.documentElement:null}function calculatePoints(element,resolver){var height=extractHeightForElement(resolver);return resolver.isWindow?calculatePointsForWindow(height,element,resolver):calculatePointsForElement(height,element,resolver)}function calculatePointsForWindow(height,element,resolver){var axis=resolver.axis,container=resolver.container,isWindow=resolver.isWindow,_a=extractHeightPropKeys(axis),offsetHeightKey=_a.offsetHeightKey,clientHeightKey=_a.clientHeightKey,scrolled=height+getElementPageYOffset(getDocumentElement(isWindow,container),axis,isWindow),nativeElementHeight=getElementHeight(element.nativeElement,isWindow,offsetHeightKey,clientHeightKey);return{height:height,scrolled:scrolled,totalToScroll:getElementOffsetTop(element.nativeElement,axis,isWindow)+nativeElementHeight,isWindow:isWindow}}function calculatePointsForElement(height,element,resolver){var axis=resolver.axis,container=resolver.container;return{height:height,scrolled:container[axis.scrollTopKey()],totalToScroll:container[axis.scrollHeightKey()],isWindow:!1}}function extractHeightPropKeys(axis){return{offsetHeightKey:axis.offsetHeightKey(),clientHeightKey:axis.clientHeightKey()}}function extractHeightForElement(_a){var container=_a.container,isWindow=_a.isWindow,axis=_a.axis,_b=extractHeightPropKeys(axis);return getElementHeight(container,isWindow,_b.offsetHeightKey,_b.clientHeightKey)}function getElementHeight(elem,isWindow,offsetHeightKey,clientHeightKey){if(isNaN(elem[offsetHeightKey])){var docElem=getDocumentElement(isWindow,elem);return docElem?docElem[clientHeightKey]:0}return elem[offsetHeightKey]}function getElementOffsetTop(elem,axis,isWindow){var topKey=axis.topKey();if(elem.getBoundingClientRect)return elem.getBoundingClientRect()[topKey]+getElementPageYOffset(elem,axis,isWindow)}function getElementPageYOffset(elem,axis,isWindow){var pageYOffset=axis.pageYOffsetKey(),scrollTop=axis.scrollTopKey(),offsetTop=axis.offsetTopKey();return isNaN(window[pageYOffset])?getDocumentElement(isWindow,elem)[scrollTop]:elem.ownerDocument?elem.ownerDocument.defaultView[pageYOffset]:elem[offsetTop]}function shouldFireScrollEvent(container,distance,scrollingDown){var remaining,containerBreakpoint;if(container.totalToScroll<=0)return!1;var scrolledUntilNow=container.isWindow?container.scrolled:container.height+container.scrolled;if(scrollingDown)remaining=(container.totalToScroll-scrolledUntilNow)/container.totalToScroll,containerBreakpoint=distance.down/10;else{var totalHiddenContentHeight=container.scrolled+(container.totalToScroll-scrolledUntilNow);remaining=container.scrolled/totalHiddenContentHeight,containerBreakpoint=distance.up/10}return remaining<=containerBreakpoint}function isScrollingDownwards(lastScrollPosition,container){return lastScrollPosition<container.scrolled}function getScrollStats(lastScrollPosition,container,distance){var scrollDown=isScrollingDownwards(lastScrollPosition,container);return{fire:shouldFireScrollEvent(container,distance,scrollDown),scrollDown:scrollDown}}function createScroller(config){var scrollContainer=config.scrollContainer,scrollWindow=config.scrollWindow,element=config.element,fromRoot=config.fromRoot,resolver=createResolver({axis:new AxisResolver(!config.horizontal),windowElement:resolveContainerElement(scrollContainer,scrollWindow,element,fromRoot)}),scrollState=new ScrollState({totalToScroll:calculatePoints(element,resolver)}),options={container:resolver.container,throttle:config.throttle},distance={up:config.upDistance,down:config.downDistance};return attachScrollEvent(options).pipe(rxjs_operators.mergeMap(function(){return rxjs.of(calculatePoints(element,resolver))}),rxjs_operators.map(function(positionStats){return toInfiniteScrollParams(scrollState.lastScrollPosition,positionStats,distance)}),rxjs_operators.tap(function(_a){var stats=_a.stats;return scrollState.updateScroll(stats.scrolled,stats.totalToScroll)}),rxjs_operators.filter(function(_a){var fire=_a.fire,scrollDown=_a.scrollDown,totalToScroll=_a.stats.totalToScroll;return shouldTriggerEvents(config.alwaysCallback,fire,scrollState.isTriggeredScroll(totalToScroll,scrollDown))}),rxjs_operators.tap(function(_a){var scrollDown=_a.scrollDown,totalToScroll=_a.stats.totalToScroll;scrollState.updateTriggeredFlag(totalToScroll,scrollDown)}),rxjs_operators.map(toInfiniteScrollAction))}function attachScrollEvent(options){var obs=rxjs.fromEvent(options.container,"scroll");return options.throttle&&(obs=obs.pipe(rxjs_operators.sampleTime(options.throttle))),obs}function toInfiniteScrollParams(lastScrollPosition,stats,distance){var _a=getScrollStats(lastScrollPosition,stats,distance);return{scrollDown:_a.scrollDown,fire:_a.fire,stats:stats}}function toInfiniteScrollAction(response){var scrollDown=response.scrollDown,currentScrollPosition=response.stats.scrolled;return{type:scrollDown?InfiniteScrollActions.DOWN:InfiniteScrollActions.UP,payload:{currentScrollPosition:currentScrollPosition}}}var VerticalProps={clientHeight:"clientHeight",offsetHeight:"offsetHeight",scrollHeight:"scrollHeight",pageYOffset:"pageYOffset",offsetTop:"offsetTop",scrollTop:"scrollTop",top:"top"},HorizontalProps={clientHeight:"clientWidth",offsetHeight:"offsetWidth",scrollHeight:"scrollWidth",pageYOffset:"pageXOffset",offsetTop:"offsetLeft",scrollTop:"scrollLeft",top:"left"},AxisResolver=function(){function AxisResolver(vertical){void 0===vertical&&(vertical=!0),this.vertical=vertical,this.propsMap=vertical?VerticalProps:HorizontalProps}return AxisResolver.prototype.clientHeightKey=function(){return this.propsMap.clientHeight},AxisResolver.prototype.offsetHeightKey=function(){return this.propsMap.offsetHeight},AxisResolver.prototype.scrollHeightKey=function(){return this.propsMap.scrollHeight},AxisResolver.prototype.pageYOffsetKey=function(){return this.propsMap.pageYOffset},AxisResolver.prototype.offsetTopKey=function(){return this.propsMap.offsetTop},AxisResolver.prototype.scrollTopKey=function(){return this.propsMap.scrollTop},AxisResolver.prototype.topKey=function(){return this.propsMap.top},AxisResolver}(),ScrollState=function(){function ScrollState(_a){var totalToScroll=_a.totalToScroll;this.lastScrollPosition=0,this.lastTotalToScroll=0,this.totalToScroll=0,this.triggered={down:0,up:0},this.totalToScroll=totalToScroll}return ScrollState.prototype.updateScrollPosition=function(position){return this.lastScrollPosition=position},ScrollState.prototype.updateTotalToScroll=function(totalToScroll){this.lastTotalToScroll!==totalToScroll&&(this.lastTotalToScroll=this.totalToScroll,this.totalToScroll=totalToScroll)},ScrollState.prototype.updateScroll=function(scrolledUntilNow,totalToScroll){this.updateScrollPosition(scrolledUntilNow),this.updateTotalToScroll(totalToScroll)},ScrollState.prototype.updateTriggeredFlag=function(scroll,isScrollingDown){isScrollingDown?this.triggered.down=scroll:this.triggered.up=scroll},ScrollState.prototype.isTriggeredScroll=function(totalToScroll,isScrollingDown){return isScrollingDown?this.triggered.down===totalToScroll:this.triggered.up===totalToScroll},ScrollState}(),InfiniteScrollActions={DOWN:"[NGX_ISE] DOWN",UP:"[NGX_ISE] UP"},InfiniteScrollDirective=function(){function InfiniteScrollDirective(element,zone){this.element=element,this.zone=zone,this.scrolled=new _angular_core.EventEmitter,this.scrolledUp=new _angular_core.EventEmitter,this.infiniteScrollDistance=2,this.infiniteScrollUpDistance=1.5,this.infiniteScrollThrottle=150,this.infiniteScrollDisabled=!1,this.infiniteScrollContainer=null,this.scrollWindow=!0,this.immediateCheck=!1,this.horizontal=!1,this.alwaysCallback=!1,this.fromRoot=!1}return InfiniteScrollDirective.prototype.ngAfterViewInit=function(){this.infiniteScrollDisabled||this.setup()},InfiniteScrollDirective.prototype.ngOnChanges=function(_a){var infiniteScrollContainer=_a.infiniteScrollContainer,infiniteScrollDisabled=_a.infiniteScrollDisabled,infiniteScrollDistance=_a.infiniteScrollDistance,containerChanged=inputPropChanged(infiniteScrollContainer),disabledChanged=inputPropChanged(infiniteScrollDisabled),distanceChanged=inputPropChanged(infiniteScrollDistance),shouldSetup=!disabledChanged&&!this.infiniteScrollDisabled||disabledChanged&&!infiniteScrollDisabled.currentValue||distanceChanged;(containerChanged||disabledChanged||distanceChanged)&&(this.destroyScroller(),shouldSetup&&this.setup())},InfiniteScrollDirective.prototype.setup=function(){var _this=this;hasWindowDefined()&&this.zone.runOutsideAngular(function(){_this.disposeScroller=createScroller({fromRoot:_this.fromRoot,alwaysCallback:_this.alwaysCallback,disable:_this.infiniteScrollDisabled,downDistance:_this.infiniteScrollDistance,element:_this.element,horizontal:_this.horizontal,scrollContainer:_this.infiniteScrollContainer,scrollWindow:_this.scrollWindow,throttle:_this.infiniteScrollThrottle,upDistance:_this.infiniteScrollUpDistance}).subscribe(function(payload){return _this.zone.run(function(){return _this.handleOnScroll(payload)})})})},InfiniteScrollDirective.prototype.handleOnScroll=function(_a){var type=_a.type,payload=_a.payload;switch(type){case InfiniteScrollActions.DOWN:return this.scrolled.emit(payload);case InfiniteScrollActions.UP:return this.scrolledUp.emit(payload);default:return}},InfiniteScrollDirective.prototype.ngOnDestroy=function(){this.destroyScroller()},InfiniteScrollDirective.prototype.destroyScroller=function(){this.disposeScroller&&this.disposeScroller.unsubscribe()},InfiniteScrollDirective}();InfiniteScrollDirective.decorators=[{type:_angular_core.Directive,args:[{selector:"[infiniteScroll], [infinite-scroll], [data-infinite-scroll]"}]}],InfiniteScrollDirective.ctorParameters=function(){return[{type:_angular_core.ElementRef},{type:_angular_core.NgZone}]},InfiniteScrollDirective.propDecorators={scrolled:[{type:_angular_core.Output}],scrolledUp:[{type:_angular_core.Output}],infiniteScrollDistance:[{type:_angular_core.Input}],infiniteScrollUpDistance:[{type:_angular_core.Input}],infiniteScrollThrottle:[{type:_angular_core.Input}],infiniteScrollDisabled:[{type:_angular_core.Input}],infiniteScrollContainer:[{type:_angular_core.Input}],scrollWindow:[{type:_angular_core.Input}],immediateCheck:[{type:_angular_core.Input}],horizontal:[{type:_angular_core.Input}],alwaysCallback:[{type:_angular_core.Input}],fromRoot:[{type:_angular_core.Input}]};var InfiniteScrollModule=function(){function InfiniteScrollModule(){}return InfiniteScrollModule}();InfiniteScrollModule.decorators=[{type:_angular_core.NgModule,args:[{declarations:[InfiniteScrollDirective],exports:[InfiniteScrollDirective],imports:[],providers:[]}]}],exports.InfiniteScrollDirective=InfiniteScrollDirective,exports.InfiniteScrollModule=InfiniteScrollModule,Object.defineProperty(exports,"__esModule",{value:!0})}); | ||
!function(global,factory){"object"==typeof exports&&"undefined"!=typeof module?factory(exports,require("@angular/core"),require("rxjs"),require("rxjs/operators")):"function"==typeof define&&define.amd?define(["exports","@angular/core","rxjs","rxjs/operators"],factory):factory((global.ng=global.ng||{},global.ng.ngxInfiniteScroll=global.ng.ngxInfiniteScroll||{}),global.ng.core,global.rxjs,global.rxjs_operators)}(this,function(exports,_angular_core,rxjs,rxjs_operators){"use strict";function resolveContainerElement(selector,scrollWindow,defaultElement,fromRoot){var hasWindow=window&&!!window.document&&window.document.documentElement,container=hasWindow&&scrollWindow?window:defaultElement;if(selector){if(!(container=selector&&hasWindow&&"string"==typeof selector?findElement(selector,defaultElement.nativeElement,fromRoot):selector))throw new Error("ngx-infinite-scroll {resolveContainerElement()}: selector for")}return container}function findElement(selector,customRoot,fromRoot){return(fromRoot?window.document:customRoot).querySelector(selector)}function inputPropChanged(prop){return prop&&!prop.firstChange}function hasWindowDefined(){return"undefined"!=typeof window}function shouldTriggerEvents(alwaysCallback,shouldFireScrollEvent,isTriggeredCurrentTotal){return!(!alwaysCallback||!shouldFireScrollEvent)||!(isTriggeredCurrentTotal||!shouldFireScrollEvent)}function createResolver(_a){var windowElement=_a.windowElement;return createResolverWithContainer({axis:_a.axis,isWindow:isElementWindow(windowElement)},windowElement)}function createResolverWithContainer(resolver,windowElement){var container=resolver.isWindow||windowElement&&!windowElement.nativeElement?windowElement:windowElement.nativeElement;return Object.assign(Object.assign({},resolver),{container:container})}function isElementWindow(windowElement){return["Window","global"].some(function(obj){return Object.prototype.toString.call(windowElement).includes(obj)})}function getDocumentElement(isContainerWindow,windowElement){return isContainerWindow?windowElement.document.documentElement:null}function calculatePoints(element,resolver){var height=extractHeightForElement(resolver);return resolver.isWindow?calculatePointsForWindow(height,element,resolver):calculatePointsForElement(height,element,resolver)}function calculatePointsForWindow(height,element,resolver){var axis=resolver.axis,container=resolver.container,isWindow=resolver.isWindow,_a=extractHeightPropKeys(axis),offsetHeightKey=_a.offsetHeightKey,clientHeightKey=_a.clientHeightKey,scrolled=height+getElementPageYOffset(getDocumentElement(isWindow,container),axis,isWindow),nativeElementHeight=getElementHeight(element.nativeElement,isWindow,offsetHeightKey,clientHeightKey);return{height:height,scrolled:scrolled,totalToScroll:getElementOffsetTop(element.nativeElement,axis,isWindow)+nativeElementHeight,isWindow:isWindow}}function calculatePointsForElement(height,element,resolver){var axis=resolver.axis,container=resolver.container;return{height:height,scrolled:container[axis.scrollTopKey()],totalToScroll:container[axis.scrollHeightKey()],isWindow:!1}}function extractHeightPropKeys(axis){return{offsetHeightKey:axis.offsetHeightKey(),clientHeightKey:axis.clientHeightKey()}}function extractHeightForElement(_a){var container=_a.container,isWindow=_a.isWindow,axis=_a.axis,_b=extractHeightPropKeys(axis);return getElementHeight(container,isWindow,_b.offsetHeightKey,_b.clientHeightKey)}function getElementHeight(elem,isWindow,offsetHeightKey,clientHeightKey){if(isNaN(elem[offsetHeightKey])){var docElem=getDocumentElement(isWindow,elem);return docElem?docElem[clientHeightKey]:0}return elem[offsetHeightKey]}function getElementOffsetTop(elem,axis,isWindow){var topKey=axis.topKey();if(elem.getBoundingClientRect)return elem.getBoundingClientRect()[topKey]+getElementPageYOffset(elem,axis,isWindow)}function getElementPageYOffset(elem,axis,isWindow){var pageYOffset=axis.pageYOffsetKey(),scrollTop=axis.scrollTopKey(),offsetTop=axis.offsetTopKey();return isNaN(window.pageYOffset)?getDocumentElement(isWindow,elem)[scrollTop]:elem.ownerDocument?elem.ownerDocument.defaultView[pageYOffset]:elem[offsetTop]}function shouldFireScrollEvent(container,distance,scrollingDown){var remaining,containerBreakpoint;if(container.totalToScroll<=0)return!1;var scrolledUntilNow=container.isWindow?container.scrolled:container.height+container.scrolled;if(scrollingDown)remaining=(container.totalToScroll-scrolledUntilNow)/container.totalToScroll,containerBreakpoint=distance.down/10;else{var totalHiddenContentHeight=container.scrolled+(container.totalToScroll-scrolledUntilNow);remaining=container.scrolled/totalHiddenContentHeight,containerBreakpoint=distance.up/10}return remaining<=containerBreakpoint}function isScrollingDownwards(lastScrollPosition,container){return lastScrollPosition<container.scrolled}function getScrollStats(lastScrollPosition,container,distance){var scrollDown=isScrollingDownwards(lastScrollPosition,container);return{fire:shouldFireScrollEvent(container,distance,scrollDown),scrollDown:scrollDown}}function createScroller(config){var scrollContainer=config.scrollContainer,scrollWindow=config.scrollWindow,element=config.element,fromRoot=config.fromRoot,resolver=createResolver({axis:new AxisResolver(!config.horizontal),windowElement:resolveContainerElement(scrollContainer,scrollWindow,element,fromRoot)}),scrollState=new ScrollState({totalToScroll:calculatePoints(element,resolver)}),options={container:resolver.container,throttle:config.throttle},distance={up:config.upDistance,down:config.downDistance};return attachScrollEvent(options).pipe(rxjs_operators.mergeMap(function(){return rxjs.of(calculatePoints(element,resolver))}),rxjs_operators.map(function(positionStats){return toInfiniteScrollParams(scrollState.lastScrollPosition,positionStats,distance)}),rxjs_operators.tap(function(_a){var stats=_a.stats;return scrollState.updateScroll(stats.scrolled,stats.totalToScroll)}),rxjs_operators.filter(function(_a){var fire=_a.fire,scrollDown=_a.scrollDown,totalToScroll=_a.stats.totalToScroll;return shouldTriggerEvents(config.alwaysCallback,fire,scrollState.isTriggeredScroll(totalToScroll,scrollDown))}),rxjs_operators.tap(function(_a){var scrollDown=_a.scrollDown,totalToScroll=_a.stats.totalToScroll;scrollState.updateTriggeredFlag(totalToScroll,scrollDown)}),rxjs_operators.map(toInfiniteScrollAction))}function attachScrollEvent(options){var obs=rxjs.fromEvent(options.container,"scroll");return options.throttle&&(obs=obs.pipe(rxjs_operators.sampleTime(options.throttle))),obs}function toInfiniteScrollParams(lastScrollPosition,stats,distance){var _a=getScrollStats(lastScrollPosition,stats,distance);return{scrollDown:_a.scrollDown,fire:_a.fire,stats:stats}}function toInfiniteScrollAction(response){var scrollDown=response.scrollDown,currentScrollPosition=response.stats.scrolled;return{type:scrollDown?InfiniteScrollActions.DOWN:InfiniteScrollActions.UP,payload:{currentScrollPosition:currentScrollPosition}}}var VerticalProps={clientHeight:"clientHeight",offsetHeight:"offsetHeight",scrollHeight:"scrollHeight",pageYOffset:"pageYOffset",offsetTop:"offsetTop",scrollTop:"scrollTop",top:"top"},HorizontalProps={clientHeight:"clientWidth",offsetHeight:"offsetWidth",scrollHeight:"scrollWidth",pageYOffset:"pageXOffset",offsetTop:"offsetLeft",scrollTop:"scrollLeft",top:"left"},AxisResolver=function(){function AxisResolver(vertical){void 0===vertical&&(vertical=!0),this.vertical=vertical,this.propsMap=vertical?VerticalProps:HorizontalProps}return AxisResolver.prototype.clientHeightKey=function(){return this.propsMap.clientHeight},AxisResolver.prototype.offsetHeightKey=function(){return this.propsMap.offsetHeight},AxisResolver.prototype.scrollHeightKey=function(){return this.propsMap.scrollHeight},AxisResolver.prototype.pageYOffsetKey=function(){return this.propsMap.pageYOffset},AxisResolver.prototype.offsetTopKey=function(){return this.propsMap.offsetTop},AxisResolver.prototype.scrollTopKey=function(){return this.propsMap.scrollTop},AxisResolver.prototype.topKey=function(){return this.propsMap.top},AxisResolver}(),ScrollState=function(){function ScrollState(_a){var totalToScroll=_a.totalToScroll;this.lastScrollPosition=0,this.lastTotalToScroll=0,this.totalToScroll=0,this.triggered={down:0,up:0},this.totalToScroll=totalToScroll}return ScrollState.prototype.updateScrollPosition=function(position){return this.lastScrollPosition=position},ScrollState.prototype.updateTotalToScroll=function(totalToScroll){this.lastTotalToScroll!==totalToScroll&&(this.lastTotalToScroll=this.totalToScroll,this.totalToScroll=totalToScroll)},ScrollState.prototype.updateScroll=function(scrolledUntilNow,totalToScroll){this.updateScrollPosition(scrolledUntilNow),this.updateTotalToScroll(totalToScroll)},ScrollState.prototype.updateTriggeredFlag=function(scroll,isScrollingDown){isScrollingDown?this.triggered.down=scroll:this.triggered.up=scroll},ScrollState.prototype.isTriggeredScroll=function(totalToScroll,isScrollingDown){return isScrollingDown?this.triggered.down===totalToScroll:this.triggered.up===totalToScroll},ScrollState}(),InfiniteScrollActions={DOWN:"[NGX_ISE] DOWN",UP:"[NGX_ISE] UP"},InfiniteScrollDirective=function(){function InfiniteScrollDirective(element,zone){this.element=element,this.zone=zone,this.scrolled=new _angular_core.EventEmitter,this.scrolledUp=new _angular_core.EventEmitter,this.infiniteScrollDistance=2,this.infiniteScrollUpDistance=1.5,this.infiniteScrollThrottle=150,this.infiniteScrollDisabled=!1,this.infiniteScrollContainer=null,this.scrollWindow=!0,this.immediateCheck=!1,this.horizontal=!1,this.alwaysCallback=!1,this.fromRoot=!1}return InfiniteScrollDirective.prototype.ngAfterViewInit=function(){this.infiniteScrollDisabled||this.setup()},InfiniteScrollDirective.prototype.ngOnChanges=function(_a){var infiniteScrollContainer=_a.infiniteScrollContainer,infiniteScrollDisabled=_a.infiniteScrollDisabled,infiniteScrollDistance=_a.infiniteScrollDistance,containerChanged=inputPropChanged(infiniteScrollContainer),disabledChanged=inputPropChanged(infiniteScrollDisabled),distanceChanged=inputPropChanged(infiniteScrollDistance),shouldSetup=!disabledChanged&&!this.infiniteScrollDisabled||disabledChanged&&!infiniteScrollDisabled.currentValue||distanceChanged;(containerChanged||disabledChanged||distanceChanged)&&(this.destroyScroller(),shouldSetup&&this.setup())},InfiniteScrollDirective.prototype.setup=function(){var _this=this;hasWindowDefined()&&this.zone.runOutsideAngular(function(){_this.disposeScroller=createScroller({fromRoot:_this.fromRoot,alwaysCallback:_this.alwaysCallback,disable:_this.infiniteScrollDisabled,downDistance:_this.infiniteScrollDistance,element:_this.element,horizontal:_this.horizontal,scrollContainer:_this.infiniteScrollContainer,scrollWindow:_this.scrollWindow,throttle:_this.infiniteScrollThrottle,upDistance:_this.infiniteScrollUpDistance}).subscribe(function(payload){return _this.zone.run(function(){return _this.handleOnScroll(payload)})})})},InfiniteScrollDirective.prototype.handleOnScroll=function(_a){var type=_a.type,payload=_a.payload;switch(type){case InfiniteScrollActions.DOWN:return this.scrolled.emit(payload);case InfiniteScrollActions.UP:return this.scrolledUp.emit(payload);default:return}},InfiniteScrollDirective.prototype.ngOnDestroy=function(){this.destroyScroller()},InfiniteScrollDirective.prototype.destroyScroller=function(){this.disposeScroller&&this.disposeScroller.unsubscribe()},InfiniteScrollDirective}();InfiniteScrollDirective.decorators=[{type:_angular_core.Directive,args:[{selector:"[infiniteScroll], [infinite-scroll], [data-infinite-scroll]"}]}],InfiniteScrollDirective.ctorParameters=function(){return[{type:_angular_core.ElementRef},{type:_angular_core.NgZone}]},InfiniteScrollDirective.propDecorators={scrolled:[{type:_angular_core.Output}],scrolledUp:[{type:_angular_core.Output}],infiniteScrollDistance:[{type:_angular_core.Input}],infiniteScrollUpDistance:[{type:_angular_core.Input}],infiniteScrollThrottle:[{type:_angular_core.Input}],infiniteScrollDisabled:[{type:_angular_core.Input}],infiniteScrollContainer:[{type:_angular_core.Input}],scrollWindow:[{type:_angular_core.Input}],immediateCheck:[{type:_angular_core.Input}],horizontal:[{type:_angular_core.Input}],alwaysCallback:[{type:_angular_core.Input}],fromRoot:[{type:_angular_core.Input}]};var InfiniteScrollModule=function(){function InfiniteScrollModule(){}return InfiniteScrollModule}();InfiniteScrollModule.decorators=[{type:_angular_core.NgModule,args:[{declarations:[InfiniteScrollDirective],exports:[InfiniteScrollDirective],imports:[],providers:[]}]}],exports.InfiniteScrollDirective=InfiniteScrollDirective,exports.InfiniteScrollModule=InfiniteScrollModule,Object.defineProperty(exports,"__esModule",{value:!0})}); | ||
//# sourceMappingURL=ngx-infinite-scroll.umd.min.js.map |
@@ -6,3 +6,3 @@ import { Directive, ElementRef, EventEmitter, Input, NgModule, NgZone, Output } from '@angular/core'; | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -59,3 +59,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -137,3 +137,3 @@ /** @type {?} */ | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -169,3 +169,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -190,3 +190,3 @@ /** | ||
: windowElement.nativeElement; | ||
return Object.assign({}, resolver, { container: container }); | ||
return Object.assign(Object.assign({}, resolver), { container: container }); | ||
} | ||
@@ -199,3 +199,6 @@ /** | ||
/** @type {?} */ | ||
var isWindow = ['Window', 'global'].some(function (obj) { return Object.prototype.toString.call(windowElement).includes(obj); }); | ||
var isWindow = ['Window', 'global'].some(( /** | ||
* @param {?} obj | ||
* @return {?} | ||
*/function (obj) { return Object.prototype.toString.call(windowElement).includes(obj); })); | ||
return isWindow; | ||
@@ -325,3 +328,3 @@ } | ||
var offsetTop = axis.offsetTopKey(); | ||
if (isNaN(window[pageYOffset])) { | ||
if (isNaN(window.pageYOffset)) { | ||
return getDocumentElement(isWindow, elem)[scrollTop]; | ||
@@ -338,3 +341,3 @@ } | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -429,3 +432,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -500,3 +503,3 @@ var ScrollState = /** @class */ (function () { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -528,12 +531,26 @@ /** | ||
}; | ||
return attachScrollEvent(options).pipe(mergeMap(function () { return of(calculatePoints(element, resolver)); }), map(function (positionStats) { return toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance); }), tap(function (_a) { | ||
return attachScrollEvent(options).pipe(mergeMap(( /** | ||
* @return {?} | ||
*/function () { return of(calculatePoints(element, resolver)); })), map(( /** | ||
* @param {?} positionStats | ||
* @return {?} | ||
*/function (positionStats) { return toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance); })), tap(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var stats = _a.stats; | ||
return scrollState.updateScroll(stats.scrolled, stats.totalToScroll); | ||
}), filter(function (_a) { | ||
})), filter(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var fire = _a.fire, scrollDown = _a.scrollDown, totalToScroll = _a.stats.totalToScroll; | ||
return shouldTriggerEvents(config.alwaysCallback, fire, scrollState.isTriggeredScroll(totalToScroll, scrollDown)); | ||
}), tap(function (_a) { | ||
})), tap(( /** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/function (_a) { | ||
var scrollDown = _a.scrollDown, totalToScroll = _a.stats.totalToScroll; | ||
scrollState.updateTriggeredFlag(totalToScroll, scrollDown); | ||
}), map(toInfiniteScrollAction)); | ||
})), map(toInfiniteScrollAction)); | ||
} | ||
@@ -589,3 +606,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -649,3 +666,5 @@ var InfiniteScrollDirective = /** @class */ (function () { | ||
if (hasWindowDefined()) { | ||
this.zone.runOutsideAngular(function () { | ||
this.zone.runOutsideAngular(( /** | ||
* @return {?} | ||
*/function () { | ||
_this.disposeScroller = createScroller({ | ||
@@ -662,4 +681,9 @@ fromRoot: _this.fromRoot, | ||
upDistance: _this.infiniteScrollUpDistance | ||
}).subscribe(function (payload) { return _this.zone.run(function () { return _this.handleOnScroll(payload); }); }); | ||
}); | ||
}).subscribe(( /** | ||
* @param {?} payload | ||
* @return {?} | ||
*/function (payload) { return _this.zone.run(( /** | ||
* @return {?} | ||
*/function () { return _this.handleOnScroll(payload); })); })); | ||
})); | ||
} | ||
@@ -724,3 +748,3 @@ }; | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -742,7 +766,7 @@ var InfiniteScrollModule = /** @class */ (function () { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
/** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -761,3 +785,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -764,0 +788,0 @@ /** |
@@ -7,3 +7,3 @@ import { Directive, ElementRef, EventEmitter, Input, NgModule, NgZone, Output } from '@angular/core'; | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -61,3 +61,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -138,3 +138,3 @@ /** @type {?} */ | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -175,3 +175,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -195,3 +195,3 @@ /** | ||
: windowElement.nativeElement; | ||
return Object.assign({}, resolver, { container }); | ||
return Object.assign(Object.assign({}, resolver), { container }); | ||
} | ||
@@ -204,3 +204,7 @@ /** | ||
/** @type {?} */ | ||
const isWindow = ['Window', 'global'].some((obj) => Object.prototype.toString.call(windowElement).includes(obj)); | ||
const isWindow = ['Window', 'global'].some((/** | ||
* @param {?} obj | ||
* @return {?} | ||
*/ | ||
(obj) => Object.prototype.toString.call(windowElement).includes(obj))); | ||
return isWindow; | ||
@@ -329,3 +333,3 @@ } | ||
const offsetTop = axis.offsetTopKey(); | ||
if (isNaN(window[pageYOffset])) { | ||
if (isNaN(window.pageYOffset)) { | ||
return getDocumentElement(isWindow, elem)[scrollTop]; | ||
@@ -343,3 +347,3 @@ } | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -440,3 +444,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -510,3 +514,3 @@ class ScrollState { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -538,5 +542,24 @@ /** | ||
}; | ||
return attachScrollEvent(options).pipe(mergeMap(() => of(calculatePoints(element, resolver))), map((positionStats) => toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance)), tap(({ stats }) => scrollState.updateScroll(stats.scrolled, stats.totalToScroll)), filter(({ fire, scrollDown, stats: { totalToScroll } }) => shouldTriggerEvents(config.alwaysCallback, fire, scrollState.isTriggeredScroll(totalToScroll, scrollDown))), tap(({ scrollDown, stats: { totalToScroll } }) => { | ||
return attachScrollEvent(options).pipe(mergeMap((/** | ||
* @return {?} | ||
*/ | ||
() => of(calculatePoints(element, resolver)))), map((/** | ||
* @param {?} positionStats | ||
* @return {?} | ||
*/ | ||
(positionStats) => toInfiniteScrollParams(scrollState.lastScrollPosition, positionStats, distance))), tap((/** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/ | ||
({ stats }) => scrollState.updateScroll(stats.scrolled, stats.totalToScroll))), filter((/** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/ | ||
({ fire, scrollDown, stats: { totalToScroll } }) => shouldTriggerEvents(config.alwaysCallback, fire, scrollState.isTriggeredScroll(totalToScroll, scrollDown)))), tap((/** | ||
* @param {?} __0 | ||
* @return {?} | ||
*/ | ||
({ scrollDown, stats: { totalToScroll } }) => { | ||
scrollState.updateTriggeredFlag(totalToScroll, scrollDown); | ||
}), map(toInfiniteScrollAction)); | ||
})), map(toInfiniteScrollAction)); | ||
} | ||
@@ -593,3 +616,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -651,3 +674,6 @@ class InfiniteScrollDirective { | ||
if (hasWindowDefined()) { | ||
this.zone.runOutsideAngular(() => { | ||
this.zone.runOutsideAngular((/** | ||
* @return {?} | ||
*/ | ||
() => { | ||
this.disposeScroller = createScroller({ | ||
@@ -664,4 +690,11 @@ fromRoot: this.fromRoot, | ||
upDistance: this.infiniteScrollUpDistance | ||
}).subscribe((payload) => this.zone.run(() => this.handleOnScroll(payload))); | ||
}); | ||
}).subscribe((/** | ||
* @param {?} payload | ||
* @return {?} | ||
*/ | ||
(payload) => this.zone.run((/** | ||
* @return {?} | ||
*/ | ||
() => this.handleOnScroll(payload))))); | ||
})); | ||
} | ||
@@ -725,3 +758,3 @@ } | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -741,3 +774,3 @@ class InfiniteScrollModule { | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -747,3 +780,3 @@ | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -763,3 +796,3 @@ /** | ||
* @fileoverview added by tsickle | ||
* @suppress {checkTypes,extraRequire,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc | ||
*/ | ||
@@ -766,0 +799,0 @@ /** |
/** | ||
* Generated bundle index. Do not edit. | ||
*/ | ||
export * from './public_api'; | ||
export * from './public-api'; |
{ | ||
"name": "ngx-infinite-scroll", | ||
"version": "8.0.2", | ||
"description": "An infinite scroll directive for Angular compatible with AoT compilation and Tree shaking", | ||
"version": "9.0.0", | ||
"description": "An infinite scroll directive for Angular", | ||
"main": "./bundles/ngx-infinite-scroll.umd.js", | ||
@@ -37,15 +37,12 @@ "module": "./modules/ngx-infinite-scroll.es5.js", | ||
"license": "MIT", | ||
"peerDependencies": { | ||
"@angular/common": ">= 8.0.0", | ||
"@angular/core": ">= 8.0.0" | ||
}, | ||
"peerDependencies": {}, | ||
"devDependencies": { | ||
"@angular/animations": "^8.0.0", | ||
"@angular/common": "^8.0.0", | ||
"@angular/compiler": "^8.0.0", | ||
"@angular/compiler-cli": "^8.0.0", | ||
"@angular/core": "^8.0.0", | ||
"@angular/platform-browser": "^8.0.0", | ||
"@angular/platform-browser-dynamic": "^8.0.0", | ||
"@angular/platform-server": "^8.0.0", | ||
"@angular/animations": "^9.1.2", | ||
"@angular/common": "^9.1.2", | ||
"@angular/compiler": "^9.1.2", | ||
"@angular/compiler-cli": "^9.1.2", | ||
"@angular/core": "^9.1.2", | ||
"@angular/platform-browser": "^9.1.2", | ||
"@angular/platform-browser-dynamic": "^9.1.2", | ||
"@angular/platform-server": "^9.1.2", | ||
"@compodoc/compodoc": "^1.1.2", | ||
@@ -67,3 +64,3 @@ "@types/jasmine": "3.3.9", | ||
"rollup": "0.41.6", | ||
"rxjs": "^6.1.0", | ||
"rxjs": "^6.5.5", | ||
"shelljs": "0.7.7", | ||
@@ -75,7 +72,7 @@ "sorcery": "0.10.0", | ||
"tslint": "5.18.0", | ||
"typescript": "^3.1.1", | ||
"typescript": "3.8.3", | ||
"uglify-js": "^2.8.15", | ||
"webpack": "2.3.1", | ||
"yargs": "7.0.2", | ||
"zone.js": "0.9.1" | ||
"zone.js": "0.10.3" | ||
}, | ||
@@ -82,0 +79,0 @@ "dependencies": { |
@@ -7,11 +7,12 @@ [![Build Status](https://travis-ci.org/orizens/ngx-infinite-scroll.svg?branch=master)](https://travis-ci.org/orizens/ngx-infinite-scroll) [![Backers on Open Collective](https://opencollective.com/ngx-infinite-scroll/backers/badge.svg)](#backers) [![Sponsors on Open Collective](https://opencollective.com/ngx-infinite-scroll/sponsors/badge.svg)](#sponsors) | ||
## [Become a sponsor](https://opencollective.com/ngx-infinite-scroll#sponsor) | ||
# Angular Infinite Scroll | ||
versions now follow Angular's version to easily reflect compatibility. | ||
Meaning, for **Angular 8**, use `ngx-infinite-scroll @ ^8.0.0` | ||
Meaning, for **Angular 9**, use `ngx-infinite-scroll @ ^9.0.0` | ||
## Angular - Older Versions Support | ||
For **Angular 7** - `ngx-infinite-scroll@7.0.0` | ||
For **Angular 6** and **rxjs 6** - `ngx-infinite-scroll@6.0.0` | ||
For **Angular 6 anf Above** - `ngx-infinite-scroll@THE_VERSION.0.0` | ||
For **Angular 4** and **Angular = ^5.5.6** - use version `ngx-infinite-scroll@0.8.4` | ||
@@ -21,11 +22,27 @@ For **Angular 5.x** with **rxjs =<5.5.2** - use version `ngx-infinite-scroll@0.8.3` | ||
## Angular Consulting Services | ||
## Used By | ||
I'm a Senior Javascript Engineer & A Front End Consultant at [Orizens](http://orizens.com). | ||
- [Google](https://google.com) | ||
- [Apple](https://apple.com) | ||
- [Amazon](https://amazon.com) | ||
- [Microsoft](https://microsoft.com) | ||
- [Disney](https://disney.com) | ||
- [Sap](https://sap.com/) | ||
- [Cisco](https://cisco.com/) | ||
- [Yandex](https://yandex.com) | ||
- [Ancestry](https://www.ancestry.com/) | ||
and much more. | ||
> _These analytics are made available via the awesome [Scarf](https://www.npmjs.com/package/@scarf/scarf) package analytics library_ | ||
## Front End Consulting Services | ||
I'm a Senior Front End Engineer & Consultant at [Orizens](https://orizens.com). | ||
My services include: | ||
- Angular Consulting | ||
- Front End Consulting | ||
- Angular/React/Javascript Consulting | ||
- Front End Architecture Consulting | ||
- Project Code Review | ||
- project bootstrapping and development. | ||
- Project Development | ||
@@ -94,3 +111,3 @@ [Contact Here](http://orizens.com/contact) | ||
declarations: [AppComponent], | ||
bootstrap: [AppComponent] | ||
bootstrap: [AppComponent], | ||
}) | ||
@@ -117,3 +134,3 @@ export class AppModule {} | ||
></div> | ||
` | ||
`, | ||
}) | ||
@@ -140,3 +157,3 @@ export class AppComponent { | ||
} | ||
` | ||
`, | ||
], | ||
@@ -152,3 +169,3 @@ template: ` | ||
></div> | ||
` | ||
`, | ||
}) | ||
@@ -181,3 +198,3 @@ export class AppComponent { | ||
></div> | ||
` | ||
`, | ||
}) | ||
@@ -208,3 +225,3 @@ export class AppComponent { | ||
} | ||
` | ||
`, | ||
], | ||
@@ -222,3 +239,3 @@ template: ` | ||
</div> | ||
` | ||
`, | ||
}) | ||
@@ -257,4 +274,2 @@ export class AppComponent { | ||
Support this project by becoming a sponsor. Your logo will show up here with a link to your website. [[Become a sponsor](https://opencollective.com/ngx-infinite-scroll#sponsor)] | ||
<a href="https://opencollective.com/ngx-infinite-scroll/sponsor/0/website" target="_blank"><img src="https://opencollective.com/ngx-infinite-scroll/sponsor/0/avatar.svg"></a> | ||
@@ -261,0 +276,0 @@ <a href="https://opencollective.com/ngx-infinite-scroll/sponsor/1/website" target="_blank"><img src="https://opencollective.com/ngx-infinite-scroll/sponsor/1/avatar.svg"></a> |
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
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
240241
2
2538
275