import { distinctUntilChanged } from "rxjs/operators"; import { Subject } from "rxjs"; import { Injectable } from "@angular/core"; // models import { ScrollChange } from "../models/scroll-change.model"; @Injectable({ providedIn: "root", }) export class CalendarDateTimePickerService { public index$ = new Subject(); public indexAuto$ = new Subject(); public scrollToDate = new Subject(); public dateChanged = new Subject(); public selectedIndex = 0; scrolledIndexChange = this.index$.pipe(distinctUntilChanged()); scrollToAutoIndex = this.indexAuto$.pipe(distinctUntilChanged()); private scrolledScroll!: string; constructor() {} public set setAutoIndex(number: number) { this.selectedIndex = number; this.indexAuto$.next(number); } public set scrolledScrollItem(name: string) { this.scrolledScroll = name; } public get selectedScroll() { return this.scrolledScroll; } }