rxjs-rails 2.2.20 → 2.2.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/rxjs/rails/version.rb +1 -1
- data/vendor/assets/javascripts/rx.aggregates.js +38 -20
- data/vendor/assets/javascripts/rx.aggregates.min.js +1 -1
- data/vendor/assets/javascripts/rx.all.compat.js +9288 -0
- data/vendor/assets/javascripts/rx.all.compat.min.js +3 -0
- data/vendor/assets/javascripts/rx.all.js +9102 -0
- data/vendor/assets/javascripts/rx.all.min.js +3 -0
- data/vendor/assets/javascripts/rx.async.compat.js +5 -4
- data/vendor/assets/javascripts/rx.async.compat.min.js +1 -1
- data/vendor/assets/javascripts/rx.async.js +5 -4
- data/vendor/assets/javascripts/rx.async.min.js +1 -1
- data/vendor/assets/javascripts/rx.backpressure.js +24 -12
- data/vendor/assets/javascripts/rx.backpressure.min.js +1 -1
- data/vendor/assets/javascripts/rx.binding.js +85 -85
- data/vendor/assets/javascripts/rx.coincidence.js +59 -15
- data/vendor/assets/javascripts/rx.coincidence.min.js +1 -1
- data/vendor/assets/javascripts/rx.compat.js +809 -742
- data/vendor/assets/javascripts/rx.compat.min.js +2 -2
- data/vendor/assets/javascripts/rx.core.compat.js +2629 -0
- data/vendor/assets/javascripts/rx.core.compat.min.js +1 -0
- data/vendor/assets/javascripts/rx.core.js +2511 -0
- data/vendor/assets/javascripts/rx.core.min.js +1 -0
- data/vendor/assets/javascripts/rx.experimental.js +43 -43
- data/vendor/assets/javascripts/rx.joinpatterns.js +281 -281
- data/vendor/assets/javascripts/rx.js +792 -725
- data/vendor/assets/javascripts/rx.lite.compat.js +890 -758
- data/vendor/assets/javascripts/rx.lite.compat.min.js +2 -2
- data/vendor/assets/javascripts/rx.lite.extras.js +664 -0
- data/vendor/assets/javascripts/rx.lite.extras.min.js +1 -0
- data/vendor/assets/javascripts/rx.lite.js +890 -758
- data/vendor/assets/javascripts/rx.lite.min.js +2 -2
- data/vendor/assets/javascripts/rx.min.js +2 -2
- data/vendor/assets/javascripts/rx.testing.js +166 -166
- data/vendor/assets/javascripts/rx.testing.min.js +1 -1
- data/vendor/assets/javascripts/rx.time.js +132 -131
- data/vendor/assets/javascripts/rx.time.min.js +1 -1
- data/vendor/assets/javascripts/rx.virtualtime.js +2 -2
- metadata +13 -4
- data/vendor/assets/javascripts/rx.node.js +0 -142
@@ -1,4 +1,4 @@
|
|
1
|
-
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
|
1
|
+
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
|
2
2
|
|
3
3
|
;(function (factory) {
|
4
4
|
var objectTypes = {
|
@@ -33,23 +33,25 @@
|
|
33
33
|
}
|
34
34
|
}.call(this, function (root, exp, Rx, undefined) {
|
35
35
|
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
|
50
|
-
|
51
|
-
|
52
|
-
|
36
|
+
// Refernces
|
37
|
+
var Observable = Rx.Observable,
|
38
|
+
observableProto = Observable.prototype,
|
39
|
+
AnonymousObservable = Rx.AnonymousObservable,
|
40
|
+
observableDefer = Observable.defer,
|
41
|
+
observableEmpty = Observable.empty,
|
42
|
+
observableNever = Observable.never,
|
43
|
+
observableThrow = Observable.throwException,
|
44
|
+
observableFromArray = Observable.fromArray,
|
45
|
+
timeoutScheduler = Rx.Scheduler.timeout,
|
46
|
+
SingleAssignmentDisposable = Rx.SingleAssignmentDisposable,
|
47
|
+
SerialDisposable = Rx.SerialDisposable,
|
48
|
+
CompositeDisposable = Rx.CompositeDisposable,
|
49
|
+
RefCountDisposable = Rx.RefCountDisposable,
|
50
|
+
Subject = Rx.Subject,
|
51
|
+
addRef = Rx.internals.addRef,
|
52
|
+
normalizeTime = Rx.Scheduler.normalize,
|
53
|
+
isPromise = Rx.helpers.isPromise,
|
54
|
+
observableFromPromise = Observable.fromPromise;
|
53
55
|
|
54
56
|
function observableTimerDate(dueTime, scheduler) {
|
55
57
|
return new AnonymousObservable(function (observer) {
|
@@ -568,77 +570,71 @@
|
|
568
570
|
return sampleObservable(this, intervalOrSampler);
|
569
571
|
};
|
570
572
|
|
571
|
-
|
572
|
-
|
573
|
-
|
574
|
-
|
575
|
-
|
576
|
-
|
577
|
-
|
578
|
-
|
579
|
-
|
580
|
-
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
586
|
-
|
587
|
-
|
588
|
-
|
589
|
-
|
590
|
-
|
591
|
-
|
592
|
-
|
593
|
-
|
594
|
-
|
595
|
-
|
596
|
-
|
597
|
-
|
598
|
-
|
573
|
+
/**
|
574
|
+
* Returns the source observable sequence or the other observable sequence if dueTime elapses.
|
575
|
+
*
|
576
|
+
* @example
|
577
|
+
* 1 - res = source.timeout(new Date()); // As a date
|
578
|
+
* 2 - res = source.timeout(5000); // 5 seconds
|
579
|
+
* 3 - res = source.timeout(new Date(), Rx.Observable.returnValue(42)); // As a date and timeout observable
|
580
|
+
* 4 - res = source.timeout(5000, Rx.Observable.returnValue(42)); // 5 seconds and timeout observable
|
581
|
+
* 5 - res = source.timeout(new Date(), Rx.Observable.returnValue(42), Rx.Scheduler.timeout); // As a date and timeout observable
|
582
|
+
* 6 - res = source.timeout(5000, Rx.Observable.returnValue(42), Rx.Scheduler.timeout); // 5 seconds and timeout observable
|
583
|
+
*
|
584
|
+
* @param {Number} dueTime Absolute (specified as a Date object) or relative time (specified as an integer denoting milliseconds) when a timeout occurs.
|
585
|
+
* @param {Observable} [other] Sequence to return in case of a timeout. If not specified, a timeout error throwing sequence will be used.
|
586
|
+
* @param {Scheduler} [scheduler] Scheduler to run the timeout timers on. If not specified, the timeout scheduler is used.
|
587
|
+
* @returns {Observable} The source sequence switching to the other sequence in case of a timeout.
|
588
|
+
*/
|
589
|
+
observableProto.timeout = function (dueTime, other, scheduler) {
|
590
|
+
other || (other = observableThrow(new Error('Timeout')));
|
591
|
+
scheduler || (scheduler = timeoutScheduler);
|
592
|
+
|
593
|
+
var source = this, schedulerMethod = dueTime instanceof Date ?
|
594
|
+
'scheduleWithAbsolute' :
|
595
|
+
'scheduleWithRelative';
|
596
|
+
|
597
|
+
return new AnonymousObservable(function (observer) {
|
598
|
+
var id = 0,
|
599
|
+
original = new SingleAssignmentDisposable(),
|
600
|
+
subscription = new SerialDisposable(),
|
601
|
+
switched = false,
|
602
|
+
timer = new SerialDisposable();
|
603
|
+
|
604
|
+
subscription.setDisposable(original);
|
605
|
+
|
606
|
+
var createTimer = function () {
|
607
|
+
var myId = id;
|
608
|
+
timer.setDisposable(scheduler[schedulerMethod](dueTime, function () {
|
609
|
+
if (id === myId) {
|
610
|
+
isPromise(other) && (other = observableFromPromise(other));
|
611
|
+
subscription.setDisposable(other.subscribe(observer));
|
612
|
+
}
|
613
|
+
}));
|
614
|
+
};
|
615
|
+
|
616
|
+
createTimer();
|
617
|
+
|
618
|
+
original.setDisposable(source.subscribe(function (x) {
|
619
|
+
if (!switched) {
|
620
|
+
id++;
|
621
|
+
observer.onNext(x);
|
622
|
+
createTimer();
|
599
623
|
}
|
600
|
-
|
601
|
-
|
602
|
-
|
603
|
-
|
604
|
-
|
605
|
-
|
606
|
-
|
607
|
-
|
608
|
-
|
609
|
-
|
610
|
-
|
611
|
-
|
612
|
-
|
613
|
-
|
614
|
-
subscription.setDisposable(other.subscribe(observer));
|
615
|
-
}
|
616
|
-
}));
|
617
|
-
};
|
618
|
-
createTimer();
|
619
|
-
original.setDisposable(source.subscribe(function (x) {
|
620
|
-
var onNextWins = !switched;
|
621
|
-
if (onNextWins) {
|
622
|
-
id++;
|
623
|
-
observer.onNext(x);
|
624
|
-
createTimer();
|
625
|
-
}
|
626
|
-
}, function (e) {
|
627
|
-
var onErrorWins = !switched;
|
628
|
-
if (onErrorWins) {
|
629
|
-
id++;
|
630
|
-
observer.onError(e);
|
631
|
-
}
|
632
|
-
}, function () {
|
633
|
-
var onCompletedWins = !switched;
|
634
|
-
if (onCompletedWins) {
|
635
|
-
id++;
|
636
|
-
observer.onCompleted();
|
637
|
-
}
|
638
|
-
}));
|
639
|
-
return new CompositeDisposable(subscription, timer);
|
640
|
-
});
|
641
|
-
};
|
624
|
+
}, function (e) {
|
625
|
+
if (!switched) {
|
626
|
+
id++;
|
627
|
+
observer.onError(e);
|
628
|
+
}
|
629
|
+
}, function () {
|
630
|
+
if (!switched) {
|
631
|
+
id++;
|
632
|
+
observer.onCompleted();
|
633
|
+
}
|
634
|
+
}));
|
635
|
+
return new CompositeDisposable(subscription, timer);
|
636
|
+
});
|
637
|
+
};
|
642
638
|
|
643
639
|
/**
|
644
640
|
* Generates an observable sequence by iterating a state from an initial state until the condition fails.
|
@@ -1116,50 +1112,55 @@
|
|
1116
1112
|
});
|
1117
1113
|
};
|
1118
1114
|
|
1119
|
-
|
1120
|
-
|
1121
|
-
|
1122
|
-
|
1123
|
-
|
1124
|
-
|
1125
|
-
|
1126
|
-
|
1127
|
-
|
1128
|
-
|
1129
|
-
|
1130
|
-
|
1131
|
-
|
1132
|
-
|
1133
|
-
|
1134
|
-
|
1135
|
-
|
1136
|
-
|
1137
|
-
observer.onNext(x);
|
1138
|
-
}
|
1139
|
-
}, observer.onError.bind(observer), observer.onCompleted.bind(observer));
|
1115
|
+
/**
|
1116
|
+
* Skips elements from the observable source sequence until the specified start time, using the specified scheduler to run timers.
|
1117
|
+
* Errors produced by the source sequence are always forwarded to the result sequence, even if the error occurs before the start time.
|
1118
|
+
*
|
1119
|
+
* @examples
|
1120
|
+
* 1 - res = source.skipUntilWithTime(new Date(), [optional scheduler]);
|
1121
|
+
* 2 - res = source.skipUntilWithTime(5000, [optional scheduler]);
|
1122
|
+
* @param startTime Time to start taking elements from the source sequence. If this value is less than or equal to Date(), no elements will be skipped.
|
1123
|
+
* @param scheduler Scheduler to run the timer on. If not specified, defaults to Rx.Scheduler.timeout.
|
1124
|
+
* @returns {Observable} An observable sequence with the elements skipped until the specified start time.
|
1125
|
+
*/
|
1126
|
+
observableProto.skipUntilWithTime = function (startTime, scheduler) {
|
1127
|
+
scheduler || (scheduler = timeoutScheduler);
|
1128
|
+
var source = this, schedulerMethod = startTime instanceof Date ?
|
1129
|
+
'scheduleWithAbsolute' :
|
1130
|
+
'scheduleWithRelative';
|
1131
|
+
return new AnonymousObservable(function (observer) {
|
1132
|
+
var open = false;
|
1140
1133
|
|
1141
|
-
|
1142
|
-
})
|
1143
|
-
|
1134
|
+
return new CompositeDisposable(
|
1135
|
+
scheduler[schedulerMethod](startTime, function () { open = true; }),
|
1136
|
+
source.subscribe(
|
1137
|
+
function (x) { open && observer.onNext(x); },
|
1138
|
+
observer.onError.bind(observer),
|
1139
|
+
observer.onCompleted.bind(observer)));
|
1140
|
+
});
|
1141
|
+
};
|
1144
1142
|
|
1145
|
-
|
1146
|
-
|
1147
|
-
|
1148
|
-
|
1149
|
-
|
1150
|
-
|
1151
|
-
|
1152
|
-
|
1153
|
-
|
1154
|
-
|
1155
|
-
|
1156
|
-
|
1157
|
-
|
1158
|
-
|
1159
|
-
|
1160
|
-
|
1161
|
-
|
1162
|
-
|
1143
|
+
/**
|
1144
|
+
* Takes elements for the specified duration until the specified end time, using the specified scheduler to run timers.
|
1145
|
+
*
|
1146
|
+
* @example
|
1147
|
+
* 1 - res = source.takeUntilWithTime(new Date(), [optional scheduler]);
|
1148
|
+
* 2 - res = source.takeUntilWithTime(5000, [optional scheduler]);
|
1149
|
+
* @param {Number | Date} endTime Time to stop taking elements from the source sequence. If this value is less than or equal to new Date(), the result stream will complete immediately.
|
1150
|
+
* @param {Scheduler} scheduler Scheduler to run the timer on.
|
1151
|
+
* @returns {Observable} An observable sequence with the elements taken until the specified end time.
|
1152
|
+
*/
|
1153
|
+
observableProto.takeUntilWithTime = function (endTime, scheduler) {
|
1154
|
+
scheduler || (scheduler = timeoutScheduler);
|
1155
|
+
var source = this, schedulerMethod = endTime instanceof Date ?
|
1156
|
+
'scheduleWithAbsolute' :
|
1157
|
+
'scheduleWithRelative';
|
1158
|
+
return new AnonymousObservable(function (observer) {
|
1159
|
+
return new CompositeDisposable(scheduler[schedulerMethod](endTime, function () {
|
1160
|
+
observer.onCompleted();
|
1161
|
+
}), source.subscribe(observer));
|
1162
|
+
});
|
1163
|
+
};
|
1163
1164
|
|
1164
|
-
return Rx;
|
1165
|
+
return Rx;
|
1165
1166
|
}));
|
@@ -1 +1 @@
|
|
1
|
-
(function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c,d){function e(a,b){return new n(function(c){return b.scheduleWithAbsolute(a,function(){c.onNext(0),c.onCompleted()})})}function f(a,b,c){var d=A(b);return new n(function(b){var e=0,f=a;return c.scheduleRecursiveWithAbsolute(f,function(a){var g;d>0&&(g=c.now(),f+=d,g>=f&&(f=g+d)),b.onNext(e++),a(f)})})}function g(a,b){var c=A(a);return new n(function(a){return b.scheduleWithRelative(c,function(){a.onNext(0),a.onCompleted()})})}function h(a,b,c){return a===b?new n(function(a){return c.schedulePeriodicWithState(0,b,function(b){return a.onNext(b),b+1})}):o(function(){return f(c.now()+a,b,c)})}function i(a,b){var c=this;return new n(function(d){var e,f=!1,g=new v,h=null,i=[],j=!1;return e=c.materialize().timestamp(b).subscribe(function(c){var e,k;"E"===c.value.kind?(i=[],i.push(c),h=c.value.exception,k=!j):(i.push({value:c.value,timestamp:c.timestamp+a}),k=!f,f=!0),k&&(null!==h?d.onError(h):(e=new u,g.setDisposable(e),e.setDisposable(b.scheduleRecursiveWithRelative(a,function(a){var c,e,g,k;if(null===h){j=!0;do g=null,i.length>0&&i[0].timestamp-b.now()<=0&&(g=i.shift().value),null!==g&&g.accept(d);while(null!==g);k=!1,e=0,i.length>0?(k=!0,e=Math.max(0,i[0].timestamp-b.now())):f=!1,c=h,j=!1,null!==c?d.onError(c):k&&a(e)}}))))}),new w(e,g)})}function j(a,b){var c=this;return o(function(){var d=a-b.now();return i.call(c,d,b)})}function k(a,b){return new n(function(c){function d(){g&&(g=!1,c.onNext(f)),e&&c.onCompleted()}var e,f,g;return new w(a.subscribe(function(a){g=!0,f=a},c.onError.bind(c),function(){e=!0}),b.subscribe(d,c.onError.bind(c),d))})}var l=c.Observable,m=l.prototype,n=c.AnonymousObservable,o=l.defer,p=l.empty,q=l.never,r=l.throwException,s=l.fromArray,t=c.Scheduler.timeout,u=c.SingleAssignmentDisposable,v=c.SerialDisposable,w=c.CompositeDisposable,x=c.RefCountDisposable,y=c.Subject,z=c.internals.addRef,A=c.Scheduler.normalize,B=l.interval=function(a,b){return b||(b=t),h(a,a,b)},
|
1
|
+
(function(a){var b={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},c=b[typeof window]&&window||this,d=b[typeof exports]&&exports&&!exports.nodeType&&exports,e=b[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,b[typeof global]&&global);!f||f.global!==f&&f.window!==f||(c=f),"function"==typeof define&&define.amd?define(["rx","exports"],function(b,d){return c.Rx=a(c,d,b),c.Rx}):"object"==typeof module&&module&&module.exports===d?module.exports=a(c,module.exports,require("./rx")):c.Rx=a(c,{},c.Rx)}).call(this,function(a,b,c,d){function e(a,b){return new n(function(c){return b.scheduleWithAbsolute(a,function(){c.onNext(0),c.onCompleted()})})}function f(a,b,c){var d=A(b);return new n(function(b){var e=0,f=a;return c.scheduleRecursiveWithAbsolute(f,function(a){var g;d>0&&(g=c.now(),f+=d,g>=f&&(f=g+d)),b.onNext(e++),a(f)})})}function g(a,b){var c=A(a);return new n(function(a){return b.scheduleWithRelative(c,function(){a.onNext(0),a.onCompleted()})})}function h(a,b,c){return a===b?new n(function(a){return c.schedulePeriodicWithState(0,b,function(b){return a.onNext(b),b+1})}):o(function(){return f(c.now()+a,b,c)})}function i(a,b){var c=this;return new n(function(d){var e,f=!1,g=new v,h=null,i=[],j=!1;return e=c.materialize().timestamp(b).subscribe(function(c){var e,k;"E"===c.value.kind?(i=[],i.push(c),h=c.value.exception,k=!j):(i.push({value:c.value,timestamp:c.timestamp+a}),k=!f,f=!0),k&&(null!==h?d.onError(h):(e=new u,g.setDisposable(e),e.setDisposable(b.scheduleRecursiveWithRelative(a,function(a){var c,e,g,k;if(null===h){j=!0;do g=null,i.length>0&&i[0].timestamp-b.now()<=0&&(g=i.shift().value),null!==g&&g.accept(d);while(null!==g);k=!1,e=0,i.length>0?(k=!0,e=Math.max(0,i[0].timestamp-b.now())):f=!1,c=h,j=!1,null!==c?d.onError(c):k&&a(e)}}))))}),new w(e,g)})}function j(a,b){var c=this;return o(function(){var d=a-b.now();return i.call(c,d,b)})}function k(a,b){return new n(function(c){function d(){g&&(g=!1,c.onNext(f)),e&&c.onCompleted()}var e,f,g;return new w(a.subscribe(function(a){g=!0,f=a},c.onError.bind(c),function(){e=!0}),b.subscribe(d,c.onError.bind(c),d))})}var l=c.Observable,m=l.prototype,n=c.AnonymousObservable,o=l.defer,p=l.empty,q=l.never,r=l.throwException,s=l.fromArray,t=c.Scheduler.timeout,u=c.SingleAssignmentDisposable,v=c.SerialDisposable,w=c.CompositeDisposable,x=c.RefCountDisposable,y=c.Subject,z=c.internals.addRef,A=c.Scheduler.normalize,B=c.helpers.isPromise,C=l.fromPromise,D=l.interval=function(a,b){return b||(b=t),h(a,a,b)},E=l.timer=function(a,b,c){var i;return c||(c=t),b!==d&&"number"==typeof b?i=b:b!==d&&"object"==typeof b&&(c=b),a instanceof Date&&i===d?e(a.getTime(),c):a instanceof Date&&i!==d?(i=b,f(a.getTime(),i,c)):i===d?g(a,c):h(a,i,c)};return m.delay=function(a,b){return b||(b=t),a instanceof Date?j.call(this,a.getTime(),b):i.call(this,a,b)},m.throttle=function(a,b){b||(b=t);return this.throttleWithSelector(function(){return E(a,b)})},m.windowWithTime=function(a,b,c){var e,f=this;return b===d&&(e=a),c===d&&(c=t),"number"==typeof b?e=b:"object"==typeof b&&(e=a,c=b),new n(function(b){function d(){var a=new u,f=!1,g=!1;l.setDisposable(a),j===i?(f=!0,g=!0):i>j?f=!0:g=!0;var n=f?j:i,o=n-m;m=n,f&&(j+=e),g&&(i+=e),a.setDisposable(c.scheduleWithRelative(o,function(){var a;g&&(a=new y,k.push(a),b.onNext(z(a,h))),f&&(a=k.shift(),a.onCompleted()),d()}))}var g,h,i=e,j=a,k=[],l=new v,m=0;return g=new w(l),h=new x(g),k.push(new y),b.onNext(z(k[0],h)),d(),g.add(f.subscribe(function(a){var b,c;for(b=0;b<k.length;b++)c=k[b],c.onNext(a)},function(a){var c,d;for(c=0;c<k.length;c++)d=k[c],d.onError(a);b.onError(a)},function(){var a,c;for(a=0;a<k.length;a++)c=k[a],c.onCompleted();b.onCompleted()})),h})},m.windowWithTimeOrCount=function(a,b,c){var d=this;return c||(c=t),new n(function(e){var f,g,h,i,j=0,k=new v,l=0;return g=new w(k),h=new x(g),f=function(b){var d=new u;k.setDisposable(d),d.setDisposable(c.scheduleWithRelative(a,function(){var a;b===l&&(j=0,a=++l,i.onCompleted(),i=new y,e.onNext(z(i,h)),f(a))}))},i=new y,e.onNext(z(i,h)),f(0),g.add(d.subscribe(function(a){var c=0,d=!1;i.onNext(a),j++,j===b&&(d=!0,j=0,c=++l,i.onCompleted(),i=new y,e.onNext(z(i,h))),d&&f(c)},function(a){i.onError(a),e.onError(a)},function(){i.onCompleted(),e.onCompleted()})),h})},m.bufferWithTime=function(){return this.windowWithTime.apply(this,arguments).selectMany(function(a){return a.toArray()})},m.bufferWithTimeOrCount=function(a,b,c){return this.windowWithTimeOrCount(a,b,c).selectMany(function(a){return a.toArray()})},m.timeInterval=function(a){var b=this;return a||(a=t),o(function(){var c=a.now();return b.select(function(b){var d=a.now(),e=d-c;return c=d,{value:b,interval:e}})})},m.timestamp=function(a){return a||(a=t),this.select(function(b){return{value:b,timestamp:a.now()}})},m.sample=function(a,b){return b||(b=t),"number"==typeof a?k(this,D(a,b)):k(this,a)},m.timeout=function(a,b,c){b||(b=r(new Error("Timeout"))),c||(c=t);var d=this,e=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new n(function(f){var g=0,h=new u,i=new v,j=!1,k=new v;i.setDisposable(h);var l=function(){var d=g;k.setDisposable(c[e](a,function(){g===d&&(B(b)&&(b=C(b)),i.setDisposable(b.subscribe(f)))}))};return l(),h.setDisposable(d.subscribe(function(a){j||(g++,f.onNext(a),l())},function(a){j||(g++,f.onError(a))},function(){j||(g++,f.onCompleted())})),new w(i,k)})},l.generateWithAbsoluteTime=function(a,b,c,d,e,f){return f||(f=t),new n(function(g){var h,i,j=!0,k=!1,l=a;return f.scheduleRecursiveWithAbsolute(f.now(),function(a){k&&g.onNext(h);try{j?j=!1:l=c(l),k=b(l),k&&(h=d(l),i=e(l))}catch(f){return void g.onError(f)}k?a(i):g.onCompleted()})})},l.generateWithRelativeTime=function(a,b,c,d,e,f){return f||(f=t),new n(function(g){var h,i,j=!0,k=!1,l=a;return f.scheduleRecursiveWithRelative(0,function(a){k&&g.onNext(h);try{j?j=!1:l=c(l),k=b(l),k&&(h=d(l),i=e(l))}catch(f){return void g.onError(f)}k?a(i):g.onCompleted()})})},m.delaySubscription=function(a,b){return b||(b=t),this.delayWithSelector(E(a,b),function(){return p()})},m.delayWithSelector=function(a,b){var c,d,e=this;return"function"==typeof a?d=a:(c=a,d=b),new n(function(a){var b=new w,f=!1,g=function(){f&&0===b.length&&a.onCompleted()},h=new v,i=function(){h.setDisposable(e.subscribe(function(c){var e;try{e=d(c)}catch(f){return void a.onError(f)}var h=new u;b.add(h),h.setDisposable(e.subscribe(function(){a.onNext(c),b.remove(h),g()},a.onError.bind(a),function(){a.onNext(c),b.remove(h),g()}))},a.onError.bind(a),function(){f=!0,h.dispose(),g()}))};return c?h.setDisposable(c.subscribe(function(){i()},a.onError.bind(a),function(){i()})):i(),new w(h,b)})},m.timeoutWithSelector=function(a,b,c){if(1===arguments.length){b=a;var a=q()}c||(c=r(new Error("Timeout")));var d=this;return new n(function(e){var f=new v,g=new v,h=new u;f.setDisposable(h);var i=0,j=!1,k=function(a){var b=i,d=function(){return i===b},h=new u;g.setDisposable(h),h.setDisposable(a.subscribe(function(){d()&&f.setDisposable(c.subscribe(e)),h.dispose()},function(a){d()&&e.onError(a)},function(){d()&&f.setDisposable(c.subscribe(e))}))};k(a);var l=function(){var a=!j;return a&&i++,a};return h.setDisposable(d.subscribe(function(a){if(l()){e.onNext(a);var c;try{c=b(a)}catch(d){return void e.onError(d)}k(c)}},function(a){l()&&e.onError(a)},function(){l()&&e.onCompleted()})),new w(f,g)})},m.throttleWithSelector=function(a){var b=this;return new n(function(c){var d,e=!1,f=new v,g=0,h=b.subscribe(function(b){var h;try{h=a(b)}catch(i){return void c.onError(i)}e=!0,d=b,g++;var j=g,k=new u;f.setDisposable(k),k.setDisposable(h.subscribe(function(){e&&g===j&&c.onNext(d),e=!1,k.dispose()},c.onError.bind(c),function(){e&&g===j&&c.onNext(d),e=!1,k.dispose()}))},function(a){f.dispose(),c.onError(a),e=!1,g++},function(){f.dispose(),e&&c.onNext(d),c.onCompleted(),e=!1,g++});return new w(h,f)})},m.skipLastWithTime=function(a,b){b||(b=t);var c=this;return new n(function(d){var e=[];return c.subscribe(function(c){var f=b.now();for(e.push({interval:f,value:c});e.length>0&&f-e[0].interval>=a;)d.onNext(e.shift().value)},d.onError.bind(d),function(){for(var c=b.now();e.length>0&&c-e[0].interval>=a;)d.onNext(e.shift().value);d.onCompleted()})})},m.takeLastWithTime=function(a,b,c){return this.takeLastBufferWithTime(a,b).selectMany(function(a){return s(a,c)})},m.takeLastBufferWithTime=function(a,b){var c=this;return b||(b=t),new n(function(d){var e=[];return c.subscribe(function(c){var d=b.now();for(e.push({interval:d,value:c});e.length>0&&d-e[0].interval>=a;)e.shift()},d.onError.bind(d),function(){for(var c=b.now(),f=[];e.length>0;){var g=e.shift();c-g.interval<=a&&f.push(g.value)}d.onNext(f),d.onCompleted()})})},m.takeWithTime=function(a,b){var c=this;return b||(b=t),new n(function(d){var e=b.scheduleWithRelative(a,function(){d.onCompleted()});return new w(e,c.subscribe(d))})},m.skipWithTime=function(a,b){var c=this;return b||(b=t),new n(function(d){var e=!1,f=b.scheduleWithRelative(a,function(){e=!0}),g=c.subscribe(function(a){e&&d.onNext(a)},d.onError.bind(d),d.onCompleted.bind(d));return new w(f,g)})},m.skipUntilWithTime=function(a,b){b||(b=t);var c=this,d=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new n(function(e){var f=!1;return new w(b[d](a,function(){f=!0}),c.subscribe(function(a){f&&e.onNext(a)},e.onError.bind(e),e.onCompleted.bind(e)))})},m.takeUntilWithTime=function(a,b){b||(b=t);var c=this,d=a instanceof Date?"scheduleWithAbsolute":"scheduleWithRelative";return new n(function(e){return new w(b[d](a,function(){e.onCompleted()}),c.subscribe(e))})},c});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
|
1
|
+
// Copyright (c) Microsoft Open Technologies, Inc. All rights reserved. See License.txt in the project root for license information.
|
2
2
|
|
3
3
|
;(function (factory) {
|
4
4
|
var objectTypes = {
|
@@ -331,5 +331,5 @@
|
|
331
331
|
|
332
332
|
return HistoricalScheduler;
|
333
333
|
}(Rx.VirtualTimeScheduler));
|
334
|
-
return Rx;
|
334
|
+
return Rx;
|
335
335
|
}));
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rxjs-rails
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.2.
|
4
|
+
version: 2.2.26
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- jdeseno
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2014-
|
11
|
+
date: 2014-06-05 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: railties
|
@@ -51,6 +51,10 @@ files:
|
|
51
51
|
- rxjs_license.txt
|
52
52
|
- vendor/assets/javascripts/rx.aggregates.js
|
53
53
|
- vendor/assets/javascripts/rx.aggregates.min.js
|
54
|
+
- vendor/assets/javascripts/rx.all.compat.js
|
55
|
+
- vendor/assets/javascripts/rx.all.compat.min.js
|
56
|
+
- vendor/assets/javascripts/rx.all.js
|
57
|
+
- vendor/assets/javascripts/rx.all.min.js
|
54
58
|
- vendor/assets/javascripts/rx.async.compat.js
|
55
59
|
- vendor/assets/javascripts/rx.async.compat.min.js
|
56
60
|
- vendor/assets/javascripts/rx.async.js
|
@@ -63,6 +67,10 @@ files:
|
|
63
67
|
- vendor/assets/javascripts/rx.coincidence.min.js
|
64
68
|
- vendor/assets/javascripts/rx.compat.js
|
65
69
|
- vendor/assets/javascripts/rx.compat.min.js
|
70
|
+
- vendor/assets/javascripts/rx.core.compat.js
|
71
|
+
- vendor/assets/javascripts/rx.core.compat.min.js
|
72
|
+
- vendor/assets/javascripts/rx.core.js
|
73
|
+
- vendor/assets/javascripts/rx.core.min.js
|
66
74
|
- vendor/assets/javascripts/rx.experimental.js
|
67
75
|
- vendor/assets/javascripts/rx.experimental.min.js
|
68
76
|
- vendor/assets/javascripts/rx.joinpatterns.js
|
@@ -70,10 +78,11 @@ files:
|
|
70
78
|
- vendor/assets/javascripts/rx.js
|
71
79
|
- vendor/assets/javascripts/rx.lite.compat.js
|
72
80
|
- vendor/assets/javascripts/rx.lite.compat.min.js
|
81
|
+
- vendor/assets/javascripts/rx.lite.extras.js
|
82
|
+
- vendor/assets/javascripts/rx.lite.extras.min.js
|
73
83
|
- vendor/assets/javascripts/rx.lite.js
|
74
84
|
- vendor/assets/javascripts/rx.lite.min.js
|
75
85
|
- vendor/assets/javascripts/rx.min.js
|
76
|
-
- vendor/assets/javascripts/rx.node.js
|
77
86
|
- vendor/assets/javascripts/rx.testing.js
|
78
87
|
- vendor/assets/javascripts/rx.testing.min.js
|
79
88
|
- vendor/assets/javascripts/rx.time.js
|
@@ -101,7 +110,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
101
110
|
version: 1.3.6
|
102
111
|
requirements: []
|
103
112
|
rubyforge_project: rxjs-rails
|
104
|
-
rubygems_version: 2.2.
|
113
|
+
rubygems_version: 2.2.2
|
105
114
|
signing_key:
|
106
115
|
specification_version: 4
|
107
116
|
summary: Use RxJS with rails
|
@@ -1,142 +0,0 @@
|
|
1
|
-
var Rx = require('./rx');
|
2
|
-
require('./rx.aggregates');
|
3
|
-
require('./rx.backpressure');
|
4
|
-
require('./rx.async');
|
5
|
-
require('./rx.binding');
|
6
|
-
require('./rx.coincidence');
|
7
|
-
require('./rx.experimental');
|
8
|
-
require('./rx.joinpatterns');
|
9
|
-
require('./rx.time');
|
10
|
-
require('./rx.virtualtime');
|
11
|
-
require('./rx.testing');
|
12
|
-
|
13
|
-
// Add specific Node functions
|
14
|
-
var EventEmitter = require('events').EventEmitter,
|
15
|
-
Observable = Rx.Observable;
|
16
|
-
|
17
|
-
Rx.Node = {
|
18
|
-
/**
|
19
|
-
* @deprecated Use Rx.Observable.fromCallback from rx.async.js instead.
|
20
|
-
*
|
21
|
-
* Converts a callback function to an observable sequence.
|
22
|
-
*
|
23
|
-
* @param {Function} func Function to convert to an asynchronous function.
|
24
|
-
* @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
|
25
|
-
* @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
|
26
|
-
* @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
|
27
|
-
* @returns {Function} Asynchronous function.
|
28
|
-
*/
|
29
|
-
fromCallback: function (func, scheduler, context, selector) {
|
30
|
-
return Observable.fromCallback(func, scheduler, context, selector);
|
31
|
-
},
|
32
|
-
|
33
|
-
/**
|
34
|
-
* @deprecated Use Rx.Observable.fromNodeCallback from rx.async.js instead.
|
35
|
-
*
|
36
|
-
* Converts a Node.js callback style function to an observable sequence. This must be in function (err, ...) format.
|
37
|
-
*
|
38
|
-
* @param {Function} func The function to call
|
39
|
-
* @param {Scheduler} [scheduler] Scheduler to run the function on. If not specified, defaults to Scheduler.timeout.
|
40
|
-
* @param {Mixed} [context] The context for the func parameter to be executed. If not specified, defaults to undefined.
|
41
|
-
* @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
|
42
|
-
* @returns {Function} An async function which when applied, returns an observable sequence with the callback arguments as an array.
|
43
|
-
*/
|
44
|
-
fromNodeCallback: function (func, scheduler, context, selector) {
|
45
|
-
return Observable.fromNodeCallback(func, scheduler, context, selector);
|
46
|
-
},
|
47
|
-
|
48
|
-
/**
|
49
|
-
* @deprecated Use Rx.Observable.fromNodeCallback from rx.async.js instead.
|
50
|
-
*
|
51
|
-
* Handles an event from the given EventEmitter as an observable sequence.
|
52
|
-
*
|
53
|
-
* @param {EventEmitter} eventEmitter The EventEmitter to subscribe to the given event.
|
54
|
-
* @param {String} eventName The event name to subscribe
|
55
|
-
* @param {Function} [selector] A selector which takes the arguments from the event handler to produce a single item to yield on next.
|
56
|
-
* @returns {Observable} An observable sequence generated from the named event from the given EventEmitter. The data will be returned as an array of arguments to the handler.
|
57
|
-
*/
|
58
|
-
fromEvent: function (eventEmitter, eventName, selector) {
|
59
|
-
return Observable.fromEvent(eventEmitter, eventName, selector);
|
60
|
-
},
|
61
|
-
|
62
|
-
/**
|
63
|
-
* Converts the given observable sequence to an event emitter with the given event name.
|
64
|
-
* The errors are handled on the 'error' event and completion on the 'end' event.
|
65
|
-
* @param {Observable} observable The observable sequence to convert to an EventEmitter.
|
66
|
-
* @param {String} eventName The event name to emit onNext calls.
|
67
|
-
* @returns {EventEmitter} An EventEmitter which emits the given eventName for each onNext call in addition to 'error' and 'end' events.
|
68
|
-
* You must call publish in order to invoke the subscription on the Observable sequuence.
|
69
|
-
*/
|
70
|
-
toEventEmitter: function (observable, eventName) {
|
71
|
-
var e = new EventEmitter();
|
72
|
-
|
73
|
-
// Used to publish the events from the observable
|
74
|
-
e.publish = function () {
|
75
|
-
e.subscription = observable.subscribe(
|
76
|
-
function (x) {
|
77
|
-
e.emit(eventName, x);
|
78
|
-
},
|
79
|
-
function (err) {
|
80
|
-
e.emit('error', err);
|
81
|
-
},
|
82
|
-
function () {
|
83
|
-
e.emit('end');
|
84
|
-
});
|
85
|
-
};
|
86
|
-
|
87
|
-
return e;
|
88
|
-
},
|
89
|
-
|
90
|
-
/**
|
91
|
-
* Converts a flowing stream to an Observable sequence.
|
92
|
-
* @param {Stream} stream A stream to convert to a observable sequence.
|
93
|
-
* @returns {Observable} An observable sequence which fires on each 'data' event as well as handling 'error' and 'end' events.
|
94
|
-
*/
|
95
|
-
fromStream: function (stream) {
|
96
|
-
return Observable.create(function (observer) {
|
97
|
-
function dataHandler (data) {
|
98
|
-
observer.onNext(data);
|
99
|
-
}
|
100
|
-
|
101
|
-
function errorHandler (err) {
|
102
|
-
observer.onError(err);
|
103
|
-
}
|
104
|
-
|
105
|
-
function endHandler () {
|
106
|
-
observer.onCompleted();
|
107
|
-
}
|
108
|
-
|
109
|
-
stream.addListener('data', dataHandler);
|
110
|
-
stream.addListener('error', errorHandler);
|
111
|
-
stream.addListener('end', endHandler);
|
112
|
-
|
113
|
-
return function () {
|
114
|
-
stream.removeListener('data', dataHandler);
|
115
|
-
stream.removeListener('error', errorHandler);
|
116
|
-
stream.removeListener('end', endHandler);
|
117
|
-
};
|
118
|
-
}).publish().refCount();
|
119
|
-
},
|
120
|
-
|
121
|
-
/**
|
122
|
-
* Writes an observable sequence to a stream
|
123
|
-
* @param {Observable} observable Observable sequence to write to a stream.
|
124
|
-
* @param {Stream} stream The stream to write to.
|
125
|
-
* @param {String} [encoding] The encoding of the item to write.
|
126
|
-
* @returns {Disposable} The subscription handle.
|
127
|
-
*/
|
128
|
-
writeToStream: function (observable, stream, encoding) {
|
129
|
-
return observable.subscribe(
|
130
|
-
function (x) {
|
131
|
-
stream.write(String(x), encoding);
|
132
|
-
},
|
133
|
-
function (err) {
|
134
|
-
stream.emit('error', err);
|
135
|
-
}, function () {
|
136
|
-
// Hack check because STDIO is not closable
|
137
|
-
!stream._isStdio && stream.end();
|
138
|
-
});
|
139
|
-
}
|
140
|
-
};
|
141
|
-
|
142
|
-
module.exports = Rx;
|