1 | ;
|
2 | Object.defineProperty(exports, "__esModule", { value: true });
|
3 | const rxjs_1 = require("rxjs");
|
4 | class 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 | }
|
63 | exports.ReactiveProperty = ReactiveProperty;
|
64 | //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhY3RpdmUtcHJvcGVydHkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvcmVhY3RpdmUtcHJvcGVydHkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFBQSwrQkFPYztBQUlkO0lBS0UsWUFBWSxLQUFTO1FBQ25CLElBQUksQ0FBQyxPQUFPLEdBQUcsSUFBSSxzQkFBZSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQzFDLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3RCLENBQUM7SUFFRCxJQUFXLEtBQUs7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQztJQUNyQixDQUFDO0lBRUQsSUFBVyxLQUFLLENBQUMsS0FBUTtRQUN2QixJQUFJLENBQUMsTUFBTSxHQUFHLEtBQUssQ0FBQztRQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQztJQUMzQixDQUFDO0lBRU0sU0FBUyxDQUFDLFFBQTBDO1FBQ3pELE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTzthQUNoQixTQUFTLENBQUMsZ0JBQVMsQ0FBQyxJQUFJLENBQUM7YUFDekIsV0FBVyxDQUFDLGdCQUFTLENBQUMsSUFBSSxDQUFDO2FBQzNCLFNBQVMsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6QixDQUFDO0lBRU0sTUFBTSxDQUFDLFFBQStCO1FBQzNDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLE1BQU0sQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN0RCxDQUFDO0lBRU0sR0FBRyxDQUFJLFFBQXlCO1FBQ3JDLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDLEdBQUcsQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUNuRCxDQUFDO0lBRU0sWUFBWSxDQUFDLE9BQWUsRUFBRSxTQUFzQjtRQUN6RCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxZQUFZLENBQUMsT0FBTyxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3RFLENBQUM7SUFFTSxRQUFRLENBQVcsUUFBNEM7UUFDcEUsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3hELENBQUM7SUFFTSxVQUFVLENBQUMsUUFBZ0IsRUFBRSxTQUFzQjtRQUN4RCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxVQUFVLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO0lBQ3JFLENBQUM7SUFFTSxXQUFXLENBQUMsS0FBYSxFQUFFLElBQWE7UUFDN0MsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsWUFBWSxFQUFFLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBRU0sZUFBZSxDQUNwQixRQUFnQixFQUNoQixLQUFhLEVBQ2IsSUFBYSxFQUNiLFNBQXNCO1FBRXRCLE1BQU0sVUFBVSxHQUFHLElBQUksQ0FBQyxPQUFPO2FBQzVCLFlBQVksRUFBRTthQUNkLFVBQVUsQ0FBQyxRQUFRLEVBQUUsU0FBUyxDQUFDLENBQUM7UUFDbkMsTUFBTSxXQUFXLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsQ0FBQyxXQUFXLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxDQUFDO1FBRXpFLE1BQU0sQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFTSxHQUFHLENBQUksS0FBb0I7UUFDaEMsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ2pDLENBQUM7SUFFTSxZQUFZO1FBQ2pCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLFlBQVksRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFTSxVQUFVO1FBQ2YsTUFBTSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUM7SUFDdEIsQ0FBQztJQUVNLFNBQVM7UUFDZCxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQztJQUN0QixDQUFDO0lBRU0sa0JBQWtCO1FBQ3ZCLE1BQU0sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ3RCLENBQUM7Q0FDRjtBQW5GRCw0Q0FtRkMifQ== |
\ | No newline at end of file |