@mobilon-dev/chotto 0.3.43 → 0.3.44
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/chotto.css +1 -1
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/AudioMessage/AudioMessage.vue2.js +119 -109
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue2.js +9 -9
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue2.js +102 -92
- package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue.js +5 -71
- package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue2.js +64 -2
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ErrorStatusIcon.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ErrorStatusIcon.vue2.js +40 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/PendingStatusIcon.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/PendingStatusIcon.vue2.js +46 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ReadStatusIcon.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ReadStatusIcon.vue2.js +40 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ReceivedStatusIcon.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/ReceivedStatusIcon.vue2.js +40 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/SentStatusIcon.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageStatusIndicator/icons/SentStatusIcon.vue2.js +43 -0
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue2.js +118 -103
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue2.js +9 -9
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue2.js +88 -78
- package/dist/themes/dark.css +1 -1
- package/dist/themes/default.css +1 -1
- package/dist/themes/glass.css +1 -1
- package/dist/themes/green.css +1 -1
- package/dist/themes/mobilon1.css +1 -1
- package/dist/types/apps/data/messages.d.ts +192 -0
- package/dist/types/components/2_feed_elements/AudioMessage/AudioMessage.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/AudioMessage/styles/types.d.ts +6 -16
- package/dist/types/components/2_feed_elements/CallMessage/styles/types.d.ts +0 -6
- package/dist/types/components/2_feed_elements/FileMessage/styles/types.d.ts +0 -20
- package/dist/types/components/2_feed_elements/ImageMessage/ImageMessage.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/ImageMessage/styles/types.d.ts +0 -14
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/ErrorStatusIcon.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/PendingStatusIcon.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/ReadStatusIcon.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/ReceivedStatusIcon.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/SentStatusIcon.vue.d.ts +23 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/icons/index.d.ts +5 -0
- package/dist/types/components/2_feed_elements/MessageStatusIndicator/styles/types.d.ts +31 -0
- package/dist/types/components/2_feed_elements/StickerMessage/StickerMessage.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/StickerMessage/styles/types.d.ts +16 -14
- package/dist/types/components/2_feed_elements/TextMessage/styles/types.d.ts +0 -18
- package/dist/types/components/2_feed_elements/VideoMessage/VideoMessage.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/VideoMessage/styles/types.d.ts +1 -15
- package/package.json +1 -1
|
@@ -1,35 +1,36 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
1
|
+
import { defineComponent as fe, inject as ve, ref as f, watch as N, nextTick as A, onMounted as be, onUnmounted as he, computed as k, createElementBlock as u, openBlock as i, normalizeStyle as U, normalizeClass as v, unref as t, createCommentVNode as n, createElementVNode as l, createBlock as b, createVNode as r, withCtx as d, createTextVNode as ye, toDisplayString as L, Transition as x, withModifiers as D, Teleport as we } from "vue";
|
|
2
|
+
import pe from "../../1_atoms/ContextMenu/ContextMenu.vue.js";
|
|
3
|
+
import ke from "../../1_atoms/LinkPreview/LinkPreview.vue.js";
|
|
4
|
+
import xe from "../../1_atoms/EmbedPreview/EmbedPreview.vue.js";
|
|
5
|
+
import Re from "../BaseReplyMessage/BaseReplyMessage.vue.js";
|
|
6
|
+
import Me from "../../2_modals/ModalFullscreen/ModalFullscreen.vue.js";
|
|
7
|
+
import Ce from "../MessageReactions/MessageReactions.vue.js";
|
|
8
|
+
import Te from "../MessageStatusIndicator/MessageStatusIndicator.vue.js";
|
|
9
|
+
import Ie from "../MessageSmsInvite/MessageSmsInvite.vue.js";
|
|
10
|
+
import Se from "../../1_atoms/Tooltip/Tooltip.vue.js";
|
|
11
|
+
import { useMessageActions as je } from "../../../hooks/messages/useMessageActions.js";
|
|
12
|
+
import { useMessageLinks as Ae } from "../../../hooks/messages/useMessageLinks.js";
|
|
13
|
+
import { useChannelAccentColor as Le } from "../../../hooks/messages/useChannelAccentColor.js";
|
|
14
|
+
import { useSubtextTooltip as Ee } from "../../../hooks/messages/useSubtextTooltip.js";
|
|
15
|
+
import { getStatus as Be, getStatusTitle as Oe } from "../../../functions/getStatusMessage.js";
|
|
16
|
+
import { getMessageClass as ze } from "../../../functions/getMessageClass.js";
|
|
17
|
+
import { createReactionHandlers as Fe } from "../../../functions/createReactionHandlers.js";
|
|
17
18
|
import "../../../functions/parseMarkdown.js";
|
|
18
19
|
import "../../../hooks/useMessageDraft.js";
|
|
19
20
|
import "../../../hooks/useSearchModel.js";
|
|
20
|
-
import { useTheme as
|
|
21
|
+
import { useTheme as Ve } from "../../../hooks/useTheme.js";
|
|
21
22
|
/* empty css */
|
|
22
23
|
/* empty css */
|
|
23
|
-
const
|
|
24
|
+
const He = ["messageId"], We = ["src"], $e = {
|
|
24
25
|
key: 1,
|
|
25
26
|
class: "image-message__subtext"
|
|
26
|
-
},
|
|
27
|
+
}, Ne = {
|
|
27
28
|
key: 0,
|
|
28
29
|
class: "image-message__blur-wrapper"
|
|
29
|
-
},
|
|
30
|
+
}, Ue = ["src", "alt"], De = ["src", "alt"], Pe = ["src", "alt"], qe = {
|
|
30
31
|
key: 0,
|
|
31
32
|
class: "image-message__info-container"
|
|
32
|
-
},
|
|
33
|
+
}, Ge = { class: "image-message__time" }, Je = ["innerHTML"], Ke = ["src", "alt"], ys = /* @__PURE__ */ fe({
|
|
33
34
|
__name: "ImageMessage",
|
|
34
35
|
props: {
|
|
35
36
|
message: {
|
|
@@ -54,66 +55,66 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
54
55
|
default: () => ({})
|
|
55
56
|
}
|
|
56
57
|
},
|
|
57
|
-
emits: ["action", "reply"],
|
|
58
|
+
emits: ["action", "reply", "sms-invite"],
|
|
58
59
|
setup(e, { emit: P }) {
|
|
59
|
-
const q =
|
|
60
|
-
isOpenMenu:
|
|
60
|
+
const q = ve("chatAppId"), { getTheme: E } = Ve(q), s = e, C = P, T = f(!1), {
|
|
61
|
+
isOpenMenu: I,
|
|
61
62
|
buttonMenuVisible: G,
|
|
62
63
|
showMenu: J,
|
|
63
64
|
hideMenu: K,
|
|
64
65
|
clickAction: Q,
|
|
65
66
|
viewsAction: B,
|
|
66
67
|
handleClickReplied: X
|
|
67
|
-
} =
|
|
68
|
+
} = je(s.message, C), R = f(!1), { linkedHtml: O, inNewWindow: z } = Ae(() => s.message.text), c = f(null), g = f(null), h = f(0), S = f(0);
|
|
68
69
|
N(
|
|
69
70
|
() => O.value,
|
|
70
71
|
() => {
|
|
71
|
-
|
|
72
|
+
y(), A(() => {
|
|
72
73
|
o && g.value && o.observe(g.value);
|
|
73
74
|
});
|
|
74
75
|
}
|
|
75
76
|
);
|
|
76
|
-
const
|
|
77
|
-
|
|
78
|
-
c.value && (
|
|
77
|
+
const y = () => {
|
|
78
|
+
A(() => {
|
|
79
|
+
c.value && (h.value = c.value.offsetWidth), g.value && (S.value = g.value.offsetWidth);
|
|
79
80
|
});
|
|
80
81
|
};
|
|
81
82
|
let o = null, M = null;
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
83
|
+
be(() => {
|
|
84
|
+
y(), M = () => y(), window.addEventListener("resize", M), typeof ResizeObserver < "u" && (o = new ResizeObserver(() => {
|
|
85
|
+
y();
|
|
85
86
|
}), c.value && o.observe(c.value), g.value && o.observe(g.value));
|
|
86
|
-
}),
|
|
87
|
+
}), he(() => {
|
|
87
88
|
M && window.removeEventListener("resize", M), o && o.disconnect();
|
|
88
89
|
}), N(
|
|
89
90
|
() => [s.message.text, s.message.url],
|
|
90
91
|
() => {
|
|
91
|
-
|
|
92
|
+
y(), A(() => {
|
|
92
93
|
o && (o.disconnect(), c.value && o.observe(c.value), g.value && o.observe(g.value));
|
|
93
94
|
});
|
|
94
95
|
},
|
|
95
96
|
{ immediate: !0 }
|
|
96
97
|
);
|
|
97
|
-
const F = k(() => s.message.text &&
|
|
98
|
+
const F = k(() => s.message.text && S.value > h.value && h.value > 0), Y = () => {
|
|
98
99
|
J(), R.value = !0;
|
|
99
100
|
}, V = () => {
|
|
100
101
|
K(), R.value = !1;
|
|
101
|
-
}, Z = k(() => s.message.reply && s.message.text ? "0" : s.message.text ?
|
|
102
|
+
}, Z = k(() => s.message.reply && s.message.text ? "0" : s.message.text ? S.value > h.value && h.value > 0 ? "0" : "8px 8px 0 0" : s.message.reply ? "0 0 8px 8px" : "8px"), _ = k(() => Be(s.message.status)), ee = k(() => Oe(s.message.status, s.message.statusMsg)), { bubbleStyle: se, messageChannelId: te } = Le(
|
|
102
103
|
k(() => s.message),
|
|
103
104
|
{ cssVariable: "--chotto-imagemessage-right-bg", position: "right" }
|
|
104
105
|
);
|
|
105
|
-
function
|
|
106
|
-
return
|
|
106
|
+
function H(w) {
|
|
107
|
+
return ze(w.position, "image-message");
|
|
107
108
|
}
|
|
108
|
-
const
|
|
109
|
-
var
|
|
109
|
+
const ae = () => T.value = !1, ie = async () => {
|
|
110
|
+
var w, a;
|
|
110
111
|
if (s.message.url)
|
|
111
112
|
try {
|
|
112
113
|
const m = await fetch(s.message.url, {
|
|
113
114
|
headers: {
|
|
114
115
|
Accept: "image/*"
|
|
115
116
|
}
|
|
116
|
-
}),
|
|
117
|
+
}), ue = m.headers.get("content-type") || "", re = await m.blob(), j = ((a = (w = s.message.url.split(".").pop()) == null ? void 0 : w.split("?")[0]) == null ? void 0 : a.toLowerCase()) || "", ce = {
|
|
117
118
|
"image/jpeg": "jpg",
|
|
118
119
|
"image/jpg": "jpg",
|
|
119
120
|
"image/png": "png",
|
|
@@ -122,20 +123,23 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
122
123
|
"image/svg+xml": "svg",
|
|
123
124
|
"image/bmp": "bmp"
|
|
124
125
|
};
|
|
125
|
-
let
|
|
126
|
-
const
|
|
127
|
-
|
|
126
|
+
let W = j && ["jpg", "jpeg", "png", "gif", "webp", "svg", "bmp"].includes(j) ? j : ce[ue] || "jpg";
|
|
127
|
+
const de = s.message.alt ? s.message.alt.includes(".") ? s.message.alt : `${s.message.alt}.${W}` : `image-${s.message.messageId}.${W}`, $ = window.URL.createObjectURL(re), p = document.createElement("a");
|
|
128
|
+
p.href = $, p.download = de, document.body.appendChild(p), p.click(), document.body.removeChild(p), window.URL.revokeObjectURL($);
|
|
128
129
|
} catch (m) {
|
|
129
130
|
console.error("Ошибка при скачивании изображения:", m);
|
|
130
131
|
}
|
|
131
|
-
}, { onToggleReaction:
|
|
132
|
-
|
|
132
|
+
}, { onToggleReaction: ne, onAddReaction: le, onRemoveReaction: oe } = Fe(C), me = Ee(() => s.message, () => s.subtextTooltipData);
|
|
133
|
+
function ge() {
|
|
134
|
+
C("sms-invite", s.message);
|
|
135
|
+
}
|
|
136
|
+
return (w, a) => (i(), u("div", {
|
|
133
137
|
class: v(["image-message", [
|
|
134
|
-
|
|
138
|
+
H(e.message),
|
|
135
139
|
e.applyStyle(e.message)
|
|
136
140
|
]]),
|
|
137
141
|
messageId: e.message.messageId,
|
|
138
|
-
style: U(
|
|
142
|
+
style: U(t(se)),
|
|
139
143
|
onMouseleave: V
|
|
140
144
|
}, [
|
|
141
145
|
e.message.avatar && e.isFirstInSeries ? (i(), u("img", {
|
|
@@ -144,15 +148,15 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
144
148
|
src: e.message.avatar,
|
|
145
149
|
height: "32",
|
|
146
150
|
width: "32"
|
|
147
|
-
}, null, 8,
|
|
148
|
-
e.message.subText && e.isFirstInSeries ? (i(), u("p",
|
|
149
|
-
r(
|
|
150
|
-
text:
|
|
151
|
+
}, null, 8, We)) : n("", !0),
|
|
152
|
+
e.message.subText && e.isFirstInSeries ? (i(), u("p", $e, [
|
|
153
|
+
r(Se, {
|
|
154
|
+
text: t(me),
|
|
151
155
|
position: e.message.position === "left" ? "right" : "left",
|
|
152
156
|
offset: 8
|
|
153
157
|
}, {
|
|
154
158
|
default: d(() => [
|
|
155
|
-
|
|
159
|
+
ye(L(e.message.subText), 1)
|
|
156
160
|
]),
|
|
157
161
|
_: 1
|
|
158
162
|
}, 8, ["text", "position"])
|
|
@@ -160,30 +164,30 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
160
164
|
l("div", {
|
|
161
165
|
class: v(["image-message__content", { "is-first": e.isFirstInSeries, "with-avatar-indent": !e.isFirstInSeries && e.message.avatar }])
|
|
162
166
|
}, [
|
|
163
|
-
e.message.reply ? (i(), b(
|
|
167
|
+
e.message.reply ? (i(), b(Re, {
|
|
164
168
|
key: 0,
|
|
165
169
|
style: { margin: "10px 10px 4px 16px" },
|
|
166
170
|
class: v(e.message.position),
|
|
167
171
|
message: e.message.reply,
|
|
168
|
-
onReply:
|
|
172
|
+
onReply: t(X)
|
|
169
173
|
}, null, 8, ["class", "message", "onReply"])) : n("", !0),
|
|
170
174
|
l("div", {
|
|
171
175
|
class: v(["image-message__preview-button", { "image-message__preview-button--blur-edges": F.value }]),
|
|
172
|
-
onClick:
|
|
176
|
+
onClick: a[1] || (a[1] = (m) => T.value = !0),
|
|
173
177
|
onMouseenter: Y,
|
|
174
178
|
onMouseleave: V
|
|
175
179
|
}, [
|
|
176
|
-
F.value ? (i(), u("div",
|
|
180
|
+
F.value ? (i(), u("div", Ne, [
|
|
177
181
|
l("img", {
|
|
178
182
|
class: "image-message__blur-left",
|
|
179
183
|
src: e.message.url,
|
|
180
184
|
alt: e.message.alt
|
|
181
|
-
}, null, 8,
|
|
185
|
+
}, null, 8, Ue),
|
|
182
186
|
l("img", {
|
|
183
187
|
class: "image-message__blur-right",
|
|
184
188
|
src: e.message.url,
|
|
185
189
|
alt: e.message.alt
|
|
186
|
-
}, null, 8,
|
|
190
|
+
}, null, 8, De)
|
|
187
191
|
])) : n("", !0),
|
|
188
192
|
l("img", {
|
|
189
193
|
ref_key: "imageRef",
|
|
@@ -192,26 +196,26 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
192
196
|
style: U({ borderRadius: Z.value }),
|
|
193
197
|
src: e.message.url,
|
|
194
198
|
alt: e.message.alt
|
|
195
|
-
}, null, 12,
|
|
199
|
+
}, null, 12, Pe),
|
|
196
200
|
r(x, { name: "modal-fade" }, {
|
|
197
201
|
default: d(() => [
|
|
198
|
-
R.value ? (i(), u("div",
|
|
202
|
+
R.value ? (i(), u("div", qe, [
|
|
199
203
|
e.message.views ? (i(), u("div", {
|
|
200
204
|
key: 0,
|
|
201
205
|
class: "image-message__views",
|
|
202
|
-
onClick:
|
|
206
|
+
onClick: a[0] || (a[0] = D(
|
|
203
207
|
//@ts-ignore
|
|
204
|
-
(...m) =>
|
|
208
|
+
(...m) => t(B) && t(B)(...m),
|
|
205
209
|
["stop"]
|
|
206
210
|
))
|
|
207
211
|
}, [
|
|
208
|
-
|
|
209
|
-
l("p", null,
|
|
212
|
+
a[4] || (a[4] = l("span", { class: "pi pi-eye" }, null, -1)),
|
|
213
|
+
l("p", null, L(e.message.views), 1)
|
|
210
214
|
])) : n("", !0),
|
|
211
|
-
l("span",
|
|
212
|
-
r(
|
|
215
|
+
l("span", Ge, L(e.message.time), 1),
|
|
216
|
+
r(Te, {
|
|
213
217
|
"base-class": "image-message",
|
|
214
|
-
"message-class":
|
|
218
|
+
"message-class": H(e.message),
|
|
215
219
|
"message-status": e.message.status,
|
|
216
220
|
"status-class": _.value,
|
|
217
221
|
"status-title": ee.value
|
|
@@ -225,8 +229,8 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
225
229
|
R.value ? (i(), u("button", {
|
|
226
230
|
key: 0,
|
|
227
231
|
class: "image-message__download-button",
|
|
228
|
-
onClick: D(
|
|
229
|
-
}, [...
|
|
232
|
+
onClick: D(ie, ["stop"])
|
|
233
|
+
}, [...a[5] || (a[5] = [
|
|
230
234
|
l("span", { class: "pi pi-download" }, null, -1)
|
|
231
235
|
])])) : n("", !0)
|
|
232
236
|
]),
|
|
@@ -235,11 +239,11 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
235
239
|
], 34),
|
|
236
240
|
r(x, { name: "modal-fade" }, {
|
|
237
241
|
default: d(() => [
|
|
238
|
-
|
|
242
|
+
t(G) && e.message.actions ? (i(), u("button", {
|
|
239
243
|
key: 0,
|
|
240
244
|
class: "image-message__menu-button",
|
|
241
|
-
onClick:
|
|
242
|
-
}, [...
|
|
245
|
+
onClick: a[2] || (a[2] = (m) => I.value = !t(I))
|
|
246
|
+
}, [...a[6] || (a[6] = [
|
|
243
247
|
l("span", { class: "pi pi-ellipsis-h" }, null, -1)
|
|
244
248
|
])])) : n("", !0)
|
|
245
249
|
]),
|
|
@@ -247,11 +251,11 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
247
251
|
}),
|
|
248
252
|
r(x, { name: "context-menu" }, {
|
|
249
253
|
default: d(() => [
|
|
250
|
-
|
|
254
|
+
t(I) && e.message.actions ? (i(), b(pe, {
|
|
251
255
|
key: 0,
|
|
252
256
|
class: "image-message__context-menu",
|
|
253
257
|
actions: e.message.actions,
|
|
254
|
-
onClick:
|
|
258
|
+
onClick: t(Q)
|
|
255
259
|
}, null, 8, ["actions", "onClick"])) : n("", !0)
|
|
256
260
|
]),
|
|
257
261
|
_: 1
|
|
@@ -263,44 +267,50 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
263
267
|
class: "image-message__text-container"
|
|
264
268
|
}, [
|
|
265
269
|
l("p", {
|
|
266
|
-
onClick:
|
|
267
|
-
(...m) =>
|
|
268
|
-
innerHTML:
|
|
269
|
-
}, null, 8,
|
|
270
|
+
onClick: a[3] || (a[3] = //@ts-ignore
|
|
271
|
+
(...m) => t(z) && t(z)(...m)),
|
|
272
|
+
innerHTML: t(O)
|
|
273
|
+
}, null, 8, Je)
|
|
270
274
|
], 512)) : n("", !0),
|
|
271
|
-
|
|
275
|
+
r(Ie, {
|
|
276
|
+
status: e.message.status,
|
|
277
|
+
"has-messenger-account": e.message.hasMessengerAccount,
|
|
278
|
+
channel: t(te),
|
|
279
|
+
onSmsInvite: ge
|
|
280
|
+
}, null, 8, ["status", "has-messenger-account", "channel"]),
|
|
281
|
+
e.message.linkPreview ? (i(), b(ke, {
|
|
272
282
|
key: 2,
|
|
273
283
|
class: v(["image-message__link-preview", e.message.position]),
|
|
274
284
|
"link-preview": e.message.linkPreview
|
|
275
285
|
}, null, 8, ["class", "link-preview"])) : n("", !0),
|
|
276
|
-
e.message.embed ? (i(), b(
|
|
286
|
+
e.message.embed ? (i(), b(xe, {
|
|
277
287
|
key: 3,
|
|
278
288
|
class: v(e.message.position),
|
|
279
289
|
embed: e.message.embed
|
|
280
290
|
}, null, 8, ["class", "embed"])) : n("", !0),
|
|
281
|
-
r(
|
|
291
|
+
r(Ce, {
|
|
282
292
|
reactions: e.message.reactions,
|
|
283
293
|
"message-id": e.message.messageId,
|
|
284
294
|
enabled: e.reactionsEnabled,
|
|
285
|
-
onToggleReaction:
|
|
286
|
-
onAddReaction:
|
|
287
|
-
onRemoveReaction:
|
|
295
|
+
onToggleReaction: t(ne),
|
|
296
|
+
onAddReaction: t(le),
|
|
297
|
+
onRemoveReaction: t(oe)
|
|
288
298
|
}, null, 8, ["reactions", "message-id", "enabled", "onToggleReaction", "onAddReaction", "onRemoveReaction"])
|
|
289
299
|
], 2),
|
|
290
|
-
(i(), b(
|
|
300
|
+
(i(), b(we, { to: "body" }, [
|
|
291
301
|
r(x, { name: "modal-fade" }, {
|
|
292
302
|
default: d(() => [
|
|
293
|
-
|
|
303
|
+
T.value ? (i(), b(Me, {
|
|
294
304
|
key: 0,
|
|
295
|
-
"data-theme":
|
|
296
|
-
onClose:
|
|
305
|
+
"data-theme": t(E)().theme ? t(E)().theme : "light",
|
|
306
|
+
onClose: ae
|
|
297
307
|
}, {
|
|
298
308
|
default: d(() => [
|
|
299
309
|
l("img", {
|
|
300
310
|
class: "image-message__modal-image",
|
|
301
311
|
src: e.message.url,
|
|
302
312
|
alt: e.message.alt
|
|
303
|
-
}, null, 8,
|
|
313
|
+
}, null, 8, Ke)
|
|
304
314
|
]),
|
|
305
315
|
_: 1
|
|
306
316
|
}, 8, ["data-theme"])) : n("", !0)
|
|
@@ -308,9 +318,9 @@ const ze = ["messageId"], Fe = ["src"], Ve = {
|
|
|
308
318
|
_: 1
|
|
309
319
|
})
|
|
310
320
|
]))
|
|
311
|
-
], 46,
|
|
321
|
+
], 46, He));
|
|
312
322
|
}
|
|
313
323
|
});
|
|
314
324
|
export {
|
|
315
|
-
|
|
325
|
+
ys as default
|
|
316
326
|
};
|
package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue.js
CHANGED
|
@@ -1,73 +1,7 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
3
|
-
import
|
|
4
|
-
|
|
5
|
-
const S = {
|
|
6
|
-
key: 0,
|
|
7
|
-
class: "pi pi-clock"
|
|
8
|
-
}, k = {
|
|
9
|
-
key: 1,
|
|
10
|
-
class: "pi pi-exclamation-circle"
|
|
11
|
-
}, h = {
|
|
12
|
-
key: 0,
|
|
13
|
-
class: "pi pi-check"
|
|
14
|
-
}, v = /* @__PURE__ */ p({
|
|
15
|
-
name: "MessageStatusIndicator",
|
|
16
|
-
__name: "MessageStatusIndicator",
|
|
17
|
-
props: {
|
|
18
|
-
baseClass: {
|
|
19
|
-
type: String,
|
|
20
|
-
required: !0
|
|
21
|
-
},
|
|
22
|
-
messageStatus: {
|
|
23
|
-
type: String,
|
|
24
|
-
required: !0
|
|
25
|
-
},
|
|
26
|
-
statusClass: {
|
|
27
|
-
type: String,
|
|
28
|
-
default: ""
|
|
29
|
-
},
|
|
30
|
-
statusTitle: {
|
|
31
|
-
type: String,
|
|
32
|
-
default: ""
|
|
33
|
-
},
|
|
34
|
-
messageClass: {
|
|
35
|
-
type: String,
|
|
36
|
-
required: !0
|
|
37
|
-
},
|
|
38
|
-
tooltipPosition: {
|
|
39
|
-
type: String,
|
|
40
|
-
default: "bottom-left"
|
|
41
|
-
},
|
|
42
|
-
statuses: {
|
|
43
|
-
type: Array,
|
|
44
|
-
default: () => y
|
|
45
|
-
}
|
|
46
|
-
},
|
|
47
|
-
setup(s) {
|
|
48
|
-
const t = s, u = n(() => t.messageClass === `${t.baseClass}__right` && t.statuses.includes(t.messageStatus)), c = n(() => {
|
|
49
|
-
const i = [`${t.baseClass}__status`];
|
|
50
|
-
return t.statusClass && i.push(t.statusClass), i;
|
|
51
|
-
});
|
|
52
|
-
return (i, o) => u.value ? (e(), m(f, {
|
|
53
|
-
key: 0,
|
|
54
|
-
text: s.statusTitle,
|
|
55
|
-
position: s.tooltipPosition
|
|
56
|
-
}, {
|
|
57
|
-
default: d(() => [
|
|
58
|
-
l("div", {
|
|
59
|
-
class: g(c.value)
|
|
60
|
-
}, [
|
|
61
|
-
s.messageStatus === "pending" ? (e(), a("span", S)) : s.messageStatus === "error" ? (e(), a("span", k)) : (e(), a(C, { key: 2 }, [
|
|
62
|
-
s.messageStatus !== "sent" ? (e(), a("span", h)) : r("", !0),
|
|
63
|
-
o[0] || (o[0] = l("span", { class: "pi pi-check" }, null, -1))
|
|
64
|
-
], 64))
|
|
65
|
-
], 2)
|
|
66
|
-
]),
|
|
67
|
-
_: 1
|
|
68
|
-
}, 8, ["text", "position"])) : r("", !0);
|
|
69
|
-
}
|
|
70
|
-
});
|
|
1
|
+
import t from "./MessageStatusIndicator.vue2.js";
|
|
2
|
+
/* empty css */
|
|
3
|
+
import o from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const c = /* @__PURE__ */ o(t, [["__scopeId", "data-v-744777cc"]]);
|
|
71
5
|
export {
|
|
72
|
-
|
|
6
|
+
c as default
|
|
73
7
|
};
|
package/dist/components/2_feed_elements/MessageStatusIndicator/MessageStatusIndicator.vue2.js
CHANGED
|
@@ -1,4 +1,66 @@
|
|
|
1
|
-
import
|
|
1
|
+
import { defineComponent as m, computed as i, createBlock as s, createCommentVNode as l, openBlock as a, withCtx as c, createElementVNode as d, normalizeClass as g, unref as r } from "vue";
|
|
2
|
+
import p from "../../1_atoms/Tooltip/Tooltip.vue.js";
|
|
3
|
+
import { statuses as S } from "../../../functions/getStatusMessage.js";
|
|
4
|
+
import "../../../functions/parseMarkdown.js";
|
|
5
|
+
import f from "./icons/ErrorStatusIcon.vue.js";
|
|
6
|
+
import y from "./icons/PendingStatusIcon.vue.js";
|
|
7
|
+
import C from "./icons/ReadStatusIcon.vue.js";
|
|
8
|
+
import k from "./icons/ReceivedStatusIcon.vue.js";
|
|
9
|
+
import I from "./icons/SentStatusIcon.vue.js";
|
|
10
|
+
const M = /* @__PURE__ */ m({
|
|
11
|
+
name: "MessageStatusIndicator",
|
|
12
|
+
__name: "MessageStatusIndicator",
|
|
13
|
+
props: {
|
|
14
|
+
baseClass: {
|
|
15
|
+
type: String,
|
|
16
|
+
required: !0
|
|
17
|
+
},
|
|
18
|
+
messageStatus: {
|
|
19
|
+
type: String,
|
|
20
|
+
required: !0
|
|
21
|
+
},
|
|
22
|
+
statusClass: {
|
|
23
|
+
type: String,
|
|
24
|
+
default: ""
|
|
25
|
+
},
|
|
26
|
+
statusTitle: {
|
|
27
|
+
type: String,
|
|
28
|
+
default: ""
|
|
29
|
+
},
|
|
30
|
+
messageClass: {
|
|
31
|
+
type: String,
|
|
32
|
+
required: !0
|
|
33
|
+
},
|
|
34
|
+
tooltipPosition: {
|
|
35
|
+
type: String,
|
|
36
|
+
default: "bottom-left"
|
|
37
|
+
},
|
|
38
|
+
statuses: {
|
|
39
|
+
type: Array,
|
|
40
|
+
default: () => S
|
|
41
|
+
}
|
|
42
|
+
},
|
|
43
|
+
setup(t) {
|
|
44
|
+
const e = t, u = i(() => e.messageClass === `${e.baseClass}__right` && e.statuses.includes(e.messageStatus)), n = i(() => {
|
|
45
|
+
const o = [`${e.baseClass}__status`];
|
|
46
|
+
return e.statusClass && o.push(e.statusClass), o;
|
|
47
|
+
});
|
|
48
|
+
return (o, b) => u.value ? (a(), s(p, {
|
|
49
|
+
key: 0,
|
|
50
|
+
text: t.statusTitle,
|
|
51
|
+
position: t.tooltipPosition
|
|
52
|
+
}, {
|
|
53
|
+
default: c(() => [
|
|
54
|
+
d("div", {
|
|
55
|
+
class: g(["message-status-indicator", ...n.value])
|
|
56
|
+
}, [
|
|
57
|
+
t.messageStatus === "pending" ? (a(), s(r(y), { key: 0 })) : t.messageStatus === "error" ? (a(), s(r(f), { key: 1 })) : t.messageStatus === "read" ? (a(), s(r(C), { key: 2 })) : t.messageStatus === "received" ? (a(), s(r(k), { key: 3 })) : (a(), s(r(I), { key: 4 }))
|
|
58
|
+
], 2)
|
|
59
|
+
]),
|
|
60
|
+
_: 1
|
|
61
|
+
}, 8, ["text", "position"])) : l("", !0);
|
|
62
|
+
}
|
|
63
|
+
});
|
|
2
64
|
export {
|
|
3
|
-
|
|
65
|
+
M as default
|
|
4
66
|
};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { defineComponent as n, computed as C, createElementBlock as o, openBlock as l, normalizeStyle as c, normalizeClass as p, createStaticVNode as u } from "vue";
|
|
2
|
+
const f = /* @__PURE__ */ n({
|
|
3
|
+
name: "ErrorStatusIcon",
|
|
4
|
+
__name: "ErrorStatusIcon",
|
|
5
|
+
props: {
|
|
6
|
+
size: {
|
|
7
|
+
type: [String, Number],
|
|
8
|
+
default: "inherit"
|
|
9
|
+
},
|
|
10
|
+
class: {
|
|
11
|
+
type: String,
|
|
12
|
+
default: ""
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
setup(i) {
|
|
16
|
+
const t = i, a = C(() => `status-icon status-icon--error ${t.class}`.trim()), s = C(() => {
|
|
17
|
+
if (t.size === "inherit")
|
|
18
|
+
return {};
|
|
19
|
+
const e = typeof t.size == "number" ? `${t.size}px` : t.size;
|
|
20
|
+
return {
|
|
21
|
+
width: e,
|
|
22
|
+
height: e
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
return (e, r) => (l(), o("svg", {
|
|
26
|
+
class: p(a.value),
|
|
27
|
+
style: c(s.value),
|
|
28
|
+
width: "16",
|
|
29
|
+
height: "16",
|
|
30
|
+
viewBox: "0 0 16 16",
|
|
31
|
+
fill: "none",
|
|
32
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
33
|
+
}, [...r[0] || (r[0] = [
|
|
34
|
+
u('<g clip-path="url(#clip0_7935_4)" data-v-e278b0f5><path d="M8 15C6.14348 15 4.36301 14.2625 3.05025 12.9497C1.7375 11.637 1 9.85652 1 8C1 6.14348 1.7375 4.36301 3.05025 3.05025C4.36301 1.7375 6.14348 1 8 1C9.85652 1 11.637 1.7375 12.9497 3.05025C14.2625 4.36301 15 6.14348 15 8C15 9.85652 14.2625 11.637 12.9497 12.9497C11.637 14.2625 9.85652 15 8 15ZM8 16C10.1217 16 12.1566 15.1571 13.6569 13.6569C15.1571 12.1566 16 10.1217 16 8C16 5.87827 15.1571 3.84344 13.6569 2.34315C12.1566 0.842855 10.1217 0 8 0C5.87827 0 3.84344 0.842855 2.34315 2.34315C0.842855 3.84344 0 5.87827 0 8C0 10.1217 0.842855 12.1566 2.34315 13.6569C3.84344 15.1571 5.87827 16 8 16Z" fill="currentColor" data-v-e278b0f5></path><path d="M7.00195 11.0011C7.00195 10.8698 7.02782 10.7397 7.07807 10.6184C7.12833 10.4971 7.20199 10.3868 7.29485 10.294C7.38771 10.2011 7.49794 10.1275 7.61927 10.0772C7.7406 10.027 7.87063 10.0011 8.00195 10.0011C8.13328 10.0011 8.26331 10.027 8.38464 10.0772C8.50596 10.1275 8.6162 10.2011 8.70906 10.294C8.80192 10.3868 8.87558 10.4971 8.92583 10.6184C8.97609 10.7397 9.00195 10.8698 9.00195 11.0011C9.00195 11.2663 8.8966 11.5207 8.70906 11.7082C8.52152 11.8957 8.26717 12.0011 8.00195 12.0011C7.73674 12.0011 7.48238 11.8957 7.29485 11.7082C7.10731 11.5207 7.00195 11.2663 7.00195 11.0011ZM7.09995 4.99609C7.08664 4.86993 7.09999 4.74239 7.13915 4.62172C7.17831 4.50106 7.24241 4.38998 7.32727 4.29568C7.41214 4.20139 7.51588 4.12599 7.63176 4.07438C7.74765 4.02276 7.87309 3.99609 7.99995 3.99609C8.12681 3.99609 8.25226 4.02276 8.36814 4.07438C8.48403 4.12599 8.58777 4.20139 8.67263 4.29568C8.7575 4.38998 8.82159 4.50106 8.86075 4.62172C8.89991 4.74239 8.91327 4.86993 8.89995 4.99609L8.54995 8.50309C8.53819 8.64087 8.47516 8.76921 8.37331 8.86273C8.27146 8.95625 8.13823 9.00815 7.99995 9.00815C7.86168 9.00815 7.72844 8.95625 7.6266 8.86273C7.52475 8.76921 7.46171 8.64087 7.44995 8.50309L7.09995 4.99609Z" fill="currentColor" data-v-e278b0f5></path></g><defs data-v-e278b0f5><clipPath id="clip0_7935_4" data-v-e278b0f5><rect width="16" height="16" fill="white" data-v-e278b0f5></rect></clipPath></defs>', 2)
|
|
35
|
+
])], 6));
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
export {
|
|
39
|
+
f as default
|
|
40
|
+
};
|
package/dist/components/2_feed_elements/MessageStatusIndicator/icons/PendingStatusIcon.vue2.js
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { defineComponent as l, computed as s, createElementBlock as a, openBlock as u, normalizeStyle as c, normalizeClass as p, createElementVNode as d } from "vue";
|
|
2
|
+
const g = /* @__PURE__ */ l({
|
|
3
|
+
name: "PendingStatusIcon",
|
|
4
|
+
__name: "PendingStatusIcon",
|
|
5
|
+
props: {
|
|
6
|
+
size: {
|
|
7
|
+
type: [String, Number],
|
|
8
|
+
default: "inherit"
|
|
9
|
+
},
|
|
10
|
+
class: {
|
|
11
|
+
type: String,
|
|
12
|
+
default: ""
|
|
13
|
+
}
|
|
14
|
+
},
|
|
15
|
+
setup(o) {
|
|
16
|
+
const e = o, i = s(() => `status-icon status-icon--pending ${e.class}`.trim()), r = s(() => {
|
|
17
|
+
if (e.size === "inherit")
|
|
18
|
+
return {};
|
|
19
|
+
const t = typeof e.size == "number" ? `${e.size}px` : e.size;
|
|
20
|
+
return {
|
|
21
|
+
width: t,
|
|
22
|
+
height: t
|
|
23
|
+
};
|
|
24
|
+
});
|
|
25
|
+
return (t, n) => (u(), a("svg", {
|
|
26
|
+
class: p(i.value),
|
|
27
|
+
style: c(r.value),
|
|
28
|
+
width: "16",
|
|
29
|
+
height: "16",
|
|
30
|
+
viewBox: "2 2 20 20",
|
|
31
|
+
fill: "none",
|
|
32
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
33
|
+
}, [...n[0] || (n[0] = [
|
|
34
|
+
d("path", {
|
|
35
|
+
d: "M12 7V12H15M21 12C21 16.9706 16.9706 21 12 21C7.02944 21 3 16.9706 3 12C3 7.02944 7.02944 3 12 3C16.9706 3 21 7.02944 21 12Z",
|
|
36
|
+
stroke: "currentColor",
|
|
37
|
+
"stroke-width": "2",
|
|
38
|
+
"stroke-linecap": "round",
|
|
39
|
+
"stroke-linejoin": "round"
|
|
40
|
+
}, null, -1)
|
|
41
|
+
])], 6));
|
|
42
|
+
}
|
|
43
|
+
});
|
|
44
|
+
export {
|
|
45
|
+
g as default
|
|
46
|
+
};
|