Skip to content
This repository was archived by the owner on Apr 20, 2018. It is now read-only.

Commit f0c034e

Browse files
publishValue
1 parent 062d814 commit f0c034e

File tree

4 files changed

+531
-0
lines changed

4 files changed

+531
-0
lines changed
+19
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
'use strict';
2+
3+
var multicast = require('./multicast');
4+
var BehaviorSubject = require('../behaviorsubject');
5+
6+
function createBehaviorSubject(initialValue) {
7+
return function fn() { return new BehaviorSubject(initialValue); };
8+
}
9+
10+
module.exports = function publishValue() {
11+
var source = arguments[0];
12+
if (arguments.length === 3) {
13+
return multicast(source, createBehaviorSubject(arguments[2]), arguments[1]);
14+
} else if (arguments.length === 2) {
15+
return multicast(source, new BehaviorSubject(arguments[1]));
16+
} else {
17+
throw new Error('Invalid arguments');
18+
}
19+
};

src/modular/observable/share.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
'use strict';
2+
3+
var publish = require('./publish');
4+
5+
module.exports = function share (source) {
6+
return publish(source).refCount();
7+
};

src/modular/observable/sharereplay.js

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
'use strict';
2+
3+
var replay = require('./replay');
4+
5+
module.exports = function shareReplay(source, bufferSize, windowSize, scheduler) {
6+
return replay(source, null, bufferSize, windowSize, scheduler).refCount();
7+
};

0 commit comments

Comments
 (0)