{"version":3,"sources":["./src/app/public/shared/shared.module.ts","./src/app/public/shared/component/auction-details/auction-details.component.ts","./src/app/public/shared/component/auction-details/auction-details.component.html","./node_modules/ngx-bootstrap/dropdown/fesm2015/ngx-bootstrap-dropdown.js","./src/app/public/shared/component/layout/public-header/public-header.component.ts","./src/app/public/shared/component/layout/public-header/public-header.component.html","./node_modules/datebook/dist/datebook.js","./node_modules/ng-recaptcha/fesm2015/ng-recaptcha.js","./src/app/public/shared/component/lot-card/lot-card.component.ts","./src/app/public/shared/component/lot-card/lot-card.component.html","./node_modules/ngx-bootstrap/collapse/fesm2015/ngx-bootstrap-collapse.js","./src/app/public/shared/component/auction-card/auction-card.component.ts","./src/app/public/shared/component/auction-card/auction-card.component.html","./src/app/public/shared/component/layout/public-footer/public-footer.component.ts","./src/app/public/shared/component/layout/public-footer/public-footer.component.html","./node_modules/ngx-bootstrap/accordion/fesm2015/ngx-bootstrap-accordion.js","./src/app/public/shared/component/lot-connection-mode/lot-connection-mode.component.ts","./src/app/public/shared/component/lot-connection-mode/lot-connection-mode.component.html","./src/app/services/constant-contact.service.ts"],"names":[],"mappings":"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4B,CAAC,+DAAwB;AACrD,cAAc,uDAAS;AACvB;AACA;AACA,iCAAiC,qEAAuB;AACxD;AACA,0CAA0C,mBAAmB;AAC7D,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,KAAK,gBAAgB,UAAU,wBAAwB,GAAG,OAAO,+DAAwB,EAAE,GAAG,OAAO,uDAAgB,EAAE,GAAG,OAAO,wDAAiB,EAAE,GAAG,OAAO,oEAAuB,EAAE,EAAE,EAAE,QAAQ,EAAE;AACrM,WAAW,EAiCV;;AAED;AACA;AACA,cAAc,uFAAuF;AACrG;AACA;AACA;AACA,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,sBAAsB,kDAAkD;AACxE;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,gBAAgB,iEAAK;AACrB;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA,SAAS;AACT;AACA;AACA,mBAAmB,EAAE;AACrB,oBAAoB;AACpB;AACA;AACA;AACA;AACA,kBAAkB,6DAAM;AACxB,mBAAmB,EAAE;AACrB,oBAAoB;AACpB;AACA;AACA;AACA,mBAAmB,EAAE;AACrB,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,2BAA2B,EAAE;AAC7B,4BAA4B;AAC5B;AACA;AACA;AACA;AACA;AACA;AACA;AACA,iBAAiB;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE;AACrB,oBAAoB;AACpB;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA,uBAAuB,EAAE;AACzB;AACA;AACA;AACA;AACA;AACA,2BAA2B,yBAAyB;AACpD;AACA;AACA;AACA,aAAa;AACb;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,GAAG;AAClB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA,aAAa,iEAAK;AAClB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AA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AAI,qDAAO,IAAI,8DAAQ,KAAK,qDAAO,IAAI,4DAAM;AAC7C,IAAI,qDAAO,IAAI,8DAAQ,KAAK,qDAAO,IAAI,4DAAM;AAC7C,IAAI,qDAAO,IAAI,8DAAQ,KAAK,qDAAO,IAAI,4DAAM;AAC7C,IAAI,qDAAO,IAAI,8DAAQ,KAAK,qDAAO,IAAI,4DAAM;AAC7C;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA,iCAAiC,SAAS;AAC1C;AACA,4BAA4B,0DAAY;AACxC,yBAAyB,0DAAY;AACrC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb;AACA;AACA,aAAa;AACb;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,+DAAwB,CAAC,wDAAiB,GAAG,+DAAwB,0BAA0B,+DAAwB,CAAC,oDAAa,GAAG,+DAAwB,yBAAyB;AACjS,0BAA0B,+DAAwB,EAAE,sIAAsI;AAC1L,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,yIAAyI,YAAY,uCAAuC,uGAAuG,EAAE,oBAAoB;AAC3U;AACA,KAAK,OAAO,wDAAU,EAAE;AACxB,KAAK,+BAA+B;AACpC,KAAK,OAAO,oDAAM,EAAE;AACpB,KAAK,gCAAgC,OAAO,sDAAQ,EAAE,GAAG,OAAO,oDAAM,+BAA+B;AACrG;AACA,wDAAU;AACV,IAAI,2DAAK;AACT,IAAI,iEAAW;AACf;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,2DAAK;AACT;AACA,wDAAU;AACV,IAAI,4DAAM;AACV;AACA,wDAAU;AACV,IAAI,4DAAM;AACV;AACA,qBAAqB,wDAAU,GAAG,qDAAO,IAAI,8DAAQ,KAAK,qDAAO,IAAI,4DAAM;AAC3E;;AAEA;AACA;AACA,6BAA6B,8DAAuB,EAAE,8BAA8B;AACpF,6BAA6B,8DAAuB,EAAE,qDAAqD,2CAA2C,EAAE,EAAE;;AAE1J;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,uBAAuB,8DAAuB,EAAE,wBAAwB;AACxE,uBAAuB,8DAAuB,EAAE,+CAA+C,qCAAqC,EAAE;AACtI;AACA;AACA;AACA,YAAY;AACZ;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,yBAAyB,yEAAiB;AAC1C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wCAAwC,4CAAO;AAC/C;AACA;AACA;AACA;AACA;AACA;AACA,6CAA6C,4CAAO;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,OAAO;AACtB,iBAAiB,mBAAmB;AACpC;AACA;AACA;AACA,4BAA4B,4CAAO;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,qDAAqD,gBAAgB;AACrE;AACA,aAAa;AACb;AACA;AACA;AACA;AACA,uDAAuD,SAAS;AAChE;AACA;AACA;AACA;AACA,wDAAwD,gBAAgB;AACxE;AACA,qBAAqB;AACrB,iBAAiB;AACjB;AACA;AACA;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AhC,mDAAK;mBAAC,YAAY;YACG,UAAU;kBAA/B,mDAAK;mBAAC,aAAa;YACX,OAAO;kBAAf,mDAAK;YACqB,WAAW;kBAArC,oDAAM;mBAAC,iBAAiB;YAGf,aAAa;kBAAtB,oDAAM;YAEP,aAAa;kBADZ,uDAAS;mBAAC,eAAe,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE;YAQhC,aAAa;kBAAzB,mDAAK;;;;;;;;;;;;;;AE/GR;AAAA;AAAA;AAAA;AAAA;AAAuE;AAC8C;;AAErH;AACA;AACA,cAAc,uFAAuF;AACrG;AACA,WAAW,EAAE;AAC2B;AACM;AAC9C;AACA,WAAW,EAAE;AACb;AACA,IAAI,iEAAK,EAAE,kCAAkC;AAC7C,IAAI,mEAAO,4BAA4B,iEAAK,EAAE,qCAAqC;AACnF;AACA,WAAW,EAAE;AACb;AACA,IAAI,iEAAK,EAAE,qCAAqC;AAChD,IAAI,mEAAO,4BAA4B,iEAAK,EAAE,kCAAkC;AAChF;;AAEA;AACA;AACA,cAAc,uFAAuF;AACrG;AACA;AACA;AACA,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB,eAAe,EAAE;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA,6BAA6B,0DAAY;AACzC;AACA;AACA;AACA,6BAA6B,0DAAY;AACzC;AACA;AACA;AACA,4BAA4B,0DAAY;AACxC;AACA;AACA;AACA,2BAA2B,0DAAY;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;A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CA;AACA,eAAe,EAAE;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,EAAE;AACrB,oBAAoB;AACpB;AACA;AACA;AACA;AACA;AACA,SAAS;AACT;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA,mBAAmB,EAAE;AACrB;AACA;AACA;AACA;AACA;AACA;AACA,kEAAkE,sCAAsC,+DAAwB,mBAAmB;AACnJ,0BAA0B,+DAAwB,EAAE,8MAA8M;AAClQ,QAAQ,yDAAkB;AAC1B,KAAK,EAAE,WAAW,uDAAuD,uGAAuG;AAChL,QAAQ,6DAAsB;AAC9B,QAAQ,0DAAmB;AAC3B,KAAK,EAAE,oBAAoB;AAC3B;AACA;AACA,KAAK;AACL;AACA;AACA,kBAAkB,OAAO,mDAAK,EAAE;AAChC,mBAAmB,OAAO,mDAAK,EAAE;AACjC;AACA,4BAA4B,CAAC,+DAAwB;AACrD,cAAc,uDAAS;AACvB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,aAAa;AACb,KAAK,gBAAgB,UAAU,wBAAwB,EAAE,EAAE,GAAG;AAC9D,kBAAkB,mDAAK;AACvB,SAAS;AACT,kBAAkB,mDAAK;AACvB,SAAS,GAAG,EAAE,EAAE;AAChB,WAAW,EAgBV;;AAED;AACA;AACA,cAAc,uFAAuF;AACrG;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,gCAAgC,0DAAY;AAC5C;AACA;AACA;AACA;AACA;AACA;AACA,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA,eAAe,EAAE;AACjB,gBAAgB;AAChB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB;AACxB;AACA;AACA;AACA,aAAa;AACb;AACA,uBAAuB,E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","file":"default~auction-auction-module~public-public-module-es2015.js","sourcesContent":["import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { AuctionCardComponent } from './component/auction-card/auction-card.component';\r\nimport { CoreModule } from '../../core/core.module';\r\nimport { RouterModule } from '@angular/router';\r\nimport { PublicFooterComponent } from './component/layout/public-footer/public-footer.component';\r\nimport { PublicHeaderComponent } from './component/layout/public-header/public-header.component';\r\nimport { MatMenuModule } from '@angular/material/menu';\r\nimport { BsDropdownModule } from 'ngx-bootstrap/dropdown';\r\nimport { AuctionDetailsComponent } from './component/auction-details/auction-details.component';\r\nimport { CommonSharedModule } from '../../shared/shared.module';\r\nimport { LotCardComponent } from './component/lot-card/lot-card.component';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { CountdownModule } from 'ngx-countdown';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\nimport { AccordionModule } from 'ngx-bootstrap/accordion';\r\nimport { LotConnectionModeComponent } from './component/lot-connection-mode/lot-connection-mode.component';\r\n\r\n\r\nconst components = [AuctionCardComponent, PublicHeaderComponent, PublicFooterComponent, AuctionDetailsComponent, LotCardComponent, LotConnectionModeComponent];\r\n\r\n@NgModule({\r\n  declarations: components,\r\n  imports: [\r\n    CommonModule,\r\n    CoreModule,\r\n    CommonSharedModule,\r\n    ReactiveFormsModule,\r\n    RouterModule,\r\n    MatMenuModule,\r\n    MatFormFieldModule,\r\n    AccordionModule.forRoot(),\r\n    MatInputModule,\r\n    CountdownModule,\r\n    BsDropdownModule.forRoot(),\r\n  ],\r\n  exports: [\r\n    ...components\r\n  ]\r\n})\r\nexport class PublicSharedModule { }\r\n","import {\r\n  Component,\r\n  OnInit,\r\n  TemplateRef,\r\n  OnDestroy,\r\n  AfterContentInit\r\n} from '@angular/core';\r\nimport {\r\n  SEOService,\r\n  AuctionService,\r\n  LoaderService,\r\n  CmsService,\r\n  AuctionDataReqType,\r\n} from '../../../../services';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport routeTable from '../../../../utility/routeTable';\r\nimport { AuctionTimeService } from '../../../../services/auction-time.service';\r\nimport constants from '../../../../utility/constants';\r\nimport { AuctionCurrentState } from '../../../../models';\r\nimport { CalendarOptions, ICalendar } from 'datebook';\r\nimport {  Subscription } from 'rxjs';\r\nimport { forkJoin } from 'rxjs';\r\n\r\n@Component({\r\n  selector: 'app-auction-details',\r\n  templateUrl: './auction-details.component.html',\r\n  styleUrls: ['./auction-details.component.css'],\r\n})\r\nexport class AuctionDetailsComponent implements OnInit, OnDestroy, AfterContentInit {\r\n  modalRef: BsModalRef;\r\n  pageNumber = 1;\r\n  pageSize = 24;\r\n  isPaginated = true;\r\n  responseData: any;\r\n  showView: boolean = false;\r\n  helpTextData: string;\r\n  steps = SteppedData;\r\n  private subscriptions: Array<Subscription> = [];\r\n  auctionCode: string;\r\n\r\n  currentSlider: any = [];\r\n  currentSliderHeader: string;\r\n  showImage = '';\r\n  selectedImage: any;\r\n  showBlank: boolean;\r\n\r\n  config = {\r\n    class: 'custom-popup lot-images-slider modal-dialog modal-dialog-centered',\r\n  };\r\n\r\n  // step number\r\n  stepActive = 1;\r\n\r\n  auctionDetailsSlider = {\r\n    infinite: true,\r\n    autoplay: true,\r\n    speed: 300,\r\n    slidesToShow: 4,\r\n    slidesToScroll: 4,\r\n    dots: true,\r\n    arrows: false,\r\n    responsive: [\r\n      {\r\n        breakpoint: 991,\r\n        settings: {\r\n          slidesToShow: 2,\r\n          slidesToScroll: 2,\r\n        },\r\n      },\r\n      {\r\n        breakpoint: 575,\r\n        settings: {\r\n          slidesToShow: 1,\r\n          slidesToScroll: 1,\r\n        },\r\n      },\r\n    ],\r\n  };\r\n\r\n  imagesSlider2 = {\r\n    adaptiveHeight: true,\r\n    slidesToShow: 1,\r\n    slidesToScroll: 1,\r\n    arrows: true,\r\n    fade: true,\r\n    asNavFor: '.view-more-slider .thumbs',\r\n  };\r\n\r\n  thumbnailsSlider2 = {\r\n    slidesToShow: 8,\r\n    slidesToScroll: 1,\r\n    arrows: false,\r\n    dots: false,\r\n    centerMode: true,\r\n    focusOnSelect: true,\r\n    asNavFor: '.view-more-slider .image-slides2',\r\n    responsive: [\r\n      {\r\n        breakpoint: 1024,\r\n        settings: {\r\n          slidesToShow: 5,\r\n        },\r\n      },\r\n      {\r\n        breakpoint: 600,\r\n        settings: {\r\n          slidesToShow: 3,\r\n        },\r\n      },\r\n      {\r\n        breakpoint: 480,\r\n        settings: {\r\n          slidesToShow: 2,\r\n        },\r\n      },\r\n    ],\r\n  };\r\n\r\n  lotLogistics = {\r\n    infinite: true,\r\n    autoplay: false,\r\n    slidesToShow: 1,\r\n    slidesToScroll: 1,\r\n    dots: false,\r\n    arrows: true,\r\n    asNavFor: '.lotNav',\r\n  };\r\n\r\n  lotLogisticsNav = {\r\n    slidesToShow: 1,\r\n    slidesToScroll: 1,\r\n    arrows: true,\r\n    dots: false,\r\n    asNavFor: '.lotHeader',\r\n  };\r\n\r\n  forPublicClient: boolean = false;\r\n  auctionId: number;\r\n  tAndC: string;\r\n  routes = routeTable.public;\r\n\r\n  returnUrl: string = '/';\r\n\r\n  isBiddingOpen: boolean;\r\n\r\n  registrationFormats = constants.common.saletypeRegistrationFormat;\r\n  auctionStatuses = constants.common.auctionStatus;\r\n  displaySections = constants.common.displaySection;\r\n  helpTexts = constants.common.helpText;\r\n\r\n  auctionCurrentState: AuctionCurrentState;\r\n  isLots: boolean;\r\n\r\n  relatedAuctions: Array<any>;\r\n  contacts: Array<any>;\r\n  locations: Array<any>;\r\n\r\n  photoGallery: Array<any> = [];\r\n  photoGalleryThumbnail: Array<any> = [];\r\n  showPhotoGalleryThumbnail: Array<any> = [];\r\n  sliderImages: Array<any>;\r\n  sliderImagesThumbnail: Array<any>;\r\n  removalDocuments: Array<any>;\r\n  paymentDocuments: Array<any>;\r\n  partnerLogos: Array<any>;\r\n  customButtons: Array<any>;\r\n\r\n  constructor(\r\n    private auctionService: AuctionService,\r\n    private cmsService: CmsService,\r\n    private route: ActivatedRoute,\r\n    private router: Router,\r\n    private modalService: BsModalService,\r\n    private loader: LoaderService,\r\n    private toastr: ToastrService,\r\n    private auctionTimeService: AuctionTimeService,\r\n    private seoService: SEOService\r\n  ) {}\r\n\r\n  loadPrettyPhoto(): void {\r\n    function waitForElm(selector) {\r\n        return new Promise(resolve => {\r\n            if (document.querySelector(selector)) {\r\n                return resolve(document.querySelector(selector));\r\n            }\r\n            const observer = new MutationObserver(mutations => {\r\n                if (document.querySelector(selector)) {\r\n                    resolve(document.querySelector(selector));\r\n                    observer.disconnect();\r\n                }\r\n            });\r\n            observer.observe(document.body, {\r\n                childList: true,\r\n                subtree: true\r\n            });\r\n        });\r\n    };\r\n\r\n    waitForElm('.prettyPhotoWrapper').then((elm) => {\r\n      //@ts-ignore\r\n      $('a[rel^=\"prettyPhoto\"]').prettyPhoto({\r\n          animationSpeed: 'slow',\r\n          theme: 'dark_rounded'\r\n      });\r\n    })\r\n\r\n    waitForElm('.prettyPhotoSlideWrapper').then((elm) => {\r\n      //@ts-ignore\r\n      $('a[rel^=\"prettyPhoto\"]').prettyPhoto({\r\n          animationSpeed: 'slow',\r\n          theme: 'dark_rounded'\r\n      });\r\n    })\r\n  }\r\n\r\n  ngAfterContentInit(): void {\r\n    this.loadPrettyPhoto();\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.route.fragment.subscribe((fragment: string) => {\r\n      if (fragment == 'terms') {\r\n        this.stepActive = 3;\r\n      }\r\n    });\r\n\r\n    this.route.params.subscribe((params) => {\r\n      this.auctionCode = params['auctionCode'];\r\n      if (this.auctionCode) {\r\n        let getAuctionByCode$ = this.getAuctionByCode();\r\n        let getStepWiseDataLoc$ = this.getStepWiseData(this.steps.auctionLocations);\r\n        let getStepWiseDataCon$ = this.getStepWiseData(this.steps.auctionContacts);\r\n        let getStepWiseDataImg$ = this.getStepWiseData(this.steps.sliderImages);\r\n        let getStepWiseDataLog$ = this.getStepWiseData(this.steps.partnerLogos);\r\n        let getStepWiseDataAuc$ = this.getStepWiseData(this.steps.relatedAuctions);\r\n        let getCustomButtons$ = this.getCustomButtons();\r\n\r\n        forkJoin([\r\n          getAuctionByCode$,\r\n          getStepWiseDataCon$,\r\n          getStepWiseDataImg$,\r\n          getStepWiseDataLog$,\r\n          getStepWiseDataLoc$,\r\n          getStepWiseDataAuc$,\r\n          getCustomButtons$,\r\n        ]).subscribe(() => {\r\n          this.route.queryParams.subscribe((params) => {\r\n            if (params['ics'] == \"true\") {\r\n              setTimeout(() => {\r\n                this.createCalenderEvent();\r\n              }, 500)\r\n            }\r\n          });\r\n        })\r\n      }\r\n    });\r\n\r\n    this.route.queryParams.subscribe((params) => {\r\n      this.returnUrl = params['returnTo'];\r\n    });\r\n\r\n    this.getResolverData();\r\n  }\r\n\r\n  getResolverData() {\r\n    this.route.data.subscribe((res: any) => {\r\n      this.auctionCurrentState = res['auctionState'];\r\n      if (this.auctionCurrentState) {\r\n        this.isLots = this.auctionCurrentState.isInHouseLotConfigured;\r\n        this.checkBiddingOpen(this.auctionCurrentState);\r\n        this.checkAuctionDeactivated(this.auctionCurrentState);\r\n      }\r\n    });\r\n  }\r\n\r\n  checkBiddingOpen(auctionState: AuctionCurrentState) {\r\n    if (\r\n      auctionState.status === this.auctionStatuses.live &&\r\n      !auctionState.saleType.isCatalogReadOnly\r\n    )\r\n      this.isBiddingOpen = this.auctionTimeService.isBiddingOpen(\r\n        this.auctionCurrentState.startDateTimeUtc,\r\n        this.auctionCurrentState.closingEndDateTimeUtc\r\n      );\r\n  }\r\n\r\n  getButtonText(data: any) {\r\n    if (!data.saleType.isCatalogUploadAllowed && this.isWithinTimeRange(data.startDateTime, data.endDateTime)) {\r\n      return \"Bid Now\"\r\n    }\r\n    return \"Lot Catalog\"\r\n  }\r\n\r\n  isWithinTimeRange(startDateTime, endDateTime) {\r\n    const startTime = new Date(startDateTime);\r\n    const endTime = new Date(endDateTime);\r\n    // Add 12 hours to the end time\r\n    const extendedEndTime = new Date(endTime.getTime() + 12 * 60 * 60 * 1000);\r\n    const currentTime = new Date();\r\n    return currentTime > startTime && currentTime < extendedEndTime;\r\n  }\r\n\r\n  private checkAuctionDeactivated(auctionState: AuctionCurrentState) {\r\n    // this block says when an auction is in pending and open to show for client\r\n    if (\r\n      auctionState.isSentForApproval &&\r\n      auctionState.status === this.auctionStatuses.pending\r\n    ) {\r\n      this.forPublicClient = true;\r\n      return;\r\n    }\r\n\r\n    // this block says when an auction is not in pending and open to all users\r\n    if (\r\n      !auctionState.isActive &&\r\n      !auctionState.isApproved &&\r\n      auctionState.status !== this.auctionStatuses.pending\r\n    ) {\r\n      if (!auctionState.saleType.isCatalogReadOnly) {\r\n        this.toastr.info(\r\n          `Unfortunately ${this.auctionCode} is no longer available for bidding and you will be notified if and when the auction becomes available for bidding again`,\r\n          constants.common.toast.infoTitle,\r\n          constants.common.toast.config\r\n        );\r\n      }\r\n      if (auctionState.saleType.isCatalogReadOnly) {\r\n        this.toastr.info(\r\n          `Unfortunately ${this.auctionCode} is deactivated and you will be notified if and when the auction becomes available again`,\r\n          constants.common.toast.infoTitle,\r\n          constants.common.toast.config\r\n        );\r\n      }\r\n      this.router.navigate(['/'], { replaceUrl: true });\r\n    }\r\n  }\r\n\r\n  getTandC() {\r\n    const getCMSPublic = this.cmsService\r\n      .GetCmsPublic(constants.common.cmsPages.termsAndConditions)\r\n      .subscribe((res) => {\r\n        this.tAndC = res;\r\n      });\r\n      this.subscriptions.push(getCMSPublic)\r\n  }\r\n\r\n  private setSeoTags(response: any) {\r\n    this.seoService.setPageTitle(response['pageTitle']);\r\n    this.seoService.setMetaTagDescription(response['metaDescription']);\r\n    this.seoService.setMetaTagKeywords(response['keywords']);\r\n  }\r\n  changeSteps(stepNum: number) {\r\n    this.stepActive = stepNum;\r\n    switch (stepNum) {\r\n      case 2:\r\n        this.showBlank = true;\r\n        this.getStepWiseData(this.steps.photoGallery);\r\n        break;\r\n      case 3:\r\n        this.getStepWiseData(this.steps.paymentDocuments);\r\n        this.getTandC();\r\n        break;\r\n      case 4:\r\n        this.getStepWiseData(this.steps.removalDocuments);\r\n        break;\r\n    }\r\n    this.loadPrettyPhoto();\r\n  }\r\n\r\n  openHelpModal(template: TemplateRef<any>) {\r\n    let helpTextId: number;\r\n    if (\r\n      this.responseData.saleType.showHelpText === this.helpTexts.catalogBidding\r\n    )\r\n      helpTextId = constants.common.cmsPages.helpTextCatalogWithBidding;\r\n    else if (\r\n      this.responseData.saleType.showHelpText === this.helpTexts.readOnlyCatalog\r\n    )\r\n      helpTextId = constants.common.cmsPages.helpTextReadOnlyCatalog;\r\n    this.loader.showLoader(true);\r\n    const getCMSPublic = this.cmsService.GetCmsPublic(helpTextId).subscribe((res) => {\r\n      this.helpTextData = res;\r\n      this.loader.showLoader(false);\r\n      this.modalRef = this.modalService.show(template, {\r\n        class:\r\n          'custom-popup auction-help-modal modal-dialog modal-dialog-centered',\r\n      });\r\n    });\r\n    this.subscriptions.push(getCMSPublic)\r\n  }\r\n\r\n  getAuctionByCode() {\r\n    return new Promise((resolve, reject) => {\r\n      this.showView = false;\r\n      this.loader.showLoader(true);\r\n      const auctionDetail = this.auctionService.getAuctionDetailByCode(this.auctionCode).subscribe(\r\n        (response: any) => {\r\n          if (response === null) {\r\n            this.goToBack();\r\n            reject(new Error(\"Auction not found\")); // Reject the Promise with an error message\r\n          } else {\r\n            this.responseData = response;\r\n            this.showView = true;\r\n            this.loader.showLoader(false);\r\n            this.setSeoTags(response);\r\n            resolve(response); // Resolve the Promise with the response data\r\n          }\r\n        },\r\n        (err) => {\r\n          this.showView = true;\r\n          this.loader.showLoader(false);\r\n          this.goToBack();\r\n          reject(err); // Reject the Promise with the error object\r\n        }\r\n      );\r\n      this.subscriptions.push(auctionDetail);\r\n    });\r\n  }\r\n\r\n  goToBack() {\r\n    this.router.navigateByUrl(this.returnUrl);\r\n  }\r\n\r\n  goToViewDetail(id: number, numberOfStepsBack: number = 1) {\r\n    let routeFragments = this.router.url.split('/');\r\n    let returnUrl = routeFragments\r\n      .splice(0, routeFragments.length - numberOfStepsBack)\r\n      .join('/');\r\n    this.router.navigate([returnUrl, id], { relativeTo: this.route });\r\n  }\r\n\r\n  showGallery() {\r\n    if (this.photoGalleryThumbnail && this.photoGalleryThumbnail.length)\r\n      this.showPhotoGalleryThumbnail = this.photoGalleryThumbnail.slice(\r\n        (-1 + this.pageNumber) * this.pageSize,\r\n        this.pageNumber * this.pageSize\r\n      );\r\n  }\r\n\r\n  goToRegister() {\r\n    this.router.navigate([routeTable.public.auctionRegister], {\r\n      relativeTo: this.route,\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  onPageChange(paging: number) {\r\n    this.pageNumber = paging;\r\n    this.showGallery();\r\n    setTimeout(() => {\r\n      this.loadPrettyPhoto();\r\n    }, 500)\r\n  }\r\n\r\n  scrollToTop(stepNum: number, el: HTMLElement) {\r\n    el.scrollIntoView();\r\n    this.stepActive = stepNum;\r\n    this.changeSteps(stepNum);\r\n  }\r\n\r\n  goToEnquiryPage() {\r\n    this.router.navigate([routeTable.public.enquire], {\r\n      relativeTo: this.route,\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  isNumberOrStringNumber(input) {\r\n    //@ts-ignore\r\n    if (typeof input === 'number' || (typeof input === 'string' && !isNaN(input))) {\r\n      return true;\r\n    } else {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  goToLotsSection() {\r\n    this.router.navigate([routeTable.public.auctionLot], {\r\n      relativeTo: this.route,\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  createCalenderEvent() {\r\n    let locations = [];\r\n    if (this.locations && this.locations.length)\r\n      this.locations.forEach((loc) => locations.push(loc.name));\r\n\r\n    let title = `${this.responseData?.title} Auction | The Branford Group`;\r\n    let desc = `${this.responseData?.tagline?.replace(/<[^>]+>/g, '')} \\n ${\r\n      location.href.replace(/(\\?|&)ics=true/g, '')\r\n    }`;\r\n    let startDate = new Date(`${this.responseData?.startDateTimeUtc}Z`);\r\n    let endDate = new Date(`${this.responseData?.endDateTimeUtc}Z`);\r\n\r\n    let config: CalendarOptions = {\r\n      title: title,\r\n      location: locations.join(', '),\r\n      description: desc,\r\n      start: startDate,\r\n      end: endDate,\r\n    };\r\n    let icalendar = new ICalendar(config);\r\n    icalendar.addProperty(\r\n      'CATEGORIES',\r\n      `${this.responseData?.saleType?.publicName}`\r\n    );\r\n    icalendar.addProperty('URL', `${location.href}`);\r\n    icalendar.download();\r\n  }\r\n\r\n  private async getStepWiseData(stepData: number): Promise<void> {\r\n    const reqTypes = AuctionDataReqType;\r\n    const assetTypes = constants.admin.assetType;\r\n    // Wrap the whole function logic in a Promise\r\n    return new Promise<void>((resolve, reject) => {\r\n      let publicAuctionData: any;\r\n      switch (stepData) {\r\n        case this.steps.auctionLocations:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.locations, this.auctionCode);\r\n          break;\r\n        case this.steps.photoGallery:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.images, this.auctionCode, assetTypes.photoGallery);\r\n          break;\r\n        case this.steps.removalDocuments:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.documents, this.auctionCode, assetTypes.document);\r\n          break;\r\n        case this.steps.paymentDocuments:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.documents, this.auctionCode, assetTypes.paymentDocument);\r\n          break;\r\n        case this.steps.auctionContacts:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.contacts, this.auctionCode);\r\n          break;\r\n        case this.steps.relatedAuctions:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.relatedAuctions, this.auctionCode);\r\n          break;\r\n        case this.steps.partnerLogos:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.images, this.auctionCode, assetTypes.partnerLogo);\r\n          break;\r\n        case this.steps.sliderImages:\r\n          publicAuctionData = this.auctionService.getPublicAuctionData(reqTypes.images, this.auctionCode, assetTypes.sliderImage);\r\n          break;\r\n        default:\r\n          reject(new Error('Invalid stepData value'));\r\n          return;\r\n      }\r\n      // Use async/await to wait for the subscription to resolve\r\n      const subscription = publicAuctionData.subscribe(\r\n        (res: any) => {\r\n          switch (stepData) {\r\n            case this.steps.auctionLocations:\r\n              this.locations = res;\r\n              break;\r\n            case this.steps.photoGallery:\r\n              this.photoGalleryThumbnail = res.map((it: any) => {\r\n                let name = it.thumbnailName;\r\n                it.thumbnailName = it.thumbnailName.replace('/images/', '/thumbnails/');\r\n                return { id: it.id, name: name, thumb: it.thumbnailName, order: it.order };\r\n              });\r\n              this.photoGallery = res.map((it: any) => {\r\n                return { id: it.id, name: it.name, order: it.order };\r\n              });\r\n              this.showGallery();\r\n              this.showBlank = false;\r\n              break;\r\n            case this.steps.removalDocuments:\r\n              this.removalDocuments = res;\r\n              break;\r\n            case this.steps.paymentDocuments:\r\n              this.paymentDocuments = res;\r\n              break;\r\n            case this.steps.auctionContacts:\r\n              this.contacts = res;\r\n              break;\r\n            case this.steps.relatedAuctions:\r\n              this.relatedAuctions = res;\r\n              break;\r\n            case this.steps.partnerLogos:\r\n              this.partnerLogos = res;\r\n              break;\r\n            case this.steps.sliderImages:\r\n              this.sliderImagesThumbnail = res.map((it) => {\r\n                let name = it.thumbnailName;\r\n                it.thumbnailName = it.thumbnailName.replace(\"/images/\", \"/thumbnails/\")\r\n                return { id: it.id, name: name, thumb: it.thumbnailName, order: it.order };\r\n              });\r\n              this.sliderImages = res.map((it) => {\r\n                return { id: it.id, name: it.name, order: it.order };\r\n              });\r\n            default:\r\n              break;\r\n          }\r\n          resolve();\r\n        },\r\n        (error: any) => {\r\n          reject(error);\r\n        }\r\n      );\r\n      this.subscriptions.push(subscription);\r\n    });\r\n  }\r\n\r\n  private getCustomButtons(): Promise<void> {\r\n    return new Promise<void>((resolve, reject) => {\r\n      const custumButtonsPublic = this.auctionService.getCustomButtonsPublic(this.auctionCode)\r\n        .subscribe(\r\n          (res: any) => {\r\n            this.customButtons = res;\r\n            resolve(); // Resolve the Promise when the data is retrieved and assigned\r\n          },\r\n          (error: any) => {\r\n            reject(error); // Reject the Promise if an error occurs\r\n          }\r\n        );\r\n      // Add the subscription to the subscriptions array for cleanup\r\n      this.subscriptions.push(custumButtonsPublic);\r\n    });\r\n  }\r\n\r\n  ngOnDestroy(): void {\r\n    this.seoService.removeAllMetaTags();\r\n    this.subscriptions.forEach((sub: Subscription) => {\r\n      sub.unsubscribe();\r\n    });\r\n  }\r\n}\r\n\r\nexport enum SteppedData {\r\n  auctionLocations = 1,\r\n  photoGallery,\r\n  sliderImages,\r\n  paymentDocuments,\r\n  removalDocuments,\r\n  auctionContacts,\r\n  relatedAuctions,\r\n  partnerLogos,\r\n}\r\n","<div class=\"back-calender\">\r\n  <div class=\"container\">\r\n    <div class=\"row\">\r\n      <div class=\"col-12 back-link-outer mb-0 d-flex\">\r\n        <a class=\"back-link\" role=\"button\" (click)=\"goToBack()\">\r\n          <img alt=\"icon\" src=\"../assets/images/back-grey.svg\" /> Back To\r\n          Auction Calendar\r\n        </a>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"details-banner text-center\">\r\n  <img class=\"auction-details-banner\" alt=\"logo\" [src]=\"responseData?.coverPhoto ? responseData?.coverPhoto : '/assets/images/banner-bg.jpg'\" />\r\n  <div class=\"container\">\r\n    <div class=\"row\">\r\n      <div class=\"col-12\"></div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"details-tabs-outer\">\r\n  <div class=\"container\">\r\n    <div class=\"row\">\r\n      <div class=\"left-wrap\">\r\n        <div class=\"left-wrap-inner\">\r\n          <img class=\"auction-logo img-fluid\" alt=\"auction-logo\" *ngIf=\"responseData\"\r\n            [src]=\"responseData?.clientLogo\" />\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"right-wrap\" #top>\r\n        <h1 class=\"auction-name\" [title]=\"responseData?.title\">\r\n          {{ responseData?.title | characterLimit: 30 }}\r\n        </h1>\r\n        <div class=\"details-tabs tabsDark\">\r\n          <div class=\"list-filter-tabs detailsWithNum\">\r\n            <button class=\"list-tab\" [ngClass]=\"{\r\n                active: stepActive == 1,\r\n                'completed-tab': stepActive > 1\r\n              }\" role=\"button\" (click)=\"changeSteps(1)\">\r\n              <span class=\"stepNum\">1</span>\r\n              Auction Details\r\n            </button>\r\n            <button class=\"list-tab\" [ngClass]=\"{\r\n                active: stepActive == 2,\r\n                'completed-tab': stepActive > 2\r\n              }\" role=\"button\" (click)=\"changeSteps(2)\">\r\n              <span class=\"stepNum\">2</span> Photo Gallery\r\n            </button>\r\n            <button class=\"list-tab\" [ngClass]=\"{\r\n                active: stepActive == 3,\r\n                'completed-tab': stepActive > 3\r\n              }\" role=\"button\" (click)=\"changeSteps(3)\">\r\n              <span class=\"stepNum\">3</span> Payment & Terms\r\n            </button>\r\n            <button class=\"list-tab\" [ngClass]=\"{\r\n                active: stepActive == 4,\r\n                'completed-tab': stepActive > 4\r\n              }\" role=\"button\" (click)=\"changeSteps(4)\">\r\n              <span class=\"stepNum\">4</span> Lot Removal & Logistics\r\n            </button>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<div class=\"auction-details-wrap\" *ngIf=\"showView\">\r\n  <div class=\"container\">\r\n    <div class=\"details-wrap-inner\">\r\n      <div class=\"details-tab-data\">\r\n        <div>\r\n          <div class=\"for-tabs row\">\r\n            <div class=\"col-lg-8 left-tabs-wrapper\">\r\n              <div class=\"details-step1\" *ngIf=\"stepActive == 1\">\r\n                <p class=\"details-des\">{{ responseData?.byOrderOf }}</p>\r\n                <h2 class=\"auction-wrap-hdg mb-3\">{{ responseData?.title }}</h2>\r\n                <div class=\"pt-1 d-flex mb-2\">\r\n                  <span class=\"card-badge no-card min-width-auto badge-dark\">{{ responseData?.saleType.publicName }}\r\n                  </span>\r\n                </div>\r\n                <p class=\"details-des2\" [innerHTML]=\"responseData?.tagline\"></p>\r\n\r\n                <div class=\"date-wrap-outer\">\r\n                  <div *ngIf=\"\r\n                      responseData?.auctionStatus == 3 ||\r\n                      responseData?.auctionStatus == 2 ||\r\n                      responseData?.auctionStatus == 1\r\n                    \">\r\n                    <ng-container [ngSwitch]=\"responseData?.saleType?.auctionDate\">\r\n                      <div class=\"date-wrap\" *ngSwitchCase=\"1\">\r\n                        <div class=\"top\">\r\n                          <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/calender.svg\" />\r\n                          <span>{{\r\n                            responseData?.auctionStatus == 1\r\n                            ? \"Opened\"\r\n                            : \"Opens\"\r\n                            }}\r\n                          </span>\r\n                        </div>\r\n                        <p class=\"m-0\">\r\n                          {{\r\n                          responseData?.startDateTime\r\n                          | toLocalDateTime\r\n                          : false\r\n                          : responseData?.timeZoneName\r\n                          : \"EEEE, MMMM d, y h:mm a\"\r\n                          }}\r\n                        </p>\r\n                      </div>\r\n\r\n                      <div class=\"date-wrap\" *ngSwitchCase=\"2\">\r\n                        <div class=\"top\">\r\n                          <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/calender.svg\" />\r\n                          <span>Closing begins</span>\r\n                        </div>\r\n                        <p class=\"m-0\">\r\n                          {{\r\n                          responseData?.endDateTime\r\n                          | toLocalDateTime\r\n                          : false\r\n                          : responseData?.timeZoneName\r\n                          : \"EEEE, MMMM d, y h:mm a\"\r\n                          }}\r\n                        </p>\r\n                      </div>\r\n\r\n                      <div *ngSwitchCase=\"3\">\r\n                        <div class=\"date-wrap\">\r\n                          <div class=\"top\">\r\n                            <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/calender.svg\" />\r\n                            <span>{{\r\n                              responseData?.auctionStatus == 1\r\n                              ? \"Opened\"\r\n                              : \"Opens\"\r\n                              }}\r\n                            </span>\r\n                          </div>\r\n                          <p class=\"m-0\">\r\n                            {{\r\n                            responseData?.startDateTime\r\n                            | toLocalDateTime\r\n                            : false\r\n                            : responseData?.timeZoneName\r\n                            : \"EEEE, MMMM d, y h:mm a\"\r\n                            }}\r\n                          </p>\r\n                        </div>\r\n                        <div class=\"date-wrap\">\r\n                          <div class=\"top\">\r\n                            <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/calender.svg\" />\r\n                            <span>Closing begins</span>\r\n                          </div>\r\n                          <p class=\"m-0\">\r\n                            {{\r\n                            responseData?.endDateTime\r\n                            | toLocalDateTime\r\n                            : false\r\n                            : responseData?.timeZoneName\r\n                            : \"EEEE, MMMM d, y h:mm a\"\r\n                            }}\r\n                          </p>\r\n                        </div>\r\n                      </div>\r\n                    </ng-container>\r\n                  </div>\r\n\r\n                  <div *ngIf=\"responseData?.auctionStatus == 4\">\r\n                    <div class=\"date-wrap\">\r\n                      <div class=\"top\">\r\n                        <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/calender.svg\" />\r\n                        <span>Closing Began</span>\r\n                      </div>\r\n                      <p class=\"m-0\">\r\n                        {{\r\n                        responseData?.endDateTime\r\n                        | toLocalDateTime\r\n                        : false\r\n                        : responseData?.timeZoneName\r\n                        : \"EEEE, MMMM d, y h:mm a\"\r\n                        }}\r\n                      </p>\r\n                    </div>\r\n                  </div>\r\n\r\n                  <div class=\"date-wrap-address\" *ngIf=\"locations && locations.length > 0\">\r\n                    <div class=\"top\">\r\n                      <img class=\"date-icon\" alt=\"calender\" src=\"/assets/images/location-grey.svg\" />\r\n                      <span>Location</span>\r\n                    </div>\r\n                    <p class=\"m-0\">\r\n                      <strong *ngFor=\"let location of locations; let last = last\">\r\n                        <ng-container *ngIf=\"location.locationLink; else withoutLink\">\r\n                          <a href=\"{{ location.locationLink }}\" [innerHTML]=\"location.address\" class=\"address-link\" target=\"_blank\">\r\n                          </a>\r\n                        </ng-container>\r\n                        <ng-template #withoutLink>\r\n                          <span [innerHTML]=\"location.address\"></span>\r\n                        </ng-template>\r\n                      </strong>\r\n                    </p>\r\n                  </div>\r\n                </div>\r\n\r\n                <div class=\"step-list-details\">\r\n                  <div class=\"list-details-subpart\" *ngIf=\"responseData?.featuredItems\">\r\n                    <h4 class=\"style3 mb-3\">Featured Items</h4>\r\n                    <h4 class=\"style4 mb-2\">\r\n                      {{ responseData?.featuredItemHeader }}\r\n                    </h4>\r\n                    <div class=\"details-list\" [innerHTML]=\"responseData?.featuredItems | sanitizedHtml\"></div>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n\r\n              <div class=\"details-step2\" *ngIf=\"stepActive == 2 && !showBlank\">\r\n                <h2 class=\"auction-wrap-hdg mb-3\">Photo Gallery</h2>\r\n\r\n                <div class=\"empty-state-container empty-pad-2\" *ngIf=\"photoGallery?.length === 0; else showGrid\">\r\n                  <div class=\"empty-state-content\">\r\n                    <img alt=\"empty-state\" src=\"../../../../assets/images/the-branford-logo.svg\" />\r\n                    <h3 class=\"_heading\">Photos Coming Soon</h3>\r\n                  </div>\r\n                </div>\r\n\r\n                <ng-template #showGrid>\r\n                  <div class=\"container\" *ngIf=\"!showBlank\">\r\n                    <div class=\"row\">\r\n                      <div class=\"col-12 gallery-pagination\">\r\n                        <app-paginator [paginationId]=\"'server'\" [currentPage]=\"pageNumber\" [pageSize]=\"pageSize\"\r\n                          (page)=\"onPageChange($event)\" *ngIf=\"photoGallery.length > pageSize\">\r\n                        </app-paginator>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"details-step2-data\">\r\n                    <div class=\"details-step2-images\">\r\n                      <ul class=\"no-list slide-images-list\">\r\n                        <li *ngFor=\"\r\n                          let picture of photoGalleryThumbnail\r\n                            | paginate\r\n                              : {\r\n                                  id: 'server',\r\n                                  itemsPerPage: pageSize,\r\n                                  currentPage: pageNumber,\r\n                                  totalItems: photoGallery.length\r\n                                }\r\n                        \">\r\n                          <a href=\"{{ picture.name }}\" rel=\"prettyPhoto[pp_gal]\" class=\"prettyPhotoWrapper\">\r\n                            <img alt=\"auction-image\" class=\"cursor-pointer preview-image\" src=\"{{ picture.thumb }}\" imgFallback=\"{{ picture.name }}\"  />\r\n                          </a>\r\n                        </li>\r\n                      </ul>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"container\">\r\n                    <div class=\"row\">\r\n                      <div class=\"col-12 gallery-pagination\">\r\n                        <app-paginator [paginationId]=\"'server'\" [currentPage]=\"pageNumber\" [pageSize]=\"pageSize\"\r\n                          (page)=\"onPageChange($event)\" *ngIf=\"photoGallery.length > pageSize\">\r\n                        </app-paginator>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                </ng-template>\r\n              </div>\r\n\r\n              <div class=\"details-step1\" *ngIf=\"stepActive == 3\">\r\n                <h2 class=\"auction-wrap-hdg mb-3\">Payment & Terms</h2>\r\n                <div class=\"auction-payment\">\r\n                  <ng-container *ngIf=\"\r\n                      responseData?.saleType.registrationDepositeRules != ''\r\n                    \">\r\n                    <h3 class=\"payment-hdg\">Registration & Deposit Rules</h3>\r\n                    <p class=\"payment-des\" [innerHTML]=\"\r\n                        responseData?.saleType.registrationDepositeRules\r\n                      \"></p>\r\n                  </ng-container>\r\n\r\n                  <ng-container *ngIf=\"responseData?.paymentInstructions\">\r\n                    <h3 class=\"payment-hdg\">Payment Instructions</h3>\r\n                    <p class=\"payment-des\" [innerHTML]=\"responseData?.paymentInstructions\"></p>\r\n                  </ng-container>\r\n\r\n                  <h3 class=\"payment-hdg\">Currency</h3>\r\n                  <p class=\"payment-des\">{{ responseData?.currencyName }}</p>\r\n\r\n                  <ng-container *ngIf=\"responseData?.generalBuyersPremium != '0'\">\r\n                    <h3 class=\"payment-hdg\">Buyers Premium</h3>\r\n                    <p class=\"payment-des\" *ngIf=\"responseData?.creditCardBuyersPremiumText == 'null' || isNumberOrStringNumber(responseData?.creditCardBuyersPremiumText); else ccBlock\"\r\n                      [innerHTML]=\"responseData?.generalBuyersPremiumText\"></p>\r\n                    <ng-template #ccBlock>\r\n                      <p class=\"payment-des\" [innerHTML]=\"responseData?.creditCardBuyersPremiumText\"></p>\r\n                    </ng-template>\r\n                  </ng-container>\r\n\r\n                  <ng-container *ngIf=\"locations && locations?.length > 0\">\r\n                    <h3 class=\"payment-hdg\">Tax Rates</h3>\r\n                    <ng-container *ngFor=\"let location of locations\">\r\n                      <p class=\"payment-des\">\r\n                        <img class=\"location mr-2\" alt=\"location\" src=\"../assets/images/location-green.svg\" />\r\n                        <strong>\r\n                          <ng-container *ngIf=\"location.locationLink; else withoutLink\">\r\n                            <a href=\"{{ location.locationLink }}\" target=\"_blank\">\r\n                              {{ location.name }}\r\n                            </a>\r\n                          </ng-container>\r\n                          <ng-template #withoutLink>\r\n                            {{ location.name }}\r\n                          </ng-template>\r\n                        </strong>\r\n                      </p>\r\n                      <p class=\"payment-des\">\r\n                        <strong>\r\n                          {{\r\n                          location?.salesTaxRate != null\r\n                          ? (location.salesTaxRate | number) + \"%\"\r\n                          : \"TBD\"\r\n                          }}\r\n                        </strong>\r\n                      </p>\r\n                      <p class=\"payment-des\" [innerHTML]=\"location.salesTaxDetail\"></p>\r\n                    </ng-container>\r\n                  </ng-container>\r\n\r\n                  <h3 class=\"payment-hdg mb-3\">Terms & Conditions</h3>\r\n                  <p class=\"payment_Wrap payment-des termWrapPad\" [innerHTML]=\"tAndC\"></p>\r\n                </div>\r\n\r\n                <div class=\"doc-download\">\r\n                  <h3 class=\"doc-hdg\">Payment Documents</h3>\r\n                  <ng-container *ngFor=\"let doc of paymentDocuments\">\r\n                    <div class=\"parts\">\r\n                      <div class=\"left-wrap\">\r\n                        <img class=\"doc-icon\" alt=\"doc\" src=\"../assets/images/file.svg\" />\r\n                        <span>{{ doc.title }}</span>\r\n                      </div>\r\n                      <div class=\"right-wrap\">\r\n                        <a [href]=\"doc.name\" [download]=\"doc.title\" target=\"_blank\">\r\n                          <img class=\"download\" alt=\"download\" src=\"../assets/images/download.svg\" />\r\n                        </a>\r\n                      </div>\r\n                    </div>\r\n                  </ng-container>\r\n                </div>\r\n              </div>\r\n\r\n              <div class=\"details-step1\" *ngIf=\"stepActive == 4\">\r\n                <h2 class=\"auction-wrap-hdg mb-3\">Lot Removal & Logistics</h2>\r\n\r\n                <ng-container *ngIf=\"locations && locations.length > 0\">\r\n                  <h2 class=\"auction-lot-sb-hdg mb-3\">\r\n                    {{ locations.length }} Equipment Location(s)\r\n                  </h2>\r\n                  <div class=\"lot-details-wrapper\">\r\n                    <div class=\"top-slider\">\r\n                      <div class=\"row lotLogistics-slider-outer\">\r\n                        <div class=\"col-12 lotLogistics-slider\">\r\n                          <div class=\"lotLogistics-slider-wrap\">\r\n                            <ngx-slick-carousel class=\"carousel lotHeader m-0\" [config]=\"lotLogistics\">\r\n                              <ng-container *ngFor=\"let location of locations\">\r\n                                <div ngxSlickItem class=\"slide\">\r\n                                  <div class=\"slide-top\">\r\n                                    <img alt=\"location\" src=\"../assets/images/location-green.svg\" class=\"mr-2\" />\r\n                                    <span>\r\n                                      <ng-container *ngIf=\"\r\n                                          location.locationLink;\r\n                                          else withoutLink\r\n                                        \">\r\n                                        <a href=\"{{ location.locationLink }}\" target=\"_blank\">\r\n                                          {{ location.name }}\r\n                                        </a>\r\n                                      </ng-container>\r\n                                      <ng-template #withoutLink>\r\n                                        {{ location.name }}\r\n                                      </ng-template>\r\n                                    </span>\r\n                                  </div>\r\n                                  <div class=\"slide-bottom\">\r\n                                    {{\r\n                                    location?.lotNumbers\r\n                                    ? \"Lot - \" + location?.lotNumbers\r\n                                    : \"TBD\"\r\n                                    }}\r\n                                  </div>\r\n                                </div>\r\n                              </ng-container>\r\n                            </ngx-slick-carousel>\r\n                          </div>\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                    <div class=\"address-dtls top-slider\">\r\n                      <div class=\"row lotLogistics-slider-outer\">\r\n                        <div class=\"col-12 lotLogistics-slider\">\r\n                          <div class=\"lotLogistics-slider-wrap\">\r\n                            <ngx-slick-carousel class=\"carousel lotNav m-0\" [config]=\"lotLogisticsNav\">\r\n                              <ng-container *ngFor=\"let location of locations\">\r\n                                <div ngxSlickItem class=\"slide\">\r\n                                  <div class=\"dtl-wrap\">\r\n                                    <h3 class=\"hdg\">Address</h3>\r\n                                    <p class=\"des\" [innerHTML]=\"location.address | sanitizedHtml\"></p>\r\n\r\n                                    <h3 class=\"hdg\">Removal</h3>\r\n                                    <p class=\"des\" [innerHTML]=\"location.removalDateAndRules | sanitizedHtml\"></p>\r\n\r\n                                    <h3 class=\"hdg\">Rigging/Shipping</h3>\r\n                                    <p class=\"des\" [innerHTML]=\"location.riggingAndShipping | sanitizedHtml\"></p>\r\n                                  </div>\r\n                                </div>\r\n                              </ng-container>\r\n                            </ngx-slick-carousel>\r\n                          </div>\r\n                        </div>\r\n                      </div>\r\n                    </div>\r\n                  </div>\r\n                </ng-container>\r\n\r\n                <div class=\"doc-download\">\r\n                  <h3 class=\"doc-hdg\">Removal Documents</h3>\r\n                  <ng-container *ngFor=\"let doc of removalDocuments\">\r\n                    <div class=\"parts\">\r\n                      <div class=\"left-wrap\">\r\n                        <img class=\"doc-icon\" alt=\"doc\" src=\"../assets/images/file.svg\" />\r\n                        <span>{{ doc.title }}</span>\r\n                      </div>\r\n                      <div class=\"right-wrap\">\r\n                        <a [href]=\"doc.name\" [download]=\"doc.title\" target=\"_blank\">\r\n                          <img class=\"download\" alt=\"download\" src=\"../assets/images/download.svg\" />\r\n                        </a>\r\n                      </div>\r\n                    </div>\r\n                  </ng-container>\r\n                </div>\r\n              </div>\r\n            </div>\r\n\r\n            <div class=\"col-lg-4 right-tabs-wrapper\">\r\n              <!-- this is Inquiry Form for 'inquiry type registration' -->\r\n              <div class=\"registration-open mb-3\" *ngIf=\"\r\n                  responseData?.saleType.registrationFormat ===\r\n                  registrationFormats.inquiryForm\r\n                \">\r\n                <div class=\"top\">\r\n                  <div class=\"registration-left\">\r\n                    <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/auction-success-icon.svg\" />\r\n                  </div>\r\n                  <div class=\"registration-right\">\r\n                    <h1 class=\"hdg\">Inquire Now!</h1>\r\n                    <p class=\"des\">Inquire now for this auction.</p>\r\n                  </div>\r\n                </div>\r\n                <div class=\"btm\">\r\n                  <button [disabled]=\"forPublicClient\" type=\"button\" class=\"btn btn-colored\" role=\"button\"\r\n                    (click)=\"goToEnquiryPage()\">\r\n                    Inquire Now\r\n                  </button>\r\n                </div>\r\n              </div>\r\n\r\n              <!-- this container will use for 3rd party registeration system -->\r\n              <ng-container *ngIf=\"\r\n                  (responseData?.saleType.registrationFormat ==\r\n                  registrationFormats.thirdPartyRegistration) &&\r\n        responseData?.registrationLinkUrl\r\n\r\n                \">\r\n                <div class=\"registration-open mb-3\">\r\n                  <div class=\"top\">\r\n                    <div class=\"registration-left\">\r\n                      <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/auction-success-icon.svg\" />\r\n                    </div>\r\n                    <div class=\"registration-right\">\r\n                      <h1 class=\"hdg\">Registration</h1>\r\n                      <p class=\"des\">\r\n                        Click on the link below to Register for the auction.\r\n                        When the auction opens, bidding will take place at the\r\n                        linked site.\r\n                      </p>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"btm\">\r\n                    <a role=\"button\" class=\"btn btn-colored\" [ngClass]=\"{\r\n                        'disabled-link': !responseData?.registrationLinkUrl\r\n                      }\" [href]=\"responseData?.registrationLinkUrl\" target=\"_blank\">\r\n                      {{responseData.saleType.registrationFormat == 2 && responseData.saleType.isCatalogUploadAllowed ? \"Register & Bid\" : \"Register\"}}\r\n                    </a>\r\n                  </div>\r\n                </div>\r\n              </ng-container>\r\n\r\n              <!-- this container will use for tbg registration system -->\r\n              <ng-container *ngIf=\"\r\n                  responseData?.saleType.registrationFormat ==\r\n                    registrationFormats.tbgRegistration &&\r\n                  (responseData?.auctionStatus == auctionStatuses.live ||\r\n                    responseData?.auctionStatus == auctionStatuses.upcoming) &&\r\n                  responseData?.saleType.isCatalogUploadAllowed\r\n                \">\r\n                <!-- related to registeration button -->\r\n                <div class=\"registration-open mb-3\">\r\n                  <div class=\"top\">\r\n                    <div class=\"registration-left\">\r\n                      <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/auctionregistration.svg\" />\r\n                    </div>\r\n\r\n                    <div class=\"registration-right\">\r\n                      <ng-container *ngIf=\"\r\n                          responseData?.loggedInUser == null;\r\n                          else checkApproval\r\n                        \">\r\n                        <h1 class=\"hdg\">\r\n                          {{\r\n                          responseData?.isRegistrationActive\r\n                          ? \"Registration Open !\"\r\n                          : \"Registration will open soon !\"\r\n                          }}\r\n                        </h1>\r\n                        <p class=\"des\" *ngIf=\"responseData?.isRegistrationActive\">\r\n                          Register now for this auction to bid and receive\r\n                          bidding instructions.\r\n                        </p>\r\n                      </ng-container>\r\n                      <ng-template #checkApproval>\r\n                        <h1 class=\"hdg\">\r\n                          {{\r\n                          responseData?.loggedInUser.isApproved\r\n                          ? \"Approved!\"\r\n                          : \"Awaiting Approval!\"\r\n                          }}\r\n                        </h1>\r\n                        <p class=\"des\">\r\n                          <span *ngIf=\"responseData?.loggedInUser?.isApproved\">\r\n                            Your registration request has been approved.\r\n                            <br />\r\n                          </span>\r\n                          Your Bidder Number for this auction is\r\n                          <strong>{{ responseData?.loggedInUser?.paddleNumber }}\r\n                          </strong>\r\n                        </p>\r\n                      </ng-template>\r\n                    </div>\r\n                  </div>\r\n\r\n                  <div class=\"btm\" *ngIf=\"\r\n                      responseData?.isRegistrationActive &&\r\n                      responseData?.isApproved &&\r\n                      !responseData?.loggedInUser?.isRegistered\r\n                    \">\r\n                    <button type=\"button\" [disabled]=\"forPublicClient\" class=\"btn btn-colored\" role=\"button\"\r\n                      (click)=\"goToRegister()\">\r\n                      Register To Bid\r\n                    </button>\r\n                  </div>\r\n                </div>\r\n              </ng-container>\r\n\r\n              <!-- this is for sold entirely -->\r\n              <div class=\"registration-open registration-lot mb-3\" *ngIf=\"responseData?.isSold\">\r\n                <div class=\"badge-type\">\r\n                  <span class=\"card-badge-colored mr-2\">SOLD</span>\r\n                </div>\r\n                Sold In Its Entirety\r\n              </div>\r\n\r\n              <!-- this container is for lot catalog -->\r\n              <ng-container *ngIf=\"\r\n                  responseData?.saleType.isCatalogUploadAllowed;\r\n                  else notAllowed\r\n                \">\r\n                <ng-container *ngIf=\"isLots; else noLotsYet\">\r\n                  <div class=\"registration-open mb-3\">\r\n                    <div class=\"top\">\r\n                      <div class=\"registration-left\">\r\n                        <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/auctionLot.svg\" />\r\n                      </div>\r\n                      <div class=\"registration-right\">\r\n                        <h1 class=\"hdg\">Auction Lot Catalog</h1>\r\n                        <p class=\"des\">\r\n                          <ng-container *ngIf=\"\r\n                              responseData?.auctionStatus !==\r\n                              auctionStatuses.past\r\n                            \">\r\n                            {{\r\n                            isBiddingOpen\r\n                            ? \"Bidding is open and you can start bidding online\"\r\n                            : \"View lot catalog items for this auction.\"\r\n                            }}\r\n                          </ng-container>\r\n                        </p>\r\n                      </div>\r\n                    </div>\r\n                    <div class=\"btm\">\r\n                      <button type=\"button\" [disabled]=\"forPublicClient\" class=\"btn btn-colored\" role=\"button\"\r\n                        (click)=\"goToLotsSection()\">\r\n                        <ng-container *ngIf=\"\r\n                            responseData?.auctionStatus !==\r\n                              auctionStatuses.past;\r\n                            else archievedCatalog\r\n                          \">\r\n                          {{ isBiddingOpen ? \"Bid Now\" : \"View Lot Catalog\" }}\r\n                        </ng-container>\r\n                        <ng-template #archievedCatalog>\r\n                          View Archived Lot Catalog\r\n                        </ng-template>\r\n                      </button>\r\n                    </div>\r\n                  </div>\r\n                </ng-container>\r\n                <ng-template #noLotsYet>\r\n                  <ng-container *ngIf=\"\r\n                      ![\r\n                        auctionStatuses.past,\r\n                        auctionStatuses.archived\r\n                      ].includes(responseData?.auctionStatus)\r\n                    \">\r\n                    <div class=\"coming-soon-outer mb-3\">\r\n                      <h1 class=\"hdg\">Auction Lot Catalog</h1>\r\n                      <h3 class=\"coming-soon m-0\">COMING <br />SOON</h3>\r\n                    </div>\r\n                  </ng-container>\r\n                </ng-template>\r\n              </ng-container>\r\n              <ng-template #notAllowed>\r\n                <div class=\"registration-open mb-3\" *ngIf=\"responseData?.catalogLinkUrl\">\r\n                  <div class=\"top\">\r\n                    <div class=\"registration-left\">\r\n                      <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/auctionLot.svg\" />\r\n                    </div>\r\n                    <div class=\"registration-right\">\r\n                      <h1 class=\"hdg\">Auction Lot Catalog</h1>\r\n                      <p class=\"des\">\r\n                        Click on below button \"Lot Catalog\" to view catalog and bid\r\n                      </p>\r\n                    </div>\r\n                  </div>\r\n                  <div class=\"btm\">\r\n                    <a role=\"button\" class=\"btn btn-colored\" [ngClass]=\"{\r\n                        'disabled-link': !responseData?.catalogLinkUrl\r\n                      }\" [href]=\"responseData?.catalogLinkUrl\" target=\"_blank\">\r\n                      {{ getButtonText(responseData) }}\r\n                    </a>\r\n                  </div>\r\n                </div>\r\n              </ng-template>\r\n\r\n              <ng-container *ngIf=\"\r\n                  (customButtons && customButtons?.length) ||\r\n                  responseData?.saleType?.showHelpText !== helpTexts.none ||\r\n                  responseData?.auctionStatus !== auctionStatuses.past\r\n                \">\r\n                <div class=\"preview-icons mb-3\">\r\n                  <ng-container *ngIf=\"responseData?.auctionStatus !== auctionStatuses.past\">\r\n                    <div class=\"icon-wrap\" role=\"button\" (click)=\"createCalenderEvent()\">\r\n                      <div class=\"for-icon\">\r\n                        <img alt=\"icon\" class=\"preview-icon\" src=\"/assets/images/add-to-calender.svg\" />\r\n                      </div>\r\n                      <div>\r\n                        <a class=\"for-name\" role=\"button\">Add To Calendar</a>\r\n                      </div>\r\n                    </div>\r\n                  </ng-container>\r\n\r\n                  <ng-container *ngIf=\"customButtons && customButtons?.length\">\r\n                    <div class=\"icon-wrap\" *ngFor=\"let document of customButtons\">\r\n                      <div class=\"for-icon\">\r\n                        <a href=\"{{\r\n                            document.isUrl\r\n                              ? document.url\r\n                              : document.auctionFileName\r\n                          }}\" target=\"_blank\">\r\n                          <img alt=\"icon\" class=\"preview-icon\" src=\"{{ document.buttonName }}\" />\r\n                        </a>\r\n                      </div>\r\n                      <div>\r\n                        <a class=\"for-name\" href=\"{{\r\n                            document.isUrl\r\n                              ? document.url\r\n                              : document.auctionFileName\r\n                          }}\" target=\"_blank\">{{ document.label }}</a>\r\n                      </div>\r\n                    </div>\r\n                  </ng-container>\r\n\r\n                  <ng-container *ngIf=\"\r\n                      ![0, helpTexts.none].includes(\r\n                        responseData?.saleType?.showHelpText\r\n                      )\r\n                    \">\r\n                    <div class=\"icon-wrap\">\r\n                      <div class=\"for-icon\" role=\"button\" (click)=\"openHelpModal(helpTemplate)\">\r\n                        <img alt=\"icon\" class=\"preview-icon\" src=\"/assets/images/auction-help.svg\" />\r\n                      </div>\r\n                      <div>\r\n                        <a class=\"for-name\">Help</a>\r\n                      </div>\r\n                    </div>\r\n                  </ng-container>\r\n                </div>\r\n              </ng-container>\r\n\r\n              <ng-container *ngIf=\"locations && locations.length > 0\">\r\n                <div class=\"customAccord mb-3\">\r\n                  <h3 class=\"inspectionHdg\">Inspection/Preview</h3>\r\n                  <accordion [closeOthers]=\"true\" [isAnimated]=\"true\">\r\n                    <accordion-group *ngFor=\"let location of locations; first as firstLocation\"\r\n                      [isOpen]=\"firstLocation\">\r\n                      <div class=\"clearfix\" accordion-heading type=\"button\">\r\n                        <div class=\"forHdg\">\r\n                          <ng-container *ngIf=\"location.locationLink; else withoutLink\">\r\n                            <a href=\"{{ location.locationLink }}\" target=\"_blank\">\r\n                              {{ location.name }}\r\n                            </a>\r\n                          </ng-container>\r\n                          <ng-template #withoutLink>\r\n                            {{ location.name }}\r\n                          </ng-template>\r\n                        </div>\r\n                        <span class=\"forArrow\">\r\n                          <img alt=\"icon\" class=\"registration-icon\" src=\"/assets/images/accord-arrow.svg\" />\r\n                        </span>\r\n                      </div>\r\n                      <div class=\"AccordDtls\" [innerHTML]=\"location.inspectionPreview\"></div>\r\n                    </accordion-group>\r\n                  </accordion>\r\n                </div>\r\n              </ng-container>\r\n\r\n              <ng-container *ngIf=\"contacts && contacts.length > 0\">\r\n                <div class=\"auction-contacts mb-3\">\r\n                  <h1 class=\"main-hdg\">Auction Contacts</h1>\r\n                  <div class=\"box\">\r\n                    <div class=\"inner-box\" *ngFor=\"let contact of contacts\">\r\n                      <h1 class=\"hdg\">{{ contact.description | isEmpty }}</h1>\r\n                      <h3 class=\"name\">{{ contact.contactName | isEmpty }}</h3>\r\n                      <p class=\"des\" *ngIf=\"contact.email\">\r\n                        <a href=\"mailto:{{ contact.email | isEmpty: '' }}\">\r\n                          {{ contact.email | isEmpty: \"\" }}\r\n                        </a>\r\n                      </p>\r\n                      <p class=\"des\">\r\n                        {{ contact.mobileNumber | isEmpty: \"\" }}\r\n                      </p>\r\n                    </div>\r\n                  </div>\r\n                </div>\r\n              </ng-container>\r\n\r\n              <ng-container class=\"related-sales\" *ngIf=\"relatedAuctions && relatedAuctions.length > 0\">\r\n                <div class=\"row\">\r\n                  <div class=\"col-12\">\r\n                    <h1 class=\"inspectionHdg\">Related Sales</h1>\r\n                  </div>\r\n                </div>\r\n                <div class=\"row\">\r\n                  <div class=\"col-12 mb-5\" *ngFor=\"let data of relatedAuctions\">\r\n                    <auction-card [auctionData]=\"data\" [listView]=\"false\" class=\"mb-5\"></auction-card>\r\n                  </div>\r\n                </div>\r\n              </ng-container>\r\n            </div>\r\n          </div>\r\n\r\n          <div *ngIf=\"stepActive == 1\">\r\n            <div class=\"row aution-slider-outer\" *ngIf=\"sliderImagesThumbnail && sliderImagesThumbnail.length > 0\">\r\n              <div class=\"col-12 auction-details-slider\">\r\n                <div class=\"auction-details-slider-wrap custon-slick-dots\">\r\n                  <ngx-slick-carousel class=\"carousel m-0\" [config]=\"auctionDetailsSlider\">\r\n                    <div ngxSlickItem #slide class=\"slide\" *ngFor=\"let image of sliderImagesThumbnail\">\r\n                      <a id=\"myLink\" href=\"{{ image?.name }}\" rel=\"prettyPhoto[pp_gal1]\" class=\"prettyPhotoSlideWrapper\">\r\n                        <img alt=\"auction-image\" class=\"cursor-pointer preview-image\" src=\"{{ image?.thumb }}\" imgFallback=\"{{ image?.name }}\"  />\r\n                      </a>\r\n                    </div>\r\n                  </ngx-slick-carousel>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div *ngIf=\"stepActive == 1\">\r\n            <div *ngIf=\"partnerLogos && partnerLogos.length > 0\" class=\"row inconjuction-outer\">\r\n              <div class=\"col-12 inconjuction\">\r\n                <div class=\"main-inconj d-flex\">\r\n                  <div class=\"left-wrap\">\r\n                    <p class=\"m-0\">In Conjunction With</p>\r\n                  </div>\r\n                  <div class=\"right-wrap\">\r\n                    <span class=\"right-wrap-inner\" *ngFor=\"let conjunction of partnerLogos\">\r\n                      <img class=\"img-fluid\" alt=\"inconjuction-logo\" src=\"{{ conjunction.name }}\" />\r\n                    </span>\r\n                  </div>\r\n                </div>\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row\" *ngIf=\"stepActive == 1\">\r\n            <div class=\"next-prev\">\r\n              <button type=\"button\" class=\"btn btn-colored next-btn ml-auto\" role=\"button\"\r\n                (click)=\"scrollToTop(2, top)\">\r\n                NEXT : Photo Gallery\r\n                <img alt=\"next-arrow\" class=\"next-icon ml-2\" src=\"../assets/images/next.svg\" />\r\n              </button>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row\" *ngIf=\"stepActive == 2\">\r\n            <div class=\"next-prev\">\r\n              <button type=\"button\" class=\"btn btn-colored prev-btn\" role=\"button\" (click)=\"scrollToTop(1, top)\">\r\n                <img alt=\"prev-icon\" class=\"prev-icon mr-2\" src=\"../assets/images/prev.svg\" />\r\n                PREV : Auction Details\r\n              </button>\r\n              <button type=\"button\" class=\"btn btn-colored next-btn\" role=\"button\" (click)=\"scrollToTop(3, top)\">\r\n                NEXT : Payment & Terms\r\n                <img alt=\"next-arrow\" class=\"next-icon ml-2\" src=\"../assets/images/next.svg\" />\r\n              </button>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row\" *ngIf=\"stepActive == 3\">\r\n            <div class=\"next-prev\">\r\n              <button type=\"button\" class=\"btn btn-colored prev-btn\" role=\"button\" (click)=\"scrollToTop(2, top)\">\r\n                <img alt=\"prev-icon\" class=\"prev-icon mr-2\" src=\"../assets/images/prev.svg\" />\r\n                PREV : Photo Gallery\r\n              </button>\r\n              <button type=\"button\" class=\"btn btn-colored next-btn\" role=\"button\" (click)=\"scrollToTop(4, top)\">\r\n                NEXT : Lot Removal & Logistics\r\n                <img alt=\"next-arrow\" class=\"next-icon ml-2\" src=\"../assets/images/next.svg\" />\r\n              </button>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"row\" *ngIf=\"stepActive == 4\">\r\n            <div class=\"next-prev\">\r\n              <button type=\"button\" class=\"btn btn-colored prev-btn\" role=\"button\" (click)=\"scrollToTop(3, top)\">\r\n                <img alt=\"prev-icon\" class=\"prev-icon mr-2\" src=\"../assets/images/prev.svg\" />\r\n                PREV : Payment & Terms\r\n              </button>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div>\r\n\r\n<ng-template #helpTemplate>\r\n  <div class=\"modal-header\">\r\n    <h4 class=\"modal-title pull-left\">Help</h4>\r\n    <button type=\"button\" class=\"close pull-right circle-icon m-0\" aria-label=\"Close\" role=\"button\"\r\n      (click)=\"modalRef.hide()\">\r\n      <img alt=\"icon\" src=\"../assets/images/cross.svg\" />\r\n    </button>\r\n  </div>\r\n\r\n  <div class=\"modal-body\">\r\n    <h1 class=\"modal-inner-hdg mt-0 mb-2\">\r\n      {{\r\n      this.responseData?.saleType.showHelpText ===\r\n      this.helpTexts.catalogBidding\r\n      ? \"Catalog & Bidding\"\r\n      : \"Read Only Catalog\"\r\n      }}\r\n    </h1>\r\n    <div class=\"des\" [innerHTML]=\"helpTextData\"></div>\r\n  </div>\r\n</ng-template>\r\n","import { Injectable, ɵɵdefineInjectable, EventEmitter, Component, ChangeDetectionStrategy, ChangeDetectorRef, Renderer2, ElementRef, Directive, ViewContainerRef, Input, Output, TemplateRef, HostBinding, HostListener, NgModule } from '@angular/core';\nimport { filter } from 'rxjs/operators';\nimport { ComponentLoaderFactory } from 'ngx-bootstrap/component-loader';\nimport { isBs3 } from 'ngx-bootstrap/utils';\nimport { style, animate, AnimationBuilder } from '@angular/animations';\nimport { PositioningService } from 'ngx-bootstrap/positioning';\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/**\n * Default dropdown configuration\n */\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/animations';\nimport * as ɵngcc2 from 'ngx-bootstrap/component-loader';\n\nconst _c0 = [\"*\"];\nclass BsDropdownConfig {\n    constructor() {\n        /**\n         * default dropdown auto closing behavior\n         */\n        this.autoClose = true;\n        /**\n         * default dropdown auto closing behavior\n         */\n        this.insideClick = false;\n        /**\n         * turn on/off animation\n         */\n        this.isAnimated = false;\n    }\n}\nBsDropdownConfig.ɵfac = function BsDropdownConfig_Factory(t) { return new (t || BsDropdownConfig)(); };\n/** @nocollapse */ BsDropdownConfig.ɵprov = ɵɵdefineInjectable({ factory: function BsDropdownConfig_Factory() { return new BsDropdownConfig(); }, token: BsDropdownConfig, providedIn: \"root\" });\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownConfig, [{\n        type: Injectable,\n        args: [{\n                providedIn: 'root'\n            }]\n    }], function () { return []; }, null); })();\nif (false) {\n    /**\n     * default dropdown auto closing behavior\n     * @type {?}\n     */\n    BsDropdownConfig.prototype.autoClose;\n    /**\n     * default dropdown auto closing behavior\n     * @type {?}\n     */\n    BsDropdownConfig.prototype.insideClick;\n    /**\n     * turn on/off animation\n     * @type {?}\n     */\n    BsDropdownConfig.prototype.isAnimated;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownState {\n    constructor() {\n        this.direction = 'down';\n        this.isOpenChange = new EventEmitter();\n        this.isDisabledChange = new EventEmitter();\n        this.toggleClick = new EventEmitter();\n        this.dropdownMenu = new Promise((/**\n         * @param {?} resolve\n         * @return {?}\n         */\n        resolve => {\n            this.resolveDropdownMenu = resolve;\n        }));\n    }\n}\nBsDropdownState.ɵfac = function BsDropdownState_Factory(t) { return new (t || BsDropdownState)(); };\nBsDropdownState.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: BsDropdownState, factory: BsDropdownState.ɵfac });\n/** @nocollapse */\nBsDropdownState.ctorParameters = () => [];\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownState, [{\n        type: Injectable\n    }], function () { return []; }, null); })();\nif (false) {\n    /** @type {?} */\n    BsDropdownState.prototype.direction;\n    /** @type {?} */\n    BsDropdownState.prototype.autoClose;\n    /** @type {?} */\n    BsDropdownState.prototype.insideClick;\n    /** @type {?} */\n    BsDropdownState.prototype.isAnimated;\n    /** @type {?} */\n    BsDropdownState.prototype.isOpenChange;\n    /** @type {?} */\n    BsDropdownState.prototype.isDisabledChange;\n    /** @type {?} */\n    BsDropdownState.prototype.toggleClick;\n    /**\n     * Content to be displayed as popover.\n     * @type {?}\n     */\n    BsDropdownState.prototype.dropdownMenu;\n    /** @type {?} */\n    BsDropdownState.prototype.resolveDropdownMenu;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/** @type {?} */\nconst DROPDOWN_ANIMATION_TIMING = '220ms cubic-bezier(0, 0, 0.2, 1)';\n/** @type {?} */\nconst dropdownAnimation = [\n    style({ height: 0, overflow: 'hidden' }),\n    animate(DROPDOWN_ANIMATION_TIMING, style({ height: '*', overflow: 'hidden' }))\n];\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownContainerComponent {\n    /**\n     * @param {?} _state\n     * @param {?} cd\n     * @param {?} _renderer\n     * @param {?} _element\n     * @param {?} _builder\n     */\n    constructor(_state, cd, _renderer, _element, _builder) {\n        this._state = _state;\n        this.cd = cd;\n        this._renderer = _renderer;\n        this._element = _element;\n        this.isOpen = false;\n        this._factoryDropDownAnimation = _builder.build(dropdownAnimation);\n        this._subscription = _state.isOpenChange.subscribe((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => {\n            this.isOpen = value;\n            /** @type {?} */\n            const dropdown = this._element.nativeElement.querySelector('.dropdown-menu');\n            this._renderer.addClass(this._element.nativeElement.querySelector('div'), 'open');\n            if (dropdown && !isBs3()) {\n                this._renderer.addClass(dropdown, 'show');\n                if (dropdown.classList.contains('dropdown-menu-right')) {\n                    this._renderer.setStyle(dropdown, 'left', 'auto');\n                    this._renderer.setStyle(dropdown, 'right', '0');\n                }\n                if (this.direction === 'up') {\n                    this._renderer.setStyle(dropdown, 'top', 'auto');\n                    this._renderer.setStyle(dropdown, 'transform', 'translateY(-101%)');\n                }\n            }\n            if (dropdown && this._state.isAnimated) {\n                this._factoryDropDownAnimation.create(dropdown)\n                    .play();\n            }\n            this.cd.markForCheck();\n            this.cd.detectChanges();\n        }));\n    }\n    /**\n     * @return {?}\n     */\n    get direction() {\n        return this._state.direction;\n    }\n    /**\n     * \\@internal\n     * @param {?} el\n     * @return {?}\n     */\n    _contains(el) {\n        return this._element.nativeElement.contains(el);\n    }\n    /**\n     * @return {?}\n     */\n    ngOnDestroy() {\n        this._subscription.unsubscribe();\n    }\n}\nBsDropdownContainerComponent.ɵfac = function BsDropdownContainerComponent_Factory(t) { return new (t || BsDropdownContainerComponent)(ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc1.AnimationBuilder)); };\nBsDropdownContainerComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: BsDropdownContainerComponent, selectors: [[\"bs-dropdown-container\"]], hostAttrs: [2, \"display\", \"block\", \"position\", \"absolute\", \"z-index\", \"1040\"], ngContentSelectors: _c0, decls: 2, vars: 8, template: function BsDropdownContainerComponent_Template(rf, ctx) { if (rf & 1) {\n        ɵngcc0.ɵɵprojectionDef();\n        ɵngcc0.ɵɵelementStart(0, \"div\");\n        ɵngcc0.ɵɵprojection(1);\n        ɵngcc0.ɵɵelementEnd();\n    } if (rf & 2) {\n        ɵngcc0.ɵɵclassProp(\"dropup\", ctx.direction === \"up\")(\"dropdown\", ctx.direction === \"down\")(\"show\", ctx.isOpen)(\"open\", ctx.isOpen);\n    } }, directives: function () { return [BsDropdownDirective]; }, encapsulation: 2, changeDetection: 0 });\n/** @nocollapse */\nBsDropdownContainerComponent.ctorParameters = () => [\n    { type: BsDropdownState },\n    { type: ChangeDetectorRef },\n    { type: Renderer2 },\n    { type: ElementRef },\n    { type: AnimationBuilder }\n];\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownContainerComponent, [{\n        type: Component,\n        args: [{\n                selector: 'bs-dropdown-container',\n                changeDetection: ChangeDetectionStrategy.OnPush,\n                host: {\n                    style: 'display:block;position: absolute;z-index: 1040'\n                },\n                template: `\n    <div [class.dropup]=\"direction === 'up'\"\n         [class.dropdown]=\"direction === 'down'\"\n         [class.show]=\"isOpen\"\n         [class.open]=\"isOpen\"><ng-content></ng-content>\n    </div>\n  `\n            }]\n    }], function () { return [{ type: BsDropdownState }, { type: ɵngcc0.ChangeDetectorRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ElementRef }, { type: ɵngcc1.AnimationBuilder }]; }, null); })();\nif (false) {\n    /** @type {?} */\n    BsDropdownContainerComponent.prototype.isOpen;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype._factoryDropDownAnimation;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype._subscription;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype._state;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype.cd;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype._renderer;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownContainerComponent.prototype._element;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownDirective {\n    /**\n     * @param {?} _elementRef\n     * @param {?} _renderer\n     * @param {?} _viewContainerRef\n     * @param {?} _cis\n     * @param {?} _state\n     * @param {?} _config\n     * @param {?} _builder\n     */\n    constructor(_elementRef, _renderer, _viewContainerRef, _cis, _state, _config, _builder) {\n        this._elementRef = _elementRef;\n        this._renderer = _renderer;\n        this._viewContainerRef = _viewContainerRef;\n        this._cis = _cis;\n        this._state = _state;\n        this._config = _config;\n        // todo: move to component loader\n        this._isInlineOpen = false;\n        this._subscriptions = [];\n        this._isInited = false;\n        // set initial dropdown state from config\n        this._state.autoClose = this._config.autoClose;\n        this._state.insideClick = this._config.insideClick;\n        this._state.isAnimated = this._config.isAnimated;\n        this._factoryDropDownAnimation = _builder.build(dropdownAnimation);\n        // create dropdown component loader\n        this._dropdown = this._cis\n            .createLoader(this._elementRef, this._viewContainerRef, this._renderer)\n            .provide({ provide: BsDropdownState, useValue: this._state });\n        this.onShown = this._dropdown.onShown;\n        this.onHidden = this._dropdown.onHidden;\n        this.isOpenChange = this._state.isOpenChange;\n    }\n    /**\n     * Indicates that dropdown will be closed on item or document click,\n     * and after pressing ESC\n     * @param {?} value\n     * @return {?}\n     */\n    set autoClose(value) {\n        this._state.autoClose = value;\n    }\n    /**\n     * @return {?}\n     */\n    get autoClose() {\n        return this._state.autoClose;\n    }\n    /**\n     * Indicates that dropdown will be animated\n     * @param {?} value\n     * @return {?}\n     */\n    set isAnimated(value) {\n        this._state.isAnimated = value;\n    }\n    /**\n     * @return {?}\n     */\n    get isAnimated() {\n        return this._state.isAnimated;\n    }\n    /**\n     * This attribute indicates that the dropdown shouldn't close on inside click when autoClose is set to true\n     * @param {?} value\n     * @return {?}\n     */\n    set insideClick(value) {\n        this._state.insideClick = value;\n    }\n    /**\n     * @return {?}\n     */\n    get insideClick() {\n        return this._state.insideClick;\n    }\n    /**\n     * Disables dropdown toggle and hides dropdown menu if opened\n     * @param {?} value\n     * @return {?}\n     */\n    set isDisabled(value) {\n        this._isDisabled = value;\n        this._state.isDisabledChange.emit(value);\n        if (value) {\n            this.hide();\n        }\n    }\n    /**\n     * @return {?}\n     */\n    get isDisabled() {\n        return this._isDisabled;\n    }\n    /**\n     * Returns whether or not the popover is currently being shown\n     * @return {?}\n     */\n    get isOpen() {\n        if (this._showInline) {\n            return this._isInlineOpen;\n        }\n        return this._dropdown.isShown;\n    }\n    /**\n     * @param {?} value\n     * @return {?}\n     */\n    set isOpen(value) {\n        if (value) {\n            this.show();\n        }\n        else {\n            this.hide();\n        }\n    }\n    /**\n     * @return {?}\n     */\n    get isBs4() {\n        return !isBs3();\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    get _showInline() {\n        return !this.container;\n    }\n    /**\n     * @return {?}\n     */\n    ngOnInit() {\n        // fix: seems there are an issue with `routerLinkActive`\n        // which result in duplicated call ngOnInit without call to ngOnDestroy\n        // read more: https://github.com/valor-software/ngx-bootstrap/issues/1885\n        if (this._isInited) {\n            return;\n        }\n        this._isInited = true;\n        // attach DOM listeners\n        this._dropdown.listen({\n            // because of dropdown inline mode\n            outsideClick: false,\n            triggers: this.triggers,\n            show: (/**\n             * @return {?}\n             */\n            () => this.show())\n        });\n        // toggle visibility on toggle element click\n        this._subscriptions.push(this._state.toggleClick.subscribe((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => this.toggle(value))));\n        // hide dropdown if set disabled while opened\n        this._subscriptions.push(this._state.isDisabledChange\n            .pipe(filter((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => value)))\n            .subscribe((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => this.hide())));\n    }\n    /**\n     * Opens an element’s popover. This is considered a “manual” triggering of\n     * the popover.\n     * @return {?}\n     */\n    show() {\n        if (this.isOpen || this.isDisabled) {\n            return;\n        }\n        if (this._showInline) {\n            if (!this._inlinedMenu) {\n                this._state.dropdownMenu.then((/**\n                 * @param {?} dropdownMenu\n                 * @return {?}\n                 */\n                (dropdownMenu) => {\n                    this._dropdown.attachInline(dropdownMenu.viewContainer, dropdownMenu.templateRef);\n                    this._inlinedMenu = this._dropdown._inlineViewRef;\n                    this.addBs4Polyfills();\n                    this._renderer.addClass(this._inlinedMenu.rootNodes[0].parentNode, 'open');\n                    this.playAnimation();\n                }))\n                    // swallow errors\n                    .catch();\n            }\n            this.addBs4Polyfills();\n            this._isInlineOpen = true;\n            this.onShown.emit(true);\n            this._state.isOpenChange.emit(true);\n            this.playAnimation();\n            return;\n        }\n        this._state.dropdownMenu.then((/**\n         * @param {?} dropdownMenu\n         * @return {?}\n         */\n        dropdownMenu => {\n            // check direction in which dropdown should be opened\n            /** @type {?} */\n            const _dropup = this.dropup ||\n                (typeof this.dropup !== 'undefined' && this.dropup);\n            this._state.direction = _dropup ? 'up' : 'down';\n            /** @type {?} */\n            const _placement = this.placement || (_dropup ? 'top start' : 'bottom start');\n            // show dropdown\n            this._dropdown\n                .attach(BsDropdownContainerComponent)\n                .to(this.container)\n                .position({ attachment: _placement })\n                .show({\n                content: dropdownMenu.templateRef,\n                placement: _placement\n            });\n            this._state.isOpenChange.emit(true);\n        }))\n            // swallow error\n            .catch();\n    }\n    /**\n     * Closes an element’s popover. This is considered a “manual” triggering of\n     * the popover.\n     * @return {?}\n     */\n    hide() {\n        if (!this.isOpen) {\n            return;\n        }\n        if (this._showInline) {\n            this.removeShowClass();\n            this.removeDropupStyles();\n            this._isInlineOpen = false;\n            this.onHidden.emit(true);\n        }\n        else {\n            this._dropdown.hide();\n        }\n        this._state.isOpenChange.emit(false);\n    }\n    /**\n     * Toggles an element’s popover. This is considered a “manual” triggering of\n     * the popover. With parameter <code>true</code> allows toggling, with parameter <code>false</code>\n     * only hides opened dropdown. Parameter usage will be removed in ngx-bootstrap v3\n     * @param {?=} value\n     * @return {?}\n     */\n    toggle(value) {\n        if (this.isOpen || !value) {\n            return this.hide();\n        }\n        return this.show();\n    }\n    /**\n     * \\@internal\n     * @param {?} event\n     * @return {?}\n     */\n    _contains(event) {\n        return this._elementRef.nativeElement.contains(event.target) ||\n            (this._dropdown.instance && this._dropdown.instance._contains(event.target));\n    }\n    /**\n     * @return {?}\n     */\n    ngOnDestroy() {\n        // clean up subscriptions and destroy dropdown\n        for (const sub of this._subscriptions) {\n            sub.unsubscribe();\n        }\n        this._dropdown.dispose();\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    addBs4Polyfills() {\n        if (!isBs3()) {\n            this.addShowClass();\n            this.checkRightAlignment();\n            this.addDropupStyles();\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    playAnimation() {\n        if (this._state.isAnimated && this._inlinedMenu) {\n            setTimeout((/**\n             * @return {?}\n             */\n            () => {\n                this._factoryDropDownAnimation.create(this._inlinedMenu.rootNodes[0])\n                    .play();\n            }));\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    addShowClass() {\n        if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n            this._renderer.addClass(this._inlinedMenu.rootNodes[0], 'show');\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    removeShowClass() {\n        if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n            this._renderer.removeClass(this._inlinedMenu.rootNodes[0], 'show');\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    checkRightAlignment() {\n        if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n            /** @type {?} */\n            const isRightAligned = this._inlinedMenu.rootNodes[0].classList.contains('dropdown-menu-right');\n            this._renderer.setStyle(this._inlinedMenu.rootNodes[0], 'left', isRightAligned ? 'auto' : '0');\n            this._renderer.setStyle(this._inlinedMenu.rootNodes[0], 'right', isRightAligned ? '0' : 'auto');\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    addDropupStyles() {\n        if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n            // a little hack to not break support of bootstrap 4 beta\n            this._renderer.setStyle(this._inlinedMenu.rootNodes[0], 'top', this.dropup ? 'auto' : '100%');\n            this._renderer.setStyle(this._inlinedMenu.rootNodes[0], 'transform', this.dropup ? 'translateY(-101%)' : 'translateY(0)');\n            this._renderer.setStyle(this._inlinedMenu.rootNodes[0], 'bottom', 'auto');\n        }\n    }\n    /**\n     * @private\n     * @return {?}\n     */\n    removeDropupStyles() {\n        if (this._inlinedMenu && this._inlinedMenu.rootNodes[0]) {\n            this._renderer.removeStyle(this._inlinedMenu.rootNodes[0], 'top');\n            this._renderer.removeStyle(this._inlinedMenu.rootNodes[0], 'transform');\n            this._renderer.removeStyle(this._inlinedMenu.rootNodes[0], 'bottom');\n        }\n    }\n}\nBsDropdownDirective.ɵfac = function BsDropdownDirective_Factory(t) { return new (t || BsDropdownDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc2.ComponentLoaderFactory), ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(BsDropdownConfig), ɵngcc0.ɵɵdirectiveInject(ɵngcc1.AnimationBuilder)); };\nBsDropdownDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BsDropdownDirective, selectors: [[\"\", \"bsDropdown\", \"\"], [\"\", \"dropdown\", \"\"]], hostVars: 6, hostBindings: function BsDropdownDirective_HostBindings(rf, ctx) { if (rf & 2) {\n        ɵngcc0.ɵɵclassProp(\"dropup\", ctx.dropup)(\"open\", ctx.isOpen)(\"show\", ctx.isOpen && ctx.isBs4);\n    } }, inputs: { autoClose: \"autoClose\", isAnimated: \"isAnimated\", insideClick: \"insideClick\", isDisabled: \"isDisabled\", isOpen: \"isOpen\", placement: \"placement\", triggers: \"triggers\", container: \"container\", dropup: \"dropup\" }, outputs: { onShown: \"onShown\", onHidden: \"onHidden\", isOpenChange: \"isOpenChange\" }, exportAs: [\"bs-dropdown\"], features: [ɵngcc0.ɵɵProvidersFeature([BsDropdownState])] });\n/** @nocollapse */\nBsDropdownDirective.ctorParameters = () => [\n    { type: ElementRef },\n    { type: Renderer2 },\n    { type: ViewContainerRef },\n    { type: ComponentLoaderFactory },\n    { type: BsDropdownState },\n    { type: BsDropdownConfig },\n    { type: AnimationBuilder }\n];\nBsDropdownDirective.propDecorators = {\n    placement: [{ type: Input }],\n    triggers: [{ type: Input }],\n    container: [{ type: Input }],\n    dropup: [{ type: Input }],\n    autoClose: [{ type: Input }],\n    isAnimated: [{ type: Input }],\n    insideClick: [{ type: Input }],\n    isDisabled: [{ type: Input }],\n    isOpen: [{ type: Input }],\n    isOpenChange: [{ type: Output }],\n    onShown: [{ type: Output }],\n    onHidden: [{ type: Output }]\n};\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownDirective, [{\n        type: Directive,\n        args: [{\n                selector: '[bsDropdown],[dropdown]',\n                exportAs: 'bs-dropdown',\n                providers: [BsDropdownState],\n                host: {\n                    '[class.dropup]': 'dropup',\n                    '[class.open]': 'isOpen',\n                    '[class.show]': 'isOpen && isBs4'\n                }\n            }]\n    }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc2.ComponentLoaderFactory }, { type: BsDropdownState }, { type: BsDropdownConfig }, { type: ɵngcc1.AnimationBuilder }]; }, { onShown: [{\n            type: Output\n        }], onHidden: [{\n            type: Output\n        }], isOpenChange: [{\n            type: Output\n        }], autoClose: [{\n            type: Input\n        }], isAnimated: [{\n            type: Input\n        }], insideClick: [{\n            type: Input\n        }], isDisabled: [{\n            type: Input\n        }], isOpen: [{\n            type: Input\n        }], placement: [{\n            type: Input\n        }], triggers: [{\n            type: Input\n        }], container: [{\n            type: Input\n        }], dropup: [{\n            type: Input\n        }] }); })();\nif (false) {\n    /**\n     * Placement of a popover. Accepts: \"top\", \"bottom\", \"left\", \"right\"\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.placement;\n    /**\n     * Specifies events that should trigger. Supports a space separated list of\n     * event names.\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.triggers;\n    /**\n     * A selector specifying the element the popover should be appended to.\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.container;\n    /**\n     * This attribute indicates that the dropdown should be opened upwards\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.dropup;\n    /**\n     * Emits an event when isOpen change\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.isOpenChange;\n    /**\n     * Emits an event when the popover is shown\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.onShown;\n    /**\n     * Emits an event when the popover is hidden\n     * @type {?}\n     */\n    BsDropdownDirective.prototype.onHidden;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._dropdown;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._isInlineOpen;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._inlinedMenu;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._isDisabled;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._subscriptions;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._isInited;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._factoryDropDownAnimation;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._elementRef;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._renderer;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._viewContainerRef;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._cis;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._state;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownDirective.prototype._config;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownMenuDirective {\n    // tslint:disable:no-any\n    /**\n     * @param {?} _state\n     * @param {?} _viewContainer\n     * @param {?} _templateRef\n     */\n    constructor(_state, _viewContainer, _templateRef) {\n        _state.resolveDropdownMenu({\n            templateRef: _templateRef,\n            viewContainer: _viewContainer\n        });\n    }\n}\nBsDropdownMenuDirective.ɵfac = function BsDropdownMenuDirective_Factory(t) { return new (t || BsDropdownMenuDirective)(ɵngcc0.ɵɵdirectiveInject(BsDropdownState), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ViewContainerRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.TemplateRef)); };\nBsDropdownMenuDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BsDropdownMenuDirective, selectors: [[\"\", \"bsDropdownMenu\", \"\"], [\"\", \"dropdownMenu\", \"\"]], exportAs: [\"bs-dropdown-menu\"] });\n/** @nocollapse */\nBsDropdownMenuDirective.ctorParameters = () => [\n    { type: BsDropdownState },\n    { type: ViewContainerRef },\n    { type: TemplateRef }\n];\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownMenuDirective, [{\n        type: Directive,\n        args: [{\n                selector: '[bsDropdownMenu],[dropdownMenu]',\n                exportAs: 'bs-dropdown-menu'\n            }]\n    }], function () { return [{ type: BsDropdownState }, { type: ɵngcc0.ViewContainerRef }, { type: ɵngcc0.TemplateRef }]; }, null); })();\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownToggleDirective {\n    /**\n     * @param {?} _changeDetectorRef\n     * @param {?} _dropdown\n     * @param {?} _element\n     * @param {?} _renderer\n     * @param {?} _state\n     */\n    constructor(_changeDetectorRef, _dropdown, _element, _renderer, _state) {\n        this._changeDetectorRef = _changeDetectorRef;\n        this._dropdown = _dropdown;\n        this._element = _element;\n        this._renderer = _renderer;\n        this._state = _state;\n        this.isDisabled = null;\n        this._subscriptions = [];\n        // sync is open value with state\n        this._subscriptions.push(this._state.isOpenChange.subscribe((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => {\n            this.isOpen = value;\n            if (value) {\n                this._documentClickListener = this._renderer.listen('document', 'click', (/**\n                 * @param {?} event\n                 * @return {?}\n                 */\n                (event) => {\n                    if (this._state.autoClose && event.button !== 2 &&\n                        !this._element.nativeElement.contains(event.target) &&\n                        !(this._state.insideClick && this._dropdown._contains(event))) {\n                        this._state.toggleClick.emit(false);\n                        this._changeDetectorRef.detectChanges();\n                    }\n                }));\n                this._escKeyUpListener = this._renderer.listen(this._element.nativeElement, 'keyup.esc', (/**\n                 * @return {?}\n                 */\n                () => {\n                    if (this._state.autoClose) {\n                        this._state.toggleClick.emit(false);\n                        this._changeDetectorRef.detectChanges();\n                    }\n                }));\n            }\n            else {\n                this._documentClickListener();\n                this._escKeyUpListener();\n            }\n        })));\n        // populate disabled state\n        this._subscriptions.push(this._state.isDisabledChange.subscribe((/**\n         * @param {?} value\n         * @return {?}\n         */\n        (value) => (this.isDisabled = value || null))));\n    }\n    /**\n     * @return {?}\n     */\n    onClick() {\n        if (this.isDisabled) {\n            return;\n        }\n        this._state.toggleClick.emit(true);\n    }\n    /**\n     * @return {?}\n     */\n    ngOnDestroy() {\n        if (this._documentClickListener) {\n            this._documentClickListener();\n        }\n        if (this._escKeyUpListener) {\n            this._escKeyUpListener();\n        }\n        for (const sub of this._subscriptions) {\n            sub.unsubscribe();\n        }\n    }\n}\nBsDropdownToggleDirective.ɵfac = function BsDropdownToggleDirective_Factory(t) { return new (t || BsDropdownToggleDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ChangeDetectorRef), ɵngcc0.ɵɵdirectiveInject(BsDropdownDirective), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(BsDropdownState)); };\nBsDropdownToggleDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: BsDropdownToggleDirective, selectors: [[\"\", \"bsDropdownToggle\", \"\"], [\"\", \"dropdownToggle\", \"\"]], hostVars: 3, hostBindings: function BsDropdownToggleDirective_HostBindings(rf, ctx) { if (rf & 1) {\n        ɵngcc0.ɵɵlistener(\"click\", function BsDropdownToggleDirective_click_HostBindingHandler() { return ctx.onClick(); });\n    } if (rf & 2) {\n        ɵngcc0.ɵɵattribute(\"aria-haspopup\", true)(\"disabled\", ctx.isDisabled)(\"aria-expanded\", ctx.isOpen);\n    } }, exportAs: [\"bs-dropdown-toggle\"] });\n/** @nocollapse */\nBsDropdownToggleDirective.ctorParameters = () => [\n    { type: ChangeDetectorRef },\n    { type: BsDropdownDirective },\n    { type: ElementRef },\n    { type: Renderer2 },\n    { type: BsDropdownState }\n];\nBsDropdownToggleDirective.propDecorators = {\n    isDisabled: [{ type: HostBinding, args: ['attr.disabled',] }],\n    isOpen: [{ type: HostBinding, args: ['attr.aria-expanded',] }],\n    onClick: [{ type: HostListener, args: ['click', [],] }]\n};\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownToggleDirective, [{\n        type: Directive,\n        args: [{\n                selector: '[bsDropdownToggle],[dropdownToggle]',\n                exportAs: 'bs-dropdown-toggle',\n                host: {\n                    '[attr.aria-haspopup]': 'true'\n                }\n            }]\n    }], function () { return [{ type: ɵngcc0.ChangeDetectorRef }, { type: BsDropdownDirective }, { type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: BsDropdownState }]; }, { isDisabled: [{\n            type: HostBinding,\n            args: ['attr.disabled']\n        }], isOpen: [{\n            type: HostBinding,\n            args: ['attr.aria-expanded']\n        }], \n    /**\n     * @return {?}\n     */\n    onClick: [{\n            type: HostListener,\n            args: ['click', []]\n        }] }); })();\nif (false) {\n    /** @type {?} */\n    BsDropdownToggleDirective.prototype.isDisabled;\n    /** @type {?} */\n    BsDropdownToggleDirective.prototype.isOpen;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._subscriptions;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._documentClickListener;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._escKeyUpListener;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._changeDetectorRef;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._dropdown;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._element;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._renderer;\n    /**\n     * @type {?}\n     * @private\n     */\n    BsDropdownToggleDirective.prototype._state;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass BsDropdownModule {\n    // tslint:disable-next-line:no-any\n    /**\n     * @param {?=} config\n     * @return {?}\n     */\n    static forRoot(config) {\n        return {\n            ngModule: BsDropdownModule,\n            providers: [\n                ComponentLoaderFactory,\n                PositioningService,\n                BsDropdownState\n            ]\n        };\n    }\n}\nBsDropdownModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: BsDropdownModule });\nBsDropdownModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function BsDropdownModule_Factory(t) { return new (t || BsDropdownModule)(); } });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(BsDropdownModule, { declarations: [BsDropdownMenuDirective, BsDropdownToggleDirective, BsDropdownContainerComponent, BsDropdownDirective], exports: [BsDropdownMenuDirective, BsDropdownToggleDirective, BsDropdownDirective] }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(BsDropdownModule, [{\n        type: NgModule,\n        args: [{\n                declarations: [\n                    BsDropdownMenuDirective,\n                    BsDropdownToggleDirective,\n                    BsDropdownContainerComponent,\n                    BsDropdownDirective\n                ],\n                exports: [\n                    BsDropdownMenuDirective,\n                    BsDropdownToggleDirective,\n                    BsDropdownDirective\n                ],\n                entryComponents: [BsDropdownContainerComponent]\n            }]\n    }], null, null); })();\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\nexport { BsDropdownConfig, BsDropdownContainerComponent, BsDropdownDirective, BsDropdownMenuDirective, BsDropdownModule, BsDropdownState, BsDropdownToggleDirective };\n\n//# sourceMappingURL=ngx-bootstrap-dropdown.js.map","import { Router } from '@angular/router';\r\nimport {\r\n  Component,\r\n  OnInit,\r\n  OnDestroy,\r\n  TemplateRef,\r\n  EventEmitter,\r\n} from '@angular/core';\r\n\r\nimport { BsDropdownConfig } from 'ngx-bootstrap/dropdown';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport { Announcement } from '../../../../../models';\r\nimport {\r\n  EventBusService,\r\n  AuthenticationService,\r\n  AnnouncementService,\r\n} from '../../../../../services';\r\nimport routeTable from '../../../../../utility/routeTable';\r\nimport constants from '../../../../../utility/constants';\r\nimport {  Subscription } from 'rxjs';\r\n@Component({\r\n  selector: 'app-public-header',\r\n  templateUrl: './public-header.component.html',\r\n  styleUrls: ['./public-header.component.css'],\r\n  providers: [\r\n    {\r\n      provide: BsDropdownConfig,\r\n      useValue: { isAnimated: true, autoClose: true },\r\n    },\r\n  ],\r\n})\r\nexport class PublicHeaderComponent implements OnInit, OnDestroy {\r\n  openEventRegistrationModal: EventEmitter<any> = new EventEmitter();\r\n  modalRef: BsModalRef;\r\n  showCovidWarning = true;\r\n  showNavBar = false;\r\n  loggedIn: boolean;\r\n  user: any;\r\n  firstName: string;\r\n  lastName: string;\r\n  announcement: Announcement;\r\n  role: any;\r\n  name = 'Sign In';\r\n  private subscriptions: Array<Subscription> = [];\r\n\r\n  routes = routeTable.public;\r\n  roles = constants.common.loginType;\r\n  private readonly userTypes = constants.common.loginType;\r\n\r\n  constructor(\r\n    private modalService: BsModalService,\r\n    private ebs: EventBusService,\r\n    private as: AuthenticationService,\r\n    private announcementService: AnnouncementService,\r\n    public router: Router\r\n  ) {\r\n    const loggedInName = this.as.getLoggedInName.subscribe((name: any) => {\r\n      if (name == 'Sign In') {\r\n        this.loggedIn = false;\r\n      }\r\n    });\r\n    this.subscriptions.push(loggedInName)\r\n  }\r\n\r\n  ngOnInit(): void {\r\n    this.addHeaderScrollEvent();\r\n    this.loggedIn = this.as.checkLoggedIn();\r\n    this.role =\r\n      this.as.currentBuyerValue() === null\r\n        ? 'Buyer'\r\n        : this.as.currentBuyerValue()?.user?.role?.name;\r\n    if (this.loggedIn == true) {\r\n      this.user = this.as.currentBuyerValue()?.user;\r\n      this.firstName = this.user?.firstName;\r\n      this.lastName = this.user?.lastName;\r\n    }\r\n    const notification = this.ebs.notification.subscribe((res) => {\r\n      if (res == 'user-dashboard') {\r\n        this.loggedIn = this.as.checkLoggedIn();\r\n      }\r\n    });\r\n    this.subscriptions.push(notification)\r\n    const getName = this.ebs.getName().subscribe((name) => {\r\n      this.firstName = name.split(' ')[0];\r\n      this.lastName = name.split(' ')[1];\r\n      if (name) {\r\n        this.loggedIn = this.as.checkLoggedIn();\r\n        this.role =\r\n          this.as.currentBuyerValue() === null\r\n            ? 'Buyer'\r\n            : this.as.currentBuyerValue()?.user?.role?.name;\r\n      }\r\n    });\r\n    this.subscriptions.push(getName)\r\n    this.getAnnoucement();\r\n  }\r\n\r\n  getAnnoucement() {\r\n    const getAnnouncement = this.announcementService.getAnnouncements().subscribe((response) => {\r\n      this.announcement = response;\r\n    });\r\n    this.subscriptions.push(getAnnouncement)\r\n  }\r\n\r\n  openModal(template: TemplateRef<any> | string) {\r\n    this.modalRef = this.modalService.show(\r\n      template,\r\n      Object.assign(\r\n        {},\r\n        {\r\n          class: 'custom-popup user-login modal-dialog modal-dialog-centered',\r\n        }\r\n      )\r\n    );\r\n  }\r\n  openModalFile(modalName: String) {\r\n    this.ebs.notification.emit(modalName);\r\n  }\r\n  fixHeaderPosition() {\r\n    let headerElement = document.getElementsByTagName('header')[0];\r\n    let bodyElement = document.body;\r\n    var top =\r\n      (window.pageYOffset || document.documentElement.scrollTop) -\r\n      (document.documentElement.clientTop || 0);\r\n    if (headerElement.offsetTop <= top && top > 1) {\r\n      headerElement.classList.add('header-fixed');\r\n      bodyElement.style.paddingTop = headerElement.clientHeight + 'px';\r\n    } else {\r\n      headerElement.classList.remove('header-fixed');\r\n      bodyElement.style.paddingTop = '0';\r\n    }\r\n  }\r\n\r\n  addHeaderScrollEvent() {\r\n    document.addEventListener('scroll', this.fixHeaderPosition);\r\n  }\r\n\r\n  removeHeaderScrollEvent() {\r\n    document.removeEventListener('scroll', this.fixHeaderPosition);\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    this.removeHeaderScrollEvent();\r\n    this.subscriptions.forEach((sub: Subscription) => {\r\n      sub.unsubscribe();\r\n    });\r\n  }\r\n\r\n  logout() {\r\n    this.as.logout(this.userTypes.public);\r\n    this.loggedIn = false;\r\n  }\r\n}\r\n","<div class=\"header-notification\" *ngIf=\"announcement != null && announcement.isActive == true\"\r\n  [ngClass]=\"{ hide: !showCovidWarning }\">\r\n  <span>{{ announcement.description }}</span>\r\n  <button type=\"button\" role=\"button\" (click)=\"showCovidWarning = false\">\r\n    <img src=\"/assets/images/close-home-white.svg\" width=\"11\" height=\"11\" />\r\n  </button>\r\n</div>\r\n\r\n<header>\r\n  <div class=\"container\">\r\n    <nav class=\"navbar navbar-expand-xl navbar-light bg-transparent\">\r\n      <a class=\"navbar-brand\" routerLink=\"/\">\r\n        <img src=\"/assets/images/the-branford-logo.svg\" width=\"203\" height=\"48\" />\r\n      </a>\r\n\r\n      <div class=\"menu-notifications-icon-mobile\">\r\n        <!-- <div class=\"nav-item menu-notifications-icon\" *ngIf=\"loggedIn && role == 'Buyer'\">\r\n          <div class=\"noti-dropdown\" notification-counter></div>\r\n        </div> -->\r\n\r\n        <button class=\"navbar-toggler\" type=\"button\" data-toggle=\"collapse\" data-target=\"#navbarSupportedContent\"\r\n          aria-controls=\"navbarSupportedContent\" aria-expanded=\"false\" aria-label=\"Toggle navigation\" role=\"button\"\r\n          (click)=\"showNavBar = !showNavBar\">\r\n          <img src=\"../assets/images/mobile-toggle.svg\" title=\"menu-toggle-icon\" />\r\n        </button>\r\n      </div>\r\n\r\n      <div class=\"collapse navbar-collapse\" [ngClass]=\"{ show: showNavBar }\">\r\n        <ul class=\"navbar-nav ml-auto\">\r\n          <li class=\"nav-item\">\r\n            <div class=\"btn-group\" dropdown>\r\n              <button dropdownToggle type=\"button\" class=\"no-bg-btn nav-link\" [class.active]=\"\r\n                  router.isActive('/' + routes.currentAuction, true) ||\r\n                  router.isActive('/' + routes.pastAuction, true) ||\r\n                  router.isActive('/' + routes.turnKeySale, true) ||\r\n                  router.isActive('/' + routes.machinery, true) ||\r\n                  router.isActive('/' + routes.featuredPast, true) ||\r\n                  router.isActive('search-lot-catalog', true)\r\n                \">\r\n                Auctions\r\n                <img src=\"/assets/images/arrow-down.svg\" />\r\n              </button>\r\n              <ul *dropdownMenu class=\"dropdown-menu\" role=\"menu\">\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"['/' + routes.currentAuction]\" routerLinkActive=\"active\">Current Auctions</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"['/' + routes.pastAuction]\" routerLinkActive=\"active\">Recent Auctions</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"['/' + routes.turnKeySale]\" routerLinkActive=\"active\">Past Turnkey Sales</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"['/' + routes.machinery]\" routerLinkActive=\"active\">Machinery Marketplace</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"['/' + routes.featuredPast]\" routerLinkActive=\"active\">Featured Past Auctions</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" target=\"_blank\"\r\n                    href=\"https://www.branfordauctions.com/dnn3/Auctions/UpcomingLots/tabid/1710/Default.aspx\">Search Lot Catalogs</a>\r\n                </li>\r\n              </ul>\r\n            </div>\r\n          </li>\r\n\r\n          <li class=\"nav-item\">\r\n            <a class=\"nav-link\" [routerLink]=\"['/valuations']\" routerLinkActive=\"active\">Valuations</a>\r\n          </li>\r\n          <li class=\"nav-item\">\r\n            <div class=\"btn-group\" dropdown>\r\n              <button dropdownToggle type=\"button\" class=\"no-bg-btn nav-link\" [class.active]=\"\r\n                  router.isActive('/removal', true) ||\r\n                  router.isActive('/payments', true) ||\r\n                  router.isActive('/faq', true)\r\n                \">\r\n                Buyers\r\n                <img src=\"/assets/images/arrow-down.svg\" />\r\n              </button>\r\n              <ul *dropdownMenu class=\"dropdown-menu\" role=\"menu\">\r\n                <li>\r\n                  <a class=\"dropdown-item\" [routerLink]=\"['/removal']\" routerLinkActive=\"active\">Removal/Rigging</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" [routerLink]=\"['/payments']\" routerLinkActive=\"active\">Payments</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" [routerLink]=\"['/faq']\" routerLinkActive=\"active\">FAQs</a>\r\n                </li>\r\n              </ul>\r\n            </div>\r\n          </li>\r\n          <li class=\"nav-item\">\r\n            <a class=\"nav-link\" role=\"button\" (click)=\"showNavBar = false\" [routerLink]=\"['/sellers']\"\r\n              routerLinkActive=\"active\">Sellers</a>\r\n          </li>\r\n          <li class=\"nav-item\">\r\n            <a class=\"nav-link\" role=\"button\" (click)=\"showNavBar = false\" routerLinkActive=\"active\"\r\n              [routerLink]=\"['/contact']\">Contact</a>\r\n          </li>\r\n          <li class=\"nav-item\">\r\n            <div class=\"btn-group\" dropdown>\r\n              <button dropdownToggle type=\"button\" class=\"no-bg-btn nav-link\" [class.active]=\"\r\n                  router.isActive('/' + routes.whyBranford, true) ||\r\n                  router.isActive('/' + routes.about, true) ||\r\n                  router.isActive('/' + routes.history, true) ||\r\n                  router.isActive('/' + routes.team, true)\r\n                \">\r\n                About\r\n                <img src=\"/assets/images/arrow-down.svg\" />\r\n              </button>\r\n              <ul *dropdownMenu class=\"dropdown-menu\" role=\"menu\">\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\" [routerLink]=\"routes.whyBranford\"\r\n                    routerLinkActive=\"active\">Why Branford</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\" [routerLink]=\"routes.about\"\r\n                    routerLinkActive=\"active\">Services</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\" [routerLink]=\"routes.team\"\r\n                    routerLinkActive=\"active\">Management Team</a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\"\r\n                    [routerLink]=\"routes.assetRecovery\" routerLinkActive=\"active\">\r\n                    Asset Recovery Programs\r\n                  </a>\r\n                </li>\r\n                <li>\r\n                  <a class=\"dropdown-item\" role=\"button\" (click)=\"showNavBar = false\" [routerLink]=\"routes.blogList\"\r\n                    routerLinkActive=\"active\">\r\n                    News\r\n                  </a>\r\n                </li>\r\n              </ul>\r\n            </div>\r\n          </li>\r\n\r\n          <!-- <li class=\"nav-item\" *ngIf=\"!loggedIn || role != 'Buyer'\">\r\n            <button type=\"button\" class=\"btn btn-colored\" role=\"button\"\r\n              (click)=\"openModalFile('register'); showNavBar = false\">\r\n              Create Account\r\n            </button>\r\n            <button type=\"button\" class=\"btn btn-white-border\" role=\"button\"\r\n              (click)=\"openModalFile('login'); showNavBar = false\">\r\n              Sign In\r\n            </button>\r\n          </li> -->\r\n\r\n          <!-- <li class=\"nav-item menu-notifications-icon\" *ngIf=\"loggedIn && role == 'Buyer'\">\r\n            <div class=\"noti-dropdown\" notification-counter></div>\r\n\r\n            <div class=\"menu-mobile-dd\">\r\n              <div class=\"header-profile-menu\">\r\n                <button class=\"my-account-dropdown\" mat-button [matMenuTriggerFor]=\"headermenu\">\r\n                  <span class=\"hpm-img\">\r\n                    <img src=\"../assets/images/user.svg\" />\r\n                  </span>\r\n                  <span *ngIf=\"firstName !== undefined && lastName !== null\">\r\n                    {{ firstName }} {{ lastName }}\r\n                  </span>\r\n                </button>\r\n                <mat-menu #headermenu=\"matMenu\" xPosition=\"before\">\r\n                  <div class=\"header-profile-menu\">\r\n                    <button mat-menu-item routerLink=\"/profile/my-profile\" routerLinkActive=\"active\">\r\n                      My Profile\r\n                    </button>\r\n                    <button mat-menu-item routerLink=\"/profile/registrations\" routerLinkActive=\"active\">\r\n                      My Registrations\r\n                    </button>\r\n                    <button mat-menu-item routerLink=\"/profile/active-bids\" routerLinkActive=\"active\">\r\n                      Active Bids\r\n                    </button>\r\n                    <button mat-menu-item routerLink=\"/profile/my-watchlist\" routerLinkActive=\"active\">\r\n                      My Watchlist\r\n                    </button>\r\n                    <button mat-menu-item routerLink=\"/profile/bid-history\" routerLinkActive=\"active\">\r\n                      Bid History\r\n                    </button>\r\n                    <button mat-menu-item routerLink=\"/profile/setting\" routerLinkActive=\"active\">\r\n                      Notification Settings\r\n                    </button>\r\n                    <button mat-menu-item role=\"button\" (click)=\"logout()\">\r\n                      Logout\r\n                    </button>\r\n                  </div>\r\n                </mat-menu>\r\n              </div>\r\n            </div>\r\n          </li> -->\r\n        </ul>\r\n      </div>\r\n\r\n      <div class=\"nav-bar-shadow\" *ngIf=\"showNavBar\" role=\"button\" (click)=\"showNavBar = false\"></div>\r\n    </nav>\r\n  </div>\r\n</header>\r\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.datebook=t():e.datebook=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var a=t[n]={i:n,l:!1,exports:{}};return e[n].call(a.exports,a,a.exports,r),a.l=!0,a.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var a in e)r.d(n,a,function(t){return e[t]}.bind(null,a));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=5)}([function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(1),a=function(e){return void 0===e&&(e=\"\"),(\"0\"+parseInt(e.toString(),10)).slice(-2)},o=function(e,t){void 0===e&&(e=new Date);var r={YYYY:e.getUTCFullYear(),MM:a(e.getUTCMonth()+1),DD:a(e.getUTCDate()),hh:a(e.getUTCHours()),mm:a(e.getUTCMinutes()),ss:a(e.getUTCSeconds())};return Object.keys(r).reduce((function(e,t){return e.replace(t,r[t].toString())}),t)};t.default={addLeadingZero:a,getDuration:function(e,t){var r=Math.floor((t-e)/1e3),n=Math.floor(r/3600),o=r/3600%1*60;return\"\"+a(n)+a(o)},getHoursDiff:function(e,t){var r=Math.floor((t-e)/1e3);return Math.floor(r/3600)},getRecurrenceLengthDays:function(e){var t=e.frequency,r=e.interval,a=n.RECURRENCE.FREQUENCY;if(r)switch(t){case a.YEARLY:return 365.25*r;case a.MONTHLY:return 30.42*r;case a.WEEKLY:return 7*r;default:return r}return 36525},formatDate:o,formatDateNoUtc:function(e,t){void 0===e&&(e=new Date);var r={YYYY:e.getFullYear(),MM:a(e.getMonth()+1),DD:a(e.getDate()),hh:a(e.getHours()),mm:a(e.getMinutes()),ss:a(e.getSeconds())};return Object.keys(r).reduce((function(e,t){return e.replace(t,r[t].toString())}),t)},getTimeCreated:function(){return o(new Date,n.FORMAT.DATE)},incrementDate:function(e,t){var r=864e5*t,n=new Date;return n.setTime(e.getTime()+r),n}}},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.URL=t.FORMAT=t.RECURRENCE=void 0,t.RECURRENCE={FREQUENCY:{DAILY:\"DAILY\",WEEKLY:\"WEEKLY\",MONTHLY:\"MONTHLY\",YEARLY:\"YEARLY\"}},t.FORMAT={DATE:\"YYYYMMDD\",TIME:\"ThhmmssZ\",FULL:\"YYYYMMDDThhmmssZ\",NO_UTC_FULL:\"YYYYMMDDThhmmss\",OUTLOOK_DATE:\"YYYY-MM-DD\",OUTLOOK_TIME:\"Thh:mm:ssZ\",OUTLOOK_FULL:\"YYYY-MM-DDThh:mm:ssZ\"},t.URL={YAHOO:\"https://calendar.yahoo.com/\",GOOGLE:\"https://calendar.google.com/calendar/render\",OUTLOOK:\"https://outlook.{{host}}.com/calendar/0/deeplink/compose\"}},function(e,t,r){\"use strict\";var n=this&&this.__assign||function(){return(n=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var a in t=arguments[r])Object.prototype.hasOwnProperty.call(t,a)&&(e[a]=t[a]);return e}).apply(this,arguments)};Object.defineProperty(t,\"__esModule\",{value:!0});var a=function(e){return e},o=function(e,t,r){void 0===t&&(t=\";\"),void 0===r&&(r=a);var n=[];for(var o in e)e.hasOwnProperty(o)&&void 0!==e[o]&&n.push(o+\"=\"+r(e[o]));return n.join(t)};t.default={toParamString:o,toQueryString:function(e){var t=Object.keys(e).filter((function(t){return null!==e[t]})).reduce((function(t,r){var a;return n(n({},t),((a={})[r]=e[r],a))}),{});return o(t,\"&\",encodeURIComponent)},toIcsParamString:function(e){return o(e,\";\")},toMailtoList:function(e){return e.map((function(e){var t=e.email,r=e.name;return r?r+\" <\"+t+\">\":t}))},toProperCase:function(e){return[e[0].toUpperCase(),e.slice(1-e.length).toLowerCase()].join(\"\")}}},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(0),a=function(){function e(e){var t=this;this.isAllDay=!1,this.description=\"\",this.title=\"\",this.location=\"\",this.start=new Date,this.end=new Date,this.params={},this.attendees=[],this.setText=function(e){t.description=e.description||\"\",t.title=e.title||\"\",t.location=e.location||\"\"},this.setTimestamps=function(e){t.isAllDay=!e.end,t.start=e.start,t.end=e.end||n.default.incrementDate(t.start,1),t.recurrence=e.recurrence},this.setParam=function(e,r){return t.params[e]=r,t},this.setText(e),this.setTimestamps(e),this.setAttendees(e)}return e.prototype.setAttendees=function(e){this.attendees=Array.isArray(e.attendees)?e.attendees:[]},e}();t.default=a},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(7),a=r(2),o=r(0),i=r(8),u=r(1),s=function(e){return new Blob([e],{type:\"application/octet-stream\"})};t.default={formatText:function(e){return void 0===e&&(e=\"\"),e.replace(/\\n/g,\"\\\\n\")},getBlob:s,getFileName:function(e){return e?e.replace(/[^\\w ]/g,\"\")+\".ics\":\"event.ics\"},getUid:function(){return Math.random().toString(36).substr(2)},getProdId:function(){return\"undefined\"!=typeof window?window.location.host:\"datebook\"},getRrule:function(e){var t,r,n={FREQ:e.frequency,INTERVAL:null===(t=e.interval)||void 0===t?void 0:t.toString(),COUNT:null===(r=e.count)||void 0===r?void 0:r.toString(),WKST:e.weekstart,BYDAY:e.weekdays,BYMONTHDAY:e.monthdays};return e.end&&(n.UNTIL=o.default.formatDate(e.end,u.FORMAT.FULL)),a.default.toIcsParamString(n)},download:function(e,t){if(window.hasOwnProperty(\"safari\")||/^((?!chrome|android).)*safari/i.test(navigator.userAgent)&&!/(cr|fx)ios[^a-z]/i.test(navigator.userAgent))i.default(t,e);else{var r=s(t);n.saveAs(r,e)}}}},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.ICSPropertyValue=t.ICSDuration=t.ICSAttachment=t.ICSAlarm=t.CalendarRecurrence=t.CalendarOptions=t.ICalendar=t.OutlookCalendar=t.YahooCalendar=t.GoogleCalendar=t.CalendarBase=void 0;var n=r(3);Object.defineProperty(t,\"CalendarBase\",{enumerable:!0,get:function(){return n.default}});var a=r(6);Object.defineProperty(t,\"GoogleCalendar\",{enumerable:!0,get:function(){return a.default}});var o=r(9);Object.defineProperty(t,\"YahooCalendar\",{enumerable:!0,get:function(){return o.default}});var i=r(11);Object.defineProperty(t,\"OutlookCalendar\",{enumerable:!0,get:function(){return i.default}});var u=r(12);Object.defineProperty(t,\"ICalendar\",{enumerable:!0,get:function(){return u.default}});var s=r(13);Object.defineProperty(t,\"CalendarOptions\",{enumerable:!0,get:function(){return s.default}});var c=r(14);Object.defineProperty(t,\"CalendarRecurrence\",{enumerable:!0,get:function(){return c.default}});var l=r(15);Object.defineProperty(t,\"ICSAlarm\",{enumerable:!0,get:function(){return l.default}});var d=r(16);Object.defineProperty(t,\"ICSAttachment\",{enumerable:!0,get:function(){return d.default}});var f=r(17);Object.defineProperty(t,\"ICSDuration\",{enumerable:!0,get:function(){return f.default}});var p=r(18);Object.defineProperty(t,\"ICSPropertyValue\",{enumerable:!0,get:function(){return p.default}})},function(e,t,r){\"use strict\";var n,a=this&&this.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(3),i=r(2),u=r(4),s=r(0),c=r(1),l=function(e){function t(t){var r=e.call(this,t)||this;return r.setInitialParams=function(){var e=c.FORMAT.DATE;r.isAllDay||(e+=c.FORMAT.TIME);var t=[s.default.formatDate(r.start,e),s.default.formatDate(r.end,e)].join(\"/\");r.setParam(\"action\",\"TEMPLATE\").setParam(\"dates\",t).setParam(\"text\",r.title).setParam(\"details\",r.description).setParam(\"location\",r.location).setParam(\"allday\",r.isAllDay.toString()),r.recurrence&&r.setParam(\"recur\",\"RRULE:\"+u.default.getRrule(r.recurrence)),r.attendees.length>0&&r.setParam(\"add\",i.default.toMailtoList(r.attendees).join(\",\"))},r.render=function(){return c.URL.GOOGLE+\"?\"+i.default.toQueryString(r.params)},r.setInitialParams(),r}return a(t,e),t}(o.default);t.default=l},function(e,t,r){var n,a,o;a=[],void 0===(o=\"function\"==typeof(n=function(){\"use strict\";function t(e,t,r){var n=new XMLHttpRequest;n.open(\"GET\",e),n.responseType=\"blob\",n.onload=function(){i(n.response,t,r)},n.onerror=function(){console.error(\"could not download file\")},n.send()}function r(e){var t=new XMLHttpRequest;t.open(\"HEAD\",e,!1);try{t.send()}catch(e){}return 200<=t.status&&299>=t.status}function n(e){try{e.dispatchEvent(new MouseEvent(\"click\"))}catch(r){var t=document.createEvent(\"MouseEvents\");t.initMouseEvent(\"click\",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=\"object\"==typeof window&&window.window===window?window:\"object\"==typeof self&&self.self===self?self:\"object\"==typeof global&&global.global===global?global:void 0,o=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),i=a.saveAs||(\"object\"!=typeof window||window!==a?function(){}:\"download\"in HTMLAnchorElement.prototype&&!o?function(e,o,i){var u=a.URL||a.webkitURL,s=document.createElement(\"a\");o=o||e.name||\"download\",s.download=o,s.rel=\"noopener\",\"string\"==typeof e?(s.href=e,s.origin===location.origin?n(s):r(s.href)?t(e,o,i):n(s,s.target=\"_blank\")):(s.href=u.createObjectURL(e),setTimeout((function(){u.revokeObjectURL(s.href)}),4e4),setTimeout((function(){n(s)}),0))}:\"msSaveOrOpenBlob\"in navigator?function(e,a,o){if(a=a||e.name||\"download\",\"string\"!=typeof e)navigator.msSaveOrOpenBlob(function(e,t){return void 0===t?t={autoBom:!1}:\"object\"!=typeof t&&(console.warn(\"Deprecated: Expected third argument to be a object\"),t={autoBom:!t}),t.autoBom&&/^\\s*(?:text\\/\\S*|application\\/xml|\\S*\\/\\S*\\+xml)\\s*;.*charset\\s*=\\s*utf-8/i.test(e.type)?new Blob([\"\\ufeff\",e],{type:e.type}):e}(e,o),a);else if(r(e))t(e,a,o);else{var i=document.createElement(\"a\");i.href=e,i.target=\"_blank\",setTimeout((function(){n(i)}))}}:function(e,r,n,i){if((i=i||open(\"\",\"_blank\"))&&(i.document.title=i.document.body.innerText=\"downloading...\"),\"string\"==typeof e)return t(e,r,n);var u=\"application/octet-stream\"===e.type,s=/constructor/i.test(a.HTMLElement)||a.safari,c=/CriOS\\/[\\d]+/.test(navigator.userAgent);if((c||u&&s||o)&&\"undefined\"!=typeof FileReader){var l=new FileReader;l.onloadend=function(){var e=l.result;e=c?e:e.replace(/^data:[^;]*;/,\"data:attachment/file;\"),i?i.location.href=e:location=e,i=null},l.readAsDataURL(e)}else{var d=a.URL||a.webkitURL,f=d.createObjectURL(e);i?i.location=f:location.href=f,i=null,setTimeout((function(){d.revokeObjectURL(f)}),4e4)}});a.saveAs=i.saveAs=i,e.exports=i})?n.apply(t,a):n)||(e.exports=o)},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});t.default=function(e,t){var r=document.createElement(\"a\"),n=encodeURIComponent(e);if(r.setAttribute(\"href\",\"data:text/calendar;charset=utf-8,\"+n),r.setAttribute(\"download\",t),document.createEvent){var a=document.createEvent(\"MouseEvents\");a.initEvent(\"click\",!0,!0),r.dispatchEvent(a)}else r.click()}},function(e,t,r){\"use strict\";var n,a=this&&this.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(3),i=r(1),u=r(2),s=r(0),c=r(10),l=function(e){function t(t){var r=e.call(this,t)||this;return r.setInitialParams=function(){r.setParam(\"v\",\"60\").setParam(\"title\",r.title).setParam(\"desc\",r.description).setParam(\"in_loc\",r.location),r.setTimeParams(),r.setRecurrenceParams(),r.attendees.length>0&&r.setParam(\"inv_list\",u.default.toMailtoList(r.attendees).join(\",\"))},r.setTimeParams=function(){r.isAllDay?r.setParam(\"dur\",\"allday\").setParam(\"st\",s.default.formatDateNoUtc(r.start,i.FORMAT.DATE)):(r.setParam(\"st\",s.default.formatDateNoUtc(r.start,i.FORMAT.NO_UTC_FULL)),s.default.getHoursDiff(r.start.getTime(),r.end.getTime())>99?r.setParam(\"et\",s.default.formatDateNoUtc(r.end,i.FORMAT.NO_UTC_FULL)):r.setParam(\"dur\",s.default.getDuration(r.start.getTime(),r.end.getTime())))},r.setRecurrenceParams=function(){if(r.recurrence)if(r.setParam(\"RPAT\",c.default.getRecurrence(r.recurrence)),r.recurrence.end)r.setParam(\"REND\",s.default.formatDateNoUtc(r.recurrence.end,i.FORMAT.DATE));else{var e=s.default.getRecurrenceLengthDays(r.recurrence),t=s.default.incrementDate(r.end,Math.ceil(e));r.setParam(\"REND\",s.default.formatDateNoUtc(t,i.FORMAT.DATE))}},r.render=function(){return i.URL.YAHOO+\"?\"+u.default.toQueryString(r.params)},r.setInitialParams(),r}return a(t,e),t}(o.default);t.default=l},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0});var n=r(1),a=r(2),o=r(0),i=function(e){return void 0===e&&(e=[]),e.map((function(e){return a.default.toProperCase(e.replace(/[^A-Z]/gi,\"\"))})).join(\"\")},u=function(e){var t=n.RECURRENCE.FREQUENCY;switch(e){case t.YEARLY:return\"Yr\";case t.MONTHLY:return\"Mh\";case t.WEEKLY:return\"Wk\";default:return\"Dy\"}};t.default={getWeekdays:i,getFrequency:u,getRecurrence:function(e){var t,r=u(e.frequency),a=i(e.weekdays),s=e.interval,c=void 0===s?1:s,l=\"\";if((null===(t=e.weekdays)||void 0===t?void 0:t.length)&&e.frequency===n.RECURRENCE.FREQUENCY.MONTHLY){var d=e.weekdays[0].match(/^([1-5])/);l=d?d[0]:\"1\"}return[o.default.addLeadingZero(c),r,l,a].join(\"\")}}},function(e,t,r){\"use strict\";var n,a=this&&this.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)});Object.defineProperty(t,\"__esModule\",{value:!0});var o=r(3),i=r(1),u=r(2),s=r(0),c=function(e){function t(t){var r=e.call(this,t)||this;return r.baseUrl=i.URL.OUTLOOK,r.setInitialParams=function(){var e=i.FORMAT.OUTLOOK_DATE;r.isAllDay||(e+=i.FORMAT.OUTLOOK_TIME),r.setParam(\"rru\",\"addevent\").setParam(\"path\",\"/calendar/action/compose\").setParam(\"startdt\",s.default.formatDate(r.start,e)).setParam(\"enddt\",s.default.formatDate(r.end,e)).setParam(\"subject\",r.title).setParam(\"body\",r.description).setParam(\"location\",r.location).setParam(\"allday\",r.isAllDay.toString()),r.attendees.length>0&&r.setParam(\"to\",u.default.toMailtoList(r.attendees).join(\",\"))},r.setHost=function(e){return[\"live\",\"office\"].includes(e)&&(r.baseUrl=i.URL.OUTLOOK.replace(\"{{host}}\",e)),r},r.render=function(){var e=u.default.toQueryString(r.params);return r.baseUrl+\"?\"+e},r.setInitialParams(),r.setHost(\"live\"),r}return a(t,e),t}(o.default);t.default=c},function(e,t,r){\"use strict\";var n,a=this&&this.__extends||(n=function(e,t){return(n=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])})(e,t)},function(e,t){if(\"function\"!=typeof t&&null!==t)throw new TypeError(\"Class extends value \"+String(t)+\" is not a constructor or null\");function r(){this.constructor=e}n(e,t),e.prototype=null===t?Object.create(t):(r.prototype=t.prototype,new r)}),o=this&&this.__spreadArray||function(e,t){for(var r=0,n=t.length,a=e.length;r<n;r++,a++)e[a]=t[r];return e};Object.defineProperty(t,\"__esModule\",{value:!0});var i=r(3),u=r(1),s=r(2),c=r(4),l=r(0),d=function(e){function t(t){var r=e.call(this,t)||this;return r.additionalEvents=[],r.properties=[],r.meta={},r.setInitialParams=function(){r.setMeta(\"UID\",c.default.getUid()).setMeta(\"DTSTAMP\",l.default.getTimeCreated()).setMeta(\"PRODID\",c.default.getProdId()),r.addProperty(\"CLASS\",\"PUBLIC\").addProperty(\"DESCRIPTION\",c.default.formatText(r.description)).addProperty(\"DTSTART\",l.default.formatDate(r.start,u.FORMAT.FULL)).addProperty(\"DTEND\",l.default.formatDate(r.end,u.FORMAT.FULL)).addProperty(\"LOCATION\",c.default.formatText(r.location)).addProperty(\"SUMMARY\",c.default.formatText(r.title)).addProperty(\"TRANSP\",\"TRANSPARENT\"),r.recurrence&&r.addProperty(\"RRULE\",c.default.getRrule(r.recurrence)),r.attendees.length>0&&r.attendees.forEach((function(e){var t=e.email,n=e.name,a=e.icsOptions,o=void 0===a?{}:a,i=r.getAttendeeParams(o,n),u=\"MAILTO:\"+t;r.addProperty(i,u)}))},r.getAttendeeParams=function(e,t){var r={};return t&&(r.CN=t),e.delegatedFrom&&(r[\"DELEGATED-FROM\"]=e.delegatedFrom),e.partStat&&(r.PARTSTAT=e.partStat),e.role&&(r.ROLE=e.role),e.sentBy&&(r[\"SENT-BY\"]=e.sentBy),r.RSVP=e.rsvp?\"TRUE\":\"FALSE\",\"ATTENDEE;\"+s.default.toParamString(r,\";\")},r.getAlarmDuration=function(e){var t=[e.weeks+\"W\",e.days+\"D\",e.hours+\"H\",e.minutes+\"M\",e.seconds+\"S\"].filter((function(e){return/^[0-9]+[A-Z]$/.exec(e)}));return t.unshift(e.after?\"PT\":\"-PT\"),t.join(\"\")},r.setMeta=function(e,t){return r.meta[e]=t,r},r.addEvent=function(e){return r.additionalEvents.push(e),r},r.addProperty=function(e,t){if(\"object\"==typeof t){for(var n in r.properties.push(\"BEGIN:\"+e),t)r.addProperty(n,t[n]);r.properties.push(\"END:\"+e)}else r.properties.push(e+\":\"+t.toString());return r},r.addAlarm=function(e){var t={ACTION:e.action};(e.description&&(t.DESCRIPTION=c.default.formatText(e.description)),e.summary&&(t.SUMMARY=c.default.formatText(e.summary)),e.duration&&(t.DURATION=r.getAlarmDuration(e.duration)),e.repeat&&(t.REPEAT=e.repeat),e.attach)&&(t[e.attach.params?\"ATTACH;\"+e.attach.params:\"ATTACH\"]=e.attach.url);return e.trigger instanceof Date?t[\"TRIGGER;VALUE=DATE-TIME\"]=l.default.formatDate(e.trigger,u.FORMAT.FULL):t.TRIGGER=r.getAlarmDuration(e.trigger),r.addProperty(\"VALARM\",t)},r.download=function(e){c.default.download(e||c.default.getFileName(r.title),r.render())},r.render=function(){var e=r.additionalEvents.concat(r).reduce((function(e,t){return o(o(o(o([],e),[\"BEGIN:VEVENT\"]),t.properties),[\"END:VEVENT\"])}),[]),t=Object.keys(r.meta).map((function(e){return e+\":\"+r.meta[e]}));return o(o(o([\"BEGIN:VCALENDAR\",\"VERSION:2.0\"],e),[\"END:VCALENDAR\"]),t).join(\"\\n\")},r.setInitialParams(),r}return a(t,e),t}(i.default);t.default=d},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})},function(e,t,r){\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0})}])}));","import { __decorate, __param } from 'tslib';\nimport { InjectionToken, Inject, PLATFORM_ID, Optional, Injectable, EventEmitter, ElementRef, NgZone, Input, HostBinding, Output, Component, NgModule, HostListener, Directive, forwardRef } from '@angular/core';\nimport { isPlatformBrowser } from '@angular/common';\nimport { of, BehaviorSubject, Subject } from 'rxjs';\nimport { NG_VALUE_ACCESSOR, FormsModule } from '@angular/forms';\n\nimport * as ɵngcc0 from '@angular/core';\nfunction loadScript(renderMode, onLoaded, urlParams, url, nonce) {\n    window.ng2recaptchaloaded = () => {\n        onLoaded(grecaptcha);\n    };\n    const script = document.createElement('script');\n    script.innerHTML = '';\n    const baseUrl = url || 'https://www.google.com/recaptcha/api.js';\n    script.src = `${baseUrl}?render=${renderMode}&onload=ng2recaptchaloaded${urlParams}`;\n    if (nonce) {\n        // tslint:disable-next-line:no-any Remove \"any\" cast once we upgrade Angular to 7 and TypeScript along with it\n        script.nonce = nonce;\n    }\n    script.async = true;\n    script.defer = true;\n    document.head.appendChild(script);\n}\n\nconst RECAPTCHA_LANGUAGE = new InjectionToken('recaptcha-language');\nconst RECAPTCHA_BASE_URL = new InjectionToken('recaptcha-base-url');\nconst RECAPTCHA_NONCE = new InjectionToken('recaptcha-nonce-tag');\nconst RECAPTCHA_SETTINGS = new InjectionToken('recaptcha-settings');\nconst RECAPTCHA_V3_SITE_KEY = new InjectionToken('recaptcha-v3-site-key');\n\nlet RecaptchaLoaderService = RecaptchaLoaderService_1 = class RecaptchaLoaderService {\n    constructor(\n    // tslint:disable-next-line:no-any\n    platformId, language, baseUrl, nonce, v3SiteKey) {\n        this.platformId = platformId;\n        this.language = language;\n        this.baseUrl = baseUrl;\n        this.nonce = nonce;\n        this.v3SiteKey = v3SiteKey;\n        this.init();\n        this.ready = isPlatformBrowser(this.platformId) ? RecaptchaLoaderService_1.ready.asObservable() : of();\n    }\n    /** @internal */\n    init() {\n        if (RecaptchaLoaderService_1.ready) {\n            return;\n        }\n        if (isPlatformBrowser(this.platformId)) {\n            const subject = new BehaviorSubject(null);\n            RecaptchaLoaderService_1.ready = subject;\n            const langParam = this.language ? '&hl=' + this.language : '';\n            const renderMode = this.v3SiteKey || 'explicit';\n            loadScript(renderMode, (grecaptcha) => subject.next(grecaptcha), langParam, this.baseUrl, this.nonce);\n        }\n    }\n};\nRecaptchaLoaderService.ɵfac = function RecaptchaLoaderService_Factory(t) { return new (t || RecaptchaLoaderService)(ɵngcc0.ɵɵinject(PLATFORM_ID), ɵngcc0.ɵɵinject(RECAPTCHA_LANGUAGE, 8), ɵngcc0.ɵɵinject(RECAPTCHA_BASE_URL, 8), ɵngcc0.ɵɵinject(RECAPTCHA_NONCE, 8), ɵngcc0.ɵɵinject(RECAPTCHA_V3_SITE_KEY, 8)); };\nRecaptchaLoaderService.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: RecaptchaLoaderService, factory: function (t) { return RecaptchaLoaderService.ɵfac(t); } });\n/**\n * @internal\n * @nocollapse\n */\nRecaptchaLoaderService.ready = null;\nRecaptchaLoaderService.ctorParameters = () => [\n    { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_LANGUAGE,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_BASE_URL,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_NONCE,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_V3_SITE_KEY,] }] }\n];\nRecaptchaLoaderService = RecaptchaLoaderService_1 = __decorate([ __param(0, Inject(PLATFORM_ID)),\n    __param(1, Optional()), __param(1, Inject(RECAPTCHA_LANGUAGE)),\n    __param(2, Optional()), __param(2, Inject(RECAPTCHA_BASE_URL)),\n    __param(3, Optional()), __param(3, Inject(RECAPTCHA_NONCE)),\n    __param(4, Optional()), __param(4, Inject(RECAPTCHA_V3_SITE_KEY))\n], RecaptchaLoaderService);\nvar RecaptchaLoaderService_1;\n\nlet nextId = 0;\nlet RecaptchaComponent = class RecaptchaComponent {\n    constructor(elementRef, loader, zone, settings) {\n        this.elementRef = elementRef;\n        this.loader = loader;\n        this.zone = zone;\n        this.id = `ngrecaptcha-${nextId++}`;\n        this.errorMode = 'default';\n        this.resolved = new EventEmitter();\n        this.error = new EventEmitter();\n        if (settings) {\n            this.siteKey = settings.siteKey;\n            this.theme = settings.theme;\n            this.type = settings.type;\n            this.size = settings.size;\n            this.badge = settings.badge;\n        }\n    }\n    ngAfterViewInit() {\n        this.subscription = this.loader.ready.subscribe((grecaptcha) => {\n            if (grecaptcha != null && grecaptcha.render instanceof Function) {\n                this.grecaptcha = grecaptcha;\n                this.renderRecaptcha();\n            }\n        });\n    }\n    ngOnDestroy() {\n        // reset the captcha to ensure it does not leave anything behind\n        // after the component is no longer needed\n        this.grecaptchaReset();\n        if (this.subscription) {\n            this.subscription.unsubscribe();\n        }\n    }\n    /**\n     * Executes the invisible recaptcha.\n     * Does nothing if component's size is not set to \"invisible\".\n     */\n    execute() {\n        if (this.size !== 'invisible') {\n            return;\n        }\n        if (this.widget != null) {\n            this.grecaptcha.execute(this.widget);\n        }\n        else {\n            // delay execution of recaptcha until it actually renders\n            this.executeRequested = true;\n        }\n    }\n    reset() {\n        if (this.widget != null) {\n            if (this.grecaptcha.getResponse(this.widget)) {\n                // Only emit an event in case if something would actually change.\n                // That way we do not trigger \"touching\" of the control if someone does a \"reset\"\n                // on a non-resolved captcha.\n                this.resolved.emit(null);\n            }\n            this.grecaptchaReset();\n        }\n    }\n    /** @internal */\n    expired() {\n        this.resolved.emit(null);\n    }\n    /** @internal */\n    errored(args) {\n        this.error.emit(args);\n    }\n    /** @internal */\n    captchaResponseCallback(response) {\n        this.resolved.emit(response);\n    }\n    /** @internal */\n    grecaptchaReset() {\n        if (this.widget != null) {\n            this.zone.runOutsideAngular(() => this.grecaptcha.reset(this.widget));\n        }\n    }\n    /** @internal */\n    renderRecaptcha() {\n        // This `any` can be removed after @types/grecaptcha get updated\n        const renderOptions = {\n            badge: this.badge,\n            callback: (response) => {\n                this.zone.run(() => this.captchaResponseCallback(response));\n            },\n            'expired-callback': () => {\n                this.zone.run(() => this.expired());\n            },\n            sitekey: this.siteKey,\n            size: this.size,\n            tabindex: this.tabIndex,\n            theme: this.theme,\n            type: this.type,\n        };\n        if (this.errorMode === 'handled') {\n            renderOptions['error-callback'] = (...args) => {\n                this.zone.run(() => this.errored(args));\n            };\n        }\n        this.widget = this.grecaptcha.render(this.elementRef.nativeElement, renderOptions);\n        if (this.executeRequested === true) {\n            this.executeRequested = false;\n            this.execute();\n        }\n    }\n};\nRecaptchaComponent.ɵfac = function RecaptchaComponent_Factory(t) { return new (t || RecaptchaComponent)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(RecaptchaLoaderService), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.NgZone), ɵngcc0.ɵɵdirectiveInject(RECAPTCHA_SETTINGS, 8)); };\nRecaptchaComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: RecaptchaComponent, selectors: [[\"re-captcha\"]], hostVars: 1, hostBindings: function RecaptchaComponent_HostBindings(rf, ctx) { if (rf & 2) {\n        ɵngcc0.ɵɵattribute(\"id\", ctx.id);\n    } }, inputs: { id: \"id\", errorMode: \"errorMode\", siteKey: \"siteKey\", theme: \"theme\", type: \"type\", size: \"size\", badge: \"badge\", tabIndex: \"tabIndex\" }, outputs: { resolved: \"resolved\", error: \"error\" }, exportAs: [\"reCaptcha\"], decls: 0, vars: 0, template: function RecaptchaComponent_Template(rf, ctx) { }, encapsulation: 2 });\nRecaptchaComponent.ctorParameters = () => [\n    { type: ElementRef },\n    { type: RecaptchaLoaderService },\n    { type: NgZone },\n    { type: undefined, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_SETTINGS,] }] }\n];\n__decorate([\n    Input(),\n    HostBinding('attr.id')\n], RecaptchaComponent.prototype, \"id\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"siteKey\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"theme\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"type\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"size\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"tabIndex\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"badge\", void 0);\n__decorate([\n    Input()\n], RecaptchaComponent.prototype, \"errorMode\", void 0);\n__decorate([\n    Output()\n], RecaptchaComponent.prototype, \"resolved\", void 0);\n__decorate([\n    Output()\n], RecaptchaComponent.prototype, \"error\", void 0);\nRecaptchaComponent = __decorate([ __param(3, Optional()), __param(3, Inject(RECAPTCHA_SETTINGS))\n], RecaptchaComponent);\n\nlet RecaptchaCommonModule = class RecaptchaCommonModule {\n};\nRecaptchaCommonModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: RecaptchaCommonModule });\nRecaptchaCommonModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function RecaptchaCommonModule_Factory(t) { return new (t || RecaptchaCommonModule)(); } });\n\nlet RecaptchaModule = RecaptchaModule_1 = class RecaptchaModule {\n    /**\n     * @deprecated Using `forRoot()` method has not been necessary since v4.1.0. This method will be removed in `ng-recatcha@7`.\n     */\n    static forRoot() {\n        return RecaptchaModule_1;\n    }\n};\nRecaptchaModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: RecaptchaModule });\nRecaptchaModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function RecaptchaModule_Factory(t) { return new (t || RecaptchaModule)(); }, providers: [\n        RecaptchaLoaderService,\n    ], imports: [[\n            RecaptchaCommonModule,\n        ]] });\nvar RecaptchaModule_1;\n\n/**\n * The main service for working with reCAPTCHA v3 APIs.\n *\n * Use the `execute` method for executing a single action, and\n * `onExecute` observable for listening to all actions at once.\n */\nlet ReCaptchaV3Service = class ReCaptchaV3Service {\n    constructor(zone, siteKey, \n    // tslint:disable-next-line:no-any\n    platformId, baseUrl, nonce, language) {\n        /** @internal */\n        this.onLoadComplete = (grecaptcha) => {\n            this.grecaptcha = grecaptcha;\n            if (this.actionBacklog && this.actionBacklog.length > 0) {\n                this.actionBacklog.forEach(([action, subject]) => this.executeActionWithSubject(action, subject));\n                this.actionBacklog = undefined;\n            }\n        };\n        this.zone = zone;\n        this.isBrowser = isPlatformBrowser(platformId);\n        this.siteKey = siteKey;\n        this.nonce = nonce;\n        this.language = language;\n        this.baseUrl = baseUrl;\n        this.init();\n    }\n    get onExecute() {\n        if (!this.onExecuteSubject) {\n            this.onExecuteSubject = new Subject();\n            this.onExecuteObservable = this.onExecuteSubject.asObservable();\n        }\n        return this.onExecuteObservable;\n    }\n    get onExecuteError() {\n        if (!this.onExecuteErrorSubject) {\n            this.onExecuteErrorSubject = new Subject();\n            this.onExecuteErrorObservable = this.onExecuteErrorSubject.asObservable();\n        }\n        return this.onExecuteErrorObservable;\n    }\n    /**\n     * Executes the provided `action` with reCAPTCHA v3 API.\n     * Use the emitted token value for verification purposes on the backend.\n     *\n     * For more information about reCAPTCHA v3 actions and tokens refer to the official documentation at\n     * https://developers.google.com/recaptcha/docs/v3.\n     *\n     * @param {string} action the action to execute\n     * @returns {Observable<string>} an `Observable` that will emit the reCAPTCHA v3 string `token` value whenever ready.\n     * The returned `Observable` completes immediately after emitting a value.\n     */\n    execute(action) {\n        const subject = new Subject();\n        if (this.isBrowser) {\n            if (!this.grecaptcha) {\n                // todo: add to array of later executions\n                if (!this.actionBacklog) {\n                    this.actionBacklog = [];\n                }\n                this.actionBacklog.push([action, subject]);\n            }\n            else {\n                this.executeActionWithSubject(action, subject);\n            }\n        }\n        return subject.asObservable();\n    }\n    /** @internal */\n    executeActionWithSubject(action, subject) {\n        // tslint:disable-next-line:no-any\n        const onError = (error) => {\n            this.zone.run(() => {\n                subject.error(error);\n                if (this.onExecuteErrorSubject) {\n                    this.onExecuteErrorSubject.next({ action, error });\n                }\n            });\n        };\n        this.zone.runOutsideAngular(() => {\n            try {\n                // tslint:disable-next-line:no-any\n                this.grecaptcha.execute(this.siteKey, { action }).then((token) => {\n                    this.zone.run(() => {\n                        subject.next(token);\n                        subject.complete();\n                        if (this.onExecuteSubject) {\n                            this.onExecuteSubject.next({ action, token });\n                        }\n                    });\n                }, onError);\n            }\n            catch (e) {\n                onError(e);\n            }\n        });\n    }\n    /** @internal */\n    init() {\n        if (this.isBrowser) {\n            if ('grecaptcha' in window) {\n                this.grecaptcha = grecaptcha;\n            }\n            else {\n                const langParam = this.language ? '&hl=' + this.language : '';\n                loadScript(this.siteKey, this.onLoadComplete, langParam, this.baseUrl, this.nonce);\n            }\n        }\n    }\n};\nReCaptchaV3Service.ɵfac = function ReCaptchaV3Service_Factory(t) { return new (t || ReCaptchaV3Service)(ɵngcc0.ɵɵinject(ɵngcc0.NgZone), ɵngcc0.ɵɵinject(RECAPTCHA_V3_SITE_KEY), ɵngcc0.ɵɵinject(PLATFORM_ID), ɵngcc0.ɵɵinject(RECAPTCHA_BASE_URL, 8), ɵngcc0.ɵɵinject(RECAPTCHA_NONCE, 8), ɵngcc0.ɵɵinject(RECAPTCHA_LANGUAGE, 8)); };\nReCaptchaV3Service.ɵprov = ɵngcc0.ɵɵdefineInjectable({ token: ReCaptchaV3Service, factory: function (t) { return ReCaptchaV3Service.ɵfac(t); } });\nReCaptchaV3Service.ctorParameters = () => [\n    { type: NgZone },\n    { type: String, decorators: [{ type: Inject, args: [RECAPTCHA_V3_SITE_KEY,] }] },\n    { type: undefined, decorators: [{ type: Inject, args: [PLATFORM_ID,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_BASE_URL,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_NONCE,] }] },\n    { type: String, decorators: [{ type: Optional }, { type: Inject, args: [RECAPTCHA_LANGUAGE,] }] }\n];\nReCaptchaV3Service = __decorate([ __param(1, Inject(RECAPTCHA_V3_SITE_KEY)),\n    __param(2, Inject(PLATFORM_ID)),\n    __param(3, Optional()), __param(3, Inject(RECAPTCHA_BASE_URL)),\n    __param(4, Optional()), __param(4, Inject(RECAPTCHA_NONCE)),\n    __param(5, Optional()), __param(5, Inject(RECAPTCHA_LANGUAGE))\n], ReCaptchaV3Service);\n\nlet RecaptchaV3Module = class RecaptchaV3Module {\n};\nRecaptchaV3Module.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: RecaptchaV3Module });\nRecaptchaV3Module.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function RecaptchaV3Module_Factory(t) { return new (t || RecaptchaV3Module)(); }, providers: [\n        ReCaptchaV3Service,\n    ] });\n\nlet RecaptchaValueAccessorDirective = RecaptchaValueAccessorDirective_1 = class RecaptchaValueAccessorDirective {\n    constructor(host) {\n        this.host = host;\n    }\n    writeValue(value) {\n        if (!value) {\n            this.host.reset();\n        }\n    }\n    registerOnChange(fn) { this.onChange = fn; }\n    registerOnTouched(fn) { this.onTouched = fn; }\n    onResolve($event) {\n        if (this.onChange) {\n            this.onChange($event);\n        }\n        if (this.onTouched) {\n            this.onTouched();\n        }\n    }\n};\nRecaptchaValueAccessorDirective.ɵfac = function RecaptchaValueAccessorDirective_Factory(t) { return new (t || RecaptchaValueAccessorDirective)(ɵngcc0.ɵɵdirectiveInject(RecaptchaComponent)); };\nRecaptchaValueAccessorDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: RecaptchaValueAccessorDirective, selectors: [[\"re-captcha\", \"formControlName\", \"\"], [\"re-captcha\", \"formControl\", \"\"], [\"re-captcha\", \"ngModel\", \"\"]], hostBindings: function RecaptchaValueAccessorDirective_HostBindings(rf, ctx) { if (rf & 1) {\n        ɵngcc0.ɵɵlistener(\"resolved\", function RecaptchaValueAccessorDirective_resolved_HostBindingHandler($event) { return ctx.onResolve($event); });\n    } }, features: [ɵngcc0.ɵɵProvidersFeature([\n            {\n                multi: true,\n                provide: NG_VALUE_ACCESSOR,\n                // tslint:disable-next-line:no-forward-ref\n                useExisting: forwardRef(() => RecaptchaValueAccessorDirective_1)\n            },\n        ])] });\nRecaptchaValueAccessorDirective.ctorParameters = () => [\n    { type: RecaptchaComponent }\n];\n__decorate([\n    HostListener('resolved', ['$event'])\n], RecaptchaValueAccessorDirective.prototype, \"onResolve\", null);\nvar RecaptchaValueAccessorDirective_1;\n\nlet RecaptchaFormsModule = class RecaptchaFormsModule {\n};\nRecaptchaFormsModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: RecaptchaFormsModule });\nRecaptchaFormsModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function RecaptchaFormsModule_Factory(t) { return new (t || RecaptchaFormsModule)(); }, imports: [[FormsModule, RecaptchaCommonModule]] });\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaLoaderService, [{\n        type: Injectable\n    }], function () { return [{ type: undefined, decorators: [{\n                type: Inject,\n                args: [PLATFORM_ID]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_LANGUAGE]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_BASE_URL]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_NONCE]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_V3_SITE_KEY]\n            }] }]; }, null); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaComponent, [{\n        type: Component,\n        args: [{\n                exportAs: 'reCaptcha',\n                selector: 're-captcha',\n                template: ``\n            }]\n    }], function () { return [{ type: ɵngcc0.ElementRef }, { type: RecaptchaLoaderService }, { type: ɵngcc0.NgZone }, { type: undefined, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_SETTINGS]\n            }] }]; }, { id: [{\n            type: Input\n        }, {\n            type: HostBinding,\n            args: ['attr.id']\n        }], errorMode: [{\n            type: Input\n        }], resolved: [{\n            type: Output\n        }], error: [{\n            type: Output\n        }], siteKey: [{\n            type: Input\n        }], theme: [{\n            type: Input\n        }], type: [{\n            type: Input\n        }], size: [{\n            type: Input\n        }], badge: [{\n            type: Input\n        }], tabIndex: [{\n            type: Input\n        }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(RecaptchaCommonModule, { declarations: [RecaptchaComponent], exports: [RecaptchaComponent] }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaCommonModule, [{\n        type: NgModule,\n        args: [{\n                declarations: [\n                    RecaptchaComponent,\n                ],\n                exports: [\n                    RecaptchaComponent,\n                ]\n            }]\n    }], null, null); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(RecaptchaModule, { imports: [RecaptchaCommonModule], exports: [RecaptchaComponent] }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaModule, [{\n        type: NgModule,\n        args: [{\n                exports: [\n                    RecaptchaComponent,\n                ],\n                imports: [\n                    RecaptchaCommonModule,\n                ],\n                providers: [\n                    RecaptchaLoaderService,\n                ]\n            }]\n    }], null, null); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(ReCaptchaV3Service, [{\n        type: Injectable\n    }], function () { return [{ type: ɵngcc0.NgZone }, { type: String, decorators: [{\n                type: Inject,\n                args: [RECAPTCHA_V3_SITE_KEY]\n            }] }, { type: undefined, decorators: [{\n                type: Inject,\n                args: [PLATFORM_ID]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_BASE_URL]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_NONCE]\n            }] }, { type: String, decorators: [{\n                type: Optional\n            }, {\n                type: Inject,\n                args: [RECAPTCHA_LANGUAGE]\n            }] }]; }, null); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaV3Module, [{\n        type: NgModule,\n        args: [{\n                providers: [\n                    ReCaptchaV3Service,\n                ]\n            }]\n    }], null, null); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaValueAccessorDirective, [{\n        type: Directive,\n        args: [{\n                providers: [\n                    {\n                        multi: true,\n                        provide: NG_VALUE_ACCESSOR,\n                        // tslint:disable-next-line:no-forward-ref\n                        useExisting: forwardRef(() => RecaptchaValueAccessorDirective_1)\n                    },\n                ],\n                // tslint:disable-next-line:directive-selector\n                selector: 're-captcha[formControlName],re-captcha[formControl],re-captcha[ngModel]'\n            }]\n    }], function () { return [{ type: RecaptchaComponent }]; }, { onResolve: [{\n            type: HostListener,\n            args: ['resolved', ['$event']]\n        }] }); })();\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(RecaptchaFormsModule, { declarations: function () { return [RecaptchaValueAccessorDirective]; }, imports: function () { return [FormsModule, RecaptchaCommonModule]; }, exports: function () { return [RecaptchaValueAccessorDirective]; } }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(RecaptchaFormsModule, [{\n        type: NgModule,\n        args: [{\n                declarations: [\n                    RecaptchaValueAccessorDirective,\n                ],\n                exports: [RecaptchaValueAccessorDirective],\n                imports: [FormsModule, RecaptchaCommonModule]\n            }]\n    }], null, null); })();\n\n/**\n * Generated bundle index. Do not edit.\n */\n\nexport { RECAPTCHA_BASE_URL, RECAPTCHA_LANGUAGE, RECAPTCHA_NONCE, RECAPTCHA_SETTINGS, RECAPTCHA_V3_SITE_KEY, ReCaptchaV3Service, RecaptchaComponent, RecaptchaFormsModule, RecaptchaLoaderService, RecaptchaModule, RecaptchaV3Module, RecaptchaValueAccessorDirective, RecaptchaCommonModule as ɵa };\n\n//# sourceMappingURL=ng-recaptcha.js.map","import {\r\n  Component,\r\n  OnInit,\r\n  Input,\r\n  OnDestroy,\r\n  EventEmitter,\r\n  Output,\r\n  ViewChild,\r\n  TemplateRef,\r\n} from '@angular/core';\r\nimport routeTable from '../../../../utility/routeTable';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport {\r\n  LotService,\r\n  WatchListService,\r\n  WebStorageService,\r\n} from '../../../../services';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { BulkBidSubmissionResult, LotPublic } from '../../../../models';\r\nimport {\r\n  HubConnection,\r\n  HubConnectionBuilder,\r\n  LogLevel,\r\n} from '@microsoft/signalr';\r\nimport { AppValidators } from '../../../../core/validators/app-validators';\r\nimport { environment } from '../../../../../environments/environment';\r\nimport {\r\n  trigger,\r\n  state,\r\n  style,\r\n  transition,\r\n  animate,\r\n} from '@angular/animations';\r\nimport { BidService, BulkBid } from '../../../../services/bid.service';\r\nimport constants from '../../../../utility/constants';\r\nimport { interval, Subscription } from 'rxjs';\r\nimport { AuctionTimeService } from '../../../../services/auction-time.service';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nexport interface BidInfo {\r\n  auctionAndLotNumber: string;\r\n  bidCount: number;\r\n  bidType: number;\r\n  bulkLotReservePrice: number;\r\n  lotStatus: number;\r\n\r\n  currentBid: number;\r\n  highestBid: number;\r\n  highestBidders: Array<number> | null;\r\n  isBiddingPaused: boolean;\r\n  loosers: Array<number> | null;\r\n  lotEndTimeUtc: string;\r\n  lotId: number;\r\n  nextRequiredBid: number;\r\n  soldAt: number;\r\n  soldTo: number;\r\n  soldToName: string;\r\n  higherBidders: any;\r\n  extendedByMinutes: number;\r\n  timeLeft: string;\r\n  willSell?: boolean;\r\n  price: number;\r\n  recentBid: number;\r\n  soldForBid: number;\r\n}\r\n\r\n@Component({\r\n  selector: 'app-lot-card',\r\n  templateUrl: './lot-card.component.html',\r\n  styleUrls: ['./lot-card.component.css'],\r\n  animations: [\r\n    trigger('submit', [\r\n      state(\r\n        'noBlink',\r\n        style({\r\n          border: '1px #ffffff solid',\r\n          background: '#ffffff',\r\n        })\r\n      ),\r\n      state(\r\n        'redBlink',\r\n        style({\r\n          border: '1px #ff1a1a solid',\r\n          background: '#ff9999',\r\n        })\r\n      ),\r\n      transition('noBlink=>redBlink', animate('250ms')),\r\n      transition('redBlink=>noBlink', animate('1500ms')),\r\n    ]),\r\n  ],\r\n})\r\nexport class LotCardComponent implements OnInit, OnDestroy {\r\n  @Input() isUserRegistered: boolean;\r\n  @Input('lotData') eachLotData: LotPublic;\r\n  @Input() isItWatchList: boolean = false;\r\n  @Input() isItActiveBidList: boolean = false;\r\n  @Input('isListView') showListView: boolean = true;\r\n  @Input('pageChanged') pageChange: boolean = true;\r\n  @Input() bulkBid: boolean;\r\n  @Output('selectedLotData') selectedLot = new EventEmitter<\r\n    LotPublic | number\r\n  >();\r\n  @Output() submitBulkBid = new EventEmitter<boolean>();\r\n  @ViewChild('quickBidModal', { static: false })\r\n  quickBidModal: TemplateRef<any>;\r\n  submitState: string;\r\n  modalRef: BsModalRef;\r\n  private _bulkBidResult: BulkBidSubmissionResult[];\r\n  userFullName: string;\r\n  isQuickBidOrNot: boolean;\r\n  private subscriptions: Array<Subscription> = [];\r\n  @Input() set bulkBidResult(value) {\r\n    this._bulkBidResult = value;\r\n    this.checkLotBulkBidResult(value);\r\n  }\r\n\r\n  get bulkBidResult() {\r\n    return this._bulkBidResult;\r\n  }\r\n\r\n  hubUrl: string = environment.serverUrl + environment.hubs.bid;\r\n  isAddedToWatchlist: boolean = false;\r\n  isLotClosed: boolean = false;\r\n\r\n  isConnectionClosing: boolean = false;\r\n  soldStatuses = constants.common.soldStatus;\r\n\r\n  loggedInUser = 0;\r\n  showTimer: boolean = true;\r\n\r\n  minBid: number = constants.common.bid.bidMinAmount;\r\n  maxBid: number = constants.common.bid.bidMaxAmount;\r\n\r\n  loader: boolean = false;\r\n  auctionStatuses = constants.common.auctionStatus;\r\n  errorMsg: string = null;\r\n  isUserHighestBidder: boolean = false;\r\n  biddingAmount: FormControl;\r\n  private lotHubConnection: HubConnection;\r\n  addedToWatchlist: number;\r\n  public isLotConnected: boolean = false;\r\n\r\n  readOnlyCatalog: boolean;\r\n\r\n  isLowConnectionMode: boolean = false;\r\n\r\n  lotType = constants.common.lotTypes;\r\n\r\n  private serverTimeSubcription: Subscription;\r\n\r\n  changeInAmount: boolean = false;\r\n\r\n  constructor(\r\n    private storage: WebStorageService,\r\n    private router: Router,\r\n    private route: ActivatedRoute,\r\n    private toastr: ToastrService,\r\n    private watchListService: WatchListService,\r\n    private lotService: LotService,\r\n    private bidService: BidService,\r\n    private auctionTimer: AuctionTimeService,\r\n    private modalService: BsModalService\r\n  ) {}\r\n\r\n  ngOnInit() {\r\n    this.loader = true;\r\n\r\n    let checkLotClosed = this.auctionTimer.isLotClosingBegun(\r\n      this.eachLotData?.lotEndTimeUtc\r\n    );\r\n\r\n    this.submitState = 'noBlink';\r\n\r\n    this.biddingAmount = new FormControl(null, [\r\n      Validators.required,\r\n      AppValidators.noWhitespace,\r\n      AppValidators.onlyNumeric,\r\n      Validators.min(this.minBid),\r\n      Validators.max(this.maxBid),\r\n    ]);\r\n\r\n    this.isAddedToWatchlist = this.eachLotData.watchListId > 0 ? true : false;\r\n\r\n    var loggedInData = this.storage.getBuyer()?.loggedIn;\r\n    if (loggedInData == true) {\r\n      this.loggedInUser = this.storage.getBuyer()?.currentUser?.user?.id;\r\n      this.userFullName =\r\n        this.storage.getBuyer()?.currentUser?.user?.firstName +\r\n        ' ' +\r\n        this.storage.getBuyer()?.currentUser?.user?.lastName;\r\n      this.checkLotConnectionMode();\r\n    }\r\n\r\n    if (!this.loggedInUser) this.loader = false;\r\n\r\n    this.readOnlyCatalog = this.eachLotData.auction.saleType.isCatalogReadOnly;\r\n\r\n    if (!this.isLowConnectionMode) {\r\n      if (\r\n        this.loggedInUser > 0 &&\r\n        this.eachLotData.loggedInUser?.isApproved &&\r\n        this.eachLotData.auction.auctionStatus == this.auctionStatuses.live &&\r\n        !this.readOnlyCatalog &&\r\n        !checkLotClosed\r\n      ) {\r\n        this.buildConnection();\r\n      }\r\n      if (\r\n        !this.eachLotData.loggedInUser ||\r\n        !this.eachLotData.loggedInUser?.isApproved\r\n      )\r\n        this.loader = false;\r\n    } else {\r\n      this.checkHigherBidder(this.eachLotData.highestBidder);\r\n    }\r\n\r\n    if (\r\n      this.loggedInUser > 0 &&\r\n      this.eachLotData.loggedInUser?.isApproved &&\r\n      (this.eachLotData.auction.auctionStatus == this.auctionStatuses.past ||\r\n        checkLotClosed) &&\r\n      !this.readOnlyCatalog\r\n    ) {\r\n      this.showTimer = false;\r\n      this.isLotClosed = true;\r\n      this.loader = false;\r\n    }\r\n\r\n    this.biddingAmount.valueChanges.subscribe((value: number) => {\r\n      this.dataModelForBulkBid(value);\r\n    });\r\n\r\n    this.eachLotData.outbid = this.findOutbid(this.eachLotData);\r\n  }\r\n\r\n  private checkLotConnectionMode() {\r\n    let storedValue = this.storage.getBuyer();\r\n    if (storedValue)\r\n      this.isLowConnectionMode = storedValue?.lotLowConnectionMode;\r\n    if (this.isLowConnectionMode) this.loader = false;\r\n  }\r\n\r\n  refreshWholePage() {\r\n    location.reload();\r\n  }\r\n\r\n  private checkAuctionDeactivated() {\r\n    if (!this.readOnlyCatalog) {\r\n      this.toastr.info(\r\n        `Unfortunately ${this.eachLotData.auction.auctionCode} is no longer available for bidding and you will be notified if and when the auction becomes available for bidding again`,\r\n        constants.common.toast.infoTitle,\r\n        constants.common.toast.config\r\n      );\r\n    }\r\n    if (this.readOnlyCatalog) {\r\n      this.toastr.info(\r\n        `Unfortunately ${this.eachLotData.auction.auctionCode} is deactivated and you will be notified if and when the auction becomes available again`,\r\n        constants.common.toast.infoTitle,\r\n        constants.common.toast.config\r\n      );\r\n    }\r\n    this.router.navigateByUrl('/');\r\n  }\r\n\r\n  buildConnection() {\r\n    this.lotHubConnection = new HubConnectionBuilder()\r\n      .configureLogging(LogLevel.None)\r\n      .withUrl(this.hubUrl)\r\n      .withAutomaticReconnect([2000, 4000])\r\n      .build();\r\n\r\n    this.registerHubEvents();\r\n\r\n    this.startConnection();\r\n  }\r\n\r\n  startConnection() {\r\n    this.lotHubConnection\r\n      .start()\r\n      .then(() => {\r\n        this.isConnectionClosing = false;\r\n        this.loader = false;\r\n        this.isLotConnected = true;\r\n        this.isLowConnectionMode = false;\r\n        this.getLotData();\r\n      })\r\n      .catch(() => {\r\n        this.isConnectionClosing = true;\r\n        this.loader = false;\r\n        this.isLotConnected = false;\r\n        this.isLowConnectionMode = true;\r\n      });\r\n  }\r\n\r\n  registerHubEvents() {\r\n    this.lotHubConnection.onreconnecting(() => {\r\n      this.isConnectionClosing = false;\r\n      this.loader = false;\r\n      this.isLotConnected = false;\r\n      this.isLowConnectionMode = true;\r\n    });\r\n\r\n    this.lotHubConnection.onreconnected(() => {\r\n      this.isConnectionClosing = false;\r\n      this.loader = false;\r\n      this.isLotConnected = true;\r\n      this.isLowConnectionMode = false;\r\n      this.getLotData();\r\n    });\r\n\r\n    this.lotHubConnection.onclose(() => {\r\n      this.isConnectionClosing = true;\r\n      this.loader = false;\r\n      this.isLowConnectionMode = true;\r\n      if (!this.isLotConnected) this.buildConnection();\r\n    });\r\n\r\n    this.biddingListener();\r\n  }\r\n\r\n  getLotData() {\r\n    if (!this.isLowConnectionMode) this.loader = true;\r\n    let groupName: string =\r\n      this.eachLotData.auction.id + '#' + this.eachLotData.id;\r\n    this.lotHubConnection\r\n      .invoke('AddUserToLotBidding', groupName)\r\n      .then((response) => {\r\n        if (response) {\r\n          this.mapBidInfo(response);\r\n        }\r\n        this.loader = false;\r\n      })\r\n      .catch((err) => {\r\n        this.loader = false;\r\n      });\r\n    this.getServerCurrentDatetime();\r\n  }\r\n\r\n  private dataModelForBulkBid(inputedValue: number) {\r\n    this.eachLotData.newBid = this.biddingAmount.value;\r\n    if (inputedValue) this.selectedLot.emit(this.eachLotData);\r\n    else this.selectedLot.emit(this.eachLotData.id);\r\n  }\r\n\r\n  isTimeReached(isReached: boolean) {\r\n    if (isReached) {\r\n      this.getLotResults();\r\n      this.showTimer = false;\r\n      this.isLotClosed = true;\r\n    }\r\n  }\r\n\r\n  mapBidInfo(res: BidInfo, needToShowOutBidToast = false) {\r\n    this.changeInAmount =\r\n      +this.eachLotData.nextRequiredBid !== +res.nextRequiredBid;\r\n    this.eachLotData.bidCount = res.bidCount;\r\n    this.eachLotData.currentBid = res.currentBid;\r\n    this.eachLotData.highestBid = res.highestBid;\r\n    this.eachLotData.highestBidder = res.highestBidders;\r\n    this.eachLotData.nextRequiredBid = res.nextRequiredBid;\r\n    this.eachLotData.lotEndTimeUtc = res.lotEndTimeUtc;\r\n    this.eachLotData.soldTo = res.soldTo;\r\n    this.eachLotData.soldAt = res.soldAt;\r\n    this.eachLotData.extendedByMinutes = res.extendedByMinutes;\r\n    this.eachLotData.timeLeft = res.timeLeft;\r\n    this.eachLotData.isBiddingPaused = res.isBiddingPaused;\r\n    this.eachLotData.lotStatus = res.lotStatus;\r\n    this.eachLotData.willSell = res?.willSell;\r\n    this.eachLotData.loosers = res?.loosers;\r\n    this.eachLotData.outbid = this.findOutbid(\r\n      this.eachLotData,\r\n      needToShowOutBidToast\r\n    );\r\n    this.checkHigherBidder(res.highestBidders);\r\n  }\r\n\r\n  findOutbid(item, isShowMessage = false) {\r\n    let index =\r\n      item.loosers && item.loosers?.length > 0\r\n        ? item.loosers?.findIndex((x) => x == this.loggedInUser)\r\n        : -1;\r\n    let index1 =\r\n      item.highestBidder && item.highestBidder?.length > 0\r\n        ? item.highestBidder?.findIndex((x) => x == this.loggedInUser)\r\n        : -1;\r\n    if (index > -1 && index1 == -1) {\r\n      return true;\r\n    } else {\r\n      return false;\r\n    }\r\n  }\r\n\r\n  biddingListener() {\r\n    this.lotHubConnection.on('GetLotByGroupName', (data: BidInfo) => {\r\n      if (data) this.mapBidInfo(data, true);\r\n      this.submitState = 'redBlink';\r\n    });\r\n  }\r\n\r\n  endState() {\r\n    this.submitState = 'noBlink';\r\n  }\r\n\r\n  goToViewLotDetail(lotNumber: string) {\r\n    this.router.navigate([lotNumber], {\r\n      relativeTo: this.route,\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  goToViewLotDetailsFromWatchList(auctionCode, lotNumber) {\r\n    this.router.navigate(['/', auctionCode, 'lots', lotNumber], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  getServerCurrentDatetime() {\r\n    this.serverTimeSubcription = interval(10000).subscribe(() => {\r\n      this.lotHubConnection.invoke('ServerCurrentDateTime').then((response) => {\r\n        this.eachLotData.lotStartTimeUtc = response;\r\n      });\r\n    });\r\n  }\r\n\r\n  addToWatchList(lotId, lotNumber) {\r\n    let model = {\r\n      lotId: lotId,\r\n      auctionId: this.eachLotData.auction.id,\r\n    };\r\n    const addWatchList = this.watchListService.addToWatchList(model).subscribe((res: any) => {\r\n      this.toastr.success(\r\n        `Lot # ${lotNumber} added to Watchlist`,\r\n        constants.common.toast.successTitle,\r\n        constants.common.toast.config\r\n      );\r\n      this.isAddedToWatchlist = true;\r\n    });\r\n    this.subscriptions.push(addWatchList)\r\n  }\r\n\r\n  removeFromWatchList(lotId, lotNumber) {\r\n    let model = {\r\n      lotId: lotId,\r\n      auctionId: this.eachLotData.auction.id,\r\n    };\r\n    const removeWatchList = this.watchListService.removeFromWatchList(model).subscribe((res: any) => {\r\n      this.toastr.success(\r\n        `Lot # ${lotNumber} removed from Watchlist`,\r\n        constants.common.toast.successTitle,\r\n        constants.common.toast.config\r\n      );\r\n      this.isAddedToWatchlist = false;\r\n    });\r\n    this.subscriptions.push(removeWatchList)\r\n  }\r\n\r\n  private checkHigherBidder(highestBidders: Array<number> | null) {\r\n    if (highestBidders != null) {\r\n      let isHighest: number = highestBidders.find(\r\n        (i) => i == this.eachLotData.loggedInUser?.userId\r\n      );\r\n      this.isUserHighestBidder = isHighest > -1 ? true : false;\r\n    }\r\n  }\r\n\r\n  goToRegister(auctionCode) {\r\n    this.router.navigate([auctionCode, routeTable.public.auctionRegister], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  goToAuctionTitle(auctionCode) {\r\n    this.router.navigate([auctionCode], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  goToAuctionCatalog(auctionCode) {\r\n    this.router.navigate([auctionCode, 'lots'], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  findLooser(): number {\r\n    if (this.eachLotData.loosers)\r\n      return this.eachLotData.loosers?.findIndex(\r\n        (i) => i == +this.loggedInUser\r\n      );\r\n  }\r\n\r\n  checkLotBulkBidResult(values: BulkBidSubmissionResult[]) {\r\n    if (values && values.length) {\r\n      let lotValue = values.find((val) => val.lotId == this.eachLotData.id);\r\n      if (lotValue && lotValue.message) {\r\n        this.errorMsg = lotValue.isSuccess ? '' : lotValue.message;\r\n        this.biddingAmount.reset();\r\n        return;\r\n      }\r\n\r\n      if (lotValue && lotValue.isRemoved) {\r\n        this.biddingAmount.reset();\r\n      }\r\n    }\r\n  }\r\n\r\n  getLotDataInApi() {\r\n    this.loader = true;\r\n    const lotDetail = this.lotService\r\n      .getLotDetail(\r\n        this.eachLotData.id,\r\n        this.eachLotData.auction.auctionCode,\r\n        this.eachLotData.lotNumber\r\n      )\r\n      .subscribe(\r\n        (res) => {\r\n          this.eachLotData = res;\r\n          this.checkHigherBidder(res.highestBidder);\r\n          this.loader = false;\r\n        },\r\n        (err) => {\r\n          Error(err);\r\n          this.loader = false;\r\n        }\r\n      );\r\n      this.subscriptions.push(lotDetail)\r\n  }\r\n\r\n  submitBidByApi(isQuickBid: boolean = false) {\r\n    this.errorMsg = null;\r\n    let bidAmount: number;\r\n\r\n    if (!isQuickBid) {\r\n      if (this.biddingAmount.invalid) return;\r\n      bidAmount = +this.biddingAmount.value;\r\n      if (\r\n        this.bulkBid ||\r\n        (this.bulkBidResult &&\r\n          this.bulkBidResult.filter((it) => it.isRemoved == false).length > 1)\r\n      ) {\r\n        this.submitBulkBid.emit(true);\r\n        return;\r\n      } else this.submitBulkBid.emit(false);\r\n    } else {\r\n      bidAmount = +this.eachLotData.nextRequiredBid;\r\n    }\r\n\r\n    this.loader = true;\r\n\r\n    let model: BulkBid = {\r\n      auctionId: this.eachLotData.auction.id,\r\n      lotAmount: [\r\n        {\r\n          lotId: this.eachLotData.id,\r\n          amount: bidAmount,\r\n        },\r\n      ],\r\n      userId: this.eachLotData.loggedInUser.userId,\r\n      paddleNumber: this.eachLotData.loggedInUser.paddleNumber,\r\n      proxyUserId: null,\r\n    };\r\n\r\n    this.bidService\r\n      .submitPublicBulkBid(model)\r\n      .toPromise()\r\n      .then((res: any) => {\r\n        res = res[0];\r\n        this.loader = false;\r\n        if (res.isSuccess) {\r\n          this.toastr.success(\r\n            res.message,\r\n            constants.common.toast.successTitle,\r\n            constants.common.toast.config\r\n          );\r\n          this.biddingAmount.reset();\r\n        } else {\r\n          this.errorMsg = res.message;\r\n        }\r\n        if (res.isDeactivated) {\r\n          this.checkAuctionDeactivated();\r\n        }\r\n      })\r\n      .catch((err) => {\r\n        this.loader = false;\r\n        this.toastr.error(\r\n          err,\r\n          constants.common.toast.errorTitle,\r\n          constants.common.toast.config\r\n        );\r\n      });\r\n    this.closeReviewModal();\r\n  }\r\n\r\n  private getLotResults() {\r\n    this.loader = true;\r\n    const lotResult = this.bidService.getLotResult(this.eachLotData.id).subscribe(\r\n      (res) => {\r\n        this.loader = false;\r\n        this.mapBidInfo(res, true);\r\n      },\r\n      (err) => (this.loader = false)\r\n    );\r\n    this.subscriptions.push(lotResult)\r\n  }\r\n\r\n  onSubmit(isQuickBid: boolean = false) {\r\n    this.changeInAmount = false;\r\n    this.isQuickBidOrNot = isQuickBid;\r\n    if (!this.biddingAmount.value && !this.isQuickBidOrNot) {\r\n      return;\r\n    } else {\r\n      this.modalRef = this.modalService.show(this.quickBidModal, {\r\n        class: 'custom-popup modal-dialog-centered',\r\n        ignoreBackdropClick: true,\r\n        keyboard: false,\r\n      });\r\n      this.modalRef.onHidden.subscribe(() => {\r\n        this.changeInAmount = false;\r\n      });\r\n    }\r\n  }\r\n\r\n  closeReviewModal() {\r\n    this.changeInAmount = false;\r\n    this.modalRef.hide();\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    if (this.serverTimeSubcription) this.serverTimeSubcription.unsubscribe();\r\n    if (this.pageChange && this.isLotConnected) {\r\n      this.lotHubConnection.stop();\r\n    }\r\n    this.subscriptions.forEach((sub: Subscription) => {\r\n      sub.unsubscribe();\r\n    });\r\n  }\r\n}\r\n","<div [@submit]=\"submitState\" (@submit.done)=\"endState()\" class=\"lot-box-inner\" style=\"position: relative\">\r\n  <app-loader [showLoader]=\"loader\" [inlineLoader]=\"true\">\r\n    <h6 *ngIf=\"isConnectionClosing\">\r\n      <button type=\"button\" class=\"btn btn-colored mr-2\" role=\"button\" (click)=\"buildConnection()\">\r\n        <img alt=\"refresh\" title=\"refresh\" src=\"/assets/images/refresh.svg\" />\r\n        Refresh Card\r\n      </button>\r\n      <button type=\"button\" class=\"btn btn-colored\" role=\"button\" (click)=\"refreshWholePage()\">\r\n        <img alt=\"refresh\" title=\"refresh\" src=\"/assets/images/refresh.svg\" />\r\n        Refresh Whole Page\r\n      </button>\r\n    </h6>\r\n  </app-loader>\r\n\r\n  <div class=\"top-image-wrap\">\r\n    <img *ngIf=\"eachLotData?.thumbnailImages.length == 0\" class=\"lot-banner\" alt=\"lot-banner\"\r\n      src=\"/assets/images/image_not_found.svg\" role=\"button\" (click)=\"\r\n        goToViewLotDetailsFromWatchList(\r\n          eachLotData?.auction.auctionCode,\r\n          eachLotData?.lotNumber\r\n        )\r\n      \" />\r\n    <img *ngIf=\"eachLotData?.thumbnailImages.length > 0\" class=\"lot-banner\" alt=\"lot-banner\"\r\n      [src]=\"eachLotData?.thumbnailImages[0]?.name\" role=\"button\" (click)=\"\r\n        goToViewLotDetailsFromWatchList(\r\n          eachLotData?.auction.auctionCode,\r\n          eachLotData?.lotNumber\r\n        )\r\n      \" />\r\n    <span class=\"lot-no cursor custom-lot-number\" [ngClass]=\"{ featuredLot: eachLotData?.isFeatured }\" role=\"button\"\r\n      (click)=\"\r\n        goToViewLotDetailsFromWatchList(\r\n          eachLotData?.auction.auctionCode,\r\n          eachLotData?.lotNumber\r\n        )\r\n      \">\r\n      {{ (eachLotData?.isFeatured ? \"Featured\" : \"\") + \" Lot\" }}\r\n      <span>#{{ eachLotData?.lotNumber }}</span>\r\n    </span>\r\n\r\n    <ng-container *ngIf=\"!readOnlyCatalog\">\r\n      <ng-container *ngIf=\"!showListView && !isItWatchList && !isLotClosed\">\r\n        <span class=\"starred\" *ngIf=\"eachLotData?.loggedInUser && !isAddedToWatchlist\">\r\n          <img alt=\"star-stroke\" src=\"/assets/images/star-stroke-grey.svg\" role=\"button\"\r\n            (click)=\"addToWatchList(eachLotData?.id, eachLotData?.lotNumber)\" />\r\n        </span>\r\n        <span class=\"starred\" *ngIf=\"eachLotData?.loggedInUser && isAddedToWatchlist\">\r\n          <img alt=\"star-filled\" src=\"/assets/images/star-filled.svg\" role=\"button\" (click)=\"\r\n              removeFromWatchList(eachLotData?.id, eachLotData?.lotNumber)\r\n            \" />\r\n        </span>\r\n      </ng-container>\r\n    </ng-container>\r\n  </div>\r\n\r\n  <div class=\"details-wrap\">\r\n    <ng-container *ngIf=\"!readOnlyCatalog\">\r\n      <div *ngIf=\"\r\n          !eachLotData?.isBiddingPaused &&\r\n          showTimer &&\r\n          eachLotData?.loggedInUser &&\r\n          eachLotData?.loggedInUser?.isApproved &&\r\n          eachLotData?.auction.auctionStatus == auctionStatuses.live\r\n        \">\r\n        <div class=\"bid-closes bidCloses\">\r\n          <img alt=\"clock-icon\" class=\"mr-2\" src=\"./assets/images/clock.svg\" />\r\n          <strong class=\"mr-1\">Closes In </strong>\r\n          <timer-countdown [isLowConnectionMode]=\"isLowConnectionMode\" [timeLeft]=\"eachLotData?.timeLeft\"\r\n            [startTime]=\"eachLotData?.lotStartTimeUtc\" [endTime]=\"eachLotData?.lotEndTimeUtc\"\r\n            (timeReached)=\"isTimeReached($event)\">\r\n          </timer-countdown>\r\n        </div>\r\n        <span class=\"extended badge-dark card-badge ml-4\" *ngIf=\"eachLotData?.extendedByMinutes\">Extended</span>\r\n      </div>\r\n    </ng-container>\r\n\r\n    <p class=\"des\">{{ eachLotData?.description | characterLimit: 140 }}\r\n\r\n\r\n      <ng-container *ngIf=\"eachLotData?.description &&\r\n      eachLotData?.description?.length > 140\">\r\n        <div class=\"d-inline for-icons\">\r\n          <a role=\"button\" (click)=\"goToViewLotDetailsFromWatchList(\r\n            eachLotData?.auction.auctionCode,\r\n            eachLotData?.lotNumber\r\n          )\" class=\"edit-bids-icon\" style=\"color: #8d1231; text-decoration:underline\">\r\n            <span class=\"m-0 p-0\">more info</span>\r\n          </a>\r\n        </div>\r\n      </ng-container>\r\n\r\n    </p>\r\n\r\n    <a *ngIf=\"isItWatchList || isItActiveBidList\" class=\"colored-link\"\r\n      (click)=\"goToAuctionCatalog(eachLotData?.auction?.auctionCode)\">\r\n      Go to catalog</a>\r\n    <p class=\"auc-address mb-2\" *ngIf=\"\r\n        eachLotData?.auction?.auctionStatus == auctionStatuses.upcoming &&\r\n        isItWatchList\r\n      \">\r\n      <span class=\"\">Opens\r\n        {{\r\n        eachLotData?.auction?.startDateTime\r\n        | toLocalDateTime\r\n        : false\r\n        : eachLotData?.auction?.timeZoneCode\r\n        : \"EEEE\r\n        MMMM d,h:mm a\"\r\n        }}\r\n      </span>\r\n    </p>\r\n\r\n    <div class=\"location-wrap\">\r\n      <div class=\"location\">\r\n        <ng-container *ngIf=\"eachLotData?.quantity > 1\">\r\n          <span class=\"ml-0 mr-2 forQty\">Qty: {{ eachLotData?.quantity }}</span>\r\n        </ng-container>\r\n        <img class=\"location\" alt=\"location\" height=\"13\" src=\"/assets/images/location-grey.svg\" />\r\n        <span>{{ eachLotData?.location }}</span>\r\n      </div>\r\n\r\n      <ng-container *ngIf=\"!readOnlyCatalog\">\r\n        <ng-container *ngIf=\"eachLotData?.auction?.auctionStatus == auctionStatuses.live\">\r\n          <p class=\"bid\">{{ eachLotData?.bidCount }} Bids</p>\r\n        </ng-container>\r\n        <div class=\"des\" style=\"font-size: 12px\" *ngIf=\"\r\n            showTimer &&\r\n            eachLotData?.loggedInUser &&\r\n            eachLotData?.auction.auctionStatus == auctionStatuses.live\r\n          \">\r\n          <!-- for reserve price -->\r\n          <ng-container *ngIf=\"eachLotData?.reservePrice\">\r\n            <ng-container *ngIf=\"eachLotData?.bidCount > 0; else elseTemplate\">\r\n              <ng-container *ngIf=\"\r\n                  eachLotData?.currentBid >= eachLotData?.reservePrice;\r\n                  else elseBody\r\n                \">\r\n                <p class=\"mb-1\">Reserve Price Met</p>\r\n              </ng-container>\r\n              <ng-template #elseBody>\r\n                <p class=\"mb-1\">Reserve Price Not Met</p>\r\n              </ng-template>\r\n            </ng-container>\r\n            <ng-template #elseTemplate>\r\n              <p class=\"mb-1\">Subject To Reserve Price</p>\r\n            </ng-template>\r\n          </ng-container>\r\n          <!-- for bulk lot or individual lot i text -->\r\n          <ng-container *ngIf=\"\r\n              eachLotData?.lotType === lotType.individual &&\r\n              eachLotData?.addedInBulkLotName\r\n            \">\r\n            <p class=\"m-0\">\r\n              Subject to Bulk Lot of {{ eachLotData?.addedInBulkLotName }}\r\n              <span class=\"custom-tooltip\" #tooltip=\"matTooltip\" matTooltip=\"This lot is subject to Bulk Lot {{\r\n                  eachLotData?.addedInBulkLotName\r\n                }}. In order for this lot to be awarded, the aggregate total of Lots {{\r\n                  eachLotData?.associatedLots | bulkLots\r\n                }} must exceed the value of {{\r\n                  eachLotData?.addedInBulkLotName\r\n                }}. Additionally, the Bulk Bidder/Individual Bidders will be given {{\r\n                  eachLotData?.individualModifier\r\n                }}% protection.\" [matTooltipPosition]=\"'above'\">\r\n                <img alt=\"info\" src=\"../assets/images/info.svg\" />\r\n              </span>\r\n            </p>\r\n          </ng-container>\r\n          <ng-container *ngIf=\"\r\n              eachLotData?.lotType === lotType.bulk && eachLotData?.lots?.length\r\n            \">\r\n            <p class=\"m-0\">\r\n              Subject to Lots {{ eachLotData?.lots | bulkLots }}\r\n              <span class=\"custom-tooltip\" #tooltip=\"matTooltip\"\r\n                matTooltip=\"\r\n                  The Bulk Bid is Subject to the Aggregate of Lots {{\r\n                  eachLotData?.lots | bulkLots\r\n                }}. The Bulk Bidder/Piecemeal Bidders will be given {{\r\n                  eachLotData?.modifier\r\n                }}% protection. Whichever lot(s) produce the highest total will be awarded the Lot. The Bulk Bid will close before the individual lots and you will not get a chance to re-bid after the individual lots close.\"\r\n                [matTooltipPosition]=\"'above'\">\r\n                <img alt=\"info\" src=\"../assets/images/info.svg\" />\r\n              </span>\r\n            </p>\r\n          </ng-container>\r\n          <ng-container *ngIf=\"!isLotClosed\">\r\n            <ng-container *ngIf=\"\r\n                eachLotData?.willSell &&\r\n                eachLotData?.lotType != eachLotData?.willSell &&\r\n                eachLotData?.addedInBulkLotName\r\n              \">\r\n              <p class=\"m-0\">Below Bulk Bid Threshold</p>\r\n            </ng-container>\r\n            <ng-container *ngIf=\"\r\n                eachLotData?.willSell &&\r\n                eachLotData?.lotType != eachLotData?.willSell &&\r\n                eachLotData?.lots?.length\r\n              \">\r\n              <p class=\"m-0\">Below Bulk Bid Threshold</p>\r\n            </ng-container>\r\n          </ng-container>\r\n        </div>\r\n      </ng-container>\r\n    </div>\r\n  </div>\r\n\r\n  <ng-container *ngIf=\"!readOnlyCatalog\">\r\n    <div class=\"status-pos\" *ngIf=\"eachLotData?.auction?.auctionStatus == 2 && isItWatchList\">\r\n      <p class=\"for-approval awaiting m-0\" *ngIf=\"!eachLotData?.auction?.isApproved\">\r\n        <img alt=\"approval-icon\" class=\"approval-icon\" src=\"./assets/images/awaiting-approval.svg\" />\r\n        <span>Awaiting Approval</span>\r\n      </p>\r\n      <p class=\"for-approval approved m-0\" *ngIf=\"eachLotData?.auction?.isApproved\">\r\n        <img alt=\"approval-icon\" class=\"approval-icon\" src=\"./assets/images/approved.svg\" />\r\n        <span>Approved!</span>\r\n      </p>\r\n    </div>\r\n  </ng-container>\r\n\r\n  <ng-container *ngIf=\"!readOnlyCatalog\">\r\n    <div class=\"bid-wrap\">\r\n      <ng-content *ngIf=\"isItWatchList\"></ng-content>\r\n\r\n      <ng-container *ngIf=\"\r\n          !eachLotData?.isBiddingPaused &&\r\n          loggedInUser > 0 &&\r\n          eachLotData?.loggedInUser?.isApproved &&\r\n          eachLotData?.auction.auctionStatus == auctionStatuses.live &&\r\n          !isLotClosed\r\n        \">\r\n        <div class=\"top-price\" *ngIf=\"loggedInUser\">\r\n          <div class=\"bid-price left-price\">\r\n            <p class=\"name\">{{eachLotData?.bidCount == 0 ? 'Opening Bid' : 'Current Bid'}} Amount</p>\r\n            <p class=\"amount\">\r\n              {{\r\n              eachLotData?.currentBid\r\n              | auctionCurrency: eachLotData?.auction?.curreny\r\n              }}\r\n            </p>\r\n          </div>\r\n\r\n          <div class=\"bid-price right-price\">\r\n            <p class=\"name\">\r\n              {{ isUserHighestBidder ? \"Max Bid Amount\" : \"Next Required Bid\" }}\r\n            </p>\r\n            <p class=\"amount\">\r\n              <ng-container *ngIf=\"isUserHighestBidder; else nextRequiredBidSection\">\r\n                {{\r\n                eachLotData?.highestBid\r\n                | auctionCurrency: eachLotData?.auction?.curreny\r\n                }}\r\n              </ng-container>\r\n              <ng-template #nextRequiredBidSection>\r\n                {{\r\n                eachLotData?.nextRequiredBid\r\n                | auctionCurrency: eachLotData?.auction?.curreny\r\n                }}\r\n                <small>\r\n                  {{ eachLotData?.quantity > 1 ? \"Each\" : \"\" }}\r\n                </small>\r\n              </ng-template>\r\n            </p>\r\n          </div>\r\n        </div>\r\n        <div class=\"bid-price-input\" *ngIf=\"loggedInUser\">\r\n          <div class=\"price-left\">\r\n            <div class=\"form-group no-float-fields m-0 height-42\">\r\n              <mat-form-field appearance=\"outline\">\r\n                <input matInput type=\"number\" [formControl]=\"biddingAmount\" [min]=\"minBid\" [max]=\"maxBid\" />\r\n              </mat-form-field>\r\n              <control-messages [control]=\"biddingAmount\"></control-messages>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"price-right\">\r\n            <button type=\"button\" class=\"btn btn-white-border w-100\" role=\"button\" (click)=\"onSubmit(false)\" [title]=\"\r\n                !isLowConnectionMode\r\n                  ? !isLotConnected\r\n                    ? 'Connecting...'\r\n                    : 'You are on real time updates'\r\n                  : 'You are on low connection mode'\r\n              \">\r\n              Bid Now\r\n            </button>\r\n          </div>\r\n        </div>\r\n        <div class=\"text-center wishlist-outbid\">\r\n          <p class=\"outbid-text\" *ngIf=\"eachLotData['outbid']\">Outbid</p>\r\n        </div>\r\n        <div class=\"bid-submit\" *ngIf=\"loggedInUser && !isUserHighestBidder\">\r\n          <button type=\"button\" class=\"btn btn-colored w-100\" role=\"button\" (click)=\"onSubmit(true)\" [title]=\"\r\n              !isLowConnectionMode\r\n                ? !isLotConnected\r\n                  ? 'Connecting...'\r\n                  : 'You are on real time updates'\r\n                : 'You are on low connection mode'\r\n            \">\r\n            Quick Bid\r\n            {{\r\n            eachLotData?.nextRequiredBid\r\n            | auctionCurrency: eachLotData?.auction?.curreny\r\n            }}\r\n          </button>\r\n        </div>\r\n\r\n        <div class=\"bid-green-hover-outer\" *ngIf=\"loggedInUser && isUserHighestBidder\">\r\n          <button type=\"button\" class=\"btn btn-colored btn-green-hover w-100\">\r\n            <img alt=\"white-check\" class=\"mr-2\" src=\"./assets/images/white-check.svg\" />\r\n            High Bidder\r\n          </button>\r\n          <div class=\"hover-wrap\">\r\n            <p class=\"m-0\">\r\n              You will be able to \"Quick Bid\" after your bid is outbid.\r\n              <br />\r\n              <br />\r\n              You may still increase your max bid by entering a higher value on\r\n              clicking Bid Now.\r\n            </p>\r\n          </div>\r\n        </div>\r\n        <div *ngIf=\"errorMsg != null\">\r\n          <p class=\"error-text\">{{ errorMsg }}</p>\r\n        </div>\r\n      </ng-container>\r\n\r\n      <div class=\"pause-bidding text-center\" [ngClass]=\"{ 'my-3': showListView }\" *ngIf=\"eachLotData?.isBiddingPaused\">\r\n        <img alt=\"clock-icon\" class=\"clock-icon\" style=\"height: 25px\" src=\"./assets/images/clock-grey.svg\" />\r\n        <h5>Bidding is paused!</h5>\r\n      </div>\r\n\r\n      <div>\r\n        <ng-container *ngIf=\"showTimer\">\r\n          <button type=\"button\" class=\"btn btn-white-border w-100 mt-2\" [ngClass]=\"{ 'mb-2': !showListView }\" *ngIf=\"\r\n              eachLotData?.auction.isRegistrationActive &&\r\n              (eachLotData?.auction.auctionStatus == auctionStatuses.live ||\r\n                eachLotData?.auction.auctionStatus ==\r\n                  auctionStatuses.upcoming) &&\r\n              eachLotData?.loggedInUser == null\r\n            \" role=\"button\" (click)=\"goToRegister(eachLotData?.auction.auctionCode)\">\r\n            Register to Bid\r\n          </button>\r\n        </ng-container>\r\n\r\n        <div class=\"w-100 mb-2 sold-wrap text-center\" *ngIf=\"\r\n            eachLotData?.lotStatus && isLotClosed && eachLotData?.loggedInUser\r\n          \">\r\n          <ng-container [ngSwitch]=\"eachLotData?.lotStatus\">\r\n            <ng-container *ngSwitchCase=\"soldStatuses.sold\">\r\n              <div class=\"badge-type\">\r\n                <span class=\"card-badge-colored mr-2\">SOLD</span>\r\n              </div>\r\n              <p *ngIf=\"eachLotData?.soldTo == loggedInUser\">Winning Bidder</p>\r\n              <p *ngIf=\"findLooser() > -1 && eachLotData?.soldTo !== loggedInUser\">Unsuccessful</p>\r\n              <p *ngIf=\"isItActiveBidList\">\r\n                {{\r\n                eachLotData?.loggedInUserLastBid\r\n                | auctionCurrency: eachLotData?.auction?.curreny\r\n                }}\r\n              </p>\r\n            </ng-container>\r\n            <ng-container *ngSwitchCase=\"soldStatuses.unsold\">\r\n              <div class=\"badge-type\">\r\n                <span class=\"card-badge-colored mr-2\"> UNSOLD </span>\r\n                <div *ngIf=\"isItWatchList\">\r\n                  <a role=\"button\" class=\"btn btn-colored w-100 mt-2\" [routerLink]=\"[\r\n                      '/',\r\n                      eachLotData?.auction.auctionCode,\r\n                      'enquire'\r\n                    ]\">Inquire Now</a>\r\n                </div>\r\n              </div>\r\n            </ng-container>\r\n            <ng-container *ngSwitchCase=\"soldStatuses.cancelled\">\r\n              <div class=\"badge-type\">\r\n                <span class=\"card-badge-colored mr-2\"> CANCELLED </span>\r\n              </div>\r\n            </ng-container>\r\n            <ng-container *ngSwitchCase=\"soldStatuses.pending\">\r\n              <div class=\"badge-type\">\r\n                <span class=\"card-badge-colored mr-2\"> PENDING </span>\r\n              </div>\r\n            </ng-container>\r\n          </ng-container>\r\n        </div>\r\n\r\n        <div class=\"refreshWatchlist\">\r\n          <div class=\"mb-2 mt-2 sold-wrap\" *ngIf=\"showListView && !isItWatchList && !isLotClosed\">\r\n            <div class=\"starred add-wishlist\" role=\"button\"\r\n              (click)=\"addToWatchList(eachLotData?.id, eachLotData?.lotNumber)\"\r\n              *ngIf=\"loggedInUser != 0 && !isAddedToWatchlist\">\r\n              <span class=\"for-image\">\r\n                <img alt=\"star-stroke\" src=\"/assets/images/star-stroke-grey.svg\" />\r\n              </span>\r\n              <span class=\"ml-2\">Add To Watchlist</span>\r\n            </div>\r\n\r\n            <a [routerLink]=\"['/profile/my-watchlist']\" *ngIf=\"loggedInUser != 0 && isAddedToWatchlist\">\r\n              <div class=\"add-wishlist\">\r\n                <span class=\"for-image\">\r\n                  <img alt=\"star-filled\" src=\"/assets/images/star-filled.svg\" />\r\n                </span>\r\n                <span class=\"ml-2\">Go to Watchlist</span>\r\n              </div>\r\n            </a>\r\n          </div>\r\n\r\n          <ng-container *ngIf=\"isLowConnectionMode && !isLotClosed\">\r\n            <a class=\"iconRefresh\" role=\"button\" role=\"button\" (click)=\"getLotDataInApi()\">\r\n              <img alt=\"refresh\" title=\"refresh\" class=\"mr-2\" src=\"/assets/images/refresh.svg\" />\r\n              Refresh\r\n            </a>\r\n          </ng-container>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </ng-container>\r\n</div>\r\n\r\n<ng-template #quickBidModal>\r\n  <div class=\"modal-header pl-3\">\r\n    <h4 class=\"modal-title pull-left\">Review Bids</h4>\r\n    <button type=\"button\" class=\"close pull-right circle-icon\" aria-label=\"Close\" role=\"button\"\r\n      (click)=\"closeReviewModal()\">\r\n      <img alt=\"cross\" _ngcontent-lrm-c188=\"\" src=\"../assets/images/cross.svg\" />\r\n    </button>\r\n  </div>\r\n  <div class=\"modal-body\">\r\n    <div class=\"column-list\">\r\n      <div class=\"parts\">\r\n        <div class=\"left-wrap\">Auction</div>\r\n        <div class=\"right-wrap\">{{ eachLotData.auction.title | titlecase }}</div>\r\n      </div>\r\n\r\n      <div class=\"parts\">\r\n        <div class=\"left-wrap\">Bidder</div>\r\n        <div class=\"right-wrap\">\r\n          Paddle No. {{ eachLotData.loggedInUser.paddleNumber }} {{userFullName | titlecase}}\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <div class=\"data-table-wrap w-100\">\r\n      <table aria-label=\"table\" class=\"w-100 table-with-border review-bids-table\">\r\n        <tbody>\r\n          <tr class=\"mat-row\">\r\n            <td class=\"mat-cell column-1 listing-data-entry table-with-row-header\">\r\n              <span class=\"td-header\">Lot #</span>\r\n              {{ eachLotData.lotNumber }}\r\n            </td>\r\n            <td class=\"mat-cell column-2 listing-data-entry table-with-row-header yellow-bg\">\r\n              <span class=\"td-header\">Lot Description</span>\r\n              {{ eachLotData.description | characterLimit: 50 }}\r\n            </td>\r\n            <td class=\"mat-cell column-3 listing-data-entry table-with-row-header\" *ngIf=\"!isQuickBidOrNot\">\r\n              <span class=\"td-header\">Current</span>\r\n              {{ eachLotData.currentBid | auctionCurrency: eachLotData.auction.curreny }}\r\n            </td>\r\n            <td class=\"mat-cell column-3 listing-data-entry table-with-row-header\" *ngIf=\"!isQuickBidOrNot\">\r\n              <span class=\"td-header\">New Bid</span>\r\n              {{ biddingAmount.value | auctionCurrency: eachLotData.auction.curreny }}\r\n\r\n\r\n            </td>\r\n            <td class=\"mat-cell column-3 listing-data-entry table-with-row-header\" *ngIf=\"isQuickBidOrNot\">\r\n              <span class=\"td-header\">Quick Bid</span>\r\n              {{ eachLotData.nextRequiredBid | auctionCurrency: eachLotData.auction.curreny }}\r\n            </td>\r\n          </tr>\r\n          <ng-container *ngIf=\"!isQuickBidOrNot\">\r\n            <div class=\"reviewBidError\" *ngIf=\"biddingAmount?.value < eachLotData.nextRequiredBid\">\r\n              <img alt=\"invalid bid\" class=\"mr-2\" src=\"assets/images/bidError.svg\" />\r\n              <p>\r\n                <strong>Invalid Bid:</strong> Bid of\r\n                {{ biddingAmount?.value | auctionCurrency: eachLotData.auction.curreny }}\r\n                is lower than next required bid of\r\n                {{\r\n                eachLotData.nextRequiredBid\r\n                | auctionCurrency: eachLotData.auction.curreny\r\n                }}\r\n              </p>\r\n            </div>\r\n          </ng-container>\r\n        </tbody>\r\n      </table>\r\n    </div>\r\n\r\n    <ng-container *ngIf=\"changeInAmount\">\r\n      <p>Note : New Bid has been placed. Please bid again.</p>\r\n    </ng-container>\r\n\r\n    <div class=\"review-btns-wrap mt-3\">\r\n      <ng-container *ngIf=\"!changeInAmount\">\r\n        <button type=\"button\" class=\"btn btn-colored\" role=\"button\" (click)=\"submitBidByApi(isQuickBidOrNot)\">\r\n          Submit Bid\r\n        </button>\r\n      </ng-container>\r\n      <button type=\"button\" class=\"btn btn-white-border\" role=\"button\" (click)=\"closeReviewModal()\">\r\n        Cancel\r\n      </button>\r\n    </div>\r\n  </div>\r\n</ng-template>\r\n","import { style, animate, AnimationBuilder } from '@angular/animations';\nimport { EventEmitter, Directive, ElementRef, Renderer2, Output, HostBinding, Input, NgModule } from '@angular/core';\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/** @type {?} */\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/animations';\nconst COLLAPSE_ANIMATION_TIMING = '400ms cubic-bezier(0.4,0.0,0.2,1)';\n/** @type {?} */\nconst expandAnimation = [\n    style({ height: 0, visibility: 'hidden' }),\n    animate(COLLAPSE_ANIMATION_TIMING, style({ height: '*', visibility: 'visible' }))\n];\n/** @type {?} */\nconst collapseAnimation = [\n    style({ height: '*', visibility: 'visible' }),\n    animate(COLLAPSE_ANIMATION_TIMING, style({ height: 0, visibility: 'hidden' }))\n];\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass CollapseDirective {\n    /**\n     * @param {?} _el\n     * @param {?} _renderer\n     * @param {?} _builder\n     */\n    constructor(_el, _renderer, _builder) {\n        this._el = _el;\n        this._renderer = _renderer;\n        /**\n         * This event fires as soon as content collapses\n         */\n        this.collapsed = new EventEmitter();\n        /**\n         * This event fires when collapsing is started\n         */\n        this.collapses = new EventEmitter();\n        /**\n         * This event fires as soon as content becomes visible\n         */\n        this.expanded = new EventEmitter();\n        /**\n         * This event fires when expansion is started\n         */\n        this.expands = new EventEmitter();\n        // shown\n        this.isExpanded = true;\n        this.collapseNewValue = true;\n        // hidden\n        this.isCollapsed = false;\n        // stale state\n        this.isCollapse = true;\n        // animation state\n        this.isCollapsing = false;\n        /**\n         * turn on/off animation\n         */\n        this.isAnimated = false;\n        this._display = 'block';\n        this._stylesLoaded = false;\n        this._COLLAPSE_ACTION_NAME = 'collapse';\n        this._EXPAND_ACTION_NAME = 'expand';\n        this._factoryCollapseAnimation = _builder.build(collapseAnimation);\n        this._factoryExpandAnimation = _builder.build(expandAnimation);\n    }\n    /**\n     * @param {?} value\n     * @return {?}\n     */\n    set display(value) {\n        if (!this.isAnimated) {\n            this._renderer.setStyle(this._el.nativeElement, 'display', value);\n            return;\n        }\n        this._display = value;\n        if (value === 'none') {\n            this.hide();\n            return;\n        }\n        this.show();\n    }\n    /**\n     * A flag indicating visibility of content (shown or hidden)\n     * @param {?} value\n     * @return {?}\n     */\n    set collapse(value) {\n        this.collapseNewValue = value;\n        if (!this._player || this._isAnimationDone) {\n            this.isExpanded = value;\n            this.toggle();\n        }\n    }\n    /**\n     * @return {?}\n     */\n    get collapse() {\n        return this.isExpanded;\n    }\n    /**\n     * @return {?}\n     */\n    ngAfterViewChecked() {\n        this._stylesLoaded = true;\n        if (!this._player || !this._isAnimationDone) {\n            return;\n        }\n        this._player.reset();\n        this._renderer.setStyle(this._el.nativeElement, 'height', '*');\n    }\n    /**\n     * allows to manually toggle content visibility\n     * @return {?}\n     */\n    toggle() {\n        if (this.isExpanded) {\n            this.hide();\n        }\n        else {\n            this.show();\n        }\n    }\n    /**\n     * allows to manually hide content\n     * @return {?}\n     */\n    hide() {\n        this.isCollapsing = true;\n        this.isExpanded = false;\n        this.isCollapsed = true;\n        this.isCollapsing = false;\n        this.collapses.emit(this);\n        this._isAnimationDone = false;\n        this.animationRun(this.isAnimated, this._COLLAPSE_ACTION_NAME)((/**\n         * @return {?}\n         */\n        () => {\n            this._isAnimationDone = true;\n            if (this.collapseNewValue !== this.isCollapsed && this.isAnimated) {\n                this.show();\n                return;\n            }\n            this.collapsed.emit(this);\n            this._renderer.setStyle(this._el.nativeElement, 'display', 'none');\n        }));\n    }\n    /**\n     * allows to manually show collapsed content\n     * @return {?}\n     */\n    show() {\n        this._renderer.setStyle(this._el.nativeElement, 'display', this._display);\n        this.isCollapsing = true;\n        this.isExpanded = true;\n        this.isCollapsed = false;\n        this.isCollapsing = false;\n        this.expands.emit(this);\n        this._isAnimationDone = false;\n        this.animationRun(this.isAnimated, this._EXPAND_ACTION_NAME)((/**\n         * @return {?}\n         */\n        () => {\n            this._isAnimationDone = true;\n            if (this.collapseNewValue !== this.isCollapsed && this.isAnimated) {\n                this.hide();\n                return;\n            }\n            this.expanded.emit(this);\n            this._renderer.removeStyle(this._el.nativeElement, 'overflow');\n        }));\n    }\n    /**\n     * @param {?} isAnimated\n     * @param {?} action\n     * @return {?}\n     */\n    animationRun(isAnimated, action) {\n        if (!isAnimated || !this._stylesLoaded) {\n            return (/**\n             * @param {?} callback\n             * @return {?}\n             */\n            (callback) => callback());\n        }\n        this._renderer.setStyle(this._el.nativeElement, 'overflow', 'hidden');\n        this._renderer.addClass(this._el.nativeElement, 'collapse');\n        /** @type {?} */\n        const factoryAnimation = (action === this._EXPAND_ACTION_NAME)\n            ? this._factoryExpandAnimation\n            : this._factoryCollapseAnimation;\n        if (this._player) {\n            this._player.destroy();\n        }\n        this._player = factoryAnimation.create(this._el.nativeElement);\n        this._player.play();\n        return (/**\n         * @param {?} callback\n         * @return {?}\n         */\n        (callback) => this._player.onDone(callback));\n    }\n}\nCollapseDirective.ɵfac = function CollapseDirective_Factory(t) { return new (t || CollapseDirective)(ɵngcc0.ɵɵdirectiveInject(ɵngcc0.ElementRef), ɵngcc0.ɵɵdirectiveInject(ɵngcc0.Renderer2), ɵngcc0.ɵɵdirectiveInject(ɵngcc1.AnimationBuilder)); };\nCollapseDirective.ɵdir = ɵngcc0.ɵɵdefineDirective({ type: CollapseDirective, selectors: [[\"\", \"collapse\", \"\"]], hostVars: 10, hostBindings: function CollapseDirective_HostBindings(rf, ctx) { if (rf & 2) {\n        ɵngcc0.ɵɵattribute(\"aria-expanded\", ctx.isExpanded)(\"aria-hidden\", ctx.isCollapsed);\n        ɵngcc0.ɵɵclassProp(\"collapse\", ctx.isCollapse)(\"in\", ctx.isExpanded)(\"show\", ctx.isExpanded)(\"collapsing\", ctx.isCollapsing);\n    } }, inputs: { isAnimated: \"isAnimated\", display: \"display\", collapse: \"collapse\" }, outputs: { collapsed: \"collapsed\", collapses: \"collapses\", expanded: \"expanded\", expands: \"expands\" }, exportAs: [\"bs-collapse\"] });\n/** @nocollapse */\nCollapseDirective.ctorParameters = () => [\n    { type: ElementRef },\n    { type: Renderer2 },\n    { type: AnimationBuilder }\n];\nCollapseDirective.propDecorators = {\n    collapsed: [{ type: Output }],\n    collapses: [{ type: Output }],\n    expanded: [{ type: Output }],\n    expands: [{ type: Output }],\n    isExpanded: [{ type: HostBinding, args: ['class.in',] }, { type: HostBinding, args: ['class.show',] }, { type: HostBinding, args: ['attr.aria-expanded',] }],\n    isCollapsed: [{ type: HostBinding, args: ['attr.aria-hidden',] }],\n    isCollapse: [{ type: HostBinding, args: ['class.collapse',] }],\n    isCollapsing: [{ type: HostBinding, args: ['class.collapsing',] }],\n    display: [{ type: Input }],\n    isAnimated: [{ type: Input }],\n    collapse: [{ type: Input }]\n};\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(CollapseDirective, [{\n        type: Directive,\n        args: [{\n                selector: '[collapse]',\n                exportAs: 'bs-collapse',\n                host: {\n                    '[class.collapse]': 'true'\n                }\n            }]\n    }], function () { return [{ type: ɵngcc0.ElementRef }, { type: ɵngcc0.Renderer2 }, { type: ɵngcc1.AnimationBuilder }]; }, { collapsed: [{\n            type: Output\n        }], collapses: [{\n            type: Output\n        }], expanded: [{\n            type: Output\n        }], expands: [{\n            type: Output\n        }], isExpanded: [{\n            type: HostBinding,\n            args: ['class.in']\n        }, {\n            type: HostBinding,\n            args: ['class.show']\n        }, {\n            type: HostBinding,\n            args: ['attr.aria-expanded']\n        }], isCollapsed: [{\n            type: HostBinding,\n            args: ['attr.aria-hidden']\n        }], isCollapse: [{\n            type: HostBinding,\n            args: ['class.collapse']\n        }], isCollapsing: [{\n            type: HostBinding,\n            args: ['class.collapsing']\n        }], isAnimated: [{\n            type: Input\n        }], display: [{\n            type: Input\n        }], collapse: [{\n            type: Input\n        }] }); })();\nif (false) {\n    /**\n     * This event fires as soon as content collapses\n     * @type {?}\n     */\n    CollapseDirective.prototype.collapsed;\n    /**\n     * This event fires when collapsing is started\n     * @type {?}\n     */\n    CollapseDirective.prototype.collapses;\n    /**\n     * This event fires as soon as content becomes visible\n     * @type {?}\n     */\n    CollapseDirective.prototype.expanded;\n    /**\n     * This event fires when expansion is started\n     * @type {?}\n     */\n    CollapseDirective.prototype.expands;\n    /** @type {?} */\n    CollapseDirective.prototype.isExpanded;\n    /** @type {?} */\n    CollapseDirective.prototype.collapseNewValue;\n    /** @type {?} */\n    CollapseDirective.prototype.isCollapsed;\n    /** @type {?} */\n    CollapseDirective.prototype.isCollapse;\n    /** @type {?} */\n    CollapseDirective.prototype.isCollapsing;\n    /**\n     * turn on/off animation\n     * @type {?}\n     */\n    CollapseDirective.prototype.isAnimated;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._display;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._factoryCollapseAnimation;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._factoryExpandAnimation;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._isAnimationDone;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._player;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._stylesLoaded;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._COLLAPSE_ACTION_NAME;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._EXPAND_ACTION_NAME;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._el;\n    /**\n     * @type {?}\n     * @private\n     */\n    CollapseDirective.prototype._renderer;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass CollapseModule {\n    /**\n     * @return {?}\n     */\n    static forRoot() {\n        return { ngModule: CollapseModule, providers: [] };\n    }\n}\nCollapseModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: CollapseModule });\nCollapseModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function CollapseModule_Factory(t) { return new (t || CollapseModule)(); } });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(CollapseModule, { declarations: [CollapseDirective], exports: [CollapseDirective] }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(CollapseModule, [{\n        type: NgModule,\n        args: [{\n                declarations: [CollapseDirective],\n                exports: [CollapseDirective]\n            }]\n    }], null, null); })();\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\nexport { CollapseDirective, CollapseModule };\n\n//# sourceMappingURL=ngx-bootstrap-collapse.js.map","import { Component, Input, OnInit } from '@angular/core';\r\nimport { CurrentAuctionList } from '../../../../models/auctionList';\r\nimport constants from '../../../../utility/constants';\r\nimport { AuthenticationService } from '../../../../services';\r\nimport { Router } from '@angular/router';\r\nimport routeTable from '../../../../utility/routeTable';\r\nimport { AuctionTimeService } from '../../../../services/auction-time.service';\r\n\r\n@Component({\r\n  selector: 'auction-card',\r\n  templateUrl: './auction-card.component.html',\r\n  styleUrls: ['./auction-card.component.css'],\r\n})\r\nexport class AuctionCardComponent implements OnInit {\r\n  @Input('listView') showListView: boolean = false;\r\n  @Input('auctionData') data: CurrentAuctionList;\r\n  @Input('routeType') routeType: string | null;\r\n\r\n  showView: boolean = false;\r\n  isLoggedIn: boolean | null;\r\n  routes = routeTable.public;\r\n\r\n  registrationFormats = constants.common.saletypeRegistrationFormat;\r\n  auctionStatuses = constants.common.auctionStatus;\r\n\r\n  isBiddingOpen: boolean = false;\r\n  isClosingToday: boolean = false;\r\n\r\n  constructor(\r\n    private authService: AuthenticationService,\r\n    private router: Router,\r\n    private auctionTimeService: AuctionTimeService\r\n  ) {\r\n    this.isLoggedIn = this.authService.checkLoggedIn();\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.showView = true;\r\n    this.checkBiddingOpen();\r\n    this.checkAuctionCLosingToday();\r\n  }\r\n\r\n  private checkBiddingOpen() {\r\n    if (\r\n      this.data.auctionStatus === this.auctionStatuses.live &&\r\n      !this.data.saleType.isCatalogReadOnly\r\n    ) {\r\n      this.isBiddingOpen = this.auctionTimeService.isBiddingOpen(\r\n        this.data.startDateTimeUtc,\r\n        this.data.lastEndDateTimeUtc\r\n      );\r\n    }\r\n  }\r\n\r\n  private checkAuctionCLosingToday() {\r\n    if (\r\n      this.data.auctionStatus === this.auctionStatuses.live &&\r\n      !this.data.saleType.isCatalogReadOnly\r\n    ) {\r\n      this.isClosingToday = this.auctionTimeService.isAuctionClosingToday(\r\n        this.data.lastEndDateTimeUtc\r\n      );\r\n    }\r\n  }\r\n\r\n  getButtonText(data: any) {\r\n    if (!data.saleType.isCatalogUploadAllowed && this.isWithinTimeRange(data.startDateTime, data.endDateTime)) {\r\n      return \"Bid Now\"\r\n    }\r\n    return \"Lot Catalog\"\r\n  }\r\n\r\n  isWithinTimeRange(startDateTime, endDateTime) {\r\n    const startTime = new Date(startDateTime);\r\n    const endTime = new Date(endDateTime);\r\n  \r\n    // Add 12 hours to the end time\r\n    const extendedEndTime = new Date(endTime.getTime() + 12 * 60 * 60 * 1000);\r\n  \r\n    const currentTime = new Date();\r\n  \r\n    return currentTime > startTime && currentTime < extendedEndTime;\r\n  }\r\n\r\n  goToRegister(auctionCode: string) {\r\n    this.router.navigate([auctionCode, routeTable.public.auctionRegister], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  goToLots(auctionCode: string) {\r\n    this.router.navigate([auctionCode, routeTable.public.auctionLot], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n\r\n  goToViewDetailHref(auctionCode: string): string {\r\n    if (this.data.saleType.isDetailPageInHouse) {\r\n      const returnUrl = encodeURIComponent(this.router.url);\r\n      return `/${auctionCode}?returnTo=${returnUrl}`;\r\n    } else {\r\n      return this.data.detailPageLinkUrl;\r\n    }\r\n  }\r\n\r\n  goToViewDetail(auctionCode: string) {\r\n    if (this.data.saleType.isDetailPageInHouse) {\r\n      this.router.navigate([auctionCode], {\r\n        queryParams: { returnTo: this.router.url },\r\n      });\r\n    } else {\r\n      window.location.href = this.data.detailPageLinkUrl;\r\n    }\r\n  }\r\n\r\n  goToInquire(auctionCode: string) {\r\n    this.router.navigate(['/', auctionCode, this.routes.enquire], {\r\n      queryParams: { returnTo: this.router.url },\r\n    });\r\n  }\r\n}\r\n","<div class=\"auc-card\" [ngClass]=\"{ 'auc-card-list-view': showListView }\">\r\n  <div class=\"card-image-container\">\r\n    <img class=\"img-fluid auc-banner\" alt=\"coverPhoto\" AuctionDefaultImage *ngIf=\"data\" [image]=\"data.coverPhoto\"\r\n      role=\"button\" (click)=\"goToViewDetail(data.auctionCode)\" />\r\n    <img class=\"img-fluid auc-logo-list-view\" alt=\"clientLogo\" AuctionDefaultImage *ngIf=\"data\"\r\n      [image]=\"data.clientLogo\" role=\"button\" (click)=\"goToViewDetail(data.auctionCode)\" />\r\n  </div>\r\n\r\n  <div class=\"home-card-logo\">\r\n    <img class=\"img-fluid\" alt=\"clientLogo\" AuctionDefaultImage *ngIf=\"data\" [image]=\"data.clientLogo\" role=\"button\"\r\n      (click)=\"goToViewDetail(data.auctionCode)\" />\r\n  </div>\r\n\r\n  <div class=\"auc-card-content custom-data pb-0\" [ngClass]=\"{ 'pb-0': !showListView }\">\r\n    <div class=\"badge-type\">\r\n      <span class=\"card-badge-colored\">{{ data.saleTypePublicName }} </span>\r\n    </div>\r\n\r\n    <h3 class=\"auc-heading\" role=\"button\" (click)=\"goToViewDetail(data.auctionCode)\">\r\n      {{ data.title }}\r\n    </h3>\r\n    <p class=\"card-sub-text mb-21 min-height-110\" [innerHTML]=\"data.tagline\"></p>\r\n    <p class=\"card-sub-text mt-2 mb-2\" *ngIf=\"data.saleType.isDetailPageInHouse && data.locations\">\r\n      <img alt=\"Location\" class=\"mr-2\" src=\"assets/images/location-green.svg\" />\r\n      <strong>{{ data.locations }}</strong>\r\n    </p>\r\n\r\n    <ng-container *ngIf=\"!data.isSold; else isSold\">\r\n      <p class=\"auc-card-bold-text\" [ngClass]=\"{ 'mb-0': showListView }\" [innerHtml]=\"\r\n          data?.saleType?.auctionDate\r\n            | auctionDateFormat\r\n              : data?.auctionStatus\r\n              : data?.timeZoneName\r\n              : data?.startDateTime\r\n              : data?.endDateTime\r\n              : data?.saleType?.dateText\r\n        \"></p>\r\n    </ng-container>\r\n    <ng-template #isSold>\r\n      <p class=\"auc-card-bold-text\" [ngClass]=\"{ 'mb-0': showListView }\">\r\n        Closing Began\r\n        {{ data.lastEndDateTimeUtc | toLocalDateTime: true:data?.timeZoneName }}\r\n      </p>\r\n    </ng-template>\r\n\r\n    <!-- this is for 'closing today' icon -->\r\n    <span *ngIf=\"data.saleType.isDetailPageInHouse && isClosingToday\" class=\"aucCardsBadge\">\r\n      Closing Today\r\n    </span>\r\n\r\n    <ng-container *ngIf=\"\r\n        data.saleType.isDetailPageInHouse &&\r\n        data.saleType.registrationFormat ===\r\n          registrationFormats.thirdPartyRegistration &&\r\n        (data.auctionStatus == auctionStatuses.live ||\r\n          data.auctionStatus == auctionStatuses.upcoming)\r\n      \">\r\n\r\n    </ng-container>\r\n  </div>\r\n\r\n  <div class=\"auc-card-content auc-card-btns pt-0\" [ngClass]=\"{ 'pb-0': showListView }\">\r\n    <!-- this is for sold entirely -->\r\n    <div class=\"w-100 mb-2 sold-wrap text-left\" *ngIf=\"data.isSold\">\r\n      <div class=\"badge-type\">\r\n        <span class=\"card-badge-colored mr-2\">SOLD</span>\r\n      </div>\r\n      Sold In Its Entirety\r\n    </div>\r\n\r\n    <!-- this container is for detail paged auctions -->\r\n    <ng-container *ngIf=\"data.saleType.isDetailPageInHouse; else redirectLinkButton\">\r\n      <!-- for lot catalog button -->\r\n      <ng-container *ngIf=\"data.saleType.isCatalogUploadAllowed; else notAllowed\">\r\n        <ng-container *ngIf=\"\r\n            ![auctionStatuses.past, auctionStatuses.archived].includes(\r\n              data.auctionStatus\r\n            )\r\n          \">\r\n          <div class=\"w-100\">\r\n            <button type=\"button\" class=\"btn btn-white-border w-100 btnWithMarg btn-full\"\r\n              [ngClass]=\"{ 'mb-2': !showListView }\" role=\"button\" (click)=\"goToLots(data.auctionCode)\">\r\n              <span *ngIf=\"!isBiddingOpen; else biddingOpen\">\r\n                {{\r\n                data.lotsCount\r\n                ? \"Lot Catalog Available\"\r\n                : \"Lot Catalog Coming soon\"\r\n                }}\r\n              </span>\r\n              <ng-template #biddingOpen>\r\n                {{ data.lotsCount ? \"Bid Now\" : \"Lot Catalog Coming soon\" }}\r\n              </ng-template>\r\n            </button>\r\n          </div>\r\n        </ng-container>\r\n      </ng-container>\r\n\r\n      <!-- for lot catalog not available button -->\r\n      <ng-template #notAllowed>\r\n        <div class=\"w-100\">\r\n          <a [href]=\"data.catalogLinkUrl\" target=\"_blank\" role=\"button\" class=\"btn btn-white-border w-100 btnWithMarg\"\r\n            [ngClass]=\"{\r\n              'mb-2': !showListView,\r\n              'disabled-link': !data.catalogLinkUrl\r\n            }\" *ngIf=\"data.catalogLinkUrl\">\r\n            {{ getButtonText(data) }}\r\n          </a>\r\n        </div>\r\n      </ng-template>\r\n      <!-- this is for lot-configure button -->\r\n\r\n      <div class=\"dFlexCards\">\r\n        <!-- this is for Register button (tbg-registrations) -->\r\n        <ng-container *ngIf=\"\r\n            data.saleType.registrationFormat ==\r\n              registrationFormats.tbgRegistration &&\r\n            !data.saleType.isCatalogReadOnly &&\r\n            (data.auctionStatus === auctionStatuses.live ||\r\n              data.auctionStatus === auctionStatuses.upcoming)\r\n          \">\r\n          <button type=\"button\" class=\"btn btn-colored w-100 btnLSide\" [ngClass]=\"{ 'mb-2': !showListView }\" *ngIf=\"\r\n              data.isRegistrationActive &&\r\n              !data.loggedInUser &&\r\n              !data.loggedInUser?.isRegistered\r\n            \" role=\"button\" (click)=\"goToRegister(data.auctionCode)\">\r\n            Register\r\n          </button>\r\n          <button type=\"button\" class=\"btn btn-white-border w-100 btnLSide\" [ngClass]=\"{ 'mb-2': !showListView }\" *ngIf=\"\r\n              isLoggedIn == true &&\r\n              data.loggedInUser?.isApproved &&\r\n              data.loggedInUser?.isRegistered\r\n            \">\r\n            Approved\r\n          </button>\r\n          <button type=\"button\" class=\"btn btn-white-border w-100 btnLSide\" [ngClass]=\"{ 'mb-2': !showListView }\" *ngIf=\"\r\n              isLoggedIn == true &&\r\n              !data.loggedInUser?.isApproved &&\r\n              data.loggedInUser?.isRegistered\r\n            \">\r\n            Awaiting Approval\r\n          </button>\r\n        </ng-container>\r\n        <!-- this is for Register button (3rd party registrations) -->\r\n        <ng-container *ngIf=\"data.saleType.registrationFormat === registrationFormats.thirdPartyRegistration\r\n          || data.registrationLinkUrl\">\r\n          <a role=\"button\" class=\"btn btn-colored w-100 btnLSide btnWithMarg aHalf\"\r\n            [ngClass]=\"{ 'mb-2': !showListView }\" *ngIf=\"data.registrationLinkUrl\"\r\n            [ngClass]=\"{ 'disabled-link': !data.registrationLinkUrl }\" [href]=\"data.registrationLinkUrl\"\r\n            target=\"_blank\">\r\n            {{ isBiddingOpen ? \"Register & Bid\" : data.saleType.registrationFormat == 2 && data.saleType.isCatalogUploadAllowed ? \"Register & Bid\" : \"Register\" }}\r\n          </a>\r\n        </ng-container>\r\n        <!-- this is for Register button (inquiry form) -->\r\n        <ng-container *ngIf=\"\r\n            data.saleType.registrationFormat === registrationFormats.inquiryForm\r\n          \">\r\n          <button type=\"button\" class=\"btn btn-white-border w-100 btnLSide btnWithMarg\"\r\n            [ngClass]=\"{ 'mb-2': !showListView }\" role=\"button\" (click)=\"goToInquire(data.auctionCode)\">\r\n            Inquire Now\r\n          </button>\r\n        </ng-container>\r\n        <!-- this is for View Details button -->\r\n        <a type=\"button\" [ngClass]=\"{ onlyOneView: !data.isRegistrationActive }\"\r\n          class=\"btn btn-colored btn-colored-grey w-100 btnRSide aHalf\" role=\"button\"\r\n          [href]=\"goToViewDetailHref(data.auctionCode)\">\r\n          View Details\r\n        </a>\r\n      </div>\r\n    </ng-container>\r\n    <!-- this container is register button for redirect link wo detail page -->\r\n    <ng-template #redirectLinkButton>\r\n      <a role=\"button\" class=\"btn btn-colored btn-colored-grey w-100 btnRSide onlyOneView\"\r\n        [href]=\"data.detailPageLinkUrl\" [ngClass]=\"{ 'disabled-link': !data.detailPageLinkUrl }\" target=\"_blank\">\r\n        View Details\r\n      </a>\r\n    </ng-template>\r\n  </div>\r\n</div>\r\n","import { Component, OnInit, TemplateRef } from '@angular/core';\r\nimport { BsModalService, BsModalRef } from 'ngx-bootstrap/modal';\r\nimport routeTable from '../../../../../utility/routeTable';\r\nimport {\r\n  ConstantContactService,\r\n  MailingList,\r\n} from '../../../../../services/constant-contact.service';\r\nimport { FormControl, Validators } from '@angular/forms';\r\nimport { AppValidators } from '../../../../../core/validators/app-validators';\r\nimport { Router } from '@angular/router';\r\nimport constants from '../../../../../utility/constants';\r\nimport { ToastrService } from 'ngx-toastr';\r\nimport {  Subscription } from 'rxjs';\r\n@Component({\r\n  selector: 'app-public-footer',\r\n  templateUrl: './public-footer.component.html',\r\n  styleUrls: ['./public-footer.component.css'],\r\n})\r\nexport class PublicFooterComponent {\r\n  routes = routeTable.public;\r\n  currentYear = new Date().getFullYear();\r\n  private subscriptions: Array<Subscription> = [];\r\n  modalRef: BsModalRef;\r\n  maxlengthShorter: number = constants.common.validations.maxLength50;\r\n  emailSubscription: FormControl = new FormControl(null, [\r\n    Validators.required,\r\n    AppValidators.checkEmail,\r\n    Validators.maxLength(this.maxlengthShorter),\r\n  ]);\r\n  mailingList: Array<MailingList>;\r\n  selectedMailList: Array<string> = [];\r\n\r\n  loading: boolean = false;\r\n\r\n  config = {\r\n    ignoreBackdropClick: true,\r\n    class: 'custom-popup modal-dialog modal-dialog-centered subscribe-popup',\r\n  };\r\n\r\n  constructor(\r\n    private router: Router,\r\n    private modalService: BsModalService,\r\n    private constantContact: ConstantContactService,\r\n    private toastr: ToastrService\r\n  ) {}\r\n\r\n  async ngAfterViewInit() {\r\n    await this.callConstantContact();\r\n  }\r\n\r\n  openModal(template: TemplateRef<any>) {\r\n    let ccHtml = document.getElementById('cc-subscribeform');\r\n    let inputEmail = document.getElementById('sub-footer-input');\r\n    const clone = ccHtml.cloneNode(true) as HTMLElement;\r\n    let inputs = clone.getElementsByClassName(\"ctct-form-element\");\r\n    [].forEach.call(inputs, x => {\r\n      //@ts-ignore\r\n      x.value = inputEmail.value;\r\n    })\r\n    clone.removeAttribute('style');\r\n    clone.setAttribute('style', 'display: block;')\r\n    this.modalRef = this.modalService.show(template, this.config);\r\n    let subscribeModalBody = document.getElementById('subscribeModal-body-footer');\r\n    subscribeModalBody.append(clone)\r\n  }\r\n\r\n  closeModal() {\r\n    if (this.modalRef) {\r\n      let ccHtml = document.getElementById('cc-subscribeform');\r\n      const clone = ccHtml.cloneNode(true) as HTMLElement;\r\n      clone.removeAttribute('style');\r\n      clone.setAttribute('style', 'display: none;')\r\n      this.modalRef.hide();\r\n    }\r\n  }\r\n\r\n  checkItem(isChecked: boolean, listId: string) {\r\n    if (isChecked) this.selectedMailList.push(listId);\r\n    else\r\n      this.selectedMailList.splice(\r\n        this.selectedMailList.findIndex((i) => i === listId),\r\n        1\r\n      );\r\n  }\r\n\r\n  async callConstantContact(): Promise<any> {\r\n    return new Promise(function (resolve, reject) {\r\n      var script = document.createElement('script');\r\n      script.setAttribute(\"id\",\"cc-script\")\r\n      script.src = '//static.ctctcdn.com/js/signup-form-widget/current/signup-form-widget.min.js';\r\n      script.setAttribute(\"type\", \"text/javascript\");\r\n      script.onload = resolve;\r\n      script.onerror = function () {\r\n        reject(new Error(\"Cannot load script at: \".concat(script.src)));\r\n      };\r\n      var footer = document.getElementsByTagName(\"footer\")[0];\r\n      footer.appendChild(script);\r\n      })\r\n  }\r\n\r\n\r\n  subscribe() {\r\n    this.loading = true;\r\n    const subscribeList = this.constantContact\r\n      .subscribeToListing(this.emailSubscription.value, this.selectedMailList)\r\n      .subscribe(\r\n        (res) => {\r\n          if (res) this.closeModal();\r\n          this.selectedMailList = [];\r\n          this.toastr.success(\r\n            'You can unsubscribe at any time using the Unsubscribe link at the bottom of every email.',\r\n            'Thanks for signing up!',\r\n            constants.common.toast.config\r\n          );\r\n          this.loading = false;\r\n          this.emailSubscription.reset();\r\n        },\r\n        (err) => {\r\n          this.loading = false;\r\n        }\r\n      );\r\n      this.subscriptions.push(subscribeList)\r\n  }\r\n\r\n  ngOnDestroy() {\r\n    this.subscriptions.forEach((sub: Subscription) => {\r\n      sub.unsubscribe();\r\n    });\r\n  }\r\n}\r\n","<section class=\"public-footer\">\r\n  <div class=\"top-wrap\">\r\n    <div class=\"container\">\r\n      <div class=\"row\">\r\n        <div class=\"col-md-4 col-lg-5 left-wrap\">\r\n          <div class=\"inner\">\r\n            <h3 class=\"hdg\">Stay In The Know</h3>\r\n            <p class=\"des\">\r\n              Get exclusive auction alerts from The Branford Group <br />\r\n              straight to your inbox.\r\n            </p>\r\n\r\n            <div class=\"subscribe-form\">\r\n              <input class=\"form-control footer-serach\" id=\"sub-footer-input\" placeholder=\"Your Email\" [formControl]=\"emailSubscription\"\r\n                [maxLength]=\"maxlengthShorter\" />\r\n              <button type=\"button\" class=\"btn btn-colored\" [disabled]=\"emailSubscription.invalid\" role=\"button\"\r\n                (click)=\"openModal(subscribeModal)\">\r\n                Subscribe\r\n              </button>\r\n            </div>\r\n          </div>\r\n        </div>\r\n        <div class=\"col-md-8 col-lg-7 right-wrap\">\r\n          <div class=\"parts\">\r\n            <h4 class=\"small-headings\">About</h4>\r\n            <ul class=\"footer-menu no-list mb-3\">\r\n              <li>\r\n                <a [routerLink]=\"[routes.team]\">Meet Our Team</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.about]\">Services</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.blogList]\">News</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.valuations]\">Valuations</a>\r\n              </li>\r\n              <li>\r\n                <a [href]=\"[routes.bgiSurplusLink]\" target=\"_blank\">BGI Surplus</a>\r\n              </li>\r\n            </ul>\r\n          </div>\r\n\r\n          <div class=\"parts\">\r\n            <h4 class=\"small-headings\">Support</h4>\r\n            <ul class=\"footer-menu no-list mb-3\">\r\n              <li>\r\n                <a [routerLink]=\"[routes.faq]\">FAQs</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.sellers]\">Sellers</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.removal]\">Removal/Rigging</a>\r\n              </li>\r\n              <li>\r\n                <a [routerLink]=\"[routes.payments]\">Payments</a>\r\n              </li>\r\n            </ul>\r\n          </div>\r\n\r\n          <div class=\"parts\">\r\n            <h4 class=\"small-headings\">Contact Info:</h4>\r\n            <div class=\"contact-details\">\r\n              <p class=\"contact-des\">\r\n                Business Hours: Monday-Friday, 9-5 Eastern\r\n              </p>\r\n              <p class=\"contact-des\">Call Us: 203-488-7020</p>\r\n              <p class=\"contact-des\">\r\n                Email Us:\r\n                <a href=\"mailto:Service@theBranfordGroup.com\">Service@theBranfordGroup.com</a>\r\n              </p>\r\n              <p class=\"contact-des\">\r\n                896 Main St <br />\r\n                Branford, CT 06405\r\n              </p>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n  <div class=\"public-footer-copy\">\r\n    <div class=\"container\">\r\n      <div class=\"row\">\r\n        <div class=\"col-md-12 col-lg-5\">\r\n          <p class=\"des m-0\">\r\n            Copyright &copy; {{ currentYear }} Branford Auctions, LLC. Branford Valuations,\r\n            LLC\r\n          </p>\r\n        </div>\r\n        <div class=\"col-6 col-md-4 col-lg-2 mt-4 mt-lg-0\">\r\n          <ul class=\"footer-menu no-list\">\r\n            <li>\r\n              <a [routerLink]=\"[routes.terms]\">Terms &amp; Conditions</a>\r\n            </li>\r\n          </ul>\r\n        </div>\r\n        <div class=\"col-4 col-md-4 col-lg-2 mt-4 mt-lg-0\">\r\n          <ul class=\"footer-menu no-list\">\r\n            <li>\r\n              <a [routerLink]=\"[routes.policy]\">Privacy Policy</a>\r\n            </li>\r\n          </ul>\r\n        </div>\r\n        <div class=\"col-12 col-md-4 col-lg-auto ml-md-auto mt-4 mt-lg-0\">\r\n          <a class=\"mr-2\" href=\"https://www.facebook.com/The-Branford-Group-126397777391858/\" target=\"_blank\">\r\n            <img src=\"../assets/images/facebook.svg\" />\r\n          </a>\r\n          <a class=\"mr-2\" href=\"https://twitter.com/TBGAuctions/\" target=\"_blank\">\r\n            <img src=\"../assets/images/twitter.svg\" />\r\n          </a>\r\n          <a class=\"mr-2\" href=\"https://www.instagram.com/thebranfordgroup/?hl=en\" target=\"_blank\">\r\n            <img src=\"../assets/images/instagram.svg\" />\r\n          </a>\r\n          <a class=\"mr-2\" href=\"https://www.youtube.com/user/BranfordAuctions\" target=\"_blank\">\r\n            <img src=\"../assets/images/youtube.svg\" />\r\n          </a>\r\n          <a href=\"https://www.linkedin.com/company/the-branford-group\" target=\"_blank\">\r\n            <img src=\"../assets/images/linkedin.svg\" />\r\n          </a>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</section>\r\n\r\n  <div id=\"cc-subscribeform\" style=\"display: none;\">\r\n    <!-- Begin Constant Contact Inline Form Code -->\r\n    <div class=\"ctct-inline-form\" data-form-id=\"eca0dd54-4b28-483b-972c-f75f4db5859e\"></div>\r\n    <!-- End Constant Contact Inline Form Code -->\r\n  </div>\r\n\r\n<ng-template #subscribeModal>\r\n  <div class=\"modal-header pb-0\">\r\n    <h4 class=\"modal-title pull-left\">&nbsp;</h4>\r\n    <button type=\"button\" class=\"close pull-right circle-icon\" aria-label=\"Close\" role=\"button\" (click)=\"closeModal()\">\r\n      <img alt=\"close-icon\" src=\"../assets/images/cross.svg\" />\r\n    </button>\r\n  </div>\r\n  <div class=\"modal-body\" id=\"subscribeModal-body-footer\">\r\n  </div>\r\n</ng-template>\r\n","import { Injectable, ɵɵdefineInjectable, Component, Input, EventEmitter, Inject, Output, HostBinding, NgModule } from '@angular/core';\nimport { isBs3 } from 'ngx-bootstrap/utils';\nimport { CommonModule } from '@angular/common';\nimport { CollapseModule } from 'ngx-bootstrap/collapse';\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/**\n * Configuration service, provides default values for the AccordionComponent.\n */\nimport * as ɵngcc0 from '@angular/core';\nimport * as ɵngcc1 from '@angular/common';\nimport * as ɵngcc2 from 'ngx-bootstrap/collapse';\n\nconst _c0 = [\"*\"];\nconst _c1 = function (a0) { return { \"text-muted\": a0 }; };\nfunction AccordionPanelComponent_button_4_Template(rf, ctx) { if (rf & 1) {\n    ɵngcc0.ɵɵelementStart(0, \"button\", 7);\n    ɵngcc0.ɵɵtext(1);\n    ɵngcc0.ɵɵelementEnd();\n} if (rf & 2) {\n    const ctx_r0 = ɵngcc0.ɵɵnextContext();\n    ɵngcc0.ɵɵproperty(\"ngClass\", ɵngcc0.ɵɵpureFunction1(2, _c1, ctx_r0.isDisabled));\n    ɵngcc0.ɵɵadvance(1);\n    ɵngcc0.ɵɵtextInterpolate1(\" \", ctx_r0.heading, \" \");\n} }\nconst _c2 = [[[\"\", \"accordion-heading\", \"\"]], \"*\"];\nconst _c3 = [\"[accordion-heading]\", \"*\"];\nclass AccordionConfig {\n    constructor() {\n        /**\n         * Whether the other panels should be closed when a panel is opened\n         */\n        this.closeOthers = false;\n        /**\n         * turn on/off animation\n         */\n        this.isAnimated = false;\n    }\n}\nAccordionConfig.ɵfac = function AccordionConfig_Factory(t) { return new (t || AccordionConfig)(); };\n/** @nocollapse */ AccordionConfig.ɵprov = ɵɵdefineInjectable({ factory: function AccordionConfig_Factory() { return new AccordionConfig(); }, token: AccordionConfig, providedIn: \"root\" });\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(AccordionConfig, [{\n        type: Injectable,\n        args: [{\n                providedIn: 'root'\n            }]\n    }], function () { return []; }, null); })();\nif (false) {\n    /**\n     * Whether the other panels should be closed when a panel is opened\n     * @type {?}\n     */\n    AccordionConfig.prototype.closeOthers;\n    /**\n     * turn on/off animation\n     * @type {?}\n     */\n    AccordionConfig.prototype.isAnimated;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/**\n * Displays collapsible content panels for presenting information in a limited amount of space.\n */\nclass AccordionComponent {\n    /**\n     * @param {?} config\n     */\n    constructor(config) {\n        /**\n         * turn on/off animation\n         */\n        this.isAnimated = false;\n        this.groups = [];\n        Object.assign(this, config);\n    }\n    /**\n     * @param {?} openGroup\n     * @return {?}\n     */\n    closeOtherPanels(openGroup) {\n        if (!this.closeOthers) {\n            return;\n        }\n        this.groups.forEach((/**\n         * @param {?} group\n         * @return {?}\n         */\n        (group) => {\n            if (group !== openGroup) {\n                group.isOpen = false;\n            }\n        }));\n    }\n    /**\n     * @param {?} group\n     * @return {?}\n     */\n    addGroup(group) {\n        group.isAnimated = this.isAnimated;\n        this.groups.push(group);\n    }\n    /**\n     * @param {?} group\n     * @return {?}\n     */\n    removeGroup(group) {\n        /** @type {?} */\n        const index = this.groups.indexOf(group);\n        if (index !== -1) {\n            this.groups.splice(index, 1);\n        }\n    }\n}\nAccordionComponent.ɵfac = function AccordionComponent_Factory(t) { return new (t || AccordionComponent)(ɵngcc0.ɵɵdirectiveInject(AccordionConfig)); };\nAccordionComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: AccordionComponent, selectors: [[\"accordion\"]], hostAttrs: [\"role\", \"tablist\", 1, \"panel-group\", 2, \"display\", \"block\"], hostVars: 1, hostBindings: function AccordionComponent_HostBindings(rf, ctx) { if (rf & 2) {\n        ɵngcc0.ɵɵattribute(\"aria-multiselectable\", ctx.closeOthers);\n    } }, inputs: { isAnimated: \"isAnimated\", closeOthers: \"closeOthers\" }, ngContentSelectors: _c0, decls: 1, vars: 0, template: function AccordionComponent_Template(rf, ctx) { if (rf & 1) {\n        ɵngcc0.ɵɵprojectionDef();\n        ɵngcc0.ɵɵprojection(0);\n    } }, encapsulation: 2 });\n/** @nocollapse */\nAccordionComponent.ctorParameters = () => [\n    { type: AccordionConfig }\n];\nAccordionComponent.propDecorators = {\n    isAnimated: [{ type: Input }],\n    closeOthers: [{ type: Input }]\n};\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(AccordionComponent, [{\n        type: Component,\n        args: [{\n                selector: 'accordion',\n                template: `<ng-content></ng-content>`,\n                host: {\n                    '[attr.aria-multiselectable]': 'closeOthers',\n                    role: 'tablist',\n                    class: 'panel-group',\n                    style: 'display: block'\n                }\n            }]\n    }], function () { return [{ type: AccordionConfig }]; }, { isAnimated: [{\n            type: Input\n        }], closeOthers: [{\n            type: Input\n        }] }); })();\nif (false) {\n    /**\n     * turn on/off animation\n     * @type {?}\n     */\n    AccordionComponent.prototype.isAnimated;\n    /**\n     * if `true` expanding one item will close all others\n     * @type {?}\n     */\n    AccordionComponent.prototype.closeOthers;\n    /**\n     * @type {?}\n     * @protected\n     */\n    AccordionComponent.prototype.groups;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n/**\n * ### Accordion heading\n * Instead of using `heading` attribute on the `accordion-group`, you can use\n * an `accordion-heading` attribute on `any` element inside of a group that\n * will be used as group's header template.\n */\nclass AccordionPanelComponent {\n    /**\n     * @param {?} accordion\n     */\n    constructor(accordion) {\n        /**\n         * turn on/off animation\n         */\n        this.isAnimated = false;\n        /**\n         * Emits when the opened state changes\n         */\n        this.isOpenChange = new EventEmitter();\n        this._isOpen = false;\n        this.accordion = accordion;\n    }\n    // Questionable, maybe .panel-open should be on child div.panel element?\n    /**\n     * Is accordion group open or closed. This property supports two-way binding\n     * @return {?}\n     */\n    get isOpen() {\n        return this._isOpen;\n    }\n    /**\n     * @param {?} value\n     * @return {?}\n     */\n    set isOpen(value) {\n        if (value !== this.isOpen) {\n            if (value) {\n                this.accordion.closeOtherPanels(this);\n            }\n            this._isOpen = value;\n            Promise.resolve(null).then((/**\n             * @return {?}\n             */\n            () => {\n                this.isOpenChange.emit(value);\n            }))\n                .catch((/**\n             * @param {?} error\n             * @return {?}\n             */\n            (error) => {\n                /* tslint:disable: no-console */\n                console.log(error);\n            }));\n        }\n    }\n    /**\n     * @return {?}\n     */\n    get isBs3() {\n        return isBs3();\n    }\n    /**\n     * @return {?}\n     */\n    ngOnInit() {\n        this.panelClass = this.panelClass || 'panel-default';\n        this.accordion.addGroup(this);\n    }\n    /**\n     * @return {?}\n     */\n    ngOnDestroy() {\n        this.accordion.removeGroup(this);\n    }\n    /**\n     * @return {?}\n     */\n    toggleOpen() {\n        if (!this.isDisabled) {\n            this.isOpen = !this.isOpen;\n        }\n    }\n}\nAccordionPanelComponent.ɵfac = function AccordionPanelComponent_Factory(t) { return new (t || AccordionPanelComponent)(ɵngcc0.ɵɵdirectiveInject(AccordionComponent)); };\nAccordionPanelComponent.ɵcmp = ɵngcc0.ɵɵdefineComponent({ type: AccordionPanelComponent, selectors: [[\"accordion-group\"], [\"accordion-panel\"]], hostAttrs: [1, \"panel\", 2, \"display\", \"block\"], hostVars: 2, hostBindings: function AccordionPanelComponent_HostBindings(rf, ctx) { if (rf & 2) {\n        ɵngcc0.ɵɵclassProp(\"panel-open\", ctx.isOpen);\n    } }, inputs: { isOpen: \"isOpen\", panelClass: \"panelClass\", heading: \"heading\", isDisabled: \"isDisabled\" }, outputs: { isOpenChange: \"isOpenChange\" }, ngContentSelectors: _c3, decls: 9, vars: 6, consts: [[1, \"panel\", \"card\", 3, \"ngClass\"], [\"role\", \"tab\", 1, \"panel-heading\", \"card-header\", 3, \"ngClass\", \"click\"], [1, \"panel-title\"], [\"role\", \"button\", 1, \"accordion-toggle\"], [\"class\", \"btn btn-link\", \"type\", \"button\", 3, \"ngClass\", 4, \"ngIf\"], [\"role\", \"tabpanel\", 1, \"panel-collapse\", \"collapse\", 3, \"collapse\", \"isAnimated\"], [1, \"panel-body\", \"card-block\", \"card-body\"], [\"type\", \"button\", 1, \"btn\", \"btn-link\", 3, \"ngClass\"]], template: function AccordionPanelComponent_Template(rf, ctx) { if (rf & 1) {\n        ɵngcc0.ɵɵprojectionDef(_c2);\n        ɵngcc0.ɵɵelementStart(0, \"div\", 0);\n        ɵngcc0.ɵɵelementStart(1, \"div\", 1);\n        ɵngcc0.ɵɵlistener(\"click\", function AccordionPanelComponent_Template_div_click_1_listener() { return ctx.toggleOpen(); });\n        ɵngcc0.ɵɵelementStart(2, \"div\", 2);\n        ɵngcc0.ɵɵelementStart(3, \"div\", 3);\n        ɵngcc0.ɵɵtemplate(4, AccordionPanelComponent_button_4_Template, 2, 4, \"button\", 4);\n        ɵngcc0.ɵɵprojection(5);\n        ɵngcc0.ɵɵelementEnd();\n        ɵngcc0.ɵɵelementEnd();\n        ɵngcc0.ɵɵelementEnd();\n        ɵngcc0.ɵɵelementStart(6, \"div\", 5);\n        ɵngcc0.ɵɵelementStart(7, \"div\", 6);\n        ɵngcc0.ɵɵprojection(8, 1);\n        ɵngcc0.ɵɵelementEnd();\n        ɵngcc0.ɵɵelementEnd();\n        ɵngcc0.ɵɵelementEnd();\n    } if (rf & 2) {\n        ɵngcc0.ɵɵproperty(\"ngClass\", ctx.panelClass);\n        ɵngcc0.ɵɵadvance(1);\n        ɵngcc0.ɵɵproperty(\"ngClass\", ctx.isDisabled ? \"panel-disabled\" : \"panel-enabled\");\n        ɵngcc0.ɵɵadvance(2);\n        ɵngcc0.ɵɵattribute(\"aria-expanded\", ctx.isOpen);\n        ɵngcc0.ɵɵadvance(1);\n        ɵngcc0.ɵɵproperty(\"ngIf\", ctx.heading);\n        ɵngcc0.ɵɵadvance(2);\n        ɵngcc0.ɵɵproperty(\"collapse\", !ctx.isOpen)(\"isAnimated\", ctx.isAnimated);\n    } }, directives: [ɵngcc1.NgClass, ɵngcc1.NgIf, ɵngcc2.CollapseDirective], styles: [\"[_nghost-%COMP%]   .card-header.panel-enabled[_ngcontent-%COMP%]{cursor:pointer}[_nghost-%COMP%]   .card-header.panel-disabled[_ngcontent-%COMP%]   .btn.btn-link[_ngcontent-%COMP%]{cursor:default;text-decoration:none}\"] });\n/** @nocollapse */\nAccordionPanelComponent.ctorParameters = () => [\n    { type: AccordionComponent, decorators: [{ type: Inject, args: [AccordionComponent,] }] }\n];\nAccordionPanelComponent.propDecorators = {\n    heading: [{ type: Input }],\n    panelClass: [{ type: Input }],\n    isDisabled: [{ type: Input }],\n    isOpenChange: [{ type: Output }],\n    isOpen: [{ type: HostBinding, args: ['class.panel-open',] }, { type: Input }]\n};\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(AccordionPanelComponent, [{\n        type: Component,\n        args: [{\n                selector: 'accordion-group, accordion-panel',\n                template: \"<div class=\\\"panel card\\\" [ngClass]=\\\"panelClass\\\">\\n  <div\\n    class=\\\"panel-heading card-header\\\"\\n    role=\\\"tab\\\"\\n    (click)=\\\"toggleOpen()\\\"\\n    [ngClass]=\\\"isDisabled ? 'panel-disabled' : 'panel-enabled'\\\"\\n  >\\n    <div class=\\\"panel-title\\\">\\n      <div role=\\\"button\\\" class=\\\"accordion-toggle\\\" [attr.aria-expanded]=\\\"isOpen\\\">\\n        <button class=\\\"btn btn-link\\\" *ngIf=\\\"heading\\\" [ngClass]=\\\"{ 'text-muted': isDisabled }\\\" type=\\\"button\\\">\\n          {{ heading }}\\n        </button>\\n        <ng-content select=\\\"[accordion-heading]\\\"></ng-content>\\n      </div>\\n    </div>\\n  </div>\\n  <div class=\\\"panel-collapse collapse\\\" role=\\\"tabpanel\\\" [collapse]=\\\"!isOpen\\\" [isAnimated]=\\\"isAnimated\\\">\\n    <div class=\\\"panel-body card-block card-body\\\">\\n      <ng-content></ng-content>\\n    </div>\\n  </div>\\n</div>\\n\",\n                host: {\n                    class: 'panel',\n                    style: 'display: block'\n                },\n                styles: [\":host .card-header.panel-enabled{cursor:pointer}:host .card-header.panel-disabled .btn.btn-link{cursor:default;text-decoration:none}\"]\n            }]\n    }], function () { return [{ type: AccordionComponent, decorators: [{\n                type: Inject,\n                args: [AccordionComponent]\n            }] }]; }, { isOpenChange: [{\n            type: Output\n        }], isOpen: [{\n            type: HostBinding,\n            args: ['class.panel-open']\n        }, {\n            type: Input\n        }], panelClass: [{\n            type: Input\n        }], heading: [{\n            type: Input\n        }], isDisabled: [{\n            type: Input\n        }] }); })();\nif (false) {\n    /**\n     * turn on/off animation\n     * @type {?}\n     */\n    AccordionPanelComponent.prototype.isAnimated;\n    /**\n     * Clickable text in accordion's group header, check `accordion heading` below for using html in header\n     * @type {?}\n     */\n    AccordionPanelComponent.prototype.heading;\n    /**\n     * Provides an ability to use Bootstrap's contextual panel classes\n     * (`panel-primary`, `panel-success`, `panel-info`, etc...).\n     * List of all available classes [available here]\n     * (https://getbootstrap.com/docs/3.3/components/#panels-alternatives)\n     * @type {?}\n     */\n    AccordionPanelComponent.prototype.panelClass;\n    /**\n     * if <code>true</code> — disables accordion group\n     * @type {?}\n     */\n    AccordionPanelComponent.prototype.isDisabled;\n    /**\n     * Emits when the opened state changes\n     * @type {?}\n     */\n    AccordionPanelComponent.prototype.isOpenChange;\n    /**\n     * @type {?}\n     * @protected\n     */\n    AccordionPanelComponent.prototype._isOpen;\n    /**\n     * @type {?}\n     * @protected\n     */\n    AccordionPanelComponent.prototype.accordion;\n}\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\nclass AccordionModule {\n    /**\n     * @return {?}\n     */\n    static forRoot() {\n        return { ngModule: AccordionModule, providers: [] };\n    }\n}\nAccordionModule.ɵmod = ɵngcc0.ɵɵdefineNgModule({ type: AccordionModule });\nAccordionModule.ɵinj = ɵngcc0.ɵɵdefineInjector({ factory: function AccordionModule_Factory(t) { return new (t || AccordionModule)(); }, imports: [[CommonModule, CollapseModule]] });\n(function () { (typeof ngJitMode === \"undefined\" || ngJitMode) && ɵngcc0.ɵɵsetNgModuleScope(AccordionModule, { declarations: function () { return [AccordionComponent, AccordionPanelComponent]; }, imports: function () { return [CommonModule, CollapseModule]; }, exports: function () { return [AccordionComponent, AccordionPanelComponent]; } }); })();\n/*@__PURE__*/ (function () { ɵngcc0.ɵsetClassMetadata(AccordionModule, [{\n        type: NgModule,\n        args: [{\n                imports: [CommonModule, CollapseModule],\n                declarations: [AccordionComponent, AccordionPanelComponent],\n                exports: [AccordionComponent, AccordionPanelComponent]\n            }]\n    }], null, null); })();\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\n/**\n * @fileoverview added by tsickle\n * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc\n */\n\nexport { AccordionComponent, AccordionConfig, AccordionModule, AccordionPanelComponent };\n\n//# sourceMappingURL=ngx-bootstrap-accordion.js.map","import { Component, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Data } from '@angular/router';\r\nimport { WebStorageService } from '../../../../services';\r\n\r\n@Component({\r\n  selector: 'app-lot-connection-mode',\r\n  templateUrl: './lot-connection-mode.component.html',\r\n  styleUrls: ['./lot-connection-mode.component.css'],\r\n})\r\nexport class LotConnectionModeComponent implements OnInit {\r\n  showConnectionNav: boolean;\r\n  toggleSwitchOn: boolean;\r\n  userLoggedIn: boolean = false;\r\n\r\n  constructor(\r\n    private storage: WebStorageService,\r\n    private route: ActivatedRoute\r\n  ) {}\r\n\r\n  ngOnInit(): void {\r\n    this.checkModeAvailability();\r\n  }\r\n\r\n  private checkModeAvailability() {\r\n    this.route.data.subscribe((res: Data) => {\r\n      this.showConnectionNav = res['lowConnectionNeeded'];\r\n      if (this.showConnectionNav) this.initializeVariables();\r\n    });\r\n  }\r\n\r\n  private initializeVariables() {\r\n    this.userLoggedIn = this.storage.getBuyer()?.loggedIn;\r\n    if (this.userLoggedIn) {\r\n      this.toggleSwitchOn = !this.storage.getBuyer()?.lotLowConnectionMode;\r\n    }\r\n  }\r\n\r\n  toggleChange(ev) {\r\n    let btnPosition = !this.toggleSwitchOn;\r\n    this.toggleSwitchOn = btnPosition;\r\n    this.storage.setBuyer(null, null, !btnPosition);\r\n    location.reload();\r\n  }\r\n}\r\n","<ng-container *ngIf=\"showConnectionNav\">\r\n  <ng-container *ngIf=\"userLoggedIn\">\r\n    <div class=\"lowConnection d-none\">\r\n      <div class=\"container\">\r\n        <div class=\"row lowConnectionRow\">\r\n          <div class=\"leftWrap\">\r\n            Real-Time update\r\n            <div class=\"tooltip-custom\">\r\n              <img alt=\"info-icon\" src=\"../assets/images/info.svg\" />\r\n              <div class=\"top\">\r\n                <p>\r\n                  {{\r\n                    toggleSwitchOn\r\n                      ? \"Turn off real-time updates if you are experiencing slow internet connection.\"\r\n                      : \"Real time updates are currently disabled. Please refresh your lot manually to get latest updates!\"\r\n                  }}\r\n                </p>\r\n                <i></i>\r\n              </div>\r\n            </div>\r\n          </div>\r\n\r\n          <div class=\"rightWrap\">\r\n            <div class=\"rightWrapInner\">\r\n              <label class=\"switch-slider mr-2\">\r\n                <input\r\n                  type=\"checkbox\"\r\n                  class=\"form-check-input1 slide-check-input\"\r\n                  [checked]=\"toggleSwitchOn\"\r\n                  (change)=\"toggleChange($event)\"\r\n                />\r\n                <span class=\"slider round\"></span>\r\n              </label>\r\n              <span class=\"slideStatus\">{{\r\n                toggleSwitchOn ? \"On\" : \"Off\"\r\n              }}</span>\r\n            </div>\r\n          </div>\r\n        </div>\r\n      </div>\r\n    </div>\r\n  </ng-container>\r\n</ng-container>\r\n","import { Injectable } from '@angular/core';\r\nimport { HttpClient } from '@angular/common/http';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from '../../environments/environment';\r\nimport { map } from 'rxjs/operators';\r\n\r\nexport interface MailingList {\r\n  listId: string;\r\n  name: string;\r\n  favourite: boolean;\r\n}\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class ConstantContactService {\r\n  private apiUrl: string = environment.apiUrl + '/NewsLetter/';\r\n\r\n  constructor(private http: HttpClient) { }\r\n\r\n  getMailingList(): Observable<Array<MailingList>> {\r\n    return this.http.get<any>(this.apiUrl + 'GetOptionsList').pipe(map(it => it.data))\r\n  }\r\n\r\n  subscribeToListing(email: String, listingIds: string[]): Observable<boolean> {\r\n    return this.http.post<any>(this.apiUrl + 'Subscribe', {\r\n      email: email,\r\n      memberShipIds: listingIds //list_id this could be the name of listing array\r\n    }).pipe(map(it => it.data))\r\n  }\r\n}\r\n"],"sourceRoot":"webpack:///"}