2019-08-31 04:07:25 +05:00
|
|
|
import socketIOClient from 'socket.io-client';
|
|
|
|
|
import sailsIOClient from 'sails.io.js';
|
|
|
|
|
|
|
|
|
|
import Config from '../constants/Config';
|
|
|
|
|
|
|
|
|
|
const io = sailsIOClient(socketIOClient);
|
|
|
|
|
|
2019-10-01 04:18:33 +05:00
|
|
|
io.sails.url = Config.SERVER_BASE_URL;
|
2019-08-31 04:07:25 +05:00
|
|
|
io.sails.autoConnect = false;
|
|
|
|
|
io.sails.reconnection = true;
|
|
|
|
|
io.sails.useCORSRouteToGetCookie = false;
|
2019-09-25 02:26:31 +05:00
|
|
|
io.sails.environment = process.env.NODE_ENV;
|
2019-08-31 04:07:25 +05:00
|
|
|
|
|
|
|
|
const { socket } = io;
|
|
|
|
|
|
|
|
|
|
socket.connect = socket._connect; // eslint-disable-line no-underscore-dangle
|
|
|
|
|
|
2020-03-25 00:15:47 +05:00
|
|
|
['GET', 'POST', 'PUT', 'PATCH', 'DELETE'].forEach((method) => {
|
2022-04-26 18:01:55 +05:00
|
|
|
socket[method.toLowerCase()] = (url, data) =>
|
2020-02-03 18:42:31 +05:00
|
|
|
new Promise((resolve, reject) => {
|
|
|
|
|
socket.request(
|
|
|
|
|
{
|
|
|
|
|
method,
|
|
|
|
|
data,
|
|
|
|
|
url: `/api${url}`,
|
|
|
|
|
},
|
|
|
|
|
(_, { body, error }) => {
|
|
|
|
|
if (error) {
|
|
|
|
|
reject(body);
|
|
|
|
|
} else {
|
|
|
|
|
resolve(body);
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
);
|
|
|
|
|
});
|
2019-08-31 04:07:25 +05:00
|
|
|
});
|
|
|
|
|
|
|
|
|
|
export default socket;
|