import { Component } from '@angular/core'; import { DropdownModule } from 'primeng/dropdown'; import { FormsModule } from '@angular/forms'; import { CommonModule } from '@angular/common'; import { BrowserAnimationsModule, NoopAnimationsModule } from '@angular/platform-browser/animations'; import { ActivatedRoute, Router, RouterModule } from '@angular/router'; import { StyleClassModule } from 'primeng/styleclass'; import { ButtonModule } from 'primeng/button'; import { CheckboxModule } from 'primeng/checkbox'; import { InputTextModule } from 'primeng/inputtext'; import { SelectOptionsService } from '../../services/select-options.service'; import { UserService } from '../../services/user.service'; import onChange from 'on-change'; import { getCriteriaStateObject, getSessionStorageHandler } from '../../utils/utils'; import { ListingCriteria, User } from '../../../../../common-models/src/main.model'; import { Observable } from 'rxjs'; @Component({ selector: 'app-home', standalone: true, imports: [CommonModule, StyleClassModule,ButtonModule, CheckboxModule,InputTextModule,DropdownModule,FormsModule, RouterModule], templateUrl: './home.component.html', styleUrl: './home.component.scss' }) export class HomeComponent { activeTabAction = 'business'; type:string; maxPrice:string; minPrice:string; criteria:ListingCriteria user$:Observable public constructor(private router: Router,private activatedRoute: ActivatedRoute, public selectOptions:SelectOptionsService, public userService:UserService) { this.criteria = onChange(getCriteriaStateObject(),getSessionStorageHandler); } ngOnInit(){ this.user$=this.userService.getUserObservable(); } search(){ this.router.navigate([`listings/${this.activeTabAction}`]) } login(){ this.userService.login(window.location.href); } }