Press n or j to go to the next uncovered block, b, p or k for the previous block.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | 1x 97x | import { ChangeDetectorRef, ElementRef, Injectable } from '@angular/core'; import { BehaviorSubject } from 'rxjs'; export interface RefBindingSubject { subject: BehaviorSubject<any>; cdRef: ChangeDetectorRef; eRef: ElementRef; } /** * A registry for AngularJS binding subjects. */ @Injectable({ providedIn: 'root' }) export class NgBindingsService { private readonly subjects: { [key: string]: Array<RefBindingSubject> }; constructor() { this.subjects = {}; } putSubject(key: string, subject: RefBindingSubject): Array<RefBindingSubject> { let subjects = this.subjects[key]; if (!subjects) { subjects = []; this.subjects[key] = subjects; } this.subjects[key].push(subject); return this.subjects[key]; } } |