Commit 78ff4f05 by Emile TAVERNE

Ajout decorateur Component personalisé

parent 7147c4bc
(function (global, factory) { (function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('@angular/core'), require('rxjs'), require('rxjs/operators')) : typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('@angular/common'), require('rxjs'), require('rxjs/operators'), require('@angular/core')) :
typeof define === 'function' && define.amd ? define('aitp-utils', ['exports', '@angular/common', '@angular/core', 'rxjs', 'rxjs/operators'], factory) : typeof define === 'function' && define.amd ? define('aitp-utils', ['exports', '@angular/common', 'rxjs', 'rxjs/operators', '@angular/core'], factory) :
(factory((global['aitp-utils'] = {}), global.ng.common, global.ng.core, global.rxjs, global.rxjs.operators)); (factory((global['aitp-utils'] = {}), global.ng.common, global.rxjs, global.rxjs.operators, global.ng.core));
}(this, (function (exports, common, core, rxjs, operators) { }(this, (function (exports, common, rxjs, operators, core) {
'use strict'; 'use strict';
/** /**
...@@ -309,6 +309,43 @@ ...@@ -309,6 +309,43 @@
* @fileoverview added by tsickle * @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/ */
/**
* @param {?=} args
* @return {?}
*/
function AiutComponent(args) {
if (args === void 0) {
args = {};
}
/** @type {?} */
var ngCompDecorator = core.Component(args);
return (/**
* @param {?} compType
* @return {?}
*/function (compType) {
ngCompDecorator(compType);
if (core.isDevMode()) {
/** @type {?} */
var orignalChange_1 = compType.ngOnChange;
compType.ngOnChange = (/**
* @return {?}
*/function () {
console.info(compType.constructor.name + " changed");
orignalChange_1.call(compType);
});
}
});
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** /**
* @fileoverview added by tsickle * @fileoverview added by tsickle
...@@ -317,6 +354,7 @@ ...@@ -317,6 +354,7 @@
exports.AitpUtilsModule = AitpUtilsModule; exports.AitpUtilsModule = AitpUtilsModule;
exports.InViewportComponent = InViewportComponent; exports.InViewportComponent = InViewportComponent;
exports.AiutComponent = AiutComponent;
exports.InViewportDirective = InViewportDirective; exports.InViewportDirective = InViewportDirective;
exports.addDestroyObservableToComponent = addDestroyObservableToComponent; exports.addDestroyObservableToComponent = addDestroyObservableToComponent;
exports.destroy$ = destroy$; exports.destroy$ = destroy$;
......
!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("aitp-utils",["exports","@angular/common","@angular/core","rxjs","rxjs/operators"],t):t(e["aitp-utils"]={},e.ng.common,e.ng.core,e.rxjs,e.rxjs.operators)}(this,function(e,r,n,t,o){"use strict";var i=function(){function e(e){this.changeDetectorRef=e}return e.prototype.onViewportChange=function(e){e.isIntersecting?this.changeDetectorRef.reattach():this.changeDetectorRef.detach()},e.decorators=[{type:n.Component,args:[{selector:"aiut-in-viewport",template:'<div (inViewport)="onViewportChange($event)" aiutInViewport>\r\n <ng-content></ng-content>\r\n</div>\r\n'}]}],e.ctorParameters=function(){return[{type:n.ChangeDetectorRef}]},e}(),s=function(){function e(){this.options={rootMargin:"0px 0px 0px 0px",threshold:[.5]},this.callback$=new t.Subject,this.observer=new IntersectionObserver(this.handler.bind(this),this.options)}return e.prototype.observe=function(t){var e=this;return this.observer.observe(t),this.callback$.asObservable().pipe(o.filter(function(e){return e.target===t}),o.finalize(function(){return e.observer.unobserve(t)}))},e.prototype.handler=function(e){var t=this;e.forEach(function(e){return t.callback$.next(e)})},e.decorators=[{type:n.Injectable}],e.ctorParameters=function(){return[]},e}(),c=Symbol("destroy$"),a=function(e){return e[c]===undefined&&p(e),o.takeUntil(e[c])};function p(r){r[c]=new t.Observable(function(e){var t=r.ngOnDestroy;if(null==t)throw new Error("untilDestroy operator needs the component to have an ngOnDestroy method");return r.ngOnDestroy=function(){e.next(),e.complete(),t.call(r)},function(e){return r[c]=undefined}})}var u=function(){function e(e,t,r){this.elementRef=e,this.viewportService=t,this.platformId=r,this.preRender=!0,this.oneTime=!1,this.inViewport=new n.EventEmitter}return e.prototype.ngOnInit=function(){var t=this;r.isPlatformBrowser(this.platformId)?this.oneTime?this.viewportService.observe(this.elementRef.nativeElement).pipe(a(this),o.filter(function(e){return.5<=e.intersectionRatio}),o.take(1)).subscribe(function(e){t.inViewport.emit(e)}):this.viewportService.observe(this.elementRef.nativeElement).pipe(a(this)).subscribe(function(e){t.inViewport.emit(e)}):this.preRender&&this.inViewport.emit({isIntersecting:!0,intersectionRatio:1})},e.prototype.ngOnDestroy=function(){},e.decorators=[{type:n.Directive,args:[{selector:"[aiutInViewport]"}]}],e.ctorParameters=function(){return[{type:n.ElementRef},{type:s},{type:Object,decorators:[{type:n.Inject,args:[n.PLATFORM_ID]}]}]},e.propDecorators={preRender:[{type:n.Input}],oneTime:[{type:n.Input}],inViewport:[{type:n.Output}]},e}(),f=function(){function e(){}return e.decorators=[{type:n.NgModule,args:[{imports:[r.CommonModule],declarations:[u,i],providers:[s],exports:[u,i]}]}],e}();e.AitpUtilsModule=f,e.InViewportComponent=i,e.InViewportDirective=u,e.addDestroyObservableToComponent=p,e.destroy$=c,e.untilDestroy=a,e.ViewportService=s,e.ɵb=i,e.ɵa=u,e.ɵc=s,Object.defineProperty(e,"__esModule",{value:!0})}); !function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/common"),require("rxjs"),require("rxjs/operators"),require("@angular/core")):"function"==typeof define&&define.amd?define("aitp-utils",["exports","@angular/common","rxjs","rxjs/operators","@angular/core"],t):t(e["aitp-utils"]={},e.ng.common,e.rxjs,e.rxjs.operators,e.ng.core)}(this,function(e,n,t,r,o){"use strict";var i=function(){function e(e){this.changeDetectorRef=e}return e.prototype.onViewportChange=function(e){e.isIntersecting?this.changeDetectorRef.reattach():this.changeDetectorRef.detach()},e.decorators=[{type:o.Component,args:[{selector:"aiut-in-viewport",template:'<div (inViewport)="onViewportChange($event)" aiutInViewport>\r\n <ng-content></ng-content>\r\n</div>\r\n'}]}],e.ctorParameters=function(){return[{type:o.ChangeDetectorRef}]},e}(),s=function(){function e(){this.options={rootMargin:"0px 0px 0px 0px",threshold:[.5]},this.callback$=new t.Subject,this.observer=new IntersectionObserver(this.handler.bind(this),this.options)}return e.prototype.observe=function(t){var e=this;return this.observer.observe(t),this.callback$.asObservable().pipe(r.filter(function(e){return e.target===t}),r.finalize(function(){return e.observer.unobserve(t)}))},e.prototype.handler=function(e){var t=this;e.forEach(function(e){return t.callback$.next(e)})},e.decorators=[{type:o.Injectable}],e.ctorParameters=function(){return[]},e}(),c=Symbol("destroy$"),a=function(e){return e[c]===undefined&&p(e),r.takeUntil(e[c])};function p(n){n[c]=new t.Observable(function(e){var t=n.ngOnDestroy;if(null==t)throw new Error("untilDestroy operator needs the component to have an ngOnDestroy method");return n.ngOnDestroy=function(){e.next(),e.complete(),t.call(n)},function(e){return n[c]=undefined}})}var u=function(){function e(e,t,n){this.elementRef=e,this.viewportService=t,this.platformId=n,this.preRender=!0,this.oneTime=!1,this.inViewport=new o.EventEmitter}return e.prototype.ngOnInit=function(){var t=this;n.isPlatformBrowser(this.platformId)?this.oneTime?this.viewportService.observe(this.elementRef.nativeElement).pipe(a(this),r.filter(function(e){return.5<=e.intersectionRatio}),r.take(1)).subscribe(function(e){t.inViewport.emit(e)}):this.viewportService.observe(this.elementRef.nativeElement).pipe(a(this)).subscribe(function(e){t.inViewport.emit(e)}):this.preRender&&this.inViewport.emit({isIntersecting:!0,intersectionRatio:1})},e.prototype.ngOnDestroy=function(){},e.decorators=[{type:o.Directive,args:[{selector:"[aiutInViewport]"}]}],e.ctorParameters=function(){return[{type:o.ElementRef},{type:s},{type:Object,decorators:[{type:o.Inject,args:[o.PLATFORM_ID]}]}]},e.propDecorators={preRender:[{type:o.Input}],oneTime:[{type:o.Input}],inViewport:[{type:o.Output}]},e}(),f=function(){function e(){}return e.decorators=[{type:o.NgModule,args:[{imports:[n.CommonModule],declarations:[u,i],providers:[s],exports:[u,i]}]}],e}();e.AitpUtilsModule=f,e.InViewportComponent=i,e.AiutComponent=function l(e){void 0===e&&(e={});var n=o.Component(e);return function(e){if(n(e),o.isDevMode()){var t=e.ngOnChange;e.ngOnChange=function(){console.info(e.constructor.name+" changed"),t.call(e)}}}},e.InViewportDirective=u,e.addDestroyObservableToComponent=p,e.destroy$=c,e.untilDestroy=a,e.ViewportService=s,e.ɵb=i,e.ɵa=u,e.ɵc=s,Object.defineProperty(e,"__esModule",{value:!0})});
//# sourceMappingURL=aitp-utils.umd.min.js.map //# sourceMappingURL=aitp-utils.umd.min.js.map
\ No newline at end of file
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
export { export {
AitpUtilsModule, AitpUtilsModule,
InViewportComponent, InViewportComponent,
AiutComponent,
InViewportDirective, InViewportDirective,
addDestroyObservableToComponent, addDestroyObservableToComponent,
destroy$, destroy$,
...@@ -17,4 +18,4 @@ export { ...@@ -17,4 +18,4 @@ export {
export {InViewportComponent as ɵb} from './lib/components'; export {InViewportComponent as ɵb} from './lib/components';
export {InViewportDirective as ɵa} from './lib/directives'; export {InViewportDirective as ɵa} from './lib/directives';
export {ViewportService as ɵc} from './lib/services'; export {ViewportService as ɵc} from './lib/services';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWl0cC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJhaXRwLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvSkFBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0luVmlld3BvcnRDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCB7SW5WaWV3cG9ydERpcmVjdGl2ZSBhcyDJtWF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0IHtWaWV3cG9ydFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7Il19 //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWl0cC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJhaXRwLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxtS0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0luVmlld3BvcnRDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCB7SW5WaWV3cG9ydERpcmVjdGl2ZSBhcyDJtWF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0IHtWaWV3cG9ydFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7Il19
...@@ -43,4 +43,4 @@ if (false) { ...@@ -43,4 +43,4 @@ if (false) {
*/ */
InViewportComponent.prototype.changeDetectorRef; InViewportComponent.prototype.changeDetectorRef;
} }
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tdmlld3BvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYWl0cC11dGlscy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luLXZpZXdwb3J0L2luLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQU0zRCxNQUFNLE9BQU8sbUJBQW1COzs7O0lBQzlCLFlBQW9CLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQ3hELENBQUM7Ozs7O0lBR0QsZ0JBQWdCLENBQUMseUJBQW9EO1FBQ25FLElBQUkseUJBQXlCLENBQUMsY0FBYyxFQUFFO1lBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNuQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQzs7O1lBZkYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLHVIQUEyQzthQUM1Qzs7OztZQUxPLGlCQUFpQjs7Ozs7OztJQU9YLGdEQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FpdXQtaW4tdmlld3BvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbi12aWV3cG9ydC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEluVmlld3BvcnRDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuXHJcbiAgb25WaWV3cG9ydENoYW5nZShpbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5OiBJbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5KSB7XHJcbiAgICBpZiAoaW50ZXJzZWN0aW9uT2JzZXJ2ZXJFbnRyeS5pc0ludGVyc2VjdGluZykge1xyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLnJlYXR0YWNoKCk7XHJcbiAgICB9IGVsc2Uge1xyXG4gICAgICB0aGlzLmNoYW5nZURldGVjdG9yUmVmLmRldGFjaCgpO1xyXG4gICAgfVxyXG4gIH1cclxufVxyXG4iXX0= //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tdmlld3BvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYWl0cC11dGlscy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luLXZpZXdwb3J0L2luLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQU0zRCxNQUFNLE9BQU8sbUJBQW1COzs7O0lBQzlCLFlBQW9CLGlCQUFvQztRQUFwQyxzQkFBaUIsR0FBakIsaUJBQWlCLENBQW1CO0lBQ3hELENBQUM7Ozs7O0lBRUQsZ0JBQWdCLENBQUMseUJBQW9EO1FBQ25FLElBQUkseUJBQXlCLENBQUMsY0FBYyxFQUFFO1lBQzVDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxRQUFRLEVBQUUsQ0FBQztTQUNuQzthQUFNO1lBQ0wsSUFBSSxDQUFDLGlCQUFpQixDQUFDLE1BQU0sRUFBRSxDQUFDO1NBQ2pDO0lBQ0gsQ0FBQzs7O1lBZEYsU0FBUyxTQUFDO2dCQUNULFFBQVEsRUFBRSxrQkFBa0I7Z0JBQzVCLHVIQUEyQzthQUM1Qzs7OztZQUxPLGlCQUFpQjs7Ozs7OztJQU9YLGdEQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FpdXQtaW4tdmlld3BvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbi12aWV3cG9ydC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEluVmlld3BvcnRDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBvblZpZXdwb3J0Q2hhbmdlKGludGVyc2VjdGlvbk9ic2VydmVyRW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgIGlmIChpbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5LmlzSW50ZXJzZWN0aW5nKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYucmVhdHRhY2goKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0YWNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
...@@ -7,7 +7,8 @@ ...@@ -7,7 +7,8 @@
*/ */
export {AitpUtilsModule} from './lib/aitp-utils.module'; export {AitpUtilsModule} from './lib/aitp-utils.module';
export {InViewportComponent} from './lib/components'; export {InViewportComponent} from './lib/components';
export {AiutComponent} from './lib/decorators';
export {InViewportDirective} from './lib/directives'; export {InViewportDirective} from './lib/directives';
export {addDestroyObservableToComponent, destroy$, untilDestroy} from './lib/operators'; export {addDestroyObservableToComponent, destroy$, untilDestroy} from './lib/operators';
export {ViewportService} from './lib/services'; export {ViewportService} from './lib/services';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxnQ0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyx3RUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxnQ0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWl0cC11dGlsc1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FpdHAtdXRpbHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9vcGVyYXRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19 //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxnQ0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyw4QkFBYyxrQkFBa0IsQ0FBQztBQUNqQyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyx3RUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxnQ0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWl0cC11dGlsc1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FpdHAtdXRpbHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGVjb3JhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL29wZXJhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG4iXX0=
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
export { export {
AitpUtilsModule, AitpUtilsModule,
InViewportComponent, InViewportComponent,
AiutComponent,
InViewportDirective, InViewportDirective,
addDestroyObservableToComponent, addDestroyObservableToComponent,
destroy$, destroy$,
...@@ -17,4 +18,4 @@ export { ...@@ -17,4 +18,4 @@ export {
export {InViewportComponent as ɵb} from './lib/components'; export {InViewportComponent as ɵb} from './lib/components';
export {InViewportDirective as ɵa} from './lib/directives'; export {InViewportDirective as ɵa} from './lib/directives';
export {ViewportService as ɵc} from './lib/services'; export {ViewportService as ɵc} from './lib/services';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWl0cC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJhaXRwLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxvSkFBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0luVmlld3BvcnRDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCB7SW5WaWV3cG9ydERpcmVjdGl2ZSBhcyDJtWF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0IHtWaWV3cG9ydFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7Il19 //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWl0cC11dGlscy5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJhaXRwLXV0aWxzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxtS0FBYyxjQUFjLENBQUM7QUFFN0IsT0FBTyxFQUFDLG1CQUFtQixJQUFJLEVBQUUsRUFBQyxNQUFNLGtCQUFrQixDQUFDO0FBQzNELE9BQU8sRUFBQyxtQkFBbUIsSUFBSSxFQUFFLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQztBQUMzRCxPQUFPLEVBQUMsZUFBZSxJQUFJLEVBQUUsRUFBQyxNQUFNLGdCQUFnQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuXG5leHBvcnQge0luVmlld3BvcnRDb21wb25lbnQgYXMgybVifSBmcm9tICcuL2xpYi9jb21wb25lbnRzJztcbmV4cG9ydCB7SW5WaWV3cG9ydERpcmVjdGl2ZSBhcyDJtWF9IGZyb20gJy4vbGliL2RpcmVjdGl2ZXMnO1xuZXhwb3J0IHtWaWV3cG9ydFNlcnZpY2UgYXMgybVjfSBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7Il19
...@@ -48,4 +48,4 @@ if (false) { ...@@ -48,4 +48,4 @@ if (false) {
*/ */
InViewportComponent.prototype.changeDetectorRef; InViewportComponent.prototype.changeDetectorRef;
} }
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tdmlld3BvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYWl0cC11dGlscy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luLXZpZXdwb3J0L2luLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUzRDtJQUtFLDZCQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUN4RCxDQUFDOzs7OztJQUdELDhDQUFnQjs7OztJQUFoQixVQUFpQix5QkFBb0Q7UUFDbkUsSUFBSSx5QkFBeUIsQ0FBQyxjQUFjLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ25DO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDakM7SUFDSCxDQUFDOztnQkFmRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsdUhBQTJDO2lCQUM1Qzs7OztnQkFMTyxpQkFBaUI7O0lBa0J6QiwwQkFBQztDQUFBLEFBaEJELElBZ0JDO1NBWlksbUJBQW1COzs7Ozs7SUFDbEIsZ0RBQTRDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3RvclJlZiwgQ29tcG9uZW50fSBmcm9tICdAYW5ndWxhci9jb3JlJztcclxuXHJcbkBDb21wb25lbnQoe1xyXG4gIHNlbGVjdG9yOiAnYWl1dC1pbi12aWV3cG9ydCcsXHJcbiAgdGVtcGxhdGVVcmw6ICcuL2luLXZpZXdwb3J0LmNvbXBvbmVudC5odG1sJ1xyXG59KVxyXG5leHBvcnQgY2xhc3MgSW5WaWV3cG9ydENvbXBvbmVudCB7XHJcbiAgY29uc3RydWN0b3IocHJpdmF0ZSBjaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYpIHtcclxuICB9XHJcblxyXG5cclxuICBvblZpZXdwb3J0Q2hhbmdlKGludGVyc2VjdGlvbk9ic2VydmVyRW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgIGlmIChpbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5LmlzSW50ZXJzZWN0aW5nKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYucmVhdHRhY2goKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0YWNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ== //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW4tdmlld3BvcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6Im5nOi8vYWl0cC11dGlscy8iLCJzb3VyY2VzIjpbImxpYi9jb21wb25lbnRzL2luLXZpZXdwb3J0L2luLXZpZXdwb3J0LmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7O0FBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUFFLFNBQVMsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUUzRDtJQUtFLDZCQUFvQixpQkFBb0M7UUFBcEMsc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtJQUN4RCxDQUFDOzs7OztJQUVELDhDQUFnQjs7OztJQUFoQixVQUFpQix5QkFBb0Q7UUFDbkUsSUFBSSx5QkFBeUIsQ0FBQyxjQUFjLEVBQUU7WUFDNUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLFFBQVEsRUFBRSxDQUFDO1NBQ25DO2FBQU07WUFDTCxJQUFJLENBQUMsaUJBQWlCLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDakM7SUFDSCxDQUFDOztnQkFkRixTQUFTLFNBQUM7b0JBQ1QsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsdUhBQTJDO2lCQUM1Qzs7OztnQkFMTyxpQkFBaUI7O0lBaUJ6QiwwQkFBQztDQUFBLEFBZkQsSUFlQztTQVhZLG1CQUFtQjs7Ozs7O0lBQ2xCLGdEQUE0QyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0b3JSZWYsIENvbXBvbmVudH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XHJcblxyXG5AQ29tcG9uZW50KHtcclxuICBzZWxlY3RvcjogJ2FpdXQtaW4tdmlld3BvcnQnLFxyXG4gIHRlbXBsYXRlVXJsOiAnLi9pbi12aWV3cG9ydC5jb21wb25lbnQuaHRtbCdcclxufSlcclxuZXhwb3J0IGNsYXNzIEluVmlld3BvcnRDb21wb25lbnQge1xyXG4gIGNvbnN0cnVjdG9yKHByaXZhdGUgY2hhbmdlRGV0ZWN0b3JSZWY6IENoYW5nZURldGVjdG9yUmVmKSB7XHJcbiAgfVxyXG5cclxuICBvblZpZXdwb3J0Q2hhbmdlKGludGVyc2VjdGlvbk9ic2VydmVyRW50cnk6IEludGVyc2VjdGlvbk9ic2VydmVyRW50cnkpIHtcclxuICAgIGlmIChpbnRlcnNlY3Rpb25PYnNlcnZlckVudHJ5LmlzSW50ZXJzZWN0aW5nKSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYucmVhdHRhY2goKTtcclxuICAgIH0gZWxzZSB7XHJcbiAgICAgIHRoaXMuY2hhbmdlRGV0ZWN0b3JSZWYuZGV0YWNoKCk7XHJcbiAgICB9XHJcbiAgfVxyXG59XHJcbiJdfQ==
...@@ -7,7 +7,8 @@ ...@@ -7,7 +7,8 @@
*/ */
export {AitpUtilsModule} from './lib/aitp-utils.module'; export {AitpUtilsModule} from './lib/aitp-utils.module';
export {InViewportComponent} from './lib/components'; export {InViewportComponent} from './lib/components';
export {AiutComponent} from './lib/decorators';
export {InViewportDirective} from './lib/directives'; export {InViewportDirective} from './lib/directives';
export {addDestroyObservableToComponent, destroy$, untilDestroy} from './lib/operators'; export {addDestroyObservableToComponent, destroy$, untilDestroy} from './lib/operators';
export {ViewportService} from './lib/services'; export {ViewportService} from './lib/services';
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxnQ0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyx3RUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxnQ0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWl0cC11dGlsc1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FpdHAtdXRpbHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGlyZWN0aXZlcyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9vcGVyYXRvcnMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMnO1xuIl19 //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiJuZzovL2FpdHAtdXRpbHMvIiwic291cmNlcyI6WyJwdWJsaWNfYXBpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFJQSxnQ0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyw4QkFBYyxrQkFBa0IsQ0FBQztBQUNqQyxvQ0FBYyxrQkFBa0IsQ0FBQztBQUNqQyx3RUFBYyxpQkFBaUIsQ0FBQztBQUNoQyxnQ0FBYyxnQkFBZ0IsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qXG4gKiBQdWJsaWMgQVBJIFN1cmZhY2Ugb2YgYWl0cC11dGlsc1xuICovXG5cbmV4cG9ydCAqIGZyb20gJy4vbGliL2FpdHAtdXRpbHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZGVjb3JhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL29wZXJhdG9ycyc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9zZXJ2aWNlcyc7XG4iXX0=
import {CommonModule, isPlatformBrowser} from '@angular/common'; import {CommonModule, isPlatformBrowser} from '@angular/common';
import {Observable, Subject} from 'rxjs';
import {filter, finalize, take, takeUntil} from 'rxjs/operators';
import { import {
ChangeDetectorRef, ChangeDetectorRef,
Component, Component,
...@@ -8,12 +10,11 @@ import { ...@@ -8,12 +10,11 @@ import {
Inject, Inject,
Injectable, Injectable,
Input, Input,
isDevMode,
NgModule, NgModule,
Output, Output,
PLATFORM_ID PLATFORM_ID
} from '@angular/core'; } from '@angular/core';
import {Observable, Subject} from 'rxjs';
import {filter, finalize, take, takeUntil} from 'rxjs/operators';
/** /**
* @fileoverview added by tsickle * @fileoverview added by tsickle
...@@ -293,6 +294,42 @@ AitpUtilsModule.decorators = [ ...@@ -293,6 +294,42 @@ AitpUtilsModule.decorators = [
* @fileoverview added by tsickle * @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/ */
/**
* @param {?=} args
* @return {?}
*/
function AiutComponent(args = {}) {
/** @type {?} */
const ngCompDecorator = Component(args);
return (/**
* @param {?} compType
* @return {?}
*/
function (compType) {
ngCompDecorator(compType);
if (isDevMode()) {
/** @type {?} */
const orignalChange = compType.ngOnChange;
compType.ngOnChange = (/**
* @return {?}
*/
() => {
console.info(`${compType.constructor.name} changed`);
orignalChange.call(compType);
});
}
});
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** /**
* @fileoverview added by tsickle * @fileoverview added by tsickle
...@@ -302,6 +339,7 @@ AitpUtilsModule.decorators = [ ...@@ -302,6 +339,7 @@ AitpUtilsModule.decorators = [
export { export {
AitpUtilsModule, AitpUtilsModule,
InViewportComponent, InViewportComponent,
AiutComponent,
InViewportDirective, InViewportDirective,
addDestroyObservableToComponent, addDestroyObservableToComponent,
destroy$, destroy$,
......
import {CommonModule, isPlatformBrowser} from '@angular/common'; import {CommonModule, isPlatformBrowser} from '@angular/common';
import {Observable, Subject} from 'rxjs';
import {filter, finalize, take, takeUntil} from 'rxjs/operators';
import { import {
ChangeDetectorRef, ChangeDetectorRef,
Component, Component,
...@@ -8,12 +10,11 @@ import { ...@@ -8,12 +10,11 @@ import {
Inject, Inject,
Injectable, Injectable,
Input, Input,
isDevMode,
NgModule, NgModule,
Output, Output,
PLATFORM_ID PLATFORM_ID
} from '@angular/core'; } from '@angular/core';
import {Observable, Subject} from 'rxjs';
import {filter, finalize, take, takeUntil} from 'rxjs/operators';
/** /**
* @fileoverview added by tsickle * @fileoverview added by tsickle
...@@ -328,6 +329,45 @@ var AitpUtilsModule = /** @class */ (function () { ...@@ -328,6 +329,45 @@ var AitpUtilsModule = /** @class */ (function () {
* @fileoverview added by tsickle * @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/ */
/**
* @param {?=} args
* @return {?}
*/
function AiutComponent(args) {
if (args === void 0) {
args = {};
}
/** @type {?} */
var ngCompDecorator = Component(args);
return (/**
* @param {?} compType
* @return {?}
*/
function (compType) {
ngCompDecorator(compType);
if (isDevMode()) {
/** @type {?} */
var orignalChange_1 = compType.ngOnChange;
compType.ngOnChange = (/**
* @return {?}
*/
function () {
console.info(compType.constructor.name + " changed");
orignalChange_1.call(compType);
});
}
});
}
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
/** /**
* @fileoverview added by tsickle * @fileoverview added by tsickle
...@@ -337,6 +377,7 @@ var AitpUtilsModule = /** @class */ (function () { ...@@ -337,6 +377,7 @@ var AitpUtilsModule = /** @class */ (function () {
export { export {
AitpUtilsModule, AitpUtilsModule,
InViewportComponent, InViewportComponent,
AiutComponent,
InViewportDirective, InViewportDirective,
addDestroyObservableToComponent, addDestroyObservableToComponent,
destroy$, destroy$,
......
export * from './lib/aitp-utils.module'; export * from './lib/aitp-utils.module';
export * from './lib/components'; export * from './lib/components';
export * from './lib/decorators';
export * from './lib/directives'; export * from './lib/directives';
export * from './lib/operators'; export * from './lib/operators';
export * from './lib/services'; export * from './lib/services';
...@@ -8,7 +8,6 @@ export class InViewportComponent { ...@@ -8,7 +8,6 @@ export class InViewportComponent {
constructor(private changeDetectorRef: ChangeDetectorRef) { constructor(private changeDetectorRef: ChangeDetectorRef) {
} }
onViewportChange(intersectionObserverEntry: IntersectionObserverEntry) { onViewportChange(intersectionObserverEntry: IntersectionObserverEntry) {
if (intersectionObserverEntry.isIntersecting) { if (intersectionObserverEntry.isIntersecting) {
this.changeDetectorRef.reattach(); this.changeDetectorRef.reattach();
......
import {Component, isDevMode} from '@angular/core';
export function AiutComponent(args: any = {}): (cls: any) => any {
const ngCompDecorator = Component(args);
return function (compType: any) {
ngCompDecorator(compType);
if (isDevMode()) {
const orignalChange = compType.ngOnChange;
compType.ngOnChange = () => {
console.info(`${compType.constructor.name} changed`);
orignalChange.call(compType);
};
}
};
}
export * from './component.decorator';
...@@ -4,6 +4,7 @@ ...@@ -4,6 +4,7 @@
export * from './lib/aitp-utils.module'; export * from './lib/aitp-utils.module';
export * from './lib/components'; export * from './lib/components';
export * from './lib/decorators';
export * from './lib/directives'; export * from './lib/directives';
export * from './lib/operators'; export * from './lib/operators';
export * from './lib/services'; export * from './lib/services';
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment