cool-common-utils 1.0.4 → 1.0.7
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.
|
@@ -12,8 +12,8 @@ export interface WebSocketRequestMessage {
|
|
|
12
12
|
fromUserId?: number;
|
|
13
13
|
toUserId?: number;
|
|
14
14
|
formOrigin?: number;
|
|
15
|
-
actionId: number;
|
|
16
|
-
eventId?: number;
|
|
15
|
+
actionId: number | string;
|
|
16
|
+
eventId?: number | string;
|
|
17
17
|
toOrigin?: number;
|
|
18
18
|
data?: any;
|
|
19
19
|
}
|
|
@@ -39,6 +39,7 @@ export declare class Websocket {
|
|
|
39
39
|
private registerTipMap;
|
|
40
40
|
private registerMessageHandlerMap;
|
|
41
41
|
private messageQueueList;
|
|
42
|
+
private firstConnect;
|
|
42
43
|
private readonly url;
|
|
43
44
|
constructor(url: string);
|
|
44
45
|
private initWebsocket;
|
|
@@ -52,10 +53,10 @@ export declare class Websocket {
|
|
|
52
53
|
private clearHeartBeat;
|
|
53
54
|
private allRegisterWebsocket;
|
|
54
55
|
private allRegisterMessageHandler;
|
|
55
|
-
registerWebsocket(data: WebSocketRequestMessage): void;
|
|
56
|
+
registerWebsocket(data: WebSocketRequestMessage, callback?: any): void;
|
|
56
57
|
unregisterWebsocket(data: WebSocketRequestMessage): void;
|
|
57
58
|
send(data: WebSocketRequestMessage): void;
|
|
58
|
-
message(actionId: string, callback: any): void;
|
|
59
|
+
message(actionId: string | number, callback: any): void;
|
|
59
60
|
close(): void;
|
|
60
61
|
private addStatus;
|
|
61
62
|
private removeStatus;
|
package/dist/websocket.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var e,t=require("./commons/vendor-other-Cd2MOa_2.js"),o=require("./utils.js");require("./commons/vendor-crypto-js-AYnBdXB5.js"),exports.EventId=void 0,(e=exports.EventId||(exports.EventId={}))[e.HEARTBEAT=1e3]="HEARTBEAT";var s=function(){function e(e){var t=this;this.websocket=null,this.connectState=!1,this.reconnectCount=0,this.maxReconnectCount=5,this.reconnectTimestamp=1e4,this.heartBeatTimer=null,this.heartBeatTimeout=4e3,this.heartBeatData={actionId:exports.EventId.HEARTBEAT},this.registerTipMap=new Map,this.registerMessageHandlerMap=new Map,this.messageQueueList=new Map,this.startHeartBeat=function(){t.send(t.heartBeatData),t.heartBeatTimer=setTimeout(t.startHeartBeat,t.heartBeatTimeout)},this.url=e,this.addStatus(),this.initWebsocket()}return e.prototype.initWebsocket=function(){var e,t=this;0===this.reconnectCount&&console.log("%cWebSocket","background-color: #889CBB;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","初始化连接..."),(null===(e=this.websocket)||void 0===e?void 0:e.readyState)!==WebSocket.OPEN&&(this.websocket=new WebSocket(this.url),this.websocket.onopen=function(){t.websocketOpen()},this.websocket.onmessage=function(e){t.websocketOnMessage(e)},this.websocket.onerror=function(){t.websocketOnError()},this.websocket.onclose=function(){t.websocketOnClose()})},e.prototype.websocketOpen=function(){var e,o,s;this.connectState=!0,this.reconnectCount=0,this.clearHeartBeat(),this.startHeartBeat(),this.allRegisterWebsocket();try{for(var
|
|
1
|
+
"use strict";var e,t=require("./commons/vendor-other-Cd2MOa_2.js"),o=require("./utils.js");require("./commons/vendor-crypto-js-AYnBdXB5.js"),exports.EventId=void 0,(e=exports.EventId||(exports.EventId={}))[e.HEARTBEAT=1e3]="HEARTBEAT";var s=function(){function e(e){var t=this;this.websocket=null,this.connectState=!1,this.reconnectCount=0,this.maxReconnectCount=5,this.reconnectTimestamp=1e4,this.heartBeatTimer=null,this.heartBeatTimeout=4e3,this.heartBeatData={actionId:exports.EventId.HEARTBEAT},this.registerTipMap=new Map,this.registerMessageHandlerMap=new Map,this.messageQueueList=new Map,this.firstConnect=0,this.startHeartBeat=function(){t.send(t.heartBeatData),t.heartBeatTimer=setTimeout(t.startHeartBeat,t.heartBeatTimeout)},this.url=e,this.addStatus(),this.initWebsocket()}return e.prototype.initWebsocket=function(){var e,t=this;0===this.reconnectCount&&console.log("%cWebSocket","background-color: #889CBB;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","初始化连接..."),(null===(e=this.websocket)||void 0===e?void 0:e.readyState)!==WebSocket.OPEN&&(this.websocket=new WebSocket(this.url),this.websocket.onopen=function(){t.websocketOpen()},this.websocket.onmessage=function(e){t.websocketOnMessage(e)},this.websocket.onerror=function(){t.websocketOnError()},this.websocket.onclose=function(){t.websocketOnClose()})},e.prototype.websocketOpen=function(){var e,o,s;this.connectState=!0,this.reconnectCount=0,this.clearHeartBeat(),this.startHeartBeat(),this.allRegisterWebsocket();try{for(var n=t.__values(this.messageQueueList),r=n.next();!r.done;r=n.next()){var a=t.__read(r.value,2),i=a[0],c=a[1];null===(s=this.websocket)||void 0===s||s.send(JSON.stringify(c)),this.messageQueueList.delete(i)}}catch(t){e={error:t}}finally{try{r&&!r.done&&(o=n.return)&&o.call(n)}finally{if(e)throw e.error}}this.changeStatusColor("#5FB878"),console.log("%cWebSocket","background-color: #5FB878;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接成功,等待服务端数据推送[onopen]...")},e.prototype.websocketOnError=function(){0===this.reconnectCount&&(this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接异常[onerror]...")),this.clearHeartBeat()},e.prototype.websocketOnClose=function(){0===this.reconnectCount&&(this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接断开[onclose]...")),this.connectState&&this.disconnectAndReconnect()},e.prototype.websocketOnMessage=function(e){var t=e.data;o.isJson(e.data)&&(t=JSON.parse(e.data)),-1!==t.msgType&&(this.allRegisterMessageHandler(t),window.dispatchEvent(new CustomEvent("websocketOnMessage",{detail:{data:t}})))},e.prototype.disconnectAndReconnect=function(){var e=this;this.reconnectCount<this.maxReconnectCount?(this.firstConnect=1,++this.reconnectCount,this.changeStatusColor("#FFB800"),console.log("%cWebSocket","background-color: #FFB800;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","尝试重连...".concat(this.reconnectCount,"/").concat(this.maxReconnectCount)),setTimeout(function(){e.initWebsocket()},this.reconnectTimestamp)):(this.clearHeartBeat(),this.connectState=!1,this.reconnectCount=0,this.firstConnect=0,this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","最大重连失败, 终止重连..."))},e.prototype.resetHeartBeat=function(){this.clearHeartBeat(),this.startHeartBeat()},e.prototype.clearHeartBeat=function(){this.heartBeatTimer&&clearTimeout(this.heartBeatTimer),this.heartBeatTimer=null},e.prototype.allRegisterWebsocket=function(){var e,o;try{for(var s=t.__values(this.registerTipMap.entries()),n=s.next();!n.done;n=s.next()){var r=t.__read(n.value,1)[0],a=this.registerTipMap.get(r),i=a.data,c=a.callback;this.send(i),0===this.firstConnect&&c&&c()}}catch(t){e={error:t}}finally{try{n&&!n.done&&(o=s.return)&&o.call(s)}finally{if(e)throw e.error}}},e.prototype.allRegisterMessageHandler=function(e){var o,s;try{for(var n=t.__values(this.registerMessageHandlerMap.entries()),r=n.next();!r.done;r=n.next()){var a=t.__read(r.value,1)[0];this.registerMessageHandlerMap.get(a)(e)}}catch(e){o={error:e}}finally{try{r&&!r.done&&(s=n.return)&&s.call(n)}finally{if(o)throw o.error}}},e.prototype.registerWebsocket=function(e,t){this.registerTipMap.set(e.eventId,{data:e,callback:t}),this.send(e),t&&t()},e.prototype.unregisterWebsocket=function(e){this.registerTipMap.delete(e.eventId),this.send(e)},e.prototype.send=function(e){var t,s;(null===(t=this.websocket)||void 0===t?void 0:t.readyState)===WebSocket.OPEN&&this.connectState?null===(s=this.websocket)||void 0===s||s.send(JSON.stringify(e)):this.messageQueueList.set("".concat(e.eventId,"-").concat(o.UUID(8,16)),e)},e.prototype.message=function(e,t){this.registerMessageHandlerMap.set(e,t)},e.prototype.close=function(){this.websocket&&(this.connectState=!1,this.websocket.onopen=null,this.websocket.onmessage=null,this.websocket.onerror=null,this.websocket.onclose=null,this.firstConnect=0,this.websocket.readyState!==WebSocket.OPEN&&this.websocket.readyState!==WebSocket.CONNECTING||this.websocket.close(),this.websocket=null,this.changeStatusColor("#999999")),this.clearHeartBeat()},e.prototype.addStatus=function(){this.removeStatus();var e=document.createElement("div");e.id="websocketStatus",e.style.width="10px",e.style.height="10px",e.style.backgroundColor="#999999",e.style.position="fixed",e.style.right="0",e.style.top="0",e.style.zIndex="9999",document.body.appendChild(e)},e.prototype.removeStatus=function(){var e=document.getElementById("websocketStatus");e&&document.body.removeChild(e)},e.prototype.changeStatusColor=function(e){var t=document.getElementById("websocketStatus");t&&(t.style.backgroundColor=e)},e}();exports.Websocket=s;
|
package/dist/websocket.mjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as t,d as e}from"./commons/vendor-other-odeBaM7w.js";import{isJson as o,UUID as
|
|
1
|
+
import{b as t,d as e}from"./commons/vendor-other-odeBaM7w.js";import{isJson as o,UUID as s}from"./utils.mjs";import"./commons/vendor-crypto-js-Dhi5niDn.js";var n;!function(t){t[t.HEARTBEAT=1e3]="HEARTBEAT"}(n||(n={}));var r=function(){function r(t){var e=this;this.websocket=null,this.connectState=!1,this.reconnectCount=0,this.maxReconnectCount=5,this.reconnectTimestamp=1e4,this.heartBeatTimer=null,this.heartBeatTimeout=4e3,this.heartBeatData={actionId:n.HEARTBEAT},this.registerTipMap=new Map,this.registerMessageHandlerMap=new Map,this.messageQueueList=new Map,this.firstConnect=0,this.startHeartBeat=function(){e.send(e.heartBeatData),e.heartBeatTimer=setTimeout(e.startHeartBeat,e.heartBeatTimeout)},this.url=t,this.addStatus(),this.initWebsocket()}return r.prototype.initWebsocket=function(){var t,e=this;0===this.reconnectCount&&console.log("%cWebSocket","background-color: #889CBB;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","初始化连接..."),(null===(t=this.websocket)||void 0===t?void 0:t.readyState)!==WebSocket.OPEN&&(this.websocket=new WebSocket(this.url),this.websocket.onopen=function(){e.websocketOpen()},this.websocket.onmessage=function(t){e.websocketOnMessage(t)},this.websocket.onerror=function(){e.websocketOnError()},this.websocket.onclose=function(){e.websocketOnClose()})},r.prototype.websocketOpen=function(){var o,s,n;this.connectState=!0,this.reconnectCount=0,this.clearHeartBeat(),this.startHeartBeat(),this.allRegisterWebsocket();try{for(var r=t(this.messageQueueList),i=r.next();!i.done;i=r.next()){var a=e(i.value,2),c=a[0],l=a[1];null===(n=this.websocket)||void 0===n||n.send(JSON.stringify(l)),this.messageQueueList.delete(c)}}catch(t){o={error:t}}finally{try{i&&!i.done&&(s=r.return)&&s.call(r)}finally{if(o)throw o.error}}this.changeStatusColor("#5FB878"),console.log("%cWebSocket","background-color: #5FB878;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接成功,等待服务端数据推送[onopen]...")},r.prototype.websocketOnError=function(){0===this.reconnectCount&&(this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接异常[onerror]...")),this.clearHeartBeat()},r.prototype.websocketOnClose=function(){0===this.reconnectCount&&(this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","连接断开[onclose]...")),this.connectState&&this.disconnectAndReconnect()},r.prototype.websocketOnMessage=function(t){var e=t.data;o(t.data)&&(e=JSON.parse(t.data)),-1!==e.msgType&&(this.allRegisterMessageHandler(e),window.dispatchEvent(new CustomEvent("websocketOnMessage",{detail:{data:e}})))},r.prototype.disconnectAndReconnect=function(){var t=this;this.reconnectCount<this.maxReconnectCount?(this.firstConnect=1,++this.reconnectCount,this.changeStatusColor("#FFB800"),console.log("%cWebSocket","background-color: #FFB800;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","尝试重连...".concat(this.reconnectCount,"/").concat(this.maxReconnectCount)),setTimeout(function(){t.initWebsocket()},this.reconnectTimestamp)):(this.clearHeartBeat(),this.connectState=!1,this.reconnectCount=0,this.firstConnect=0,this.changeStatusColor("#FF5722"),console.log("%cWebSocket","background-color: #FF5722;color: #FFFFFF;padding: 2px 5px;border-radius: 3px;","最大重连失败, 终止重连..."))},r.prototype.resetHeartBeat=function(){this.clearHeartBeat(),this.startHeartBeat()},r.prototype.clearHeartBeat=function(){this.heartBeatTimer&&clearTimeout(this.heartBeatTimer),this.heartBeatTimer=null},r.prototype.allRegisterWebsocket=function(){var o,s;try{for(var n=t(this.registerTipMap.entries()),r=n.next();!r.done;r=n.next()){var i=e(r.value,1)[0],a=this.registerTipMap.get(i),c=a.data,l=a.callback;this.send(c),0===this.firstConnect&&l&&l()}}catch(t){o={error:t}}finally{try{r&&!r.done&&(s=n.return)&&s.call(n)}finally{if(o)throw o.error}}},r.prototype.allRegisterMessageHandler=function(o){var s,n;try{for(var r=t(this.registerMessageHandlerMap.entries()),i=r.next();!i.done;i=r.next()){var a=e(i.value,1)[0];this.registerMessageHandlerMap.get(a)(o)}}catch(t){s={error:t}}finally{try{i&&!i.done&&(n=r.return)&&n.call(r)}finally{if(s)throw s.error}}},r.prototype.registerWebsocket=function(t,e){this.registerTipMap.set(t.eventId,{data:t,callback:e}),this.send(t),e&&e()},r.prototype.unregisterWebsocket=function(t){this.registerTipMap.delete(t.eventId),this.send(t)},r.prototype.send=function(t){var e,o;(null===(e=this.websocket)||void 0===e?void 0:e.readyState)===WebSocket.OPEN&&this.connectState?null===(o=this.websocket)||void 0===o||o.send(JSON.stringify(t)):this.messageQueueList.set("".concat(t.eventId,"-").concat(s(8,16)),t)},r.prototype.message=function(t,e){this.registerMessageHandlerMap.set(t,e)},r.prototype.close=function(){this.websocket&&(this.connectState=!1,this.websocket.onopen=null,this.websocket.onmessage=null,this.websocket.onerror=null,this.websocket.onclose=null,this.firstConnect=0,this.websocket.readyState!==WebSocket.OPEN&&this.websocket.readyState!==WebSocket.CONNECTING||this.websocket.close(),this.websocket=null,this.changeStatusColor("#999999")),this.clearHeartBeat()},r.prototype.addStatus=function(){this.removeStatus();var t=document.createElement("div");t.id="websocketStatus",t.style.width="10px",t.style.height="10px",t.style.backgroundColor="#999999",t.style.position="fixed",t.style.right="0",t.style.top="0",t.style.zIndex="9999",document.body.appendChild(t)},r.prototype.removeStatus=function(){var t=document.getElementById("websocketStatus");t&&document.body.removeChild(t)},r.prototype.changeStatusColor=function(t){var e=document.getElementById("websocketStatus");e&&(e.style.backgroundColor=t)},r}();export{n as EventId,r as Websocket};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "cool-common-utils",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.7",
|
|
4
4
|
"description": "cool工具函数库",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"module": "./dist/index.mjs",
|
|
@@ -24,11 +24,9 @@
|
|
|
24
24
|
"utils",
|
|
25
25
|
"water",
|
|
26
26
|
"aes",
|
|
27
|
-
"export-xlsx",
|
|
28
27
|
"amap-utils",
|
|
29
28
|
"request",
|
|
30
29
|
"axios",
|
|
31
|
-
"mqtt",
|
|
32
30
|
"socket-io",
|
|
33
31
|
"sweetalert"
|
|
34
32
|
],
|