woonplan-packages-redishelper 1.0.77 → 1.0.81
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/index.d.ts +3 -3
- package/dist/index.js +8 -5
- package/dist/setters.d.ts +3 -3
- package/dist/setters.js +20 -4
- package/index.ts +4 -2
- package/package.json +1 -1
- package/setters.ts +17 -1
package/dist/index.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { RedisConfig, RedisMessage } from "./types";
|
|
2
|
-
import { sendMessageToStream, publishMessageResponse } from "./setters";
|
|
2
|
+
import { sendMessageToStream, publishMessageResponse, toApiRequest } from "./setters";
|
|
3
3
|
import { getOrRequestData, subscribeToMessageResponse, requestAndWaitForList } from "./getters";
|
|
4
4
|
declare const listenToStream: (config: RedisConfig, groupname: string, channelname: string, consumername: string, callback: Function) => Promise<boolean>;
|
|
5
5
|
declare const dataRequester: (config: RedisConfig, groupname: string, service: string, consumername: string, callback: Function) => void;
|
|
6
|
-
declare const
|
|
7
|
-
export { listenToStream, RedisMessage, sendMessageToStream, publishMessageResponse, getOrRequestData,
|
|
6
|
+
declare const toApiListener: (config: RedisConfig, groupname: string, channelname: string, consumername: string, callback: Function) => void;
|
|
7
|
+
export { listenToStream, RedisMessage, sendMessageToStream, toApiRequest, publishMessageResponse, getOrRequestData, toApiListener, dataRequester, subscribeToMessageResponse, requestAndWaitForList };
|
package/dist/index.js
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.requestAndWaitForList = exports.subscribeToMessageResponse = exports.dataRequester = exports.
|
|
3
|
+
exports.requestAndWaitForList = exports.subscribeToMessageResponse = exports.dataRequester = exports.toApiListener = exports.getOrRequestData = exports.publishMessageResponse = exports.toApiRequest = exports.sendMessageToStream = exports.listenToStream = void 0;
|
|
4
4
|
var setters_1 = require("./setters");
|
|
5
5
|
Object.defineProperty(exports, "sendMessageToStream", { enumerable: true, get: function () { return setters_1.sendMessageToStream; } });
|
|
6
6
|
Object.defineProperty(exports, "publishMessageResponse", { enumerable: true, get: function () { return setters_1.publishMessageResponse; } });
|
|
7
|
+
Object.defineProperty(exports, "toApiRequest", { enumerable: true, get: function () { return setters_1.toApiRequest; } });
|
|
7
8
|
var getters_1 = require("./getters");
|
|
8
9
|
Object.defineProperty(exports, "getOrRequestData", { enumerable: true, get: function () { return getters_1.getOrRequestData; } });
|
|
9
10
|
Object.defineProperty(exports, "subscribeToMessageResponse", { enumerable: true, get: function () { return getters_1.subscribeToMessageResponse; } });
|
|
@@ -38,12 +39,12 @@ var dataRequester = function (config, groupname, service, consumername, callback
|
|
|
38
39
|
.then(function () { return listenForMessageForDataRequest(listenerclient, groupname, channelname, consumername, callback); });
|
|
39
40
|
};
|
|
40
41
|
exports.dataRequester = dataRequester;
|
|
41
|
-
var
|
|
42
|
+
var toApiListener = function (config, groupname, channelname, consumername, callback) {
|
|
42
43
|
var listenerclient = (0, memdb_1.getRedisClient)(config);
|
|
43
44
|
createGroup(listenerclient, groupname, channelname)
|
|
44
45
|
.then(function () { return listenForMessageForDataRequest(listenerclient, groupname, channelname, consumername, callback); });
|
|
45
46
|
};
|
|
46
|
-
exports.
|
|
47
|
+
exports.toApiListener = toApiListener;
|
|
47
48
|
var listenForMessageForApiRequest = function (listenerclient, groupname, channelname, consumername, callback) {
|
|
48
49
|
console.log("listening to ".concat(channelname, " as ").concat(consumername));
|
|
49
50
|
var streammsgid = '';
|
|
@@ -119,8 +120,10 @@ var listenForMessageForDataRequest = function (listenerclient, groupname, channe
|
|
|
119
120
|
return (0, setters_1.publishMessageResponse)(listenerclient, messageid, result != null ? result : '');
|
|
120
121
|
})
|
|
121
122
|
.catch(function (e) {
|
|
122
|
-
|
|
123
|
-
|
|
123
|
+
return (0, setters_1.publishMessageResponse)(listenerclient, messageid, JSON.stringify({
|
|
124
|
+
rejected: true,
|
|
125
|
+
error: e
|
|
126
|
+
}));
|
|
124
127
|
})
|
|
125
128
|
.finally(function () {
|
|
126
129
|
listenerclient.xack(channelname, groupname, streammsgid).then(function () {
|
package/dist/setters.d.ts
CHANGED
|
@@ -2,11 +2,11 @@ import { Redis } from "ioredis";
|
|
|
2
2
|
import { RedisConfig, RedisMessage, Struct } from "./types";
|
|
3
3
|
declare const publishMessageResponse: (client: Redis, messageid: string, message: string) => Promise<number>;
|
|
4
4
|
declare const sendMessageToStream: (config: RedisConfig, channelname: string, message: RedisMessage) => Promise<string>;
|
|
5
|
-
export interface
|
|
5
|
+
export interface toApiRequestOptions {
|
|
6
6
|
endpoint: string;
|
|
7
7
|
data?: Struct;
|
|
8
8
|
method?: string;
|
|
9
9
|
jwt?: string;
|
|
10
10
|
}
|
|
11
|
-
declare const
|
|
12
|
-
export { publishMessageResponse, sendMessageToStream,
|
|
11
|
+
declare const toApiRequest: (config: RedisConfig, options?: toApiRequestOptions) => Promise<unknown>;
|
|
12
|
+
export { publishMessageResponse, sendMessageToStream, toApiRequest };
|
package/dist/setters.js
CHANGED
|
@@ -20,7 +20,7 @@ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
|
20
20
|
return to.concat(ar || Array.prototype.slice.call(from));
|
|
21
21
|
};
|
|
22
22
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
23
|
-
exports.
|
|
23
|
+
exports.toApiRequest = exports.sendMessageToStream = exports.publishMessageResponse = void 0;
|
|
24
24
|
var memdb_1 = require("./memdb");
|
|
25
25
|
var utils_1 = require("./utils");
|
|
26
26
|
var uuid_1 = require("uuid");
|
|
@@ -39,14 +39,21 @@ var sendMessageToStream = function (config, channelname, message) {
|
|
|
39
39
|
exports.sendMessageToStream = sendMessageToStream;
|
|
40
40
|
var timeout = 1500;
|
|
41
41
|
// send a message from socket to api, creating a message id to publish the response on
|
|
42
|
-
var
|
|
42
|
+
var toApiRequest = function (config, options) {
|
|
43
43
|
if (options === void 0) { options = { endpoint: '', method: 'GET', data: {}, }; }
|
|
44
44
|
return new Promise(function (resolve, reject) {
|
|
45
45
|
var client = (0, memdb_1.getRedisClient)(config), callbackclient = (0, memdb_1.getRedisClient)(config), messageid = (0, uuid_1.v4)();
|
|
46
46
|
(0, data_1.subscribeToMessageResponse)(callbackclient, messageid)
|
|
47
47
|
.then(function () {
|
|
48
48
|
callbackclient.once("message", function (_channel, message) {
|
|
49
|
-
|
|
49
|
+
if (message.length && isJson(message)) {
|
|
50
|
+
var messagedata = JSON.parse(message);
|
|
51
|
+
if (messagedata.rejected && messagedata.error)
|
|
52
|
+
reject(messagedata.error);
|
|
53
|
+
}
|
|
54
|
+
else {
|
|
55
|
+
resolve(message.length ? message : null);
|
|
56
|
+
}
|
|
50
57
|
callbackclient.disconnect();
|
|
51
58
|
});
|
|
52
59
|
// setup timeout
|
|
@@ -62,4 +69,13 @@ var socketToApi = function (config, options) {
|
|
|
62
69
|
.catch(reject);
|
|
63
70
|
});
|
|
64
71
|
};
|
|
65
|
-
exports.
|
|
72
|
+
exports.toApiRequest = toApiRequest;
|
|
73
|
+
function isJson(str) {
|
|
74
|
+
try {
|
|
75
|
+
JSON.parse(str);
|
|
76
|
+
}
|
|
77
|
+
catch (e) {
|
|
78
|
+
return false;
|
|
79
|
+
}
|
|
80
|
+
return true;
|
|
81
|
+
}
|
package/index.ts
CHANGED
|
@@ -144,8 +144,10 @@ const listenForMessageForDataRequest = (
|
|
|
144
144
|
publishMessageResponse( listenerclient, messageid, result != null ? result : '' )
|
|
145
145
|
)
|
|
146
146
|
.catch((e)=>{
|
|
147
|
-
|
|
148
|
-
|
|
147
|
+
return publishMessageResponse( listenerclient, messageid, JSON.stringify({
|
|
148
|
+
rejected : true,
|
|
149
|
+
error : e
|
|
150
|
+
}))
|
|
149
151
|
})
|
|
150
152
|
.finally( () =>
|
|
151
153
|
{
|
package/package.json
CHANGED
package/setters.ts
CHANGED
|
@@ -37,7 +37,14 @@ const toApiRequest = ( config:RedisConfig, options:toApiRequestOptions = { endpo
|
|
|
37
37
|
subscribeToMessageResponse( callbackclient, messageid )
|
|
38
38
|
.then(() => {
|
|
39
39
|
callbackclient.once( "message", ( _channel, message ) => {
|
|
40
|
-
|
|
40
|
+
|
|
41
|
+
if( message.length && isJson( message )){
|
|
42
|
+
const messagedata = JSON.parse( message )
|
|
43
|
+
if( messagedata.rejected && messagedata.error ) reject( messagedata.error )
|
|
44
|
+
}else{
|
|
45
|
+
resolve( message.length ? message : null )
|
|
46
|
+
}
|
|
47
|
+
|
|
41
48
|
callbackclient.disconnect()
|
|
42
49
|
})
|
|
43
50
|
|
|
@@ -60,5 +67,14 @@ const toApiRequest = ( config:RedisConfig, options:toApiRequestOptions = { endpo
|
|
|
60
67
|
|
|
61
68
|
})
|
|
62
69
|
|
|
70
|
+
function isJson(str:any) {
|
|
71
|
+
try {
|
|
72
|
+
JSON.parse(str);
|
|
73
|
+
} catch (e) {
|
|
74
|
+
return false;
|
|
75
|
+
}
|
|
76
|
+
return true;
|
|
77
|
+
}
|
|
78
|
+
|
|
63
79
|
|
|
64
80
|
export { publishMessageResponse, sendMessageToStream, toApiRequest }
|