@folklore/socket 0.4.3 → 0.4.11
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs.js +1100 -0
- package/dist/es.js +1052 -0
- package/package.json +7 -16
- package/dist/1.chunk.js +0 -1
- package/dist/2.chunk.js +0 -1
- package/dist/socket.js +0 -1
- package/es/Socket.js +0 -372
- package/es/SocketContainer.js +0 -122
- package/es/SocketContext.js +0 -7
- package/es/adapters/PubNub.js +0 -213
- package/es/adapters/SocketIO.js +0 -226
- package/es/adapters/index.js +0 -6
- package/es/index.js +0 -5
- package/es/useSocket.js +0 -96
- package/es/withSocket.js +0 -27
- package/lib/Socket.js +0 -390
- package/lib/SocketContainer.js +0 -139
- package/lib/SocketContext.js +0 -19
- package/lib/adapters/PubNub.js +0 -233
- package/lib/adapters/SocketIO.js +0 -246
- package/lib/adapters/index.js +0 -18
- package/lib/index.js +0 -53
- package/lib/useSocket.js +0 -109
- package/lib/withSocket.js +0 -39
package/lib/adapters/PubNub.js
DELETED
|
@@ -1,233 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _interopRequireWildcard2 = _interopRequireDefault(require("@babel/runtime/helpers/interopRequireWildcard"));
|
|
11
|
-
|
|
12
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
13
|
-
|
|
14
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
15
|
-
|
|
16
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
17
|
-
|
|
18
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
19
|
-
|
|
20
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
21
|
-
|
|
22
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
23
|
-
|
|
24
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
25
|
-
|
|
26
|
-
var _debug = _interopRequireDefault(require("debug"));
|
|
27
|
-
|
|
28
|
-
var _wolfy87Eventemitter = _interopRequireDefault(require("wolfy87-eventemitter"));
|
|
29
|
-
|
|
30
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
31
|
-
|
|
32
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
33
|
-
|
|
34
|
-
var debug = (0, _debug["default"])('folklore:socket:pubnub');
|
|
35
|
-
|
|
36
|
-
var PubNubSocket =
|
|
37
|
-
/*#__PURE__*/
|
|
38
|
-
function (_EventEmitter) {
|
|
39
|
-
(0, _inherits2["default"])(PubNubSocket, _EventEmitter);
|
|
40
|
-
|
|
41
|
-
function PubNubSocket(opts) {
|
|
42
|
-
var _this;
|
|
43
|
-
|
|
44
|
-
(0, _classCallCheck2["default"])(this, PubNubSocket);
|
|
45
|
-
_this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(PubNubSocket).call(this));
|
|
46
|
-
_this.options = _objectSpread({
|
|
47
|
-
uuid: null,
|
|
48
|
-
publishKey: null,
|
|
49
|
-
subscribeKey: null,
|
|
50
|
-
secretKey: null
|
|
51
|
-
}, opts);
|
|
52
|
-
_this.onReady = _this.onReady.bind((0, _assertThisInitialized2["default"])(_this));
|
|
53
|
-
_this.onStatus = _this.onStatus.bind((0, _assertThisInitialized2["default"])(_this));
|
|
54
|
-
_this.onMessage = _this.onMessage.bind((0, _assertThisInitialized2["default"])(_this));
|
|
55
|
-
_this.ready = false;
|
|
56
|
-
_this.shouldStart = false;
|
|
57
|
-
_this.started = false;
|
|
58
|
-
_this.starting = false;
|
|
59
|
-
_this.PubNub = null;
|
|
60
|
-
_this.pubnub = null;
|
|
61
|
-
_this.pubnubListener = null;
|
|
62
|
-
_this.channels = [];
|
|
63
|
-
|
|
64
|
-
_this.init();
|
|
65
|
-
|
|
66
|
-
return _this;
|
|
67
|
-
}
|
|
68
|
-
|
|
69
|
-
(0, _createClass2["default"])(PubNubSocket, [{
|
|
70
|
-
key: "onReady",
|
|
71
|
-
value: function onReady() {
|
|
72
|
-
this.ready = true;
|
|
73
|
-
this.emit('ready');
|
|
74
|
-
}
|
|
75
|
-
}, {
|
|
76
|
-
key: "onStatus",
|
|
77
|
-
value: function onStatus(statusEvent) {
|
|
78
|
-
if (statusEvent.category === 'PNConnectedCategory' && !this.started) {
|
|
79
|
-
this.started = true;
|
|
80
|
-
this.starting = false;
|
|
81
|
-
this.emit('started');
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
}, {
|
|
85
|
-
key: "onMessage",
|
|
86
|
-
value: function onMessage(_ref) {
|
|
87
|
-
var message = _ref.message;
|
|
88
|
-
this.emit('message', message);
|
|
89
|
-
|
|
90
|
-
if (typeof message.event !== 'undefined') {
|
|
91
|
-
this.emit(message.event, message.data || message);
|
|
92
|
-
}
|
|
93
|
-
}
|
|
94
|
-
}, {
|
|
95
|
-
key: "updateChannels",
|
|
96
|
-
value: function updateChannels(channels) {
|
|
97
|
-
debug("Updating channels: ".concat(channels.join(', ')));
|
|
98
|
-
var shouldStart = this.shouldStart,
|
|
99
|
-
started = this.started,
|
|
100
|
-
starting = this.starting;
|
|
101
|
-
|
|
102
|
-
if (started || starting) {
|
|
103
|
-
this.stop();
|
|
104
|
-
}
|
|
105
|
-
|
|
106
|
-
this.channels = channels;
|
|
107
|
-
|
|
108
|
-
if (started || starting || shouldStart) {
|
|
109
|
-
this.shouldStart = false;
|
|
110
|
-
this.start();
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
}, {
|
|
114
|
-
key: "init",
|
|
115
|
-
value: function init() {
|
|
116
|
-
var _this2 = this;
|
|
117
|
-
|
|
118
|
-
Promise.resolve().then(function () {
|
|
119
|
-
return (0, _interopRequireWildcard2["default"])(require('pubnub'));
|
|
120
|
-
}).then(function (_ref2) {
|
|
121
|
-
var PubNub = _ref2["default"];
|
|
122
|
-
_this2.PubNub = PubNub;
|
|
123
|
-
}).then(function () {
|
|
124
|
-
return _this2.createPubNub();
|
|
125
|
-
}).then(function () {
|
|
126
|
-
return _this2.onReady();
|
|
127
|
-
});
|
|
128
|
-
}
|
|
129
|
-
}, {
|
|
130
|
-
key: "createPubNub",
|
|
131
|
-
value: function createPubNub() {
|
|
132
|
-
var PubNub = this.PubNub;
|
|
133
|
-
var pubnubOptions = {
|
|
134
|
-
publishKey: this.options.publishKey,
|
|
135
|
-
subscribeKey: this.options.subscribeKey
|
|
136
|
-
};
|
|
137
|
-
|
|
138
|
-
if (this.options.uuid !== null) {
|
|
139
|
-
pubnubOptions.uuid = this.options.uuid;
|
|
140
|
-
}
|
|
141
|
-
|
|
142
|
-
if (this.options.secretKey !== null) {
|
|
143
|
-
pubnubOptions.secretKey = this.options.secretKey;
|
|
144
|
-
}
|
|
145
|
-
|
|
146
|
-
this.pubnub = new PubNub(pubnubOptions);
|
|
147
|
-
this.pubnubListener = {
|
|
148
|
-
status: this.onStatus,
|
|
149
|
-
message: this.onMessage
|
|
150
|
-
};
|
|
151
|
-
this.pubnub.addListener(this.pubnubListener);
|
|
152
|
-
}
|
|
153
|
-
}, {
|
|
154
|
-
key: "destroy",
|
|
155
|
-
value: function destroy() {
|
|
156
|
-
this.stop();
|
|
157
|
-
|
|
158
|
-
if (this.pubnubListener) {
|
|
159
|
-
this.pubnub.removeListener(this.pubnubListener);
|
|
160
|
-
this.pubnubListener = null;
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
this.ready = false;
|
|
164
|
-
debug('Destroyed.');
|
|
165
|
-
}
|
|
166
|
-
}, {
|
|
167
|
-
key: "start",
|
|
168
|
-
value: function start() {
|
|
169
|
-
if (this.started) {
|
|
170
|
-
debug('Skipping start: Already started.');
|
|
171
|
-
return;
|
|
172
|
-
}
|
|
173
|
-
|
|
174
|
-
if (this.starting) {
|
|
175
|
-
debug('Skipping start: Already starting.');
|
|
176
|
-
return;
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
if (this.channels.length === 0) {
|
|
180
|
-
debug('Skipping start: No channels.');
|
|
181
|
-
this.shouldStart = true;
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
this.shouldStart = false;
|
|
186
|
-
this.starting = true;
|
|
187
|
-
this.pubnub.subscribe({
|
|
188
|
-
channels: this.channels
|
|
189
|
-
});
|
|
190
|
-
this.emit('start');
|
|
191
|
-
}
|
|
192
|
-
}, {
|
|
193
|
-
key: "stop",
|
|
194
|
-
value: function stop() {
|
|
195
|
-
if (!this.started && !this.starting) {
|
|
196
|
-
return;
|
|
197
|
-
}
|
|
198
|
-
|
|
199
|
-
debug('Stopping...');
|
|
200
|
-
this.shouldStart = false;
|
|
201
|
-
this.started = false;
|
|
202
|
-
this.starting = false;
|
|
203
|
-
this.pubnub.unsubscribe({
|
|
204
|
-
channels: this.channels
|
|
205
|
-
});
|
|
206
|
-
this.emit('stop');
|
|
207
|
-
}
|
|
208
|
-
}, {
|
|
209
|
-
key: "send",
|
|
210
|
-
value: function send(data) {
|
|
211
|
-
var _this3 = this;
|
|
212
|
-
|
|
213
|
-
debug('Sending', data);
|
|
214
|
-
return new Promise(function (resolve, reject) {
|
|
215
|
-
_this3.pubnub.publish(data, function (status, response) {
|
|
216
|
-
if (status.error) {
|
|
217
|
-
reject(new Error("Error operation:".concat(status.operation, " status:").concat(status.statusCode)));
|
|
218
|
-
} else {
|
|
219
|
-
resolve({
|
|
220
|
-
status: status,
|
|
221
|
-
response: response,
|
|
222
|
-
data: data
|
|
223
|
-
});
|
|
224
|
-
}
|
|
225
|
-
});
|
|
226
|
-
});
|
|
227
|
-
}
|
|
228
|
-
}]);
|
|
229
|
-
return PubNubSocket;
|
|
230
|
-
}(_wolfy87Eventemitter["default"]);
|
|
231
|
-
|
|
232
|
-
var _default = PubNubSocket;
|
|
233
|
-
exports["default"] = _default;
|
package/lib/adapters/SocketIO.js
DELETED
|
@@ -1,246 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
|
|
11
|
-
|
|
12
|
-
var _interopRequireWildcard2 = _interopRequireDefault(require("@babel/runtime/helpers/interopRequireWildcard"));
|
|
13
|
-
|
|
14
|
-
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime/helpers/defineProperty"));
|
|
15
|
-
|
|
16
|
-
var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime/helpers/classCallCheck"));
|
|
17
|
-
|
|
18
|
-
var _createClass2 = _interopRequireDefault(require("@babel/runtime/helpers/createClass"));
|
|
19
|
-
|
|
20
|
-
var _possibleConstructorReturn2 = _interopRequireDefault(require("@babel/runtime/helpers/possibleConstructorReturn"));
|
|
21
|
-
|
|
22
|
-
var _getPrototypeOf2 = _interopRequireDefault(require("@babel/runtime/helpers/getPrototypeOf"));
|
|
23
|
-
|
|
24
|
-
var _assertThisInitialized2 = _interopRequireDefault(require("@babel/runtime/helpers/assertThisInitialized"));
|
|
25
|
-
|
|
26
|
-
var _inherits2 = _interopRequireDefault(require("@babel/runtime/helpers/inherits"));
|
|
27
|
-
|
|
28
|
-
var _debug = _interopRequireDefault(require("debug"));
|
|
29
|
-
|
|
30
|
-
var _wolfy87Eventemitter = _interopRequireDefault(require("wolfy87-eventemitter"));
|
|
31
|
-
|
|
32
|
-
var _isArray = _interopRequireDefault(require("lodash/isArray"));
|
|
33
|
-
|
|
34
|
-
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }
|
|
35
|
-
|
|
36
|
-
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(source, true).forEach(function (key) { (0, _defineProperty2["default"])(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(source).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
|
|
37
|
-
|
|
38
|
-
var debug = (0, _debug["default"])('folklore:socket:socketio');
|
|
39
|
-
|
|
40
|
-
var SocketIOSocket =
|
|
41
|
-
/*#__PURE__*/
|
|
42
|
-
function (_EventEmitter) {
|
|
43
|
-
(0, _inherits2["default"])(SocketIOSocket, _EventEmitter);
|
|
44
|
-
|
|
45
|
-
function SocketIOSocket(opts) {
|
|
46
|
-
var _this;
|
|
47
|
-
|
|
48
|
-
(0, _classCallCheck2["default"])(this, SocketIOSocket);
|
|
49
|
-
_this = (0, _possibleConstructorReturn2["default"])(this, (0, _getPrototypeOf2["default"])(SocketIOSocket).call(this));
|
|
50
|
-
_this.options = _objectSpread({
|
|
51
|
-
uuid: null,
|
|
52
|
-
host: 'http://127.0.0.1',
|
|
53
|
-
path: null,
|
|
54
|
-
query: null
|
|
55
|
-
}, opts);
|
|
56
|
-
_this.onReady = _this.onReady.bind((0, _assertThisInitialized2["default"])(_this));
|
|
57
|
-
_this.onConnect = _this.onConnect.bind((0, _assertThisInitialized2["default"])(_this));
|
|
58
|
-
_this.onMessage = _this.onMessage.bind((0, _assertThisInitialized2["default"])(_this));
|
|
59
|
-
_this.ready = false;
|
|
60
|
-
_this.shouldStart = false;
|
|
61
|
-
_this.started = false;
|
|
62
|
-
_this.starting = false;
|
|
63
|
-
_this.Manager = null;
|
|
64
|
-
_this.io = null;
|
|
65
|
-
_this.sockets = {};
|
|
66
|
-
_this.channels = [];
|
|
67
|
-
|
|
68
|
-
_this.init();
|
|
69
|
-
|
|
70
|
-
return _this;
|
|
71
|
-
}
|
|
72
|
-
|
|
73
|
-
(0, _createClass2["default"])(SocketIOSocket, [{
|
|
74
|
-
key: "onReady",
|
|
75
|
-
value: function onReady() {
|
|
76
|
-
this.ready = true;
|
|
77
|
-
this.emit('ready');
|
|
78
|
-
}
|
|
79
|
-
}, {
|
|
80
|
-
key: "onConnect",
|
|
81
|
-
value: function onConnect() {
|
|
82
|
-
if (!this.started) {
|
|
83
|
-
this.started = true;
|
|
84
|
-
this.starting = false;
|
|
85
|
-
this.emit('started');
|
|
86
|
-
}
|
|
87
|
-
}
|
|
88
|
-
}, {
|
|
89
|
-
key: "onMessage",
|
|
90
|
-
value: function onMessage(message) {
|
|
91
|
-
debug('Message received', message);
|
|
92
|
-
this.emit('message', message);
|
|
93
|
-
}
|
|
94
|
-
}, {
|
|
95
|
-
key: "init",
|
|
96
|
-
value: function init() {
|
|
97
|
-
var _this2 = this;
|
|
98
|
-
|
|
99
|
-
Promise.resolve().then(function () {
|
|
100
|
-
return (0, _interopRequireWildcard2["default"])(require('socket.io-client'));
|
|
101
|
-
}).then(function (_ref) {
|
|
102
|
-
var IO = _ref["default"];
|
|
103
|
-
_this2.Manager = IO.Manager;
|
|
104
|
-
}).then(function () {
|
|
105
|
-
return _this2.createManager();
|
|
106
|
-
}).then(function () {
|
|
107
|
-
return _this2.onReady();
|
|
108
|
-
}).then(function () {
|
|
109
|
-
if (_this2.shouldStart) {
|
|
110
|
-
_this2.start();
|
|
111
|
-
}
|
|
112
|
-
});
|
|
113
|
-
}
|
|
114
|
-
}, {
|
|
115
|
-
key: "createManager",
|
|
116
|
-
value: function createManager() {
|
|
117
|
-
var Manager = this.Manager;
|
|
118
|
-
var _this$options = this.options,
|
|
119
|
-
host = _this$options.host,
|
|
120
|
-
opts = (0, _objectWithoutProperties2["default"])(_this$options, ["host"]);
|
|
121
|
-
this.io = new Manager(host, _objectSpread({
|
|
122
|
-
autoConnect: false
|
|
123
|
-
}, opts));
|
|
124
|
-
}
|
|
125
|
-
}, {
|
|
126
|
-
key: "updateChannels",
|
|
127
|
-
value: function updateChannels(channels) {
|
|
128
|
-
debug("Updating channels: ".concat(channels.join(', ')));
|
|
129
|
-
var shouldStart = this.shouldStart,
|
|
130
|
-
started = this.started,
|
|
131
|
-
starting = this.starting;
|
|
132
|
-
|
|
133
|
-
if (started || starting) {
|
|
134
|
-
this.stop();
|
|
135
|
-
}
|
|
136
|
-
|
|
137
|
-
this.channels = channels;
|
|
138
|
-
|
|
139
|
-
if (started || starting || shouldStart) {
|
|
140
|
-
this.start();
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
}, {
|
|
144
|
-
key: "start",
|
|
145
|
-
value: function start() {
|
|
146
|
-
var _this3 = this;
|
|
147
|
-
|
|
148
|
-
if (this.started) {
|
|
149
|
-
debug('Skipping start: Already started.');
|
|
150
|
-
return;
|
|
151
|
-
}
|
|
152
|
-
|
|
153
|
-
if (this.starting) {
|
|
154
|
-
debug('Skipping start: Already starting.');
|
|
155
|
-
return;
|
|
156
|
-
}
|
|
157
|
-
|
|
158
|
-
if (this.io === null) {
|
|
159
|
-
debug('Socket.io not ready.');
|
|
160
|
-
this.shouldStart = true;
|
|
161
|
-
return;
|
|
162
|
-
}
|
|
163
|
-
|
|
164
|
-
if (this.channels.length === 0) {
|
|
165
|
-
debug('Skipping start: No channels.');
|
|
166
|
-
this.shouldStart = true;
|
|
167
|
-
return;
|
|
168
|
-
}
|
|
169
|
-
|
|
170
|
-
this.shouldStart = false;
|
|
171
|
-
this.starting = true;
|
|
172
|
-
this.sockets = this.channels.reduce(function (map, channel) {
|
|
173
|
-
return _objectSpread({}, map, (0, _defineProperty2["default"])({}, channel, _this3.createSocket(channel)));
|
|
174
|
-
}, {});
|
|
175
|
-
this.emit('start');
|
|
176
|
-
}
|
|
177
|
-
}, {
|
|
178
|
-
key: "stop",
|
|
179
|
-
value: function stop() {
|
|
180
|
-
var _this4 = this;
|
|
181
|
-
|
|
182
|
-
if (!this.started && !this.starting) {
|
|
183
|
-
return;
|
|
184
|
-
}
|
|
185
|
-
|
|
186
|
-
debug('Stopping...');
|
|
187
|
-
this.shouldStart = false;
|
|
188
|
-
this.started = false;
|
|
189
|
-
this.starting = false;
|
|
190
|
-
Object.values(this.sockets).forEach(function (socket) {
|
|
191
|
-
return _this4.stopSocket(socket);
|
|
192
|
-
});
|
|
193
|
-
this.emit('stop');
|
|
194
|
-
}
|
|
195
|
-
}, {
|
|
196
|
-
key: "createSocket",
|
|
197
|
-
value: function createSocket(channel) {
|
|
198
|
-
var _this5 = this;
|
|
199
|
-
|
|
200
|
-
var socket = this.io.socket("/".concat(channel.replace(/^\//, '')));
|
|
201
|
-
socket.on('message', function (message) {
|
|
202
|
-
return _this5.onMessage(message, channel);
|
|
203
|
-
});
|
|
204
|
-
socket.on('connect', this.onConnect);
|
|
205
|
-
socket.open();
|
|
206
|
-
return socket;
|
|
207
|
-
} // eslint-disable-next-line class-methods-use-this
|
|
208
|
-
|
|
209
|
-
}, {
|
|
210
|
-
key: "stopSocket",
|
|
211
|
-
value: function stopSocket(socket) {
|
|
212
|
-
socket.off('connect');
|
|
213
|
-
socket.off('message');
|
|
214
|
-
socket.close();
|
|
215
|
-
return socket;
|
|
216
|
-
}
|
|
217
|
-
}, {
|
|
218
|
-
key: "destroy",
|
|
219
|
-
value: function destroy() {
|
|
220
|
-
this.stop();
|
|
221
|
-
this.sockets = {};
|
|
222
|
-
|
|
223
|
-
if (this.io !== null) {
|
|
224
|
-
this.io.close();
|
|
225
|
-
this.io = null;
|
|
226
|
-
}
|
|
227
|
-
}
|
|
228
|
-
}, {
|
|
229
|
-
key: "send",
|
|
230
|
-
value: function send(data) {
|
|
231
|
-
var _this6 = this;
|
|
232
|
-
|
|
233
|
-
var channel = data.channel,
|
|
234
|
-
message = data.message;
|
|
235
|
-
var channels = !(0, _isArray["default"])(channel) ? [channel] : channel;
|
|
236
|
-
channels.forEach(function (ch) {
|
|
237
|
-
_this6.sockets[ch].send(message);
|
|
238
|
-
});
|
|
239
|
-
return Promise.resolve();
|
|
240
|
-
}
|
|
241
|
-
}]);
|
|
242
|
-
return SocketIOSocket;
|
|
243
|
-
}(_wolfy87Eventemitter["default"]);
|
|
244
|
-
|
|
245
|
-
var _default = SocketIOSocket;
|
|
246
|
-
exports["default"] = _default;
|
package/lib/adapters/index.js
DELETED
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _PubNub = _interopRequireDefault(require("./PubNub"));
|
|
11
|
-
|
|
12
|
-
var _SocketIO = _interopRequireDefault(require("./SocketIO"));
|
|
13
|
-
|
|
14
|
-
var _default = {
|
|
15
|
-
PubNub: _PubNub["default"],
|
|
16
|
-
SocketIO: _SocketIO["default"]
|
|
17
|
-
};
|
|
18
|
-
exports["default"] = _default;
|
package/lib/index.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
Object.defineProperty(exports, "default", {
|
|
9
|
-
enumerable: true,
|
|
10
|
-
get: function get() {
|
|
11
|
-
return _Socket["default"];
|
|
12
|
-
}
|
|
13
|
-
});
|
|
14
|
-
Object.defineProperty(exports, "Socket", {
|
|
15
|
-
enumerable: true,
|
|
16
|
-
get: function get() {
|
|
17
|
-
return _Socket["default"];
|
|
18
|
-
}
|
|
19
|
-
});
|
|
20
|
-
Object.defineProperty(exports, "SocketContext", {
|
|
21
|
-
enumerable: true,
|
|
22
|
-
get: function get() {
|
|
23
|
-
return _SocketContext["default"];
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
Object.defineProperty(exports, "SocketContainer", {
|
|
27
|
-
enumerable: true,
|
|
28
|
-
get: function get() {
|
|
29
|
-
return _SocketContainer["default"];
|
|
30
|
-
}
|
|
31
|
-
});
|
|
32
|
-
Object.defineProperty(exports, "withSocket", {
|
|
33
|
-
enumerable: true,
|
|
34
|
-
get: function get() {
|
|
35
|
-
return _withSocket["default"];
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
Object.defineProperty(exports, "useSocket", {
|
|
39
|
-
enumerable: true,
|
|
40
|
-
get: function get() {
|
|
41
|
-
return _useSocket["default"];
|
|
42
|
-
}
|
|
43
|
-
});
|
|
44
|
-
|
|
45
|
-
var _Socket = _interopRequireDefault(require("./Socket"));
|
|
46
|
-
|
|
47
|
-
var _SocketContext = _interopRequireDefault(require("./SocketContext"));
|
|
48
|
-
|
|
49
|
-
var _SocketContainer = _interopRequireDefault(require("./SocketContainer"));
|
|
50
|
-
|
|
51
|
-
var _withSocket = _interopRequireDefault(require("./withSocket"));
|
|
52
|
-
|
|
53
|
-
var _useSocket = _interopRequireDefault(require("./useSocket"));
|
package/lib/useSocket.js
DELETED
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
|
|
11
|
-
|
|
12
|
-
var _react = require("react");
|
|
13
|
-
|
|
14
|
-
var _isString = _interopRequireDefault(require("lodash/isString"));
|
|
15
|
-
|
|
16
|
-
var _SocketContext = _interopRequireDefault(require("./SocketContext"));
|
|
17
|
-
|
|
18
|
-
var useSocket = function useSocket() {
|
|
19
|
-
var channelNames = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : null;
|
|
20
|
-
|
|
21
|
-
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},
|
|
22
|
-
_ref$socket = _ref.socket,
|
|
23
|
-
customSocket = _ref$socket === void 0 ? null : _ref$socket,
|
|
24
|
-
_ref$onMessage = _ref.onMessage,
|
|
25
|
-
customOnMessage = _ref$onMessage === void 0 ? null : _ref$onMessage;
|
|
26
|
-
|
|
27
|
-
var _useContext = (0, _react.useContext)(_SocketContext["default"]),
|
|
28
|
-
contextSocket = _useContext.socket,
|
|
29
|
-
subscribe = _useContext.subscribe,
|
|
30
|
-
unsubscribe = _useContext.unsubscribe;
|
|
31
|
-
|
|
32
|
-
var socket = customSocket || contextSocket || null;
|
|
33
|
-
|
|
34
|
-
var _useState = (0, _react.useState)(socket !== null ? socket.isStarted() : false),
|
|
35
|
-
_useState2 = (0, _slicedToArray2["default"])(_useState, 2),
|
|
36
|
-
started = _useState2[0],
|
|
37
|
-
setStarted = _useState2[1];
|
|
38
|
-
|
|
39
|
-
var channels = (0, _isString["default"])(channelNames) ? [channelNames] : channelNames;
|
|
40
|
-
var channelsKey = (channels || []).sort().join(',');
|
|
41
|
-
(0, _react.useEffect)(function () {
|
|
42
|
-
if (socket === null) {
|
|
43
|
-
if (process.env.NODE_ENV !== 'production') {
|
|
44
|
-
console.warn('Socket context is empty.');
|
|
45
|
-
}
|
|
46
|
-
|
|
47
|
-
return function () {};
|
|
48
|
-
}
|
|
49
|
-
|
|
50
|
-
var wasStarted = socket.isStarted();
|
|
51
|
-
|
|
52
|
-
var onStarted = function onStarted() {
|
|
53
|
-
return setStarted(true);
|
|
54
|
-
};
|
|
55
|
-
|
|
56
|
-
var onStop = function onStop() {
|
|
57
|
-
return setStarted(false);
|
|
58
|
-
};
|
|
59
|
-
|
|
60
|
-
socket.on('stop', onStop);
|
|
61
|
-
socket.on('started', onStarted);
|
|
62
|
-
|
|
63
|
-
if (channels !== null) {
|
|
64
|
-
subscribe(channels);
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
if (!wasStarted) {
|
|
68
|
-
socket.start();
|
|
69
|
-
}
|
|
70
|
-
|
|
71
|
-
return function () {
|
|
72
|
-
socket.off('stop', onStop);
|
|
73
|
-
socket.off('started', onStarted);
|
|
74
|
-
|
|
75
|
-
if (channels !== null) {
|
|
76
|
-
unsubscribe(channels);
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
if (!wasStarted) {
|
|
80
|
-
socket.stop();
|
|
81
|
-
}
|
|
82
|
-
};
|
|
83
|
-
}, [channelsKey, customSocket]);
|
|
84
|
-
(0, _react.useEffect)(function () {
|
|
85
|
-
if (socket === null) {
|
|
86
|
-
return function () {};
|
|
87
|
-
}
|
|
88
|
-
|
|
89
|
-
var onMessage = function onMessage() {
|
|
90
|
-
if (customOnMessage !== null) {
|
|
91
|
-
customOnMessage.apply(void 0, arguments);
|
|
92
|
-
}
|
|
93
|
-
};
|
|
94
|
-
|
|
95
|
-
socket.on('message', onMessage);
|
|
96
|
-
return function () {
|
|
97
|
-
socket.off('message', onMessage);
|
|
98
|
-
};
|
|
99
|
-
}, [customOnMessage]);
|
|
100
|
-
return {
|
|
101
|
-
socket: socket,
|
|
102
|
-
started: started,
|
|
103
|
-
subscribe: subscribe,
|
|
104
|
-
unsubscribe: unsubscribe
|
|
105
|
-
};
|
|
106
|
-
};
|
|
107
|
-
|
|
108
|
-
var _default = useSocket;
|
|
109
|
-
exports["default"] = _default;
|
package/lib/withSocket.js
DELETED
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
|
|
3
|
-
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
|
-
|
|
5
|
-
Object.defineProperty(exports, "__esModule", {
|
|
6
|
-
value: true
|
|
7
|
-
});
|
|
8
|
-
exports["default"] = void 0;
|
|
9
|
-
|
|
10
|
-
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
11
|
-
|
|
12
|
-
var _react = _interopRequireDefault(require("react"));
|
|
13
|
-
|
|
14
|
-
var _SocketContext = _interopRequireDefault(require("./SocketContext"));
|
|
15
|
-
|
|
16
|
-
var getDisplayName = function getDisplayName(WrappedComponent) {
|
|
17
|
-
return WrappedComponent.displayName || WrappedComponent.name || 'Component';
|
|
18
|
-
};
|
|
19
|
-
|
|
20
|
-
var withSocket = function withSocket(WrappedComponent) {
|
|
21
|
-
var WithSocketComponent = function WithSocketComponent(props) {
|
|
22
|
-
return _react["default"].createElement(_SocketContext["default"].Consumer, null, function (_ref) {
|
|
23
|
-
var socket = _ref.socket,
|
|
24
|
-
subscribe = _ref.subscribe,
|
|
25
|
-
unsubscribe = _ref.unsubscribe;
|
|
26
|
-
return _react["default"].createElement(WrappedComponent, (0, _extends2["default"])({
|
|
27
|
-
socket: socket,
|
|
28
|
-
socketSubscribe: subscribe,
|
|
29
|
-
socketUnsubscribe: unsubscribe
|
|
30
|
-
}, props));
|
|
31
|
-
});
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
WithSocketComponent.displayName = "WithSocket(".concat(getDisplayName(WrappedComponent), ")");
|
|
35
|
-
return WithSocketComponent;
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
var _default = withSocket;
|
|
39
|
-
exports["default"] = _default;
|