import { NgModule,CUSTOM_ELEMENTS_SCHEMA } from '@angular/core'; import { CommonModule } from '@angular/common'; import { FormsModule } from '@angular/forms'; import { IonicModule } from '@ionic/angular'; import { ViewPublicationsPageRoutingModule } from './view-publications-routing.module'; import { ViewPublicationsPage } from './view-publications.page'; import { Attributes, IntersectionObserverHooks, LazyLoadImageModule, LAZYLOAD_IMAGE_HOOKS } from 'ng-lazyload-image'; import { PublicationCardPageModule } from './publication-card/publication-card.module' import { ShowMorePageModule } from './show-more/show-more.module'; import { VisibilityDirective } from 'src/app/services/directives/visibility.directive'; export class LazyLoadImageHooks extends IntersectionObserverHooks { setup(attributes: Attributes) { attributes.offset = 10; attributes.defaultImagePath = "/assets/icon/icon-no-image.svg"; attributes.errorImagePath = "/assets/icon/icon-no-image.svg"; return super.setup(attributes); } } @NgModule({ imports: [ CommonModule, FormsModule, IonicModule, ViewPublicationsPageRoutingModule, LazyLoadImageModule, // page ShowMorePageModule, PublicationCardPageModule ], exports: [ViewPublicationsPage], declarations: [ViewPublicationsPage, VisibilityDirective], providers: [{provide: LAZYLOAD_IMAGE_HOOKS, useClass: LazyLoadImageHooks}], schemas: [CUSTOM_ELEMENTS_SCHEMA] }) export class ViewPublicationsPageModule {}