@college-africa/chat-ui 1.3.2 → 2.0.0
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/components/CameraModal.d.ts +8 -0
- package/dist/components/ImageLightbox.d.ts +11 -0
- package/dist/components/MessageBubble.d.ts +1 -11
- package/dist/components/MessageInput.d.ts +2 -10
- package/dist/index.js +28 -9
- package/dist/index.mjs +4735 -1935
- package/dist/{summaries-DI36-zkM.js → summaries-CJ-n36dY.js} +64 -40
- package/dist/{summaries-BLYBgHwg.cjs → summaries-xrTgKTOr.cjs} +2 -2
- package/dist/utils/image.d.ts +1 -0
- package/package.json +3 -2
|
@@ -3397,18 +3397,36 @@ var Zr = class {
|
|
|
3397
3397
|
let t = {};
|
|
3398
3398
|
return e?.name && (t.name = e.name), e?.email && (t.email = e.email), e?.role && (t.role = e.role), (await this.axiosInstance.get("/users/search", { params: t })).data.users;
|
|
3399
3399
|
}
|
|
3400
|
-
async sendDM(e, t) {
|
|
3400
|
+
async sendDM(e, t, n) {
|
|
3401
3401
|
return await this.ensureAuthToken(), (await this.axiosInstance.post("/messages", {
|
|
3402
3402
|
user: e,
|
|
3403
|
-
content: t
|
|
3403
|
+
content: t,
|
|
3404
|
+
media: n
|
|
3404
3405
|
})).data.message;
|
|
3405
3406
|
}
|
|
3406
|
-
async sendGroupMessage(e, t) {
|
|
3407
|
+
async sendGroupMessage(e, t, n) {
|
|
3407
3408
|
return await this.ensureAuthToken(), (await this.axiosInstance.post("/messages", {
|
|
3408
3409
|
group: e,
|
|
3409
|
-
content: t
|
|
3410
|
+
content: t,
|
|
3411
|
+
media: n
|
|
3410
3412
|
})).data.message;
|
|
3411
3413
|
}
|
|
3414
|
+
async uploadFile(e, t, n) {
|
|
3415
|
+
await this.ensureAuthToken();
|
|
3416
|
+
let r = new FormData(), i = (e, t, n) => {
|
|
3417
|
+
typeof n == "string" ? e.append(t, {
|
|
3418
|
+
uri: n,
|
|
3419
|
+
name: n.split("/").pop() ?? t,
|
|
3420
|
+
type: "image/webp"
|
|
3421
|
+
}) : e.append(t, n);
|
|
3422
|
+
};
|
|
3423
|
+
return i(r, "file", e), i(r, "thumbnail", t), (await this.axiosInstance.post("/uploads/temp", r, {
|
|
3424
|
+
headers: { "Content-Type": "multipart/form-data" },
|
|
3425
|
+
onUploadProgress: n ? (e) => {
|
|
3426
|
+
e.total && n(Math.round(e.loaded * 100 / e.total));
|
|
3427
|
+
} : void 0
|
|
3428
|
+
})).data;
|
|
3429
|
+
}
|
|
3412
3430
|
async getMessages(e) {
|
|
3413
3431
|
await this.ensureAuthToken();
|
|
3414
3432
|
let t = {};
|
|
@@ -4278,8 +4296,14 @@ var Ha = class extends EventTarget {
|
|
|
4278
4296
|
e.DISCONNECTED = "DISCONNECTED", e.CONNECTING = "CONNECTING", e.CONNECTED = "CONNECTED", e.RECONNECTING = "RECONNECTING";
|
|
4279
4297
|
})(Wa ||= {});
|
|
4280
4298
|
//#endregion
|
|
4299
|
+
//#region ../sdk/dist/logger.js
|
|
4300
|
+
var Ga = console;
|
|
4301
|
+
function Ka(e) {
|
|
4302
|
+
Ga = e;
|
|
4303
|
+
}
|
|
4304
|
+
//#endregion
|
|
4281
4305
|
//#region src/cache/keys.ts
|
|
4282
|
-
var
|
|
4306
|
+
var qa = ({ type: e, id: t }) => `${e}:${t}`, Ja = ({ group: e, user: t }) => `${e ? "group" : "user"}:${e || t}`, Ya = (e, t) => e.group ? `group:${e.group}` : `dm:${e.sender === t ? e.receiver : e.sender}`, Xa = /* @__PURE__ */ l((/* @__PURE__ */ o(((e, t) => {
|
|
4283
4307
|
((n, r) => {
|
|
4284
4308
|
typeof e == "object" && t !== void 0 ? t.exports = r() : typeof define == "function" && define.amd ? define(r) : (n = typeof globalThis < "u" ? globalThis : n || self).Dexie = r();
|
|
4285
4309
|
})(e, function() {
|
|
@@ -8027,9 +8051,9 @@ var Ga = ({ type: e, id: t }) => `${e}:${t}`, Ka = ({ group: e, user: t }) => `$
|
|
|
8027
8051
|
}
|
|
8028
8052
|
}), { default: ar }), ar;
|
|
8029
8053
|
});
|
|
8030
|
-
})))(), 1),
|
|
8031
|
-
if (
|
|
8032
|
-
var { liveQuery:
|
|
8054
|
+
})))(), 1), Za = Symbol.for("Dexie"), Qa = globalThis[Za] || (globalThis[Za] = Xa.default);
|
|
8055
|
+
if (Xa.default.semVer !== Qa.semVer) throw Error(`Two different versions of Dexie loaded in the same app: ${Xa.default.semVer} and ${Qa.semVer}`);
|
|
8056
|
+
var { liveQuery: $a, mergeRanges: eo, rangesOverlap: to, RangeSet: no, cmp: ro, Entity: io, PropModification: ao, replacePrefix: oo, add: so, remove: co, DexieYProvider: lo } = Qa, uo = new class extends Qa {
|
|
8033
8057
|
summaries;
|
|
8034
8058
|
users;
|
|
8035
8059
|
messages;
|
|
@@ -8053,13 +8077,13 @@ var { liveQuery: Za, mergeRanges: Qa, rangesOverlap: $a, RangeSet: eo, cmp: to,
|
|
|
8053
8077
|
this.groups.clear()
|
|
8054
8078
|
]);
|
|
8055
8079
|
}
|
|
8056
|
-
}(),
|
|
8057
|
-
function
|
|
8080
|
+
}(), fo = 300 * 1e3;
|
|
8081
|
+
function po(e, t, n = fo) {
|
|
8058
8082
|
if (e.sender !== t.sender) return !1;
|
|
8059
8083
|
let r = new Date(e.created_at).getTime(), i = new Date(t.created_at).getTime();
|
|
8060
8084
|
return Math.abs(i - r) <= n;
|
|
8061
8085
|
}
|
|
8062
|
-
function
|
|
8086
|
+
function mo(e = "") {
|
|
8063
8087
|
let t = e.trim().split(" ").filter((e) => e.length > 0);
|
|
8064
8088
|
if (t.length >= 2) {
|
|
8065
8089
|
let e = t[0], n = t[t.length - 1];
|
|
@@ -8067,72 +8091,72 @@ function fo(e = "") {
|
|
|
8067
8091
|
}
|
|
8068
8092
|
return e.slice(0, 2).toUpperCase();
|
|
8069
8093
|
}
|
|
8070
|
-
var
|
|
8071
|
-
let n =
|
|
8094
|
+
var ho = async (e, t = {}) => {
|
|
8095
|
+
let n = yo();
|
|
8072
8096
|
if (!n) throw Error("SDK not initialized");
|
|
8073
|
-
let r =
|
|
8097
|
+
let r = qa(e);
|
|
8074
8098
|
e.type === "group" ? t.group = e.id : t.user = e.id;
|
|
8075
8099
|
let i = await n.getMessages(t);
|
|
8076
8100
|
return i.messages.map((e) => ({
|
|
8077
8101
|
...e,
|
|
8078
8102
|
conversationId: r
|
|
8079
|
-
})).forEach((e) =>
|
|
8103
|
+
})).forEach((e) => uo.messages.put(e)), uo.msgCursor.put({
|
|
8080
8104
|
...i.cursor,
|
|
8081
8105
|
id: r
|
|
8082
8106
|
}), i;
|
|
8083
|
-
},
|
|
8084
|
-
let { getActiveConversationId: n } = await Promise.resolve().then(() =>
|
|
8107
|
+
}, go = async (e, t) => {
|
|
8108
|
+
let { getActiveConversationId: n } = await Promise.resolve().then(() => So), r = Ya(e, t), i = {
|
|
8085
8109
|
...e,
|
|
8086
8110
|
conversationId: r
|
|
8087
8111
|
};
|
|
8088
|
-
await
|
|
8089
|
-
let a = await
|
|
8112
|
+
await uo.messages.put(i);
|
|
8113
|
+
let a = await uo.summaries.get(r);
|
|
8090
8114
|
if (a) {
|
|
8091
8115
|
let { unread_count: t, message_count: i } = a, o = r === n(), s = {
|
|
8092
8116
|
message_count: i + 1,
|
|
8093
8117
|
last_message_at: e.created_at,
|
|
8094
8118
|
unread_count: o ? t : t + 1
|
|
8095
8119
|
};
|
|
8096
|
-
await
|
|
8120
|
+
await uo.summaries.update(r, s);
|
|
8097
8121
|
}
|
|
8098
|
-
}, $ = null,
|
|
8099
|
-
async function
|
|
8122
|
+
}, $ = null, _o = [];
|
|
8123
|
+
async function vo(e) {
|
|
8100
8124
|
if ($) return $;
|
|
8101
|
-
e.logger && e.logger;
|
|
8125
|
+
e.logger && Ka(e.logger);
|
|
8102
8126
|
let { logger: t, ...n } = e;
|
|
8103
8127
|
$ = new Ua(n), await $.connect();
|
|
8104
8128
|
let r = await $.getMe();
|
|
8105
8129
|
$.ws.on("message", (e) => {
|
|
8106
|
-
e.type === "message" &&
|
|
8130
|
+
e.type === "message" && go(e.data, r.id);
|
|
8107
8131
|
});
|
|
8108
8132
|
let i = $;
|
|
8109
|
-
return
|
|
8133
|
+
return _o.splice(0).forEach((e) => e(i)), $;
|
|
8110
8134
|
}
|
|
8111
|
-
function
|
|
8112
|
-
return e && ($ ? e($) :
|
|
8135
|
+
function yo(e) {
|
|
8136
|
+
return e && ($ ? e($) : _o.push(e)), $;
|
|
8113
8137
|
}
|
|
8114
|
-
function
|
|
8138
|
+
function bo() {
|
|
8115
8139
|
$ &&= ($.disconnect(), null);
|
|
8116
8140
|
}
|
|
8117
|
-
function
|
|
8141
|
+
function xo() {
|
|
8118
8142
|
return $ !== null;
|
|
8119
8143
|
}
|
|
8120
8144
|
//#endregion
|
|
8121
8145
|
//#region src/utils/summaries.ts
|
|
8122
|
-
var
|
|
8123
|
-
fetchSummaries: () =>
|
|
8124
|
-
getActiveConversationId: () =>
|
|
8125
|
-
setActiveConversation: () =>
|
|
8126
|
-
}),
|
|
8127
|
-
|
|
8128
|
-
},
|
|
8129
|
-
let t =
|
|
8146
|
+
var So = /* @__PURE__ */ s({
|
|
8147
|
+
fetchSummaries: () => Eo,
|
|
8148
|
+
getActiveConversationId: () => To,
|
|
8149
|
+
setActiveConversation: () => wo
|
|
8150
|
+
}), Co = null, wo = (e) => {
|
|
8151
|
+
Co = e;
|
|
8152
|
+
}, To = () => Co, Eo = async (e) => {
|
|
8153
|
+
let t = yo();
|
|
8130
8154
|
if (!t) throw Error("SDK not initialized");
|
|
8131
8155
|
let n = (await t.getMessagesSummary(e)).map((e) => ({
|
|
8132
8156
|
...e,
|
|
8133
|
-
id:
|
|
8157
|
+
id: Ja(e)
|
|
8134
8158
|
}));
|
|
8135
|
-
return await
|
|
8159
|
+
return await uo.summaries.bulkPut(n), n;
|
|
8136
8160
|
};
|
|
8137
8161
|
//#endregion
|
|
8138
|
-
export {
|
|
8162
|
+
export { gr as C, Pr as S, l as T, zi as _, yo as a, fi as b, ho as c, uo as d, Qa as f, ra as g, oa as h, bo as i, mo as l, Ga as m, wo as n, vo as o, qa as p, So as r, xo as s, Eo as t, po as u, gi as v, o as w, di as x, hi as y };
|