diff --git a/Gruntfile.js b/Gruntfile.js
index 290db25..06909a4 100644
--- a/Gruntfile.js
+++ b/Gruntfile.js
@@ -37,6 +37,7 @@ module.exports = function (grunt) {
'src/headers/license.js',
'src/headers/intro.js',
'src/internal/trycatch.js',
+ 'src/internal/util.js',
'src/module.js',
'src/factory.js',
'src/observeonscope.js',
@@ -53,6 +54,7 @@ module.exports = function (grunt) {
'src/headers/license.js',
'src/headers/intro.lite.js',
'src/internal/trycatch.js',
+ 'src/internal/util.js',
'src/module.js',
'src/factory.js',
'src/observeonscope.js',
@@ -69,6 +71,7 @@ module.exports = function (grunt) {
'src/headers/license.js',
'src/headers/intro.lite.compat.js',
'src/internal/trycatch.js',
+ 'src/internal/util.js',
'src/module.js',
'src/factory.js',
'src/observeonscope.js',
diff --git a/dist/rx.angular.js b/dist/rx.angular.js
index ae19246..d05c648 100644
--- a/dist/rx.angular.js
+++ b/dist/rx.angular.js
@@ -55,6 +55,14 @@ function thrower(e) {
throw e;
}
+var RxNg = RxNg || {};
+
+RxNg.inherits = function (child, parent) {
+ function __() { this.constructor = child; }
+ __.prototype = parent.prototype;
+ child.prototype = new __();
+ };
+
/**
* @ngdoc overview
* @name rx
@@ -89,53 +97,28 @@ function thrower(e) {
rxModule.factory('rx', ['$window', function($window) {
$window.Rx || ($window.Rx = Rx);
- var CreateObservableFunction = (function(__super__) {
- Rx.internals.inherits(CreateObservableFunction, __super__);
- function CreateObservableFunction(self, name, fn) {
- this._self = self;
- this._name = name;
- this._fn = fn;
- __super__.call(this);
- }
-
- CreateObservableFunction.prototype.subscribeCore = function (o) {
- var fn = this._fn;
- this._self[this._name] = function () {
+ Rx.createObservableFunction = function (self, functionName, listener) {
+ var subscribeCore = function (o) {
+ self[functionName] = function () {
var len = arguments.length, args = new Array(len);
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
- if (angular.isFunction(fn)) {
- var result = tryCatch(fn).apply(this, args);
- if (result === errorObj) { return o.onError(result.e); }
- o.onNext(result);
+ if (angular.isFunction(listener)) {
+ var result = tryCatch(listener).apply(this, args);
+ if (result === errorObj) { return o.error(result.e); }
+ o.next(result);
} else if (args.length === 1) {
- o.onNext(args[0]);
+ o.next(args[0]);
} else {
- o.onNext(args);
+ o.next(args);
}
};
- return new InnerDisposable(this._self, this._name);
- };
-
- function InnerDisposable(self, name) {
- this._self = self;
- this._name = name;
- this.isDisposed = false;
- }
-
- InnerDisposable.prototype.dispose = function () {
- if (!this.isDisposed) {
- this.isDisposed = true;
- delete this._self[this._name];
- }
+ return function() {
+ delete self[functionName];
+ };
};
-
- return CreateObservableFunction;
- }(Rx.ObservableBase));
-
- Rx.createObservableFunction = function (self, functionName, listener) {
- return new CreateObservableFunction(self, functionName, listener).publish().refCount();
+ return Rx.Observable.create(subscribeCore).publish().refCount();
};
return $window.Rx;
@@ -160,7 +143,7 @@ function thrower(e) {
*/
rxModule.factory('observeOnScope', ['rx', function(rx) {
var ObserveOnScope = (function(__super__) {
- rx.internals.inherits(ObserveOnScope, __super__);
+ RxNg.inherits(ObserveOnScope, __super__);
function ObserveOnScope(scope, expr, eq) {
this._scope = scope;
this._expr = expr;
@@ -209,7 +192,7 @@ function thrower(e) {
.takeWhile(function () {
return !$scope.$$destroyed;
})
- .tap(
+ .do(
function (data){
($scope.$$phase || $scope.$root.$$phase) ?
onNext(data) :
@@ -267,14 +250,14 @@ function thrower(e) {
return rx.Observable.create(function (observer) {
// Create function to handle old and new Value
function listener (newValue, oldValue) {
- observer.onNext({ oldValue: oldValue, newValue: newValue });
+ observer.next({ oldValue: oldValue, newValue: newValue });
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watch(watchExpression, listener, objectEquality));
+ var disposable = new rx.Subscription(scope.$watch(watchExpression, listener, objectEquality));
scope.$on('$destroy', function(){
- disposable.dispose();
+ disposable.unsubscribe();
});
return disposable;
@@ -319,7 +302,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchCollection(watchExpression, listener));
+ var disposable = new rx.Subscription(scope.$watchCollection(watchExpression, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -367,7 +350,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchGroup(watchExpressions, listener));
+ var disposable = new rx.Subscription(scope.$watchGroup(watchExpressions, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -415,17 +398,17 @@ function thrower(e) {
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
if (angular.isFunction(selector)) {
var result = tryCatch(selector).apply(null, args);
- if (result === errorObj) { return observer.onError(result.e); }
- observer.onNext(result);
+ if (result === errorObj) { return observer.error(result.e); }
+ observer.next(result);
} else if (args.length === 1) {
- observer.onNext(args[0]);
+ observer.next(args[0]);
} else {
- observer.onNext(args);
+ observer.next(args);
}
}
// Returns function which disconnects from the event binding
- var disposable = rx.Disposable.create(scope.$on(eventName, listener));
+ var disposable = new rx.Subscription(scope.$on(eventName, listener));
scope.$on('$destroy', function(){ disposable.dispose(); });
@@ -448,7 +431,7 @@ function thrower(e) {
* @name rx.$rootScope.$createObservableFunction
*
* @description
- * Provides a method to create obsersables from functions.
+ * Provides a method to create observables from functions.
*/
'$createObservableFunction': {
/**
@@ -495,7 +478,10 @@ function thrower(e) {
'$digestObservables': {
value: function(observables) {
var scope = this;
- return rx.Observable.pairs(observables)
+ var keyValuePairs = Object.keys(observables).map(function(key) {
+ return [key, observables[key]]
+ });
+ return rx.Observable.from(keyValuePairs)
.flatMap(function(pair) {
return pair[1].digest(scope, pair[0])
.map(function(val) {
@@ -526,33 +512,8 @@ function thrower(e) {
rxModule.run(['$parse', function($parse) {
- var DigestObservable = (function(__super__) {
- Rx.internals.inherits(DigestObservable, __super__);
- function DigestObservable(source, $scope, prop) {
- this.source = source;
- this.$scope = $scope;
- this.prop = prop;
- __super__.call(this);
- }
-
- DigestObservable.prototype.subscribeCore = function (o) {
- var propSetter = $parse(this.prop).assign;
- if (!propSetter) {
- return o.onError(new Error('Property or expression is not assignable.'));
- }
-
- var m = new Rx.SingleAssignmentDisposable();
- m.setDisposable(this.source.subscribe(new DigestObserver(o, this.$scope, propSetter)));
- this.$scope.$on('$destroy', function () { m.dispose(); });
-
- return m;
- };
-
- return DigestObservable;
- }(Rx.ObservableBase));
-
var DigestObserver = (function(__super__) {
- Rx.internals.inherits(DigestObserver, __super__);
+ RxNg.inherits(DigestObserver, __super__);
function DigestObserver(o, $scope, propSetter) {
this.o = o;
this.$scope = $scope;
@@ -569,16 +530,30 @@ function thrower(e) {
} else {
this.propSetter(this.$scope, x);
}
- this.o.onNext(x);
+ this.o.next(x);
};
- DigestObserver.prototype.error = function (e) { this.o.onError(e); };
- DigestObserver.prototype.completed = function () { this.o.onCompleted(); };
+ DigestObserver.prototype.error = function (e) { this.o.error(e); };
+ DigestObserver.prototype.completed = function () { this.o.completed(); };
return DigestObserver;
- }(Rx.internals.AbstractObserver));
+ }(Rx.Subscriber));
Rx.Observable.prototype.digest = function($scope, prop) {
- return new DigestObservable(this, $scope, prop);
+ var self = this;
+
+ var subscribeCore = function (o) {
+ var propSetter = $parse(prop).assign;
+ if (!propSetter) {
+ return o.error(new Error('Property or expression is not assignable.'));
+ }
+
+ var m = self.subscribe(new DigestObserver(o, $scope, propSetter));
+ $scope.$on('$destroy', function () { m.unsubscribe(); });
+
+ return m;
+ };
+
+ return Rx.Observable.create(subscribeCore);
};
}]);
@@ -588,7 +563,7 @@ function thrower(e) {
__super__.call(this);
}
- Rx.internals.inherits(ScopeScheduler, __super__);
+ RxNg.inherits(ScopeScheduler, __super__);
ScopeScheduler.prototype.schedule = function (state, action) {
if (this.$scope.$$destroyed) { return Rx.Disposable.empty; }
@@ -627,7 +602,7 @@ function thrower(e) {
return new Rx.BinaryDisposable(
sad,
- Rx.Disposable.create(function () { clearTimeout(id); })
+ new Rx.Subscription(function () { clearTimeout(id); })
);
};
@@ -649,7 +624,7 @@ function thrower(e) {
}
}, period);
- return Rx.Disposable.create(function () { clearInterval(id); });
+ return new Rx.Subscription(function () { clearInterval(id); });
};
return ScopeScheduler;
diff --git a/dist/rx.angular.map b/dist/rx.angular.map
index b059209..a1c2841 100644
--- a/dist/rx.angular.map
+++ b/dist/rx.angular.map
@@ -1 +1 @@
-{"version":3,"sources":["rx.angular.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","rxModule","$window","CreateObservableFunction","__super__","self","name","_self","_name","_fn","call","InnerDisposable","isDisposed","internals","inherits","prototype","subscribeCore","o","len","length","args","Array","i","result","onError","onNext","dispose","ObservableBase","createObservableFunction","functionName","listener","publish","refCount","rx","ObserveOnScope","scope","expr","eq","_scope","_expr","_eq","createListener","newValue","oldValue","$watch","watchExpression","objectEquality","Observable","safeApply","$scope","onComplete","takeWhile","$$destroyed","tap","data","$$phase","$root","$apply","error","config","$provide","decorator","$delegate","Object","defineProperties","constructor","$toObservable","value","create","observer","disposable","Disposable","$on","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","pairs","flatMap","pair","digest","map","val","observable","expression","run","$parse","DigestObservable","source","prop","propSetter","assign","Error","m","SingleAssignmentDisposable","setDisposable","subscribe","DigestObserver","next","x","_this","completed","onCompleted","AbstractObserver","ScopeScheduler","schedule","state","action","empty","sad","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":"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","file":"rx.angular.min.js"}
\ No newline at end of file
+{"version":3,"sources":["rx.angular.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","RxNg","inherits","child","parent","__","constructor","prototype","rxModule","$window","createObservableFunction","self","functionName","listener","subscribeCore","o","len","length","args","Array","i","result","error","next","Observable","create","publish","refCount","rx","ObserveOnScope","__super__","scope","expr","eq","_scope","_expr","_eq","call","createListener","newValue","oldValue","onNext","InnerDisposable","_fn","isDisposed","$watch","dispose","ObservableBase","watchExpression","objectEquality","safeApply","$scope","onError","onComplete","takeWhile","$$destroyed","data","$$phase","$root","$apply","config","$provide","decorator","$delegate","Object","defineProperties","$toObservable","value","observer","disposable","Subscription","$on","unsubscribe","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","keyValuePairs","keys","map","key","from","flatMap","pair","digest","val","observable","expression","run","$parse","DigestObserver","propSetter","x","_this","completed","Subscriber","prop","assign","Error","m","subscribe","ScopeScheduler","schedule","state","action","Disposable","empty","sad","SingleAssignmentDisposable","setDisposable","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":"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","file":"rx.angular.min.js"}
\ No newline at end of file
diff --git a/dist/rx.angular.min.js b/dist/rx.angular.min.js
index 0bd6f8c..1519f03 100644
--- a/dist/rx.angular.min.js
+++ b/dist/rx.angular.min.js
@@ -1,3 +1,3 @@
/* Copyright (c) Microsoft. All rights reserved. See License.txt in the project root for license information.*/
-!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=d.module("rx",[]);j.factory("rx",["$window",function(a){a.Rx||(a.Rx=c);var b=function(a){function b(b,c,d){this._self=b,this._name=c,this._fn=d,a.call(this)}function e(a,b){this._self=a,this._name=b,this.isDisposed=!1}return c.internals.inherits(b,a),b.prototype.subscribeCore=function(a){var b=this._fn;return this._self[this._name]=function(){for(var c=arguments.length,e=new Array(c),f=0;c>f;f++)e[f]=arguments[f];if(d.isFunction(b)){var h=g(b).apply(this,e);if(h===i)return a.onError(h.e);a.onNext(h)}else 1===e.length?a.onNext(e[0]):a.onNext(e)},new e(this._self,this._name)},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,delete this._self[this._name])},b}(c.ObservableBase);return c.createObservableFunction=function(a,c,d){return new b(a,c,d).publish().refCount()},a.Rx}]),j.factory("observeOnScope",["rx",function(a){var b=function(b){function c(a,c,d){this._scope=a,this._expr=c,this._eq=d,b.call(this)}function d(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function e(a){this._fn=a,this.isDisposed=!1}return a.internals.inherits(c,b),c.prototype.subscribeCore=function(a){return new e(this._scope.$watch(this._expr,d(a),this._eq))},e.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},c}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}]),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed}).tap(function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},j.config(["$provide",function(a){a.decorator("$rootScope",["$delegate","rx",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.onNext({oldValue:b,newValue:a})}var g=b.Disposable.create(d.$watch(a,f,c));return d.$on("$destroy",function(){g.dispose()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.onError(h.e);f.onNext(h)}else 1===b.length?f.onNext(b[0]):f.onNext(b)}var j=b.Disposable.create(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this;return b.Observable.pairs(a).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a}])}]),j.run(["$parse",function(a){var b=function(b){function e(a,c,d){this.source=a,this.$scope=c,this.prop=d,b.call(this)}return c.internals.inherits(e,b),e.prototype.subscribeCore=function(b){var e=a(this.prop).assign;if(!e)return b.onError(new Error("Property or expression is not assignable."));var f=new c.SingleAssignmentDisposable;return f.setDisposable(this.source.subscribe(new d(b,this.$scope,e))),this.$scope.$on("$destroy",function(){f.dispose()}),f},e}(c.ObservableBase),d=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return c.internals.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.onNext(a)},b.prototype.error=function(a){this.o.onError(a)},b.prototype.completed=function(){this.o.onCompleted()},b}(c.internals.AbstractObserver);c.Observable.prototype.digest=function(a,c){return new b(this,a,c)}}]);c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return c.internals.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,c.Disposable.create(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return c.Disposable.create(function(){clearInterval(g)})},b}(c.Scheduler);return c});
+!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=j||{};j.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c};var k=d.module("rx",[]);k.factory("rx",["$window",function(a){return a.Rx||(a.Rx=c),c.createObservableFunction=function(a,b,e){var f=function(c){return a[b]=function(){for(var a=arguments.length,b=new Array(a),f=0;a>f;f++)b[f]=arguments[f];if(d.isFunction(e)){var h=g(e).apply(this,b);if(h===i)return c.error(h.e);c.next(h)}else 1===b.length?c.next(b[0]):c.next(b)},function(){delete a[b]}};return c.Observable.create(f).publish().refCount()},a.Rx}]),k.factory("observeOnScope",["rx",function(a){var b=function(a){function b(b,c,d){this._scope=b,this._expr=c,this._eq=d,a.call(this)}function c(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function d(a){this._fn=a,this.isDisposed=!1}return j.inherits(b,a),b.prototype.subscribeCore=function(a){return new d(this._scope.$watch(this._expr,c(a),this._eq))},d.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},b}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}]),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed})["do"](function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},k.config(["$provide",function(a){a.decorator("$rootScope",["$delegate","rx",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.next({oldValue:b,newValue:a})}var g=new b.Subscription(d.$watch(a,f,c));return d.$on("$destroy",function(){g.unsubscribe()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.error(h.e);f.next(h)}else 1===b.length?f.next(b[0]):f.next(b)}var j=new b.Subscription(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this,d=Object.keys(a).map(function(b){return[b,a[b]]});return b.Observable.from(d).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a}])}]),k.run(["$parse",function(a){var b=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return j.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.next(a)},b.prototype.error=function(a){this.o.error(a)},b.prototype.completed=function(){this.o.completed()},b}(c.Subscriber);c.Observable.prototype.digest=function(d,e){var f=this,g=function(c){var g=a(e).assign;if(!g)return c.error(new Error("Property or expression is not assignable."));var h=f.subscribe(new b(c,d,g));return d.$on("$destroy",function(){h.unsubscribe()}),h};return c.Observable.create(g)}}]);c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return j.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,new c.Subscription(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return new c.Subscription(function(){clearInterval(g)})},b}(c.Scheduler);return c});
//# sourceMappingURL=rx.angular.map
\ No newline at end of file
diff --git a/modules/rx.lite.angular.compat/rx.lite.angular.compat.js b/modules/rx.lite.angular.compat/rx.lite.angular.compat.js
index b483d21..dfcbc0d 100644
--- a/modules/rx.lite.angular.compat/rx.lite.angular.compat.js
+++ b/modules/rx.lite.angular.compat/rx.lite.angular.compat.js
@@ -55,6 +55,14 @@ function thrower(e) {
throw e;
}
+var RxNg = RxNg || {};
+
+RxNg.inherits = function (child, parent) {
+ function __() { this.constructor = child; }
+ __.prototype = parent.prototype;
+ child.prototype = new __();
+ };
+
/**
* @ngdoc overview
* @name rx
@@ -89,53 +97,28 @@ function thrower(e) {
rxModule.factory('rx', function($window) {
$window.Rx || ($window.Rx = Rx);
- var CreateObservableFunction = (function(__super__) {
- Rx.internals.inherits(CreateObservableFunction, __super__);
- function CreateObservableFunction(self, name, fn) {
- this._self = self;
- this._name = name;
- this._fn = fn;
- __super__.call(this);
- }
-
- CreateObservableFunction.prototype.subscribeCore = function (o) {
- var fn = this._fn;
- this._self[this._name] = function () {
+ Rx.createObservableFunction = function (self, functionName, listener) {
+ var subscribeCore = function (o) {
+ self[functionName] = function () {
var len = arguments.length, args = new Array(len);
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
- if (angular.isFunction(fn)) {
- var result = tryCatch(fn).apply(this, args);
- if (result === errorObj) { return o.onError(result.e); }
- o.onNext(result);
+ if (angular.isFunction(listener)) {
+ var result = tryCatch(listener).apply(this, args);
+ if (result === errorObj) { return o.error(result.e); }
+ o.next(result);
} else if (args.length === 1) {
- o.onNext(args[0]);
+ o.next(args[0]);
} else {
- o.onNext(args);
+ o.next(args);
}
};
- return new InnerDisposable(this._self, this._name);
- };
-
- function InnerDisposable(self, name) {
- this._self = self;
- this._name = name;
- this.isDisposed = false;
- }
-
- InnerDisposable.prototype.dispose = function () {
- if (!this.isDisposed) {
- this.isDisposed = true;
- delete this._self[this._name];
- }
+ return function() {
+ delete self[functionName];
+ };
};
-
- return CreateObservableFunction;
- }(Rx.ObservableBase));
-
- Rx.createObservableFunction = function (self, functionName, listener) {
- return new CreateObservableFunction(self, functionName, listener).publish().refCount();
+ return Rx.Observable.create(subscribeCore).publish().refCount();
};
return $window.Rx;
@@ -160,7 +143,7 @@ function thrower(e) {
*/
rxModule.factory('observeOnScope', function(rx) {
var ObserveOnScope = (function(__super__) {
- rx.internals.inherits(ObserveOnScope, __super__);
+ RxNg.inherits(ObserveOnScope, __super__);
function ObserveOnScope(scope, expr, eq) {
this._scope = scope;
this._expr = expr;
@@ -209,7 +192,7 @@ function thrower(e) {
.takeWhile(function () {
return !$scope.$$destroyed;
})
- .tap(
+ .do(
function (data){
($scope.$$phase || $scope.$root.$$phase) ?
onNext(data) :
@@ -267,14 +250,14 @@ function thrower(e) {
return rx.Observable.create(function (observer) {
// Create function to handle old and new Value
function listener (newValue, oldValue) {
- observer.onNext({ oldValue: oldValue, newValue: newValue });
+ observer.next({ oldValue: oldValue, newValue: newValue });
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watch(watchExpression, listener, objectEquality));
+ var disposable = new rx.Subscription(scope.$watch(watchExpression, listener, objectEquality));
scope.$on('$destroy', function(){
- disposable.dispose();
+ disposable.unsubscribe();
});
return disposable;
@@ -319,7 +302,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchCollection(watchExpression, listener));
+ var disposable = new rx.Subscription(scope.$watchCollection(watchExpression, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -367,7 +350,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchGroup(watchExpressions, listener));
+ var disposable = new rx.Subscription(scope.$watchGroup(watchExpressions, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -415,17 +398,17 @@ function thrower(e) {
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
if (angular.isFunction(selector)) {
var result = tryCatch(selector).apply(null, args);
- if (result === errorObj) { return observer.onError(result.e); }
- observer.onNext(result);
+ if (result === errorObj) { return observer.error(result.e); }
+ observer.next(result);
} else if (args.length === 1) {
- observer.onNext(args[0]);
+ observer.next(args[0]);
} else {
- observer.onNext(args);
+ observer.next(args);
}
}
// Returns function which disconnects from the event binding
- var disposable = rx.Disposable.create(scope.$on(eventName, listener));
+ var disposable = new rx.Subscription(scope.$on(eventName, listener));
scope.$on('$destroy', function(){ disposable.dispose(); });
@@ -448,7 +431,7 @@ function thrower(e) {
* @name rx.$rootScope.$createObservableFunction
*
* @description
- * Provides a method to create obsersables from functions.
+ * Provides a method to create observables from functions.
*/
'$createObservableFunction': {
/**
@@ -495,7 +478,10 @@ function thrower(e) {
'$digestObservables': {
value: function(observables) {
var scope = this;
- return rx.Observable.pairs(observables)
+ var keyValuePairs = Object.keys(observables).map(function(key) {
+ return [key, observables[key]]
+ });
+ return rx.Observable.from(keyValuePairs)
.flatMap(function(pair) {
return pair[1].digest(scope, pair[0])
.map(function(val) {
@@ -526,33 +512,8 @@ function thrower(e) {
rxModule.run(function($parse) {
- var DigestObservable = (function(__super__) {
- Rx.internals.inherits(DigestObservable, __super__);
- function DigestObservable(source, $scope, prop) {
- this.source = source;
- this.$scope = $scope;
- this.prop = prop;
- __super__.call(this);
- }
-
- DigestObservable.prototype.subscribeCore = function (o) {
- var propSetter = $parse(this.prop).assign;
- if (!propSetter) {
- return o.onError(new Error('Property or expression is not assignable.'));
- }
-
- var m = new Rx.SingleAssignmentDisposable();
- m.setDisposable(this.source.subscribe(new DigestObserver(o, this.$scope, propSetter)));
- this.$scope.$on('$destroy', function () { m.dispose(); });
-
- return m;
- };
-
- return DigestObservable;
- }(Rx.ObservableBase));
-
var DigestObserver = (function(__super__) {
- Rx.internals.inherits(DigestObserver, __super__);
+ RxNg.inherits(DigestObserver, __super__);
function DigestObserver(o, $scope, propSetter) {
this.o = o;
this.$scope = $scope;
@@ -569,16 +530,30 @@ function thrower(e) {
} else {
this.propSetter(this.$scope, x);
}
- this.o.onNext(x);
+ this.o.next(x);
};
- DigestObserver.prototype.error = function (e) { this.o.onError(e); };
- DigestObserver.prototype.completed = function () { this.o.onCompleted(); };
+ DigestObserver.prototype.error = function (e) { this.o.error(e); };
+ DigestObserver.prototype.completed = function () { this.o.completed(); };
return DigestObserver;
- }(Rx.internals.AbstractObserver));
+ }(Rx.Subscriber));
Rx.Observable.prototype.digest = function($scope, prop) {
- return new DigestObservable(this, $scope, prop);
+ var self = this;
+
+ var subscribeCore = function (o) {
+ var propSetter = $parse(prop).assign;
+ if (!propSetter) {
+ return o.error(new Error('Property or expression is not assignable.'));
+ }
+
+ var m = self.subscribe(new DigestObserver(o, $scope, propSetter));
+ $scope.$on('$destroy', function () { m.unsubscribe(); });
+
+ return m;
+ };
+
+ return Rx.Observable.create(subscribeCore);
};
});
@@ -588,7 +563,7 @@ function thrower(e) {
__super__.call(this);
}
- Rx.internals.inherits(ScopeScheduler, __super__);
+ RxNg.inherits(ScopeScheduler, __super__);
ScopeScheduler.prototype.schedule = function (state, action) {
if (this.$scope.$$destroyed) { return Rx.Disposable.empty; }
@@ -627,7 +602,7 @@ function thrower(e) {
return new Rx.BinaryDisposable(
sad,
- Rx.Disposable.create(function () { clearTimeout(id); })
+ new Rx.Subscription(function () { clearTimeout(id); })
);
};
@@ -649,7 +624,7 @@ function thrower(e) {
}
}, period);
- return Rx.Disposable.create(function () { clearInterval(id); });
+ return new Rx.Subscription(function () { clearInterval(id); });
};
return ScopeScheduler;
diff --git a/modules/rx.lite.angular.compat/rx.lite.angular.compat.map b/modules/rx.lite.angular.compat/rx.lite.angular.compat.map
index 2f76c84..476cce9 100644
--- a/modules/rx.lite.angular.compat/rx.lite.angular.compat.map
+++ b/modules/rx.lite.angular.compat/rx.lite.angular.compat.map
@@ -1 +1 @@
-{"version":3,"sources":["rx.lite.angular.compat.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","rxModule","$window","CreateObservableFunction","__super__","self","name","_self","_name","_fn","call","InnerDisposable","isDisposed","internals","inherits","prototype","subscribeCore","o","len","length","args","Array","i","result","onError","onNext","dispose","ObservableBase","createObservableFunction","functionName","listener","publish","refCount","rx","ObserveOnScope","scope","expr","eq","_scope","_expr","_eq","createListener","newValue","oldValue","$watch","watchExpression","objectEquality","Observable","safeApply","$scope","onComplete","takeWhile","$$destroyed","tap","data","$$phase","$root","$apply","error","config","$provide","decorator","$delegate","Object","defineProperties","constructor","$toObservable","value","create","observer","disposable","Disposable","$on","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","pairs","flatMap","pair","digest","map","val","observable","expression","run","$parse","DigestObservable","source","prop","propSetter","assign","Error","m","SingleAssignmentDisposable","setDisposable","subscribe","DigestObserver","next","x","_this","completed","onCompleted","AbstractObserver","ScopeScheduler","schedule","state","action","empty","sad","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":"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","file":"rx.lite.angular.compat.min.js"}
\ No newline at end of file
+{"version":3,"sources":["rx.lite.angular.compat.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","RxNg","inherits","child","parent","__","constructor","prototype","rxModule","$window","createObservableFunction","self","functionName","listener","subscribeCore","o","len","length","args","Array","i","result","error","next","Observable","create","publish","refCount","rx","ObserveOnScope","__super__","scope","expr","eq","_scope","_expr","_eq","call","createListener","newValue","oldValue","onNext","InnerDisposable","_fn","isDisposed","$watch","dispose","ObservableBase","watchExpression","objectEquality","safeApply","$scope","onError","onComplete","takeWhile","$$destroyed","data","$$phase","$root","$apply","config","$provide","decorator","$delegate","Object","defineProperties","$toObservable","value","observer","disposable","Subscription","$on","unsubscribe","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","keyValuePairs","keys","map","key","from","flatMap","pair","digest","val","observable","expression","run","$parse","DigestObserver","propSetter","x","_this","completed","Subscriber","prop","assign","Error","m","subscribe","ScopeScheduler","schedule","state","action","Disposable","empty","sad","SingleAssignmentDisposable","setDisposable","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":"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","file":"rx.lite.angular.compat.min.js"}
\ No newline at end of file
diff --git a/modules/rx.lite.angular.compat/rx.lite.angular.compat.min.js b/modules/rx.lite.angular.compat/rx.lite.angular.compat.min.js
index 83f9f72..a0a93b5 100644
--- a/modules/rx.lite.angular.compat/rx.lite.angular.compat.min.js
+++ b/modules/rx.lite.angular.compat/rx.lite.angular.compat.min.js
@@ -1,3 +1,3 @@
/* Copyright (c) Microsoft. All rights reserved. See License.txt in the project root for license information.*/
-!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx-lite-compat","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx-lite-compat"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=d.module("rx",[]);j.factory("rx",function(a){a.Rx||(a.Rx=c);var b=function(a){function b(b,c,d){this._self=b,this._name=c,this._fn=d,a.call(this)}function e(a,b){this._self=a,this._name=b,this.isDisposed=!1}return c.internals.inherits(b,a),b.prototype.subscribeCore=function(a){var b=this._fn;return this._self[this._name]=function(){for(var c=arguments.length,e=new Array(c),f=0;c>f;f++)e[f]=arguments[f];if(d.isFunction(b)){var h=g(b).apply(this,e);if(h===i)return a.onError(h.e);a.onNext(h)}else 1===e.length?a.onNext(e[0]):a.onNext(e)},new e(this._self,this._name)},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,delete this._self[this._name])},b}(c.ObservableBase);return c.createObservableFunction=function(a,c,d){return new b(a,c,d).publish().refCount()},a.Rx}),j.factory("observeOnScope",function(a){var b=function(b){function c(a,c,d){this._scope=a,this._expr=c,this._eq=d,b.call(this)}function d(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function e(a){this._fn=a,this.isDisposed=!1}return a.internals.inherits(c,b),c.prototype.subscribeCore=function(a){return new e(this._scope.$watch(this._expr,d(a),this._eq))},e.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},c}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed}).tap(function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},j.config(function(a){a.decorator("$rootScope",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.onNext({oldValue:b,newValue:a})}var g=b.Disposable.create(d.$watch(a,f,c));return d.$on("$destroy",function(){g.dispose()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.onError(h.e);f.onNext(h)}else 1===b.length?f.onNext(b[0]):f.onNext(b)}var j=b.Disposable.create(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this;return b.Observable.pairs(a).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a})}),j.run(function(a){var b=function(b){function e(a,c,d){this.source=a,this.$scope=c,this.prop=d,b.call(this)}return c.internals.inherits(e,b),e.prototype.subscribeCore=function(b){var e=a(this.prop).assign;if(!e)return b.onError(new Error("Property or expression is not assignable."));var f=new c.SingleAssignmentDisposable;return f.setDisposable(this.source.subscribe(new d(b,this.$scope,e))),this.$scope.$on("$destroy",function(){f.dispose()}),f},e}(c.ObservableBase),d=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return c.internals.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.onNext(a)},b.prototype.error=function(a){this.o.onError(a)},b.prototype.completed=function(){this.o.onCompleted()},b}(c.internals.AbstractObserver);c.Observable.prototype.digest=function(a,c){return new b(this,a,c)}});c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return c.internals.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,c.Disposable.create(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return c.Disposable.create(function(){clearInterval(g)})},b}(c.Scheduler);return c});
+!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx-lite-compat","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx-lite-compat"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=j||{};j.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c};var k=d.module("rx",[]);k.factory("rx",function(a){return a.Rx||(a.Rx=c),c.createObservableFunction=function(a,b,e){var f=function(c){return a[b]=function(){for(var a=arguments.length,b=new Array(a),f=0;a>f;f++)b[f]=arguments[f];if(d.isFunction(e)){var h=g(e).apply(this,b);if(h===i)return c.error(h.e);c.next(h)}else 1===b.length?c.next(b[0]):c.next(b)},function(){delete a[b]}};return c.Observable.create(f).publish().refCount()},a.Rx}),k.factory("observeOnScope",function(a){var b=function(a){function b(b,c,d){this._scope=b,this._expr=c,this._eq=d,a.call(this)}function c(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function d(a){this._fn=a,this.isDisposed=!1}return j.inherits(b,a),b.prototype.subscribeCore=function(a){return new d(this._scope.$watch(this._expr,c(a),this._eq))},d.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},b}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed})["do"](function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},k.config(function(a){a.decorator("$rootScope",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.next({oldValue:b,newValue:a})}var g=new b.Subscription(d.$watch(a,f,c));return d.$on("$destroy",function(){g.unsubscribe()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.error(h.e);f.next(h)}else 1===b.length?f.next(b[0]):f.next(b)}var j=new b.Subscription(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this,d=Object.keys(a).map(function(b){return[b,a[b]]});return b.Observable.from(d).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a})}),k.run(function(a){var b=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return j.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.next(a)},b.prototype.error=function(a){this.o.error(a)},b.prototype.completed=function(){this.o.completed()},b}(c.Subscriber);c.Observable.prototype.digest=function(d,e){var f=this,g=function(c){var g=a(e).assign;if(!g)return c.error(new Error("Property or expression is not assignable."));var h=f.subscribe(new b(c,d,g));return d.$on("$destroy",function(){h.unsubscribe()}),h};return c.Observable.create(g)}});c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return j.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,new c.Subscription(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return new c.Subscription(function(){clearInterval(g)})},b}(c.Scheduler);return c});
//# sourceMappingURL=rx.lite.angular.compat.map
\ No newline at end of file
diff --git a/modules/rx.lite.angular/rx.lite.angular.js b/modules/rx.lite.angular/rx.lite.angular.js
index 71ad224..187df5c 100644
--- a/modules/rx.lite.angular/rx.lite.angular.js
+++ b/modules/rx.lite.angular/rx.lite.angular.js
@@ -55,6 +55,14 @@ function thrower(e) {
throw e;
}
+var RxNg = RxNg || {};
+
+RxNg.inherits = function (child, parent) {
+ function __() { this.constructor = child; }
+ __.prototype = parent.prototype;
+ child.prototype = new __();
+ };
+
/**
* @ngdoc overview
* @name rx
@@ -89,53 +97,28 @@ function thrower(e) {
rxModule.factory('rx', function($window) {
$window.Rx || ($window.Rx = Rx);
- var CreateObservableFunction = (function(__super__) {
- Rx.internals.inherits(CreateObservableFunction, __super__);
- function CreateObservableFunction(self, name, fn) {
- this._self = self;
- this._name = name;
- this._fn = fn;
- __super__.call(this);
- }
-
- CreateObservableFunction.prototype.subscribeCore = function (o) {
- var fn = this._fn;
- this._self[this._name] = function () {
+ Rx.createObservableFunction = function (self, functionName, listener) {
+ var subscribeCore = function (o) {
+ self[functionName] = function () {
var len = arguments.length, args = new Array(len);
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
- if (angular.isFunction(fn)) {
- var result = tryCatch(fn).apply(this, args);
- if (result === errorObj) { return o.onError(result.e); }
- o.onNext(result);
+ if (angular.isFunction(listener)) {
+ var result = tryCatch(listener).apply(this, args);
+ if (result === errorObj) { return o.error(result.e); }
+ o.next(result);
} else if (args.length === 1) {
- o.onNext(args[0]);
+ o.next(args[0]);
} else {
- o.onNext(args);
+ o.next(args);
}
};
- return new InnerDisposable(this._self, this._name);
- };
-
- function InnerDisposable(self, name) {
- this._self = self;
- this._name = name;
- this.isDisposed = false;
- }
-
- InnerDisposable.prototype.dispose = function () {
- if (!this.isDisposed) {
- this.isDisposed = true;
- delete this._self[this._name];
- }
+ return function() {
+ delete self[functionName];
+ };
};
-
- return CreateObservableFunction;
- }(Rx.ObservableBase));
-
- Rx.createObservableFunction = function (self, functionName, listener) {
- return new CreateObservableFunction(self, functionName, listener).publish().refCount();
+ return Rx.Observable.create(subscribeCore).publish().refCount();
};
return $window.Rx;
@@ -160,7 +143,7 @@ function thrower(e) {
*/
rxModule.factory('observeOnScope', function(rx) {
var ObserveOnScope = (function(__super__) {
- rx.internals.inherits(ObserveOnScope, __super__);
+ RxNg.inherits(ObserveOnScope, __super__);
function ObserveOnScope(scope, expr, eq) {
this._scope = scope;
this._expr = expr;
@@ -209,7 +192,7 @@ function thrower(e) {
.takeWhile(function () {
return !$scope.$$destroyed;
})
- .tap(
+ .do(
function (data){
($scope.$$phase || $scope.$root.$$phase) ?
onNext(data) :
@@ -267,14 +250,14 @@ function thrower(e) {
return rx.Observable.create(function (observer) {
// Create function to handle old and new Value
function listener (newValue, oldValue) {
- observer.onNext({ oldValue: oldValue, newValue: newValue });
+ observer.next({ oldValue: oldValue, newValue: newValue });
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watch(watchExpression, listener, objectEquality));
+ var disposable = new rx.Subscription(scope.$watch(watchExpression, listener, objectEquality));
scope.$on('$destroy', function(){
- disposable.dispose();
+ disposable.unsubscribe();
});
return disposable;
@@ -319,7 +302,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchCollection(watchExpression, listener));
+ var disposable = new rx.Subscription(scope.$watchCollection(watchExpression, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -367,7 +350,7 @@ function thrower(e) {
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchGroup(watchExpressions, listener));
+ var disposable = new rx.Subscription(scope.$watchGroup(watchExpressions, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -415,17 +398,17 @@ function thrower(e) {
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
if (angular.isFunction(selector)) {
var result = tryCatch(selector).apply(null, args);
- if (result === errorObj) { return observer.onError(result.e); }
- observer.onNext(result);
+ if (result === errorObj) { return observer.error(result.e); }
+ observer.next(result);
} else if (args.length === 1) {
- observer.onNext(args[0]);
+ observer.next(args[0]);
} else {
- observer.onNext(args);
+ observer.next(args);
}
}
// Returns function which disconnects from the event binding
- var disposable = rx.Disposable.create(scope.$on(eventName, listener));
+ var disposable = new rx.Subscription(scope.$on(eventName, listener));
scope.$on('$destroy', function(){ disposable.dispose(); });
@@ -448,7 +431,7 @@ function thrower(e) {
* @name rx.$rootScope.$createObservableFunction
*
* @description
- * Provides a method to create obsersables from functions.
+ * Provides a method to create observables from functions.
*/
'$createObservableFunction': {
/**
@@ -495,7 +478,10 @@ function thrower(e) {
'$digestObservables': {
value: function(observables) {
var scope = this;
- return rx.Observable.pairs(observables)
+ var keyValuePairs = Object.keys(observables).map(function(key) {
+ return [key, observables[key]]
+ });
+ return rx.Observable.from(keyValuePairs)
.flatMap(function(pair) {
return pair[1].digest(scope, pair[0])
.map(function(val) {
@@ -526,33 +512,8 @@ function thrower(e) {
rxModule.run(function($parse) {
- var DigestObservable = (function(__super__) {
- Rx.internals.inherits(DigestObservable, __super__);
- function DigestObservable(source, $scope, prop) {
- this.source = source;
- this.$scope = $scope;
- this.prop = prop;
- __super__.call(this);
- }
-
- DigestObservable.prototype.subscribeCore = function (o) {
- var propSetter = $parse(this.prop).assign;
- if (!propSetter) {
- return o.onError(new Error('Property or expression is not assignable.'));
- }
-
- var m = new Rx.SingleAssignmentDisposable();
- m.setDisposable(this.source.subscribe(new DigestObserver(o, this.$scope, propSetter)));
- this.$scope.$on('$destroy', function () { m.dispose(); });
-
- return m;
- };
-
- return DigestObservable;
- }(Rx.ObservableBase));
-
var DigestObserver = (function(__super__) {
- Rx.internals.inherits(DigestObserver, __super__);
+ RxNg.inherits(DigestObserver, __super__);
function DigestObserver(o, $scope, propSetter) {
this.o = o;
this.$scope = $scope;
@@ -569,16 +530,30 @@ function thrower(e) {
} else {
this.propSetter(this.$scope, x);
}
- this.o.onNext(x);
+ this.o.next(x);
};
- DigestObserver.prototype.error = function (e) { this.o.onError(e); };
- DigestObserver.prototype.completed = function () { this.o.onCompleted(); };
+ DigestObserver.prototype.error = function (e) { this.o.error(e); };
+ DigestObserver.prototype.completed = function () { this.o.completed(); };
return DigestObserver;
- }(Rx.internals.AbstractObserver));
+ }(Rx.Subscriber));
Rx.Observable.prototype.digest = function($scope, prop) {
- return new DigestObservable(this, $scope, prop);
+ var self = this;
+
+ var subscribeCore = function (o) {
+ var propSetter = $parse(prop).assign;
+ if (!propSetter) {
+ return o.error(new Error('Property or expression is not assignable.'));
+ }
+
+ var m = self.subscribe(new DigestObserver(o, $scope, propSetter));
+ $scope.$on('$destroy', function () { m.unsubscribe(); });
+
+ return m;
+ };
+
+ return Rx.Observable.create(subscribeCore);
};
});
@@ -588,7 +563,7 @@ function thrower(e) {
__super__.call(this);
}
- Rx.internals.inherits(ScopeScheduler, __super__);
+ RxNg.inherits(ScopeScheduler, __super__);
ScopeScheduler.prototype.schedule = function (state, action) {
if (this.$scope.$$destroyed) { return Rx.Disposable.empty; }
@@ -627,7 +602,7 @@ function thrower(e) {
return new Rx.BinaryDisposable(
sad,
- Rx.Disposable.create(function () { clearTimeout(id); })
+ new Rx.Subscription(function () { clearTimeout(id); })
);
};
@@ -649,7 +624,7 @@ function thrower(e) {
}
}, period);
- return Rx.Disposable.create(function () { clearInterval(id); });
+ return new Rx.Subscription(function () { clearInterval(id); });
};
return ScopeScheduler;
diff --git a/modules/rx.lite.angular/rx.lite.angular.map b/modules/rx.lite.angular/rx.lite.angular.map
index 3492627..ae6c655 100644
--- a/modules/rx.lite.angular/rx.lite.angular.map
+++ b/modules/rx.lite.angular/rx.lite.angular.map
@@ -1 +1 @@
-{"version":3,"sources":["rx.lite.angular.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","rxModule","$window","CreateObservableFunction","__super__","self","name","_self","_name","_fn","call","InnerDisposable","isDisposed","internals","inherits","prototype","subscribeCore","o","len","length","args","Array","i","result","onError","onNext","dispose","ObservableBase","createObservableFunction","functionName","listener","publish","refCount","rx","ObserveOnScope","scope","expr","eq","_scope","_expr","_eq","createListener","newValue","oldValue","$watch","watchExpression","objectEquality","Observable","safeApply","$scope","onComplete","takeWhile","$$destroyed","tap","data","$$phase","$root","$apply","error","config","$provide","decorator","$delegate","Object","defineProperties","constructor","$toObservable","value","create","observer","disposable","Disposable","$on","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","pairs","flatMap","pair","digest","map","val","observable","expression","run","$parse","DigestObservable","source","prop","propSetter","assign","Error","m","SingleAssignmentDisposable","setDisposable","subscribe","DigestObserver","next","x","_this","completed","onCompleted","AbstractObserver","ScopeScheduler","schedule","state","action","empty","sad","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":";CAEE,SAAUA,EAAMC,GAChB,GAAIC,IACFC,WAAW,EACXC,YAAY,EACZC,QAAU,EACVC,QAAU,EACVC,QAAU,EACVC,WAAa,GAGXR,EAAQE,QAAmBO,UAAWA,QAAWC,KACnDC,EAAcT,QAAmBU,WAAYA,UAAYA,QAAQC,UAAYD,QAC7EE,EAAaZ,QAAmBa,UAAWA,SAAWA,OAAOF,UAAYE,OAEzEC,GADgBF,GAAcA,EAAWF,UAAYD,GAAeA,EACvDT,QAAmBe,UAAWA,SAEzCD,GAAeA,EAAWC,SAAWD,GAAcA,EAAWP,SAAWO,IAC3EhB,EAAOgB,GAIa,kBAAXE,SAAyBA,OAAOC,IACzCD,QAAQ,UAAW,UAAW,WAAY,SAAUE,EAAIC,EAAST,GAE/D,MADAZ,GAAKoB,GAAKnB,EAAQD,EAAMY,EAASQ,EAAIC,GAC9BrB,EAAKoB,KAEY,gBAAVL,SAAsBA,QAAUA,OAAOH,SAAWD,EAClEI,OAAOH,QAAUX,EAAQD,EAAMe,OAAOH,QAASU,QAAQ,WAAYA,QAAQ,YAE3EtB,EAAKoB,GAAKnB,EAAQD,KAAUA,EAAKoB,GAAIpB,EAAKqB,UAE5CX,KAAM,SAAUO,EAAQM,EAAKH,EAAIC,EAASb,GAI5C,QAASgB,GAAcC,GACrB,MAAO,YACL,IACE,MAAOA,GAAeC,MAAMhB,KAAMiB,WAClC,MAAOC,GAEP,MADAC,GAASD,EAAIA,EACNC,IAKb,QAASC,GAASC,GAChB,IAAKV,EAAQW,WAAWD,GAAO,KAAM,IAAIE,WAAU,wBACnD,OAAOT,GAAcO,GAsJrB,QAASG,MArKX,GAAIL,IAAYD,MA0CVO,EAAWd,EAAQN,OAAO,QAW9BoB,GAASlC,QAAQ,KAAM,SAASmC,GAC9BA,EAAQhB,KAAOgB,EAAQhB,GAAKA,EAE5B,IAAIiB,GAA4B,SAASC,GAEvC,QAASD,GAAyBE,EAAMC,EAAMT,GAC5CrB,KAAK+B,MAAQF,EACb7B,KAAKgC,MAAQF,EACb9B,KAAKiC,IAAMZ,EACXO,EAAUM,KAAKlC,MAuBjB,QAASmC,GAAgBN,EAAMC,GAC7B9B,KAAK+B,MAAQF,EACb7B,KAAKgC,MAAQF,EACb9B,KAAKoC,YAAa,EAUpB,MAzCA1B,GAAG2B,UAAUC,SAASX,EAA0BC,GAQhDD,EAAyBY,UAAUC,cAAgB,SAAUC,GAC3D,GAAIpB,GAAKrB,KAAKiC,GAgBd,OAfAjC,MAAK+B,MAAM/B,KAAKgC,OAAS,WAEvB,IAAK,GADDU,GAAMzB,UAAU0B,OAAQC,EAAO,GAAIC,OAAMH,GACpCI,EAAI,EAAOJ,EAAJI,EAASA,IAAOF,EAAKE,GAAK7B,UAAU6B,EAEpD,IAAInC,EAAQW,WAAWD,GAAK,CAC1B,GAAI0B,GAAS3B,EAASC,GAAIL,MAAMhB,KAAM4C,EACtC,IAAIG,IAAW5B,EAAY,MAAOsB,GAAEO,QAAQD,EAAO7B,EACnDuB,GAAEQ,OAAOF,OACgB,KAAhBH,EAAKD,OACdF,EAAEQ,OAAOL,EAAK,IAEdH,EAAEQ,OAAOL,IAIN,GAAIT,GAAgBnC,KAAK+B,MAAO/B,KAAKgC,QAS9CG,EAAgBI,UAAUW,QAAU,WAC7BlD,KAAKoC,aACRpC,KAAKoC,YAAa,QACXpC,MAAK+B,MAAM/B,KAAKgC,SAIpBL,GACPjB,EAAGyC,eAML,OAJAzC,GAAG0C,yBAA2B,SAAUvB,EAAMwB,EAAcC,GAC1D,MAAO,IAAI3B,GAAyBE,EAAMwB,EAAcC,GAAUC,UAAUC,YAGvE9B,EAAQhB,KAoBjBe,EAASlC,QAAQ,iBAAkB,SAASkE,GAC1C,GAAIC,GAAkB,SAAS9B,GAE7B,QAAS8B,GAAeC,EAAOC,EAAMC,GACnC7D,KAAK8D,OAASH,EACd3D,KAAK+D,MAAQH,EACb5D,KAAKgE,IAAMH,EACXjC,EAAUM,KAAKlC,MAGjB,QAASiE,GAAexB,GACtB,MAAO,UAAkByB,EAAUC,GACjC1B,EAAEQ,QAASkB,SAAUA,EAAUD,SAAUA,KAQ7C,QAAS/B,GAAgBd,GACvBrB,KAAKiC,IAAMZ,EACXrB,KAAKoC,YAAa,EAUpB,MA9BAqB,GAAGpB,UAAUC,SAASoB,EAAgB9B,GActC8B,EAAenB,UAAUC,cAAgB,SAAUC,GACjD,MAAO,IAAIN,GAAgBnC,KAAK8D,OAAOM,OAAOpE,KAAK+D,MAAOE,EAAexB,GAAIzC,KAAKgE,OAQpF7B,EAAgBI,UAAUW,QAAU,WAC7BlD,KAAKoC,aACRpC,KAAKiC,MACLjC,KAAKoC,YAAa,IAIfsB,GACPD,EAAGN,eAEL,OAAO,UAASQ,EAAOU,EAAiBC,GACtC,MAAO,IAAIZ,GAAeC,EAAOU,EAAiBC,MAMtD5D,EAAG6D,WAAWhC,UAAUiC,UAAY,SAASC,EAAQxB,EAAQD,EAAS0B,GAKpE,MAJAzB,GAAStC,EAAQW,WAAW2B,GAAUA,EAASzB,EAC/CwB,EAAUrC,EAAQW,WAAW0B,GAAWA,EAAUxB,EAClDkD,EAAa/D,EAAQW,WAAWoD,GAAcA,EAAalD,EAEpDxB,KACJ2E,UAAU,WACT,OAAQF,EAAOG,cAEhBC,IACC,SAAUC,GACPL,EAAOM,SAAWN,EAAOO,MAAMD,QAC9B9B,EAAO6B,GACPL,EAAOQ,OAAO,WAAchC,EAAO6B,MAEvC,SAAUI,GACPT,EAAOM,SAAWN,EAAOO,MAAMD,QAC9B/B,EAAQkC,GACRT,EAAOQ,OAAO,WAAcjC,EAAQkC,MAExC,WACGT,EAAOM,SAAWN,EAAOO,MAAMD,QAC9BL,IACAD,EAAOQ,OAAO,WAAcP,SAItCjD,EAAS0D,OAAO,SAASC,GAYvBA,EAASC,UAAU,aAAc,SAASC,EAAW7B,GAyRnD,MAvRA8B,QAAOC,iBAAiBF,EAAUG,YAAYlD,WAQ1CmD,eAaIC,MAAO,SAAStB,EAAiBC,GAC/B,GAAIX,GAAQ3D,IACZ,OAAOyD,GAAGc,WAAWqB,OAAO,SAAUC,GAEpC,QAASvC,GAAUY,EAAUC,GAC3B0B,EAAS5C,QAASkB,SAAUA,EAAUD,SAAUA,IAIlD,GAAI4B,GAAarC,EAAGsC,WAAWH,OAAOjC,EAAMS,OAAOC,EAAiBf,EAAUgB,GAM9E,OAJAX,GAAMqC,IAAI,WAAY,WAClBF,EAAW5C,YAGR4C,IACNvC,UAAUC,YASfyC,YAAY,EACZC,cAAc,EACdC,UAAU,GASdC,yBAYIT,MAAO,SAAStB,GACd,GAAIV,GAAQ3D,IACZ,OAAOyD,GAAGc,WAAWqB,OAAO,SAAUC,GAEpC,QAASvC,GAAUY,EAAUC,GAC3B0B,EAAS5C,QAASkB,SAAUA,EAAUD,SAAUA,IAIlD,GAAI4B,GAAarC,EAAGsC,WAAWH,OAAOjC,EAAM0C,iBAAiBhC,EAAiBf,GAM9E,OAJAK,GAAMqC,IAAI,WAAY,WACpBF,EAAW5C,YAGN4C,IACNvC,UAAUC,YASfyC,YAAY,EACZC,cAAc,EACdC,UAAU,GASdG,oBAYIX,MAAO,SAASY,GACd,GAAI5C,GAAQ3D,IACZ,OAAOyD,GAAGc,WAAWqB,OAAO,SAAUC,GAEpC,QAASvC,GAAUY,EAAUC,GAC3B0B,EAAS5C,QAASkB,SAAUA,EAAUD,SAAUA,IAIlD,GAAI4B,GAAarC,EAAGsC,WAAWH,OAAOjC,EAAM6C,YAAYD,EAAkBjD,GAM1E,OAJAK,GAAMqC,IAAI,WAAY,WACpBF,EAAW5C,YAGN4C,IACNvC,UAAUC,YASfyC,YAAY,EACZC,cAAc,EACdC,UAAU,GAShBM,oBAaEd,MAAO,SAASe,EAAWC,GACzB,GAAIhD,GAAQ3D,IACZ,OAAOyD,GAAGc,WAAWqB,OAAO,SAAUC,GACpC,QAASvC,KAEP,IAAK,GADDZ,GAAMzB,UAAU0B,OAAQC,EAAO,GAAIC,OAAMH,GACpCI,EAAI,EAAOJ,EAAJI,EAASA,IAAOF,EAAKE,GAAK7B,UAAU6B,EACpD,IAAInC,EAAQW,WAAWqF,GAAW,CAChC,GAAI5D,GAAS3B,EAASuF,GAAU3F,MAAM,KAAM4B,EAC5C,IAAIG,IAAW5B,EAAY,MAAO0E,GAAS7C,QAAQD,EAAO7B,EAC1D2E,GAAS5C,OAAOF,OACS,KAAhBH,EAAKD,OACdkD,EAAS5C,OAAOL,EAAK,IAErBiD,EAAS5C,OAAOL,GAKpB,GAAIkD,GAAarC,EAAGsC,WAAWH,OAAOjC,EAAMqC,IAAIU,EAAWpD,GAI3D,OAFAK,GAAMqC,IAAI,WAAY,WAAYF,EAAW5C,YAEtC4C,IACNvC,UAAUC,YASfyC,YAAY,EACZC,cAAc,EACdC,UAAU,GASZS,2BAaEjB,MAAO,SAAStC,EAAcC,GAC5B,MAAOG,GAAGL,yBAAyBpD,KAAMqD,EAAcC,IASzD2C,YAAY,EACZC,cAAc,EACdC,UAAU,GAiBZU,oBACElB,MAAO,SAASmB,GACd,GAAInD,GAAQ3D,IACZ,OAAOyD,GAAGc,WAAWwC,MAAMD,GACxBE,QAAQ,SAASC,GAChB,MAAOA,GAAK,GAAGC,OAAOvD,EAAOsD,EAAK,IAC/BE,IAAI,SAASC,GACZ,OACEC,WAAYJ,EAAK,GACjBK,WAAYL,EAAK,GACjBtB,MAAOyB,OAGZ7D,UAAUC,YASjByC,YAAY,EACZC,cAAc,EACdC,UAAU,KAIPb,MAIX7D,EAAS8F,IAAI,SAASC,GAEpB,GAAIC,GAAoB,SAAS7F,GAE/B,QAAS6F,GAAiBC,EAAQjD,EAAQkD,GACxC3H,KAAK0H,OAASA,EACd1H,KAAKyE,OAASA,EACdzE,KAAK2H,KAAOA,EACZ/F,EAAUM,KAAKlC,MAgBjB,MArBAU,GAAG2B,UAAUC,SAASmF,EAAkB7F,GAQxC6F,EAAiBlF,UAAUC,cAAgB,SAAUC,GACnD,GAAImF,GAAaJ,EAAOxH,KAAK2H,MAAME,MACnC,KAAKD,EACH,MAAOnF,GAAEO,QAAQ,GAAI8E,OAAM,6CAG7B,IAAIC,GAAI,GAAIrH,GAAGsH,0BAIf,OAHAD,GAAEE,cAAcjI,KAAK0H,OAAOQ,UAAU,GAAIC,GAAe1F,EAAGzC,KAAKyE,OAAQmD,KACzE5H,KAAKyE,OAAOuB,IAAI,WAAY,WAAc+B,EAAE7E,YAErC6E,GAGFN,GACP/G,EAAGyC,gBAEDgF,EAAkB,SAASvG,GAE7B,QAASuG,GAAe1F,EAAGgC,EAAQmD,GACjC5H,KAAKyC,EAAIA,EACTzC,KAAKyE,OAASA,EACdzE,KAAK4H,WAAaA,EAClBhG,EAAUM,KAAKlC,MAiBjB,MAtBAU,GAAG2B,UAAUC,SAAS6F,EAAgBvG,GAQtCuG,EAAe5F,UAAU6F,KAAO,SAAUC,GACxC,GAAKrI,KAAKyE,OAAOM,QAMf/E,KAAK4H,WAAW5H,KAAKyE,OAAQ4D,OANL,CACxB,GAAIC,GAAQtI,IACZA,MAAKyE,OAAOQ,OAAO,WACjBqD,EAAMV,WAAWU,EAAM7D,OAAQ4D,KAKnCrI,KAAKyC,EAAEQ,OAAOoF,IAEhBF,EAAe5F,UAAU2C,MAAQ,SAAUhE,GAAKlB,KAAKyC,EAAEO,QAAQ9B,IAC/DiH,EAAe5F,UAAUgG,UAAY,WAAcvI,KAAKyC,EAAE+F,eAEnDL,GACPzH,EAAG2B,UAAUoG,iBAEf/H,GAAG6D,WAAWhC,UAAU2E,OAAS,SAASzC,EAAQkD,GAChD,MAAO,IAAIF,GAAiBzH,KAAMyE,EAAQkD,KAIzBjH,GAAGgI,eAAkB,SAAU9G,GAClD,QAAS8G,GAAejE,GACtBzE,KAAKyE,OAASA,EACd7C,EAAUM,KAAKlC,MAmEjB,MAhEAU,GAAG2B,UAAUC,SAASoG,EAAgB9G,GAEtC8G,EAAenG,UAAUoG,SAAW,SAAUC,EAAOC,GACnD,GAAI7I,KAAKyE,OAAOG,YAAe,MAAOlE,GAAGqF,WAAW+C,KAEpD,IAAIC,GAAM,GAAIrI,GAAGsH,2BACbvD,EAASzE,KAAKyE,MAEdA,GAAOM,SAAWN,EAAOO,MAAMD,QACjCgE,EAAId,cAAcvH,EAAGqF,WAAWiD,OAAOJ,EAAMC,KAE7CpE,EAAOQ,OAAO/C,KACZuC,EACA,WAAcsE,EAAId,cAAcvH,EAAGqF,WAAWiD,OAAOJ,EAAMC,QAKjEH,EAAenG,UAAU0G,gBAAkB,SAAUL,EAAOM,EAASL,GACnE,GAAI7I,KAAKyE,OAAOG,YAAe,MAAOlE,GAAGqF,WAAW+C,KAEpD,IAAIC,GAAM,GAAIrI,GAAGsH,2BACbvD,EAASzE,KAAKyE,OAEd0E,EAAKC,WAAW,WAClB,MAAI3E,GAAOG,aAAemE,EAAI3G,WAAqBiH,aAAaF,QAE5D1E,EAAOM,SAAWN,EAAOO,MAAMD,QACjCgE,EAAId,cAAcvH,EAAGqF,WAAWiD,OAAOJ,EAAMC,KAE7CpE,EAAOQ,OAAO/C,KACZuC,EACA,WAAcsE,EAAId,cAAcvH,EAAGqF,WAAWiD,OAAOJ,EAAMC,SAG9DK,EAEH,OAAO,IAAIxI,GAAG4I,iBACZP,EACArI,EAAGqF,WAAWH,OAAO,WAAcyD,aAAaF,OAIpDT,EAAenG,UAAUgH,iBAAmB,SAAUX,EAAOY,EAAQX,GACnE,GAAI7I,KAAKyE,OAAOG,YAAe,MAAOlE,GAAGqF,WAAW+C,KAEpDU,GAAS9I,EAAG+I,UAAUC,UAAUF,EAEhC,IAAI/E,GAASzE,KAAKyE,OACdkF,EAAIf,EAEJO,EAAKS,YAAY,WACnB,MAAInF,GAAOG,YAAsBiF,cAAcV,QAE3C1E,EAAOM,SAAWN,EAAOO,MAAMD,QACjC4E,EAAId,EAAOc,GAEXlF,EAAOQ,OAAO/C,KAAKuC,EAAQ,WAAckF,EAAId,EAAOc,OAErDH,EAEH,OAAO9I,GAAGqF,WAAWH,OAAO,WAAciE,cAAcV,MAGnDT,GACPhI,EAAG+I,UAEL,OAAO/I","file":"rx.lite.angular.min.js"}
\ No newline at end of file
+{"version":3,"sources":["rx.lite.angular.js"],"names":["root","factory","objectTypes","boolean","function","object","number","string","undefined","window","this","freeExports","exports","nodeType","freeModule","module","freeGlobal","global","define","amd","Rx","angular","require","exp","tryCatcherGen","tryCatchTarget","apply","arguments","e","errorObj","tryCatch","fn","isFunction","TypeError","noop","RxNg","inherits","child","parent","__","constructor","prototype","rxModule","$window","createObservableFunction","self","functionName","listener","subscribeCore","o","len","length","args","Array","i","result","error","next","Observable","create","publish","refCount","rx","ObserveOnScope","__super__","scope","expr","eq","_scope","_expr","_eq","call","createListener","newValue","oldValue","onNext","InnerDisposable","_fn","isDisposed","$watch","dispose","ObservableBase","watchExpression","objectEquality","safeApply","$scope","onError","onComplete","takeWhile","$$destroyed","data","$$phase","$root","$apply","config","$provide","decorator","$delegate","Object","defineProperties","$toObservable","value","observer","disposable","Subscription","$on","unsubscribe","enumerable","configurable","writable","$toObservableCollection","$watchCollection","$toObservableGroup","watchExpressions","$watchGroup","$eventToObservable","eventName","selector","$createObservableFunction","$digestObservables","observables","keyValuePairs","keys","map","key","from","flatMap","pair","digest","val","observable","expression","run","$parse","DigestObserver","propSetter","x","_this","completed","Subscriber","prop","assign","Error","m","subscribe","ScopeScheduler","schedule","state","action","Disposable","empty","sad","SingleAssignmentDisposable","setDisposable","_fixup","_scheduleFuture","dueTime","id","setTimeout","clearTimeout","BinaryDisposable","schedulePeriodic","period","Scheduler","normalize","s","setInterval","clearInterval"],"mappings":"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","file":"rx.lite.angular.min.js"}
\ No newline at end of file
diff --git a/modules/rx.lite.angular/rx.lite.angular.min.js b/modules/rx.lite.angular/rx.lite.angular.min.js
index 8622b31..2e36c41 100644
--- a/modules/rx.lite.angular/rx.lite.angular.min.js
+++ b/modules/rx.lite.angular/rx.lite.angular.min.js
@@ -1,3 +1,3 @@
/* Copyright (c) Microsoft. All rights reserved. See License.txt in the project root for license information.*/
-!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx-lite","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx-lite"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=d.module("rx",[]);j.factory("rx",function(a){a.Rx||(a.Rx=c);var b=function(a){function b(b,c,d){this._self=b,this._name=c,this._fn=d,a.call(this)}function e(a,b){this._self=a,this._name=b,this.isDisposed=!1}return c.internals.inherits(b,a),b.prototype.subscribeCore=function(a){var b=this._fn;return this._self[this._name]=function(){for(var c=arguments.length,e=new Array(c),f=0;c>f;f++)e[f]=arguments[f];if(d.isFunction(b)){var h=g(b).apply(this,e);if(h===i)return a.onError(h.e);a.onNext(h)}else 1===e.length?a.onNext(e[0]):a.onNext(e)},new e(this._self,this._name)},e.prototype.dispose=function(){this.isDisposed||(this.isDisposed=!0,delete this._self[this._name])},b}(c.ObservableBase);return c.createObservableFunction=function(a,c,d){return new b(a,c,d).publish().refCount()},a.Rx}),j.factory("observeOnScope",function(a){var b=function(b){function c(a,c,d){this._scope=a,this._expr=c,this._eq=d,b.call(this)}function d(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function e(a){this._fn=a,this.isDisposed=!1}return a.internals.inherits(c,b),c.prototype.subscribeCore=function(a){return new e(this._scope.$watch(this._expr,d(a),this._eq))},e.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},c}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed}).tap(function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},j.config(function(a){a.decorator("$rootScope",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.onNext({oldValue:b,newValue:a})}var g=b.Disposable.create(d.$watch(a,f,c));return d.$on("$destroy",function(){g.dispose()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=b.Disposable.create(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.onError(h.e);f.onNext(h)}else 1===b.length?f.onNext(b[0]):f.onNext(b)}var j=b.Disposable.create(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this;return b.Observable.pairs(a).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a})}),j.run(function(a){var b=function(b){function e(a,c,d){this.source=a,this.$scope=c,this.prop=d,b.call(this)}return c.internals.inherits(e,b),e.prototype.subscribeCore=function(b){var e=a(this.prop).assign;if(!e)return b.onError(new Error("Property or expression is not assignable."));var f=new c.SingleAssignmentDisposable;return f.setDisposable(this.source.subscribe(new d(b,this.$scope,e))),this.$scope.$on("$destroy",function(){f.dispose()}),f},e}(c.ObservableBase),d=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return c.internals.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.onNext(a)},b.prototype.error=function(a){this.o.onError(a)},b.prototype.completed=function(){this.o.onCompleted()},b}(c.internals.AbstractObserver);c.Observable.prototype.digest=function(a,c){return new b(this,a,c)}});c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return c.internals.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,c.Disposable.create(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return c.Disposable.create(function(){clearInterval(g)})},b}(c.Scheduler);return c});
+!function(a,b){var c={"boolean":!1,"function":!0,object:!0,number:!1,string:!1,undefined:!1},a=c[typeof window]&&window||this,d=c[typeof exports]&&exports&&!exports.nodeType&&exports,e=c[typeof module]&&module&&!module.nodeType&&module,f=(e&&e.exports===d&&d,c[typeof global]&&global);!f||f.global!==f&&f.window!==f||(a=f),"function"==typeof define&&define.amd?define(["rx-lite","angular","exports"],function(c,d,e){return a.Rx=b(a,e,c,d),a.Rx}):"object"==typeof module&&module&&module.exports==d?module.exports=b(a,module.exports,require("rx-lite"),require("angular")):a.Rx=b(a,{},a.Rx,a.angular)}(this,function(a,b,c,d,e){function f(a){return function(){try{return a.apply(this,arguments)}catch(b){return i.e=b,i}}}function g(a){if(!d.isFunction(a))throw new TypeError("fn must be a function");return f(a)}function h(){}var i={e:{}},j=j||{};j.inherits=function(a,b){function c(){this.constructor=a}c.prototype=b.prototype,a.prototype=new c};var k=d.module("rx",[]);k.factory("rx",function(a){return a.Rx||(a.Rx=c),c.createObservableFunction=function(a,b,e){var f=function(c){return a[b]=function(){for(var a=arguments.length,b=new Array(a),f=0;a>f;f++)b[f]=arguments[f];if(d.isFunction(e)){var h=g(e).apply(this,b);if(h===i)return c.error(h.e);c.next(h)}else 1===b.length?c.next(b[0]):c.next(b)},function(){delete a[b]}};return c.Observable.create(f).publish().refCount()},a.Rx}),k.factory("observeOnScope",function(a){var b=function(a){function b(b,c,d){this._scope=b,this._expr=c,this._eq=d,a.call(this)}function c(a){return function(b,c){a.onNext({oldValue:c,newValue:b})}}function d(a){this._fn=a,this.isDisposed=!1}return j.inherits(b,a),b.prototype.subscribeCore=function(a){return new d(this._scope.$watch(this._expr,c(a),this._eq))},d.prototype.dispose=function(){this.isDisposed||(this._fn(),this.isDisposed=!0)},b}(a.ObservableBase);return function(a,c,d){return new b(a,c,d)}}),c.Observable.prototype.safeApply=function(a,b,c,e){return b=d.isFunction(b)?b:h,c=d.isFunction(c)?c:h,e=d.isFunction(e)?e:h,this.takeWhile(function(){return!a.$$destroyed})["do"](function(c){a.$$phase||a.$root.$$phase?b(c):a.$apply(function(){b(c)})},function(b){a.$$phase||a.$root.$$phase?c(b):a.$apply(function(){c(b)})},function(){a.$$phase||a.$root.$$phase?e():a.$apply(function(){e()})})},k.config(function(a){a.decorator("$rootScope",function(a,b){return Object.defineProperties(a.constructor.prototype,{$toObservable:{value:function(a,c){var d=this;return b.Observable.create(function(e){function f(a,b){e.next({oldValue:b,newValue:a})}var g=new b.Subscription(d.$watch(a,f,c));return d.$on("$destroy",function(){g.unsubscribe()}),g}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableCollection:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchCollection(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$toObservableGroup:{value:function(a){var c=this;return b.Observable.create(function(d){function e(a,b){d.onNext({oldValue:b,newValue:a})}var f=new b.Subscription(c.$watchGroup(a,e));return c.$on("$destroy",function(){f.dispose()}),f}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$eventToObservable:{value:function(a,c){var e=this;return b.Observable.create(function(f){function h(){for(var a=arguments.length,b=new Array(a),e=0;a>e;e++)b[e]=arguments[e];if(d.isFunction(c)){var h=g(c).apply(null,b);if(h===i)return f.error(h.e);f.next(h)}else 1===b.length?f.next(b[0]):f.next(b)}var j=new b.Subscription(e.$on(a,h));return e.$on("$destroy",function(){j.dispose()}),j}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0},$createObservableFunction:{value:function(a,c){return b.createObservableFunction(this,a,c)},enumerable:!1,configurable:!0,writable:!0},$digestObservables:{value:function(a){var c=this,d=Object.keys(a).map(function(b){return[b,a[b]]});return b.Observable.from(d).flatMap(function(a){return a[1].digest(c,a[0]).map(function(b){return{observable:a[1],expression:a[0],value:b}})}).publish().refCount()},enumerable:!1,configurable:!0,writable:!0}}),a})}),k.run(function(a){var b=function(a){function b(b,c,d){this.o=b,this.$scope=c,this.propSetter=d,a.call(this)}return j.inherits(b,a),b.prototype.next=function(a){if(this.$scope.$$phase)this.propSetter(this.$scope,a);else{var b=this;this.$scope.$apply(function(){b.propSetter(b.$scope,a)})}this.o.next(a)},b.prototype.error=function(a){this.o.error(a)},b.prototype.completed=function(){this.o.completed()},b}(c.Subscriber);c.Observable.prototype.digest=function(d,e){var f=this,g=function(c){var g=a(e).assign;if(!g)return c.error(new Error("Property or expression is not assignable."));var h=f.subscribe(new b(c,d,g));return d.$on("$destroy",function(){h.unsubscribe()}),h};return c.Observable.create(g)}});c.ScopeScheduler=function(a){function b(b){this.$scope=b,a.call(this)}return j.inherits(b,a),b.prototype.schedule=function(a,b){if(this.$scope.$$destroyed)return c.Disposable.empty;var d=new c.SingleAssignmentDisposable,e=this.$scope;e.$$phase||e.$root.$$phase?d.setDisposable(c.Disposable._fixup(a(b))):e.$apply.call(e,function(){d.setDisposable(c.Disposable._fixup(a(b)))})},b.prototype._scheduleFuture=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;var e=new c.SingleAssignmentDisposable,f=this.$scope,g=setTimeout(function(){return f.$$destroyed||e.isDisposed?clearTimeout(g):void(f.$$phase||f.$root.$$phase?e.setDisposable(c.Disposable._fixup(a(d))):f.$apply.call(f,function(){e.setDisposable(c.Disposable._fixup(a(d)))}))},b);return new c.BinaryDisposable(e,new c.Subscription(function(){clearTimeout(g)}))},b.prototype.schedulePeriodic=function(a,b,d){if(this.$scope.$$destroyed)return c.Disposable.empty;b=c.Scheduler.normalize(b);var e=this.$scope,f=a,g=setInterval(function(){return e.$$destroyed?clearInterval(g):void(e.$$phase||e.$root.$$phase?f=d(f):e.$apply.call(e,function(){f=d(f)}))},b);return new c.Subscription(function(){clearInterval(g)})},b}(c.Scheduler);return c});
//# sourceMappingURL=rx.lite.angular.map
\ No newline at end of file
diff --git a/package.json b/package.json
index 21f81b5..72f4475 100644
--- a/package.json
+++ b/package.json
@@ -13,7 +13,7 @@
},
"license": "Apache-2.0",
"dependencies": {
- "rx": "*"
+ "@reactivex/rxjs": "^5.0.0-beta.8"
},
"devDependencies": {
"angular": "^1.4.9",
@@ -23,7 +23,7 @@
"grunt-contrib-jshint": "*",
"grunt-contrib-qunit": "*",
"grunt-contrib-uglify": "*",
- "grunt-ng-annotate": "^0.10.0",
+ "grunt-ng-annotate": "^2.0.2",
"load-grunt-tasks": "*"
},
"jam": {
diff --git a/src/$rootScopeExtensions.js b/src/$rootScopeExtensions.js
index 9c3a16f..41455e6 100644
--- a/src/$rootScopeExtensions.js
+++ b/src/$rootScopeExtensions.js
@@ -38,14 +38,14 @@
return rx.Observable.create(function (observer) {
// Create function to handle old and new Value
function listener (newValue, oldValue) {
- observer.onNext({ oldValue: oldValue, newValue: newValue });
+ observer.next({ oldValue: oldValue, newValue: newValue });
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watch(watchExpression, listener, objectEquality));
+ var disposable = new rx.Subscription(scope.$watch(watchExpression, listener, objectEquality));
scope.$on('$destroy', function(){
- disposable.dispose();
+ disposable.unsubscribe();
});
return disposable;
@@ -90,7 +90,7 @@
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchCollection(watchExpression, listener));
+ var disposable = new rx.Subscription(scope.$watchCollection(watchExpression, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -138,7 +138,7 @@
}
// Returns function which disconnects the $watch expression
- var disposable = rx.Disposable.create(scope.$watchGroup(watchExpressions, listener));
+ var disposable = new rx.Subscription(scope.$watchGroup(watchExpressions, listener));
scope.$on('$destroy', function(){
disposable.dispose();
@@ -186,17 +186,17 @@
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
if (angular.isFunction(selector)) {
var result = tryCatch(selector).apply(null, args);
- if (result === errorObj) { return observer.onError(result.e); }
- observer.onNext(result);
+ if (result === errorObj) { return observer.error(result.e); }
+ observer.next(result);
} else if (args.length === 1) {
- observer.onNext(args[0]);
+ observer.next(args[0]);
} else {
- observer.onNext(args);
+ observer.next(args);
}
}
// Returns function which disconnects from the event binding
- var disposable = rx.Disposable.create(scope.$on(eventName, listener));
+ var disposable = new rx.Subscription(scope.$on(eventName, listener));
scope.$on('$destroy', function(){ disposable.dispose(); });
@@ -219,7 +219,7 @@
* @name rx.$rootScope.$createObservableFunction
*
* @description
- * Provides a method to create obsersables from functions.
+ * Provides a method to create observables from functions.
*/
'$createObservableFunction': {
/**
@@ -266,7 +266,10 @@
'$digestObservables': {
value: function(observables) {
var scope = this;
- return rx.Observable.pairs(observables)
+ var keyValuePairs = Object.keys(observables).map(function(key) {
+ return [key, observables[key]]
+ });
+ return rx.Observable.from(keyValuePairs)
.flatMap(function(pair) {
return pair[1].digest(scope, pair[0])
.map(function(val) {
diff --git a/src/factory.js b/src/factory.js
index 1e1aea4..387c5d4 100644
--- a/src/factory.js
+++ b/src/factory.js
@@ -10,53 +10,28 @@
rxModule.factory('rx', function($window) {
$window.Rx || ($window.Rx = Rx);
- var CreateObservableFunction = (function(__super__) {
- Rx.internals.inherits(CreateObservableFunction, __super__);
- function CreateObservableFunction(self, name, fn) {
- this._self = self;
- this._name = name;
- this._fn = fn;
- __super__.call(this);
- }
-
- CreateObservableFunction.prototype.subscribeCore = function (o) {
- var fn = this._fn;
- this._self[this._name] = function () {
+ Rx.createObservableFunction = function (self, functionName, listener) {
+ var subscribeCore = function (o) {
+ self[functionName] = function () {
var len = arguments.length, args = new Array(len);
for (var i = 0; i < len; i++) { args[i] = arguments[i]; }
- if (angular.isFunction(fn)) {
- var result = tryCatch(fn).apply(this, args);
- if (result === errorObj) { return o.onError(result.e); }
- o.onNext(result);
+ if (angular.isFunction(listener)) {
+ var result = tryCatch(listener).apply(this, args);
+ if (result === errorObj) { return o.error(result.e); }
+ o.next(result);
} else if (args.length === 1) {
- o.onNext(args[0]);
+ o.next(args[0]);
} else {
- o.onNext(args);
+ o.next(args);
}
};
- return new InnerDisposable(this._self, this._name);
- };
-
- function InnerDisposable(self, name) {
- this._self = self;
- this._name = name;
- this.isDisposed = false;
- }
-
- InnerDisposable.prototype.dispose = function () {
- if (!this.isDisposed) {
- this.isDisposed = true;
- delete this._self[this._name];
- }
+ return function() {
+ delete self[functionName];
+ };
};
-
- return CreateObservableFunction;
- }(Rx.ObservableBase));
-
- Rx.createObservableFunction = function (self, functionName, listener) {
- return new CreateObservableFunction(self, functionName, listener).publish().refCount();
+ return Rx.Observable.create(subscribeCore).publish().refCount();
};
return $window.Rx;
diff --git a/src/internal/util.js b/src/internal/util.js
new file mode 100644
index 0000000..712ed81
--- /dev/null
+++ b/src/internal/util.js
@@ -0,0 +1,7 @@
+var RxNg = RxNg || {};
+
+RxNg.inherits = function (child, parent) {
+ function __() { this.constructor = child; }
+ __.prototype = parent.prototype;
+ child.prototype = new __();
+ };
diff --git a/src/observableRuntimeExtensions.js b/src/observableRuntimeExtensions.js
index a42e1e7..984ca12 100644
--- a/src/observableRuntimeExtensions.js
+++ b/src/observableRuntimeExtensions.js
@@ -1,32 +1,7 @@
rxModule.run(function($parse) {
- var DigestObservable = (function(__super__) {
- Rx.internals.inherits(DigestObservable, __super__);
- function DigestObservable(source, $scope, prop) {
- this.source = source;
- this.$scope = $scope;
- this.prop = prop;
- __super__.call(this);
- }
-
- DigestObservable.prototype.subscribeCore = function (o) {
- var propSetter = $parse(this.prop).assign;
- if (!propSetter) {
- return o.onError(new Error('Property or expression is not assignable.'));
- }
-
- var m = new Rx.SingleAssignmentDisposable();
- m.setDisposable(this.source.subscribe(new DigestObserver(o, this.$scope, propSetter)));
- this.$scope.$on('$destroy', function () { m.dispose(); });
-
- return m;
- };
-
- return DigestObservable;
- }(Rx.ObservableBase));
-
var DigestObserver = (function(__super__) {
- Rx.internals.inherits(DigestObserver, __super__);
+ RxNg.inherits(DigestObserver, __super__);
function DigestObserver(o, $scope, propSetter) {
this.o = o;
this.$scope = $scope;
@@ -43,15 +18,29 @@
} else {
this.propSetter(this.$scope, x);
}
- this.o.onNext(x);
+ this.o.next(x);
};
- DigestObserver.prototype.error = function (e) { this.o.onError(e); };
- DigestObserver.prototype.completed = function () { this.o.onCompleted(); };
+ DigestObserver.prototype.error = function (e) { this.o.error(e); };
+ DigestObserver.prototype.completed = function () { this.o.completed(); };
return DigestObserver;
- }(Rx.internals.AbstractObserver));
+ }(Rx.Subscriber));
Rx.Observable.prototype.digest = function($scope, prop) {
- return new DigestObservable(this, $scope, prop);
+ var self = this;
+
+ var subscribeCore = function (o) {
+ var propSetter = $parse(prop).assign;
+ if (!propSetter) {
+ return o.error(new Error('Property or expression is not assignable.'));
+ }
+
+ var m = self.subscribe(new DigestObserver(o, $scope, propSetter));
+ $scope.$on('$destroy', function () { m.unsubscribe(); });
+
+ return m;
+ };
+
+ return Rx.Observable.create(subscribeCore);
};
});
diff --git a/src/observeonscope.js b/src/observeonscope.js
index e60e1c9..b48c53c 100644
--- a/src/observeonscope.js
+++ b/src/observeonscope.js
@@ -17,7 +17,7 @@
*/
rxModule.factory('observeOnScope', function(rx) {
var ObserveOnScope = (function(__super__) {
- rx.internals.inherits(ObserveOnScope, __super__);
+ RxNg.inherits(ObserveOnScope, __super__);
function ObserveOnScope(scope, expr, eq) {
this._scope = scope;
this._expr = expr;
diff --git a/src/safeApply.js b/src/safeApply.js
index c61ceba..42ec539 100644
--- a/src/safeApply.js
+++ b/src/safeApply.js
@@ -9,7 +9,7 @@
.takeWhile(function () {
return !$scope.$$destroyed;
})
- .tap(
+ .do(
function (data){
($scope.$$phase || $scope.$root.$$phase) ?
onNext(data) :
diff --git a/src/scopescheduler.js b/src/scopescheduler.js
index b6fdadc..4fe4f72 100644
--- a/src/scopescheduler.js
+++ b/src/scopescheduler.js
@@ -4,7 +4,7 @@
__super__.call(this);
}
- Rx.internals.inherits(ScopeScheduler, __super__);
+ RxNg.inherits(ScopeScheduler, __super__);
ScopeScheduler.prototype.schedule = function (state, action) {
if (this.$scope.$$destroyed) { return Rx.Disposable.empty; }
@@ -43,7 +43,7 @@
return new Rx.BinaryDisposable(
sad,
- Rx.Disposable.create(function () { clearTimeout(id); })
+ new Rx.Subscription(function () { clearTimeout(id); })
);
};
@@ -65,7 +65,7 @@
}
}, period);
- return Rx.Disposable.create(function () { clearInterval(id); });
+ return new Rx.Subscription(function () { clearInterval(id); });
};
return ScopeScheduler;
diff --git a/tests/rx.angular.html b/tests/rx.angular.html
index 298c371..56fc5b6 100644
--- a/tests/rx.angular.html
+++ b/tests/rx.angular.html
@@ -11,9 +11,7 @@
-
-
-
+
diff --git a/tests/tests.$rootScopeExtensions.js b/tests/tests.$rootScopeExtensions.js
index c502fa7..7ab93a8 100644
--- a/tests/tests.$rootScopeExtensions.js
+++ b/tests/tests.$rootScopeExtensions.js
@@ -70,7 +70,7 @@ test('dispose calls unbind function which was returned from $watch', function ()
ok(called === 1);
- disposable.dispose();
+ disposable.unsubscribe();
scope.$apply(function(){
scope.testProperty = 2;
@@ -135,7 +135,7 @@ test('observable function removed from scope when disposed', function () {
.$createObservableFunction('clickMe')
.subscribe(function(val){});
- subscription.dispose();
+ subscription.unsubscribe();
ok(scope.clickMe === undefined);
});
diff --git a/tests/tests.digest.js b/tests/tests.digest.js
index 6204c85..f81a007 100644
--- a/tests/tests.digest.js
+++ b/tests/tests.digest.js
@@ -7,7 +7,7 @@ asyncTest('assigns to simple scope properties', function () {
scope
.$toObservable('testProperty')
- .debounce(500)
+ .debounceTime(500)
.map(function(change) { return change.newValue + 1; })
.digest(scope, 'testProperty2')
.subscribe(function onNext(val) {
@@ -34,7 +34,7 @@ asyncTest('assigns to more complex assignable expressions', function () {
scope
.$toObservable('testProperty')
- .debounce(500)
+ .debounceTime(500)
.map(function(change) { return change.newValue + "®"; })
.digest(scope, 'ctrl.testProperty2')
.subscribe(function onNext(val) {
@@ -61,7 +61,7 @@ asyncTest('sends an error if expression is not assignable', function () {
scope
.$toObservable('testProperty')
- .debounce(500)
+ .debounceTime(500)
.map(function(change) { return change.newValue + 1; })
.digest(scope, 'testProperty2 === 5')
.subscribe(function onNext() {
diff --git a/tests/tests.safeApply.js b/tests/tests.safeApply.js
index 09f08f4..141e336 100644
--- a/tests/tests.safeApply.js
+++ b/tests/tests.safeApply.js
@@ -10,7 +10,7 @@ asyncTest('calls $apply onNext', function () {
var result;
source
- .debounce(500)
+ .debounceTime(500)
.safeApply(scope,
function (val) {
result = val;
@@ -24,7 +24,7 @@ asyncTest('calls $apply onNext', function () {
ok(result === 2);
});
- source.onNext( 2 );
+ source.next( 2 );
expect(1);
});
@@ -41,7 +41,7 @@ asyncTest('calls $apply onError', function () {
var expectedError = {details: "expected error details"};
source
- .debounce(500)
+ .debounceTime(500)
.safeApply(scope,
function (val) {
result = val;
@@ -57,7 +57,7 @@ asyncTest('calls $apply onError', function () {
ok(result === expectedError);
});
- source.onError( expectedError );
+ source.error( expectedError );
expect(1);
});
@@ -74,7 +74,7 @@ asyncTest('calls $apply onComplete', function () {
var expectedError = {};
source
- .debounce(500)
+ .debounceTime(500)
.safeApply(scope,
function (val) {
result = val;
@@ -94,8 +94,8 @@ asyncTest('calls $apply onComplete', function () {
});
start();
- source.onNext( 2 );
- source.onCompleted();
+ source.next( 2 );
+ source.complete();
expect(1);
});