@roadmanjs/chat 0.0.31 → 0.0.34
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/chat/methods/ChatConvo.methods.d.ts +1 -0
- package/dist/chat/methods/ChatConvo.methods.js +22 -1
- package/dist/chat/methods/ChatConvo.methods.js.map +1 -1
- package/dist/chat/methods/ChatConvo.test.d.ts +1 -0
- package/dist/chat/methods/ChatConvo.test.js +19 -11
- package/dist/chat/methods/ChatConvo.test.js.map +1 -1
- package/dist/chat/resolvers/ChatMessage.resolver.d.ts +2 -2
- package/dist/chat/resolvers/ChatMessage.resolver.js +16 -8
- package/dist/chat/resolvers/ChatMessage.resolver.js.map +1 -1
- package/package.json +6 -5
|
@@ -3,3 +3,4 @@ export declare const createAConvoAndReturnIt: (newConvo: ChatConvoType) => Promi
|
|
|
3
3
|
export declare const createChatConvoType: (props: Partial<ChatConvoType>) => Promise<ChatConvoType[]>;
|
|
4
4
|
export declare const getChatConvoById: (id: string) => Promise<ChatConvo | null>;
|
|
5
5
|
export declare const updateConvoLastMessage: (convoId: string, lastMessageId: string) => Promise<boolean>;
|
|
6
|
+
export declare const removeUnreadCount: (owner: string, convoId: string) => Promise<any>;
|
|
@@ -37,7 +37,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
37
37
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
38
|
};
|
|
39
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
-
exports.updateConvoLastMessage = exports.getChatConvoById = exports.createChatConvoType = exports.createAConvoAndReturnIt = void 0;
|
|
40
|
+
exports.removeUnreadCount = exports.updateConvoLastMessage = exports.getChatConvoById = exports.createChatConvoType = exports.createAConvoAndReturnIt = void 0;
|
|
41
41
|
const ChatConvo_model_1 = __importStar(require("../models/ChatConvo.model"));
|
|
42
42
|
const couchset_1 = require("@roadmanjs/couchset");
|
|
43
43
|
const client_graphql_1 = require("@stoqey/client-graphql");
|
|
@@ -141,4 +141,25 @@ const updateConvoLastMessage = async (convoId, lastMessageId) => {
|
|
|
141
141
|
}
|
|
142
142
|
};
|
|
143
143
|
exports.updateConvoLastMessage = updateConvoLastMessage;
|
|
144
|
+
const removeUnreadCount = async (owner, convoId) => {
|
|
145
|
+
try {
|
|
146
|
+
const convos = await ChatConvo_model_1.default.pagination({
|
|
147
|
+
select: ChatConvo_model_1.chatConvoSelectors,
|
|
148
|
+
where: { convoId: { $eq: convoId }, owner: { $eq: owner } },
|
|
149
|
+
});
|
|
150
|
+
if (!(0, isEmpty_1.default)(convos)) {
|
|
151
|
+
const convo = convos[0];
|
|
152
|
+
convo.unread = 0; // remove the unread
|
|
153
|
+
if (convo.unread > 0) {
|
|
154
|
+
await ChatConvo_model_1.default.updateById(convo.id, convo, { silent: true }); // do not updatedAt
|
|
155
|
+
}
|
|
156
|
+
}
|
|
157
|
+
return true;
|
|
158
|
+
}
|
|
159
|
+
catch (err) {
|
|
160
|
+
(0, logs_1.log)(err);
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
};
|
|
164
|
+
exports.removeUnreadCount = removeUnreadCount;
|
|
144
165
|
//# sourceMappingURL=ChatConvo.methods.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatConvo.methods.js","sourceRoot":"","sources":["../../../src/chat/methods/ChatConvo.methods.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ChatConvo.methods.js","sourceRoot":"","sources":["../../../src/chat/methods/ChatConvo.methods.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6EAKmC;AACnC,kDAAoE;AAEpE,2DAA+C;AAC/C,6DAAqC;AACrC,0CAAoC;AAE7B,MAAM,uBAAuB,GAAG,KAAK,EAAE,QAAuB,EAA0B,EAAE;IAC7F,MAAM,EAAC,OAAO,GAAG,EAAE,EAAE,KAAK,GAAG,KAAK,EAAE,KAAK,KAAe,QAAQ,EAAlB,MAAM,UAAI,QAAQ,EAA1D,6BAA+C,CAAW,CAAC;IAEjE,MAAM,CAAC,kBAAkB,EAAE,gBAAgB,GAAG,EAAE,CAAC,GAAG,MAAM,IAAA,wBAAO,EAC7D,IAAA,2BAAmB,kCACZ,MAAM,KACT,OAAO;QACP,KAAK;QACL,KAAK,IACP,CACL,CAAC;IAEF,IAAI,kBAAkB,EAAE;QACpB,MAAM,kBAAkB,CAAC;KAC5B;IAED,IAAI,KAAK,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;IAChC,IAAI,KAAK,EAAE;QACP,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QACvE,IAAI,QAAQ,EAAE;YACV,KAAK,GAAG,QAAQ,CAAC;SACpB;KACJ;IAED,OAAO,KAAK,CAAC;AACjB,CAAC,CAAC;AAzBW,QAAA,uBAAuB,2BAyBlC;AAEK,MAAM,mBAAmB,GAAG,KAAK,EACpC,KAA6B,EACL,EAAE;IAC1B,MAAM,EAAC,OAAO,GAAG,EAAE,EAAE,KAAK,GAAG,KAAK,KAAe,KAAK,EAAf,MAAM,UAAI,KAAK,EAAhD,oBAAwC,CAAQ,CAAC;IAEvD,IAAI,IAAA,iBAAO,EAAC,OAAO,CAAC,EAAE;QAClB,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAC;KACvD;IAED,MAAM,YAAY,mCACX,MAAM,KACT,OAAO;QACP,KAAK,EACL,KAAK,EAAE,QAAQ,GAClB,CAAC;IAEF,MAAM,CAAC,gBAAgB,EAAE,kBAAkB,CAAC,GAAG,MAAM,IAAA,wBAAO,EACxD,IAAA,uBAAY,kBACR,KAAK,EAAE,yBAAc,EACrB,IAAI,EAAE,YAAY,IACf,YAAY,EACjB,CACL,CAAC;IAEF,IAAI,gBAAgB,EAAE;QAClB,MAAM,gBAAgB,CAAC;KAC1B;IAED,MAAM,CAAC,WAAW,EAAE,MAAM,CAAC,GAAG,MAAM,IAAA,wBAAO,EACvC,OAAO,CAAC,GAAG,CACP,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CACnB,IAAA,uBAAY,gCACR,KAAK,EAAE,yBAAc,EACrB,IAAI,kCACG,YAAY,KACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,kBAAkB,aAAlB,kBAAkB,uBAAlB,kBAAkB,CAAE,EAAE,OAEhC,YAAY,KACf,KAAK,EAAE,MAAM,IACf,CACL,CACJ,CACJ,CAAC;IAEF,IAAI,WAAW,EAAE;QACb,MAAM,WAAW,CAAC;KACrB;IAED,OAAO,MAAyB,CAAC;AACrC,CAAC,CAAC;AAlDW,QAAA,mBAAmB,uBAkD9B;AAEK,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAU,EAA6B,EAAE;IAC5E,IAAI;QACA,MAAM,MAAM,GAAG,4BAAiB,CAAC,UAAU,CAAC;QAE5C,MAAM,KAAK,GAAG;;aAET,MAAM;eACJ,MAAM;;eAEN,MAAM;;oBAED,MAAM;;;6BAGG,oCAAkB;wBACvB,EAAE;;KAErB,CAAC;QAEE,MAAM,CAAC,aAAa,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,MAAM,IAAA,wBAAO,EAC5C,yBAAc,CAAC,WAAW,CAAM;YAC5B,KAAK,EAAE,CAAC;YACR,KAAK;YACL,MAAM,EAAE,EAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAC;SACzB,CAAC,CACL,CAAC;QAEF,IAAI,aAAa,EAAE;YACf,MAAM,aAAa,CAAC;SACvB;QAED,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;QAEzB,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YAC9B,MAAM,EAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAC,GAAG,CAAC,CAAC;YAC/C,OAAO,yBAAc,CAAC,KAAK,iCACpB,KAAK,KACR,OAAO;gBACP,WAAW;gBACX,KAAK,IACP,CAAC;QACP,CAAC,CAAC,CAAC;QAEH,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC;KACxB;IAAC,OAAO,KAAK,EAAE;QACZ,IAAA,UAAG,EAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC;KACf;AACL,CAAC,CAAC;AAhDW,QAAA,gBAAgB,oBAgD3B;AAEK,MAAM,sBAAsB,GAAG,KAAK,EACvC,OAAe,EACf,aAAqB,EACL,EAAE;IAClB,IAAI;QACA,4BAA4B;QAC5B,iDAAiD;QAEjD,MAAM,MAAM,GAAoB,MAAM,yBAAc,CAAC,UAAU,CAAC;YAC5D,MAAM,EAAE,oCAAkB;YAC1B,KAAK,EAAE,EAAC,OAAO,EAAE,EAAC,GAAG,EAAE,OAAO,EAAC,EAAC;SACnC,CAAC,CAAC;QAEH,IAAI,CAAC,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE;YAClB,MAAM,CAAC,WAAW,EAAE,aAAa,CAAC,GAAG,MAAM,IAAA,wBAAO,EAC9C,OAAO,CAAC,GAAG,CACP,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CACjB,IAAA,uBAAY,kBACR,KAAK,EAAE,yBAAc,EACrB,IAAI,kCACG,KAAK,KACR,WAAW,EAAE,aAAa,EAC1B,MAAM,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC,CAAC,GAAG,CAAC,OAEhC,KAAK,EACV,CACL,CACJ,CACJ,CAAC;YACF,IAAI,WAAW,EAAE;gBACb,MAAM,WAAW,CAAC;aACrB;YAED,IAAA,UAAG,EACC,mCAAmC,aAAa,EAAE,EAClD,aAAa,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CACnC,CAAC;SACL;QAED,OAAO,IAAI,CAAC;KACf;IAAC,OAAO,KAAK,EAAE;QACZ,OAAO,KAAK,CAAC;KAChB;AACL,CAAC,CAAC;AA3CW,QAAA,sBAAsB,0BA2CjC;AAEK,MAAM,iBAAiB,GAAG,KAAK,EAAE,KAAa,EAAE,OAAe,EAAgB,EAAE;IACpF,IAAI;QACA,MAAM,MAAM,GAAoB,MAAM,yBAAc,CAAC,UAAU,CAAC;YAC5D,MAAM,EAAE,oCAAkB;YAC1B,KAAK,EAAE,EAAC,OAAO,EAAE,EAAC,GAAG,EAAE,OAAO,EAAC,EAAE,KAAK,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,EAAC;SACxD,CAAC,CAAC;QAEH,IAAI,CAAC,IAAA,iBAAO,EAAC,MAAM,CAAC,EAAE;YAClB,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;YACxB,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,oBAAoB;YACtC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBAClB,MAAM,yBAAc,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,EAAE,EAAC,MAAM,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,mBAAmB;aACxF;SACJ;QAED,OAAO,IAAI,CAAC;KACf;IAAC,OAAO,GAAG,EAAE;QACV,IAAA,UAAG,EAAC,GAAG,CAAC,CAAC;QACT,OAAO,KAAK,CAAC;KAChB;AACL,CAAC,CAAC;AApBW,QAAA,iBAAiB,qBAoB5B"}
|
|
@@ -1,24 +1,32 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
require("reflect-metadata");
|
|
3
4
|
require("mocha");
|
|
4
5
|
const ChatConvo_methods_1 = require("./ChatConvo.methods");
|
|
5
6
|
const chai_1 = require("chai");
|
|
6
7
|
const couchset_1 = require("@roadmanjs/couchset");
|
|
7
8
|
before((done) => {
|
|
8
|
-
(0, couchset_1.startCouchbase)().then(done);
|
|
9
|
+
(0, couchset_1.startCouchbase)().then(() => done());
|
|
9
10
|
});
|
|
10
11
|
describe("ChatConvo", () => {
|
|
11
|
-
it("Create convo", async () => {
|
|
12
|
+
// it("Create convo", async () => {
|
|
13
|
+
// const owner = "1c01d85f-b811-44b1-8a4f-bef8030bf265";
|
|
14
|
+
// const otherUser = "99bc43ba-02ab-4394-b48b-49a39a95443c";
|
|
15
|
+
// const members = [owner, otherUser];
|
|
16
|
+
// const chatConvo = {
|
|
17
|
+
// members,
|
|
18
|
+
// group: false,
|
|
19
|
+
// };
|
|
20
|
+
// const createdConvo = await createChatConvoType(chatConvo);
|
|
21
|
+
// console.log("Created", createdConvo);
|
|
22
|
+
// expect(createdConvo).to.not.be.empty;
|
|
23
|
+
// });
|
|
24
|
+
it("Remove read count", async () => {
|
|
12
25
|
const owner = "1c01d85f-b811-44b1-8a4f-bef8030bf265";
|
|
13
|
-
const
|
|
14
|
-
const
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
group: false,
|
|
18
|
-
};
|
|
19
|
-
const createdConvo = await (0, ChatConvo_methods_1.createChatConvoType)(chatConvo);
|
|
20
|
-
console.log("Created", createdConvo);
|
|
21
|
-
(0, chai_1.expect)(createdConvo).to.not.be.empty;
|
|
26
|
+
const convoId = "e9992706-e854-4aef-bb5f-5e09d4224bf4";
|
|
27
|
+
const hasUpdateCount = await (0, ChatConvo_methods_1.removeUnreadCount)(owner, convoId);
|
|
28
|
+
console.log("Created", hasUpdateCount);
|
|
29
|
+
(0, chai_1.expect)(hasUpdateCount).to.be.true;
|
|
22
30
|
});
|
|
23
31
|
});
|
|
24
32
|
//# sourceMappingURL=ChatConvo.test.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatConvo.test.js","sourceRoot":"","sources":["../../../src/chat/methods/ChatConvo.test.ts"],"names":[],"mappings":";;AAAA,iBAAe;AAEf,
|
|
1
|
+
{"version":3,"file":"ChatConvo.test.js","sourceRoot":"","sources":["../../../src/chat/methods/ChatConvo.test.ts"],"names":[],"mappings":";;AAAA,4BAA0B;AAC1B,iBAAe;AAEf,2DAA6E;AAE7E,+BAA8B;AAC9B,kDAAqD;AAErD,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;IACd,IAAA,yBAAc,GAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC;AACtC,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,WAAW,EAAE,GAAG,EAAE;IACzB,mCAAmC;IACnC,0DAA0D;IAC1D,8DAA8D;IAC9D,wCAAwC;IAExC,wBAAwB;IACxB,iBAAiB;IACjB,sBAAsB;IAEtB,OAAO;IAEP,+DAA+D;IAE/D,0CAA0C;IAC1C,0CAA0C;IAC1C,MAAM;IAEN,EAAE,CAAC,mBAAmB,EAAE,KAAK,IAAI,EAAE;QACjC,MAAM,KAAK,GAAG,sCAAsC,CAAC;QACrD,MAAM,OAAO,GAAG,sCAAsC,CAAC;QAEvD,MAAM,cAAc,GAAG,MAAM,IAAA,qCAAiB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAE/D,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,cAAc,CAAC,CAAC;QACvC,IAAA,aAAM,EAAC,cAAc,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC;IACpC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { ContextType, ChatResType } from '../../shared/ContextType';
|
|
2
2
|
import { ChatMessage, ChatMessageType, OnChatMessage } from '../models/ChatMessage.model';
|
|
3
3
|
export declare class ChatMessageResolver {
|
|
4
|
-
onChatMessage(data: OnChatMessage): OnChatMessage;
|
|
4
|
+
onChatMessage(data: OnChatMessage, convoId: string, time: Date): OnChatMessage;
|
|
5
5
|
chatTyping(ctx: ContextType, convoId: string, time: Date): Promise<boolean>;
|
|
6
|
-
chatMessage(convoId: string, before: Date, after: Date, limitArg: any): Promise<{
|
|
6
|
+
chatMessage(ctx: ContextType, convoId: string, before: Date, after: Date, limitArg: any): Promise<{
|
|
7
7
|
items: ChatMessage[];
|
|
8
8
|
hasNext: boolean;
|
|
9
9
|
params: any;
|
|
@@ -49,10 +49,12 @@ const pubsub_utils_1 = require("../../shared/pubsub.utils");
|
|
|
49
49
|
const ChatConvo_model_1 = require("../models/ChatConvo.model");
|
|
50
50
|
const couchset_2 = require("@roadmanjs/couchset");
|
|
51
51
|
const __1 = require("..");
|
|
52
|
+
const methods_1 = require("../methods");
|
|
52
53
|
const ChatPagination = (0, ContextType_1.getPagination)(ChatMessage_model_1.ChatMessage);
|
|
53
54
|
let ChatMessageResolver = class ChatMessageResolver {
|
|
54
|
-
onChatMessage(data
|
|
55
|
-
|
|
55
|
+
onChatMessage(data, convoId, time // just to make the client HOT
|
|
56
|
+
) {
|
|
57
|
+
return Object.assign({ convoId, time }, data);
|
|
56
58
|
}
|
|
57
59
|
async chatTyping(ctx, convoId, time // just to make the client HOT
|
|
58
60
|
) {
|
|
@@ -60,9 +62,10 @@ let ChatMessageResolver = class ChatMessageResolver {
|
|
|
60
62
|
await (0, pubsub_utils_1.publishMessageToTopic)(ctx, ChatMessage_model_1.ChatMessage.name, { typing: owner, convoId, time }); // send a typing subscription
|
|
61
63
|
return true;
|
|
62
64
|
}
|
|
63
|
-
async chatMessage(convoId,
|
|
65
|
+
async chatMessage(ctx, convoId,
|
|
64
66
|
// @Arg('sort', () => String, {nullable: true}) sortArg?: string,
|
|
65
67
|
before, after, limitArg) {
|
|
68
|
+
const owner = (0, get_1.default)(ctx, 'payload.userId', '');
|
|
66
69
|
// TODO add sort, by default it's just new to old
|
|
67
70
|
const bucket = couchset_2.connectionOptions.bucketName;
|
|
68
71
|
const sign = before ? '<=' : '>=';
|
|
@@ -104,6 +107,8 @@ let ChatMessageResolver = class ChatMessageResolver {
|
|
|
104
107
|
const { chat, attachments, owner } = d;
|
|
105
108
|
return ChatMessage_model_1.default.parse(Object.assign(Object.assign({}, chat), { attachments, owner: owner[0] || null }));
|
|
106
109
|
});
|
|
110
|
+
// TODO just add as a queue non-blocking queries
|
|
111
|
+
await (0, methods_1.removeUnreadCount)(owner, convoId);
|
|
107
112
|
return { items: dataToSend, params: copyParams, hasNext };
|
|
108
113
|
}
|
|
109
114
|
catch (error) {
|
|
@@ -140,7 +145,9 @@ __decorate([
|
|
|
140
145
|
topics: ChatMessage_model_1.ChatMessage.name,
|
|
141
146
|
filter: ({ payload, args }) => args.convoId === payload.convoId,
|
|
142
147
|
}),
|
|
143
|
-
__param(0, (0, couchset_1.Root)())
|
|
148
|
+
__param(0, (0, couchset_1.Root)()),
|
|
149
|
+
__param(1, (0, couchset_1.Arg)('convoId', () => String, { nullable: false })),
|
|
150
|
+
__param(2, (0, couchset_1.Arg)('time', () => Date, { nullable: true }))
|
|
144
151
|
], ChatMessageResolver.prototype, "onChatMessage", null);
|
|
145
152
|
__decorate([
|
|
146
153
|
(0, couchset_1.Query)(() => Boolean),
|
|
@@ -152,10 +159,11 @@ __decorate([
|
|
|
152
159
|
__decorate([
|
|
153
160
|
(0, couchset_1.Query)(() => ChatPagination),
|
|
154
161
|
(0, couchset_1.UseMiddleware)(auth_1.isAuth),
|
|
155
|
-
__param(0, (0, couchset_1.
|
|
156
|
-
__param(1, (0, couchset_1.Arg)('
|
|
157
|
-
__param(2, (0, couchset_1.Arg)('
|
|
158
|
-
__param(3, (0, couchset_1.Arg)('
|
|
162
|
+
__param(0, (0, couchset_1.Ctx)()),
|
|
163
|
+
__param(1, (0, couchset_1.Arg)('convoId', () => String, { nullable: false })),
|
|
164
|
+
__param(2, (0, couchset_1.Arg)('before', () => Date, { nullable: true })),
|
|
165
|
+
__param(3, (0, couchset_1.Arg)('after', () => Date, { nullable: true })),
|
|
166
|
+
__param(4, (0, couchset_1.Arg)('limit', () => Number, { nullable: true }))
|
|
159
167
|
], ChatMessageResolver.prototype, "chatMessage", null);
|
|
160
168
|
__decorate([
|
|
161
169
|
(0, couchset_1.Mutation)(() => ContextType_1.ChatResType),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChatMessage.resolver.js","sourceRoot":"","sources":["../../../src/chat/resolvers/ChatMessage.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAUkB;AAClB,2DAA+C;AAC/C,0DAAiF;AACjF,+DAAuC;AACvC,2DAAmC;AACnC,0CAAoC;AACpC,qDAA8B;AAC9B,0CAAuC;AACvC,iFAKqC;AACrC,4DAAgE;AAChE,+DAAoD;AACpD,kDAAoE;AACpE,0BAA0C;
|
|
1
|
+
{"version":3,"file":"ChatMessage.resolver.js","sourceRoot":"","sources":["../../../src/chat/resolvers/ChatMessage.resolver.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAUkB;AAClB,2DAA+C;AAC/C,0DAAiF;AACjF,+DAAuC;AACvC,2DAAmC;AACnC,0CAAoC;AACpC,qDAA8B;AAC9B,0CAAuC;AACvC,iFAKqC;AACrC,4DAAgE;AAChE,+DAAoD;AACpD,kDAAoE;AACpE,0BAA0C;AAC1C,wCAA6C;AAE7C,MAAM,cAAc,GAAG,IAAA,2BAAa,EAAC,+BAAW,CAAC,CAAC;AAGlD,IAAa,mBAAmB,GAAhC,MAAa,mBAAmB;IAK5B,aAAa,CACD,IAAmB,EACsB,OAAe,EACrB,IAAU,CAAC,8BAA8B;;QAEpF,uBAAQ,OAAO,EAAE,IAAI,IAAK,IAAI,EAAE;IACpC,CAAC;IAID,KAAK,CAAC,UAAU,CACL,GAAgB,EAC0B,OAAe,EACrB,IAAU,CAAC,8BAA8B;;QAEpF,MAAM,KAAK,GAAG,IAAA,aAAI,EAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC,CAAC,gBAAgB;QAC/D,MAAM,IAAA,oCAAqB,EAAC,GAAG,EAAE,+BAAW,CAAC,IAAI,EAAE,EAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAC,CAAC,CAAC,CAAC,6BAA6B;QACjH,OAAO,IAAI,CAAC;IAChB,CAAC;IAID,KAAK,CAAC,WAAW,CACN,GAAgB,EAC0B,OAAe;IAChE,kEAAkE;IACrB,MAAY,EACb,KAAW,EACT,QAAQ;QAMtD,MAAM,KAAK,GAAG,IAAA,aAAI,EAAC,GAAG,EAAE,gBAAgB,EAAE,EAAE,CAAC,CAAC;QAC9C,iDAAiD;QACjD,MAAM,MAAM,GAAG,4BAAiB,CAAC,UAAU,CAAC;QAC5C,MAAM,IAAI,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QAClC,MAAM,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,QAAQ,IAAI,EAAE,CAAC;QAC7B,MAAM,WAAW,GAAG,KAAK,GAAG,CAAC,CAAC;QAE9B,MAAM,UAAU,GAAG,IAAA,gBAAM,EACrB;YACI,OAAO;YACP,MAAM;YACN,KAAK;YACL,KAAK;SACR,EACD,kBAAQ,CACX,CAAC;QAEF,IAAI;YACA,MAAM,KAAK,GAAG;;mBAEP,MAAM;2CACkB,MAAM;qDACI,MAAM;gCAC3B,wCAAoB;gCACpB,OAAO;+BACR,IAAI,KAAK,IAAI,CAAC,WAAW,EAAE;;kBAExC,WAAW;OACtB,CAAC;YAEI,MAAM,CAAC,aAAa,EAAE,IAAI,GAAG,EAAE,CAAC,GAAG,MAAM,IAAA,wBAAO,EAC5C,2BAAgB,CAAC,WAAW,CAAM;gBAC9B,KAAK,EAAE,WAAW;gBAClB,KAAK;gBACL,MAAM,EAAE,UAAU;aACrB,CAAC,CACL,CAAC;YAEF,IAAI,aAAa,EAAE;gBACf,MAAM,aAAa,CAAC;aACvB;YAED,MAAM,CAAC,IAAI,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC;YAEzB,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;YAEpC,IAAI,OAAO,EAAE;gBACT,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC,sBAAsB;aACrC;YAED,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;gBAC9B,MAAM,EAAC,IAAI,EAAE,WAAW,EAAE,KAAK,EAAC,GAAG,CAAC,CAAC;gBACrC,OAAO,2BAAgB,CAAC,KAAK,iCACtB,IAAI,KACP,WAAW,EACX,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC,IAAI,IAAI,IACzB,CAAC;YACP,CAAC,CAAC,CAAC;YAEH,gDAAgD;YAChD,MAAM,IAAA,2BAAiB,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;YAExC,OAAO,EAAC,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAC,CAAC;SAC3D;QAAC,OAAO,KAAK,EAAE;YACZ,IAAA,UAAG,EAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YAC1C,OAAO,EAAC,KAAK,EAAE,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,EAAC,CAAC;SAC1D;IACL,CAAC;IAID,KAAK,CAAC,iBAAiB,CACZ,GAAgB,EACgC,IAAqB;QAE5E,IAAI;YACA,cAAc;YACd,MAAM,eAAe,GAAG,MAAM,IAAA,uBAAY,kBACtC,KAAK,EAAE,2BAAgB,EACvB,IAAI,oBACG,IAAI,KAER,IAAI,EACT,CAAC;YAEH,8BAA8B;YAC9B,2CAA2C;YAC3C,iBAAiB;YAEjB,IAAI,eAAe,EAAE;gBACjB,wCAAwC;gBACxC,MAAM,OAAO,GAAG,2BAAS,CAAC,IAAI,CAAC;gBAC/B,MAAM,OAAO,GAAG,eAAe,CAAC,EAAE,CAAC;gBACnC,MAAM,OAAO,GAAG,eAAe,CAAC,OAAO,CAAC;gBACxC,MAAM,IAAA,oCAAqB,EAAC,GAAG,EAAE,OAAO,EAAE,EAAC,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC,CAAC,iBAAiB;gBAChF,MAAM,IAAA,0BAAsB,EAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,oBAAoB;gBACpE,OAAO,EAAC,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAC,CAAC;aACjD;YAED,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;SAC1D;QAAC,OAAO,GAAG,EAAE;YACV,OAAO,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC;YACvC,OAAO,EAAC,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAI,GAAG,CAAC,OAAO,EAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAA;AA5IG;IAJC,IAAA,uBAAY,EAAC,GAAG,EAAE,CAAC,iCAAa,EAAE;QAC/B,MAAM,EAAE,+BAAW,CAAC,IAAI;QACxB,MAAM,EAAE,CAAC,EAAC,OAAO,EAAE,IAAI,EAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,KAAK,OAAO,CAAC,OAAO;KAChE,CAAC;IAEG,WAAA,IAAA,eAAI,GAAE,CAAA;IACN,WAAA,IAAA,cAAG,EAAC,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAA;IAC/C,WAAA,IAAA,cAAG,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;wDAG7C;AAID;IAFC,IAAA,gBAAK,EAAC,GAAG,EAAE,CAAC,OAAO,CAAC;IACpB,IAAA,wBAAa,EAAC,aAAM,CAAC;IAEjB,WAAA,IAAA,cAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAG,EAAC,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAA;IAC/C,WAAA,IAAA,cAAG,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;qDAK7C;AAID;IAFC,IAAA,gBAAK,EAAC,GAAG,EAAE,CAAC,cAAc,CAAC;IAC3B,IAAA,wBAAa,EAAC,aAAM,CAAC;IAEjB,WAAA,IAAA,cAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAG,EAAC,SAAS,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAA;IAE/C,WAAA,IAAA,cAAG,EAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;IAC3C,WAAA,IAAA,cAAG,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;IAC1C,WAAA,IAAA,cAAG,EAAC,OAAO,EAAE,GAAG,EAAE,CAAC,MAAM,EAAE,EAAC,QAAQ,EAAE,IAAI,EAAC,CAAC,CAAA;sDA0EhD;AAID;IAFC,IAAA,mBAAQ,EAAC,GAAG,EAAE,CAAC,yBAAW,CAAC;IAC3B,IAAA,wBAAa,EAAC,aAAM,CAAC;IAEjB,WAAA,IAAA,cAAG,GAAE,CAAA;IACL,WAAA,IAAA,cAAG,EAAC,MAAM,EAAE,GAAG,EAAE,CAAC,mCAAe,EAAE,EAAC,QAAQ,EAAE,KAAK,EAAC,CAAC,CAAA;4DA+BzD;AAhJQ,mBAAmB;IAD/B,IAAA,mBAAQ,GAAE;GACE,mBAAmB,CAiJ/B;AAjJY,kDAAmB;AAmJhC,kBAAe,mBAAmB,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@roadmanjs/chat",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.34",
|
|
4
4
|
"description": " A roadman for chat and groups, using UserType from 'auth'",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
"build": "rm -rf dist && tsc --skipLibCheck && npm run client",
|
|
23
23
|
"client": "node dist/scripts/copyClient.js",
|
|
24
24
|
"test": "mocha src/*test.ts --exit",
|
|
25
|
+
"test-convo": "mocha src/chat/methods/*test.ts --exit",
|
|
25
26
|
"eslint": "eslint ./src --fix --ext=ts"
|
|
26
27
|
},
|
|
27
28
|
"lint-staged": {
|
|
@@ -67,18 +68,18 @@
|
|
|
67
68
|
"typescript": "^4.4.3"
|
|
68
69
|
},
|
|
69
70
|
"peerDependencies": {
|
|
70
|
-
"@roadmanjs/couchset": ">=0.0.
|
|
71
|
+
"@roadmanjs/couchset": ">=0.0.8",
|
|
71
72
|
"@roadmanjs/logs": ">=0.0.1",
|
|
72
|
-
"couchset": ">=0.0.
|
|
73
|
+
"couchset": ">=0.0.16",
|
|
73
74
|
"typescript": ">=2.0"
|
|
74
75
|
},
|
|
75
76
|
"dependencies": {
|
|
76
77
|
"@roadmanjs/auth": "^0.0.20",
|
|
77
|
-
"@roadmanjs/couchset": "^0.0.
|
|
78
|
+
"@roadmanjs/couchset": "^0.0.8",
|
|
78
79
|
"@roadmanjs/firebase-admin": "^0.0.12",
|
|
79
80
|
"@roadmanjs/logs": "^0.0.1",
|
|
80
81
|
"@stoqey/client-graphql": "^1.1.12",
|
|
81
|
-
"couchset": "^0.0.
|
|
82
|
+
"couchset": "^0.0.16",
|
|
82
83
|
"graphql-type-json": "^0.3.2",
|
|
83
84
|
"jsonwebtoken": "^8.5.1",
|
|
84
85
|
"reflect-metadata": "^0.1.13",
|