UNPKG

4.6 kBJavaScriptView Raw
1"use strict";
2Object.defineProperty(exports, "__esModule", { value: true });
3const rxjs_1 = require("rxjs");
4class ReactiveProperty {
5 constructor(value) {
6 this.subject = new rxjs_1.BehaviorSubject(value);
7 this._value = value;
8 }
9 get value() {
10 return this._value;
11 }
12 set value(value) {
13 this._value = value;
14 this.subject.next(value);
15 }
16 subscribe(observer) {
17 return this.subject
18 .observeOn(rxjs_1.Scheduler.asap)
19 .subscribeOn(rxjs_1.Scheduler.asap)
20 .subscribe(observer);
21 }
22 filter(selector) {
23 return this.subject.asObservable().filter(selector);
24 }
25 map(selector) {
26 return this.subject.asObservable().map(selector);
27 }
28 throttleTime(dueTime, scheduler) {
29 return this.subject.asObservable().throttleTime(dueTime, scheduler);
30 }
31 throttle(selector) {
32 return this.subject.asObservable().throttle(selector);
33 }
34 bufferTime(timeSpan, scheduler) {
35 return this.subject.asObservable().bufferTime(timeSpan, scheduler);
36 }
37 bufferCount(count, skip) {
38 return this.subject.asObservable().bufferCount(count, skip);
39 }
40 bufferTimeCount(timeSpan, count, skip, scheduler) {
41 const timeBuffer = this.subject
42 .asObservable()
43 .bufferTime(timeSpan, scheduler);
44 const countBuffer = this.subject.asObservable().bufferCount(count, skip);
45 return timeBuffer.race(countBuffer);
46 }
47 zip(other) {
48 return this.subject.zip(other);
49 }
50 asObservable() {
51 return this.subject.asObservable();
52 }
53 asObserver() {
54 return this.subject;
55 }
56 asSubject() {
57 return this.subject;
58 }
59 asBehaviourSubject() {
60 return this.subject;
61 }
62}
63exports.ReactiveProperty = ReactiveProperty;
64//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUtcHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcmVhY3RpdmUtcHJvcGVydHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwrQkFPYztBQUlkO0lBS0UsWUFBWSxLQUFTO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxzQkFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxLQUFLLENBQUMsS0FBUTtRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sU0FBUyxDQUFDLFFBQTBDO1FBQ3pELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTzthQUNoQixTQUFTLENBQUMsZ0JBQVMsQ0FBQyxJQUFJLENBQUM7YUFDekIsV0FBVyxDQUFDLGdCQUFTLENBQUMsSUFBSSxDQUFDO2FBQzNCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQStCO1FBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sR0FBRyxDQUFJLFFBQXlCO1FBQ3JDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sWUFBWSxDQUFDLE9BQWUsRUFBRSxTQUFzQjtRQUN6RCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxRQUFRLENBQVcsUUFBNEM7UUFDcEUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxVQUFVLENBQUMsUUFBZ0IsRUFBRSxTQUFzQjtRQUN4RCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTSxXQUFXLENBQUMsS0FBYSxFQUFFLElBQWE7UUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sZUFBZSxDQUNwQixRQUFnQixFQUNoQixLQUFhLEVBQ2IsSUFBYSxFQUNiLFNBQXNCO1FBRXRCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPO2FBQzVCLFlBQVksRUFBRTthQUNkLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXpFLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxHQUFHLENBQUksS0FBb0I7UUFDaEMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxZQUFZO1FBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxVQUFVO1FBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLFNBQVM7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQW5GRCw0Q0FtRkMifQ==
\No newline at end of file