| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73 |
1
1
1
1
1
1
1
| // via @dan_abramov https://gist.github.com/gaearon/7d94c9f38fdd34a6e690
"use strict";
Object.defineProperty(exports, "__esModule", {
value: true
});
// istanbul ignore next
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };
// istanbul ignore next
function _defineProperty(obj, key, value) { return Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); }
exports["default"] = {
getInitialState: function getInitialState() {
// istanbul ignore next
var _this = this;
return Object.keys(this.props || {}).reduce(function (o, key) {
return _extends({}, o, _defineProperty({}, key, _this.props[key].get()));
}, {});
},
componentWillMount: function componentWillMount() {
this.subscribe(this.props, this.context, this.setData);
},
componentWillReceiveProps: function componentWillReceiveProps(props, context) {
this.subscribe(props, context, this.setData);
},
componentWillUnmount: function componentWillUnmount() {
this.unsubscribe();
},
setData: function setData(key, value) {
this.setState(function (prevState) {
return { data: _extends({}, prevState.data, _defineProperty({}, key, value)) };
});
},
subscribe: function subscribe(props, context, _onNext) {
var newObservables = this.observe(props, context);
var newSubscriptions = Object.keys(newObservables).reduce(function (o, key) {
return _extends({}, o, _defineProperty({}, key, newObservables[key].subscribe({
onNext: function onNext(value) {
return _onNext(key, value);
},
onError: function onError() {},
onCompleted: function onCompleted() {}
})));
}, {});
this.unsubscribe();
this.subscriptions = newSubscriptions;
},
unsubscribe: function unsubscribe() {
// istanbul ignore next
var _this2 = this;
Object.keys(this.subscriptions || {}).forEach(function (key) {
return _this2.subscriptions[key].dispose();
});
this.subscriptions = {};
}
};
module.exports = exports["default"];
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi9Vc2Vycy9zdW5pbHBhaS9jb2RlL2Rpc3RvL3NyYy9taXguanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7O3FCQUVlO0FBQ2IsaUJBQWUsRUFBQSwyQkFBRzs7Ozs7QUFDaEIsV0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLElBQUksRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLFVBQUMsQ0FBQyxFQUFFLEdBQUc7MEJBQVUsQ0FBQyxzQkFBRyxHQUFHLEVBQUcsTUFBSyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsR0FBRyxFQUFFO0tBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztHQUNyRzs7QUFFRCxvQkFBa0IsRUFBQSw4QkFBRztBQUNuQixRQUFJLENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLENBQUM7R0FDeEQ7O0FBRUQsMkJBQXlCLEVBQUEsbUNBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRTtBQUN4QyxRQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssRUFBRSxPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO0dBQzlDOztBQUVELHNCQUFvQixFQUFBLGdDQUFHO0FBQ3JCLFFBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztHQUNwQjs7QUFFRCxTQUFPLEVBQUEsaUJBQUMsR0FBRyxFQUFFLEtBQUssRUFBRTtBQUNsQixRQUFJLENBQUMsUUFBUSxDQUFDLFVBQUEsU0FBUzthQUFLLEVBQUMsSUFBSSxlQUFNLFNBQVMsQ0FBQyxJQUFJLHNCQUFHLEdBQUcsRUFBRyxLQUFLLEVBQUMsRUFBQztLQUFDLENBQUMsQ0FBQztHQUN6RTs7QUFFRCxXQUFTLEVBQUEsbUJBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxPQUFNLEVBQUU7QUFDaEMsUUFBTSxjQUFjLEdBQUcsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDcEQsUUFBTSxnQkFBZ0IsR0FBRyxNQUFNLENBQUMsSUFBSSxDQUFDLGNBQWMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFDLENBQUMsRUFBRSxHQUFHOzBCQUM1RCxDQUFDLHNCQUNILEdBQUcsRUFBRyxjQUFjLENBQUMsR0FBRyxDQUFDLENBQUMsU0FBUyxDQUFDO0FBQ25DLGNBQU0sRUFBRSxnQkFBQSxLQUFLO2lCQUFJLE9BQU0sQ0FBQyxHQUFHLEVBQUUsS0FBSyxDQUFDO1NBQUE7QUFDbkMsZUFBTyxFQUFFLG1CQUFNLEVBQUU7QUFDakIsbUJBQVcsRUFBRSx1QkFBTSxFQUFFO09BQ3hCLENBQUM7S0FBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDOztBQUVaLFFBQUksQ0FBQyxXQUFXLEVBQUUsQ0FBQztBQUNuQixRQUFJLENBQUMsYUFBYSxHQUFHLGdCQUFnQixDQUFDO0dBQ3ZDOztBQUVELGFBQVcsRUFBQSx1QkFBRzs7Ozs7QUFDWixVQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxhQUFhLElBQUksRUFBRSxDQUFDLENBQUMsT0FBTyxDQUFDLFVBQUEsR0FBRzthQUFJLE9BQUssYUFBYSxDQUFDLEdBQUcsQ0FBQyxDQUFDLE9BQU8sRUFBRTtLQUFBLENBQUMsQ0FBQztBQUN4RixRQUFJLENBQUMsYUFBYSxHQUFHLEVBQUUsQ0FBQztHQUN6QjtDQUNGIiwiZmlsZSI6Ii9Vc2Vycy9zdW5pbHBhaS9jb2RlL2Rpc3RvL3NyYy9taXguanMiLCJzb3VyY2VzQ29udGVudCI6WyIvLyB2aWEgQGRhbl9hYnJhbW92IGh0dHBzOi8vZ2lzdC5naXRodWIuY29tL2dhZWFyb24vN2Q5NGM5ZjM4ZmRkMzRhNmU2OTBcblxuZXhwb3J0IGRlZmF1bHQge1xuICBnZXRJbml0aWFsU3RhdGUoKSB7XG4gICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMucHJvcHMgfHwge30pLnJlZHVjZSgobywga2V5KSA9PiAoey4uLm8sIFtrZXldOiB0aGlzLnByb3BzW2tleV0uZ2V0KCl9KSwge30pO1xuICB9LFxuXG4gIGNvbXBvbmVudFdpbGxNb3VudCgpIHtcbiAgICB0aGlzLnN1YnNjcmliZSh0aGlzLnByb3BzLCB0aGlzLmNvbnRleHQsIHRoaXMuc2V0RGF0YSk7XG4gIH0sXG5cbiAgY29tcG9uZW50V2lsbFJlY2VpdmVQcm9wcyhwcm9wcywgY29udGV4dCkge1xuICAgIHRoaXMuc3Vic2NyaWJlKHByb3BzLCBjb250ZXh0LCB0aGlzLnNldERhdGEpO1xuICB9LFxuXG4gIGNvbXBvbmVudFdpbGxVbm1vdW50KCkge1xuICAgIHRoaXMudW5zdWJzY3JpYmUoKTtcbiAgfSxcblxuICBzZXREYXRhKGtleSwgdmFsdWUpIHtcbiAgICB0aGlzLnNldFN0YXRlKHByZXZTdGF0ZSA9PiAoe2RhdGE6IHsuLi5wcmV2U3RhdGUuZGF0YSwgW2tleV06IHZhbHVlfX0pKTtcbiAgfSxcblxuICBzdWJzY3JpYmUocHJvcHMsIGNvbnRleHQsIG9uTmV4dCkge1xuICAgIGNvbnN0IG5ld09ic2VydmFibGVzID0gdGhpcy5vYnNlcnZlKHByb3BzLCBjb250ZXh0KTtcbiAgICBjb25zdCBuZXdTdWJzY3JpcHRpb25zID0gT2JqZWN0LmtleXMobmV3T2JzZXJ2YWJsZXMpLnJlZHVjZSgobywga2V5KSA9PlxuICAgICAgKHsuLi5vLFxuICAgICAgICBba2V5XTogbmV3T2JzZXJ2YWJsZXNba2V5XS5zdWJzY3JpYmUoe1xuICAgICAgICAgIG9uTmV4dDogdmFsdWUgPT4gb25OZXh0KGtleSwgdmFsdWUpLFxuICAgICAgICAgIG9uRXJyb3I6ICgpID0+IHt9LFxuICAgICAgICAgIG9uQ29tcGxldGVkOiAoKSA9PiB7fVxuICAgICAgfSl9KSwge30pO1xuXG4gICAgdGhpcy51bnN1YnNjcmliZSgpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IG5ld1N1YnNjcmlwdGlvbnM7XG4gIH0sXG5cbiAgdW5zdWJzY3JpYmUoKSB7XG4gICAgT2JqZWN0LmtleXModGhpcy5zdWJzY3JpcHRpb25zIHx8IHt9KS5mb3JFYWNoKGtleSA9PiB0aGlzLnN1YnNjcmlwdGlvbnNba2V5XS5kaXNwb3NlKCkpO1xuICAgIHRoaXMuc3Vic2NyaXB0aW9ucyA9IHt9O1xuICB9XG59O1xuIl19 |