ngx-lazy-scroll
Version:
A simple lazy loading directive for large form elements. This will increase DOM rendering speed.
83 lines (75 loc) • 3.26 kB
JavaScript
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/core')) :
typeof define === 'function' && define.amd ? define('ngx-lazy-scroll', ['exports', '@angular/core'], factory) :
(factory((global['ngx-lazy-scroll'] = {}),global.ng.core));
}(this, (function (exports,core) { 'use strict';
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var NgxLazyScrollDirective = /** @class */ (function () {
function NgxLazyScrollDirective() {
this.limit = 1;
this.heightAdjust = '0';
this.stepEvent = new core.EventEmitter();
}
/**
* @param {?} event
* @return {?}
*/
NgxLazyScrollDirective.prototype.scrollHandler = /**
* @param {?} event
* @return {?}
*/
function (event) {
/** @type {?} */
var tracker = event.target;
/** @type {?} */
var limit = tracker.scrollHeight + Number(this.heightAdjust);
if (Number(tracker.offsetHeight) + Number(tracker.scrollTop) > limit) {
this.limit++;
this.stepEvent.emit(this.limit);
}
};
NgxLazyScrollDirective.decorators = [
{ type: core.Directive, args: [{
selector: '[lazyScroll]'
},] }
];
NgxLazyScrollDirective.propDecorators = {
limit: [{ type: core.Input }],
heightAdjust: [{ type: core.Input }],
stepEvent: [{ type: core.Output }],
scrollHandler: [{ type: core.HostListener, args: ['scroll', ['$event'],] }]
};
return NgxLazyScrollDirective;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
var NgxLazyScrollModule = /** @class */ (function () {
function NgxLazyScrollModule() {
}
NgxLazyScrollModule.decorators = [
{ type: core.NgModule, args: [{
declarations: [NgxLazyScrollDirective],
imports: [],
exports: [NgxLazyScrollDirective]
},] }
];
return NgxLazyScrollModule;
}());
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,constantProperty,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
exports.NgxLazyScrollDirective = NgxLazyScrollDirective;
exports.NgxLazyScrollModule = NgxLazyScrollModule;
Object.defineProperty(exports, '__esModule', { value: true });
})));
//# sourceMappingURL=ngx-lazy-scroll.umd.js.map