@mobilon-dev/chotto 0.3.105 → 0.3.107
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 +293 -266
- package/dist/components/2_feed_elements/FeedReplyQuote/FeedReplyQuote.vue.js +7 -0
- package/dist/components/2_feed_elements/FeedReplyQuote/FeedReplyQuote.vue2.js +73 -0
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/FileMessage/FileMessage.vue2.js +185 -158
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue.js +3 -3
- package/dist/components/2_feed_elements/ImageMessage/ImageMessage.vue2.js +227 -200
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue.js +2 -2
- package/dist/components/2_feed_elements/MessageReactions/MessageReactions.vue2.js +62 -245
- package/dist/components/2_feed_elements/MessageReactions/MessageReactionsOverlay.vue.js +7 -0
- package/dist/components/2_feed_elements/MessageReactions/MessageReactionsOverlay.vue2.js +231 -0
- package/dist/components/2_feed_elements/MessageReactions/composables/usePositioning.js +25 -25
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/StickerMessage/StickerMessage.vue2.js +213 -186
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue.js +2 -2
- package/dist/components/2_feed_elements/TextMessage/TextMessage.vue2.js +190 -164
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue.js +1 -1
- package/dist/components/2_feed_elements/VideoMessage/VideoMessage.vue2.js +209 -182
- package/dist/components/3_compounds/Feed/Feed.vue.js +2 -2
- package/dist/components/3_compounds/Feed/Feed.vue2.js +261 -213
- package/dist/components/3_compounds/Feed/composables/useFeedGrouping.js +23 -20
- package/dist/components/3_compounds/Feed/composables/useFeedProgressiveRender.js +82 -0
- package/dist/components/3_compounds/Feed/composables/useFeedReactionsOverlay.js +34 -0
- package/dist/hooks/messages/useMessageActions.js +81 -70
- package/dist/hooks/messages/useMessageReactionsInFeed.js +53 -0
- package/dist/hooks/messages/useMessageReactionsMount.js +21 -0
- package/dist/index.js +245 -238
- package/dist/types/components/2_feed_elements/FeedReplyQuote/FeedReplyQuote.vue.d.ts +19 -0
- package/dist/types/components/2_feed_elements/MessageReactions/MessageReactions.vue.d.ts +4 -71
- package/dist/types/components/2_feed_elements/MessageReactions/MessageReactionsOverlay.vue.d.ts +2 -0
- package/dist/types/components/2_feed_elements/MessageReactions/composables/usePositioning.d.ts +2 -1
- package/dist/types/components/3_compounds/Feed/Feed.vue.d.ts +6 -0
- package/dist/types/components/3_compounds/Feed/composables/index.d.ts +2 -0
- package/dist/types/components/3_compounds/Feed/composables/useFeedGrouping.d.ts +3 -22
- package/dist/types/components/3_compounds/Feed/composables/useFeedProgressiveRender.d.ts +22 -0
- package/dist/types/components/3_compounds/Feed/composables/useFeedReactionsOverlay.d.ts +52 -0
- package/dist/types/components/index.d.ts +1 -0
- package/dist/types/hooks/messages/index.d.ts +2 -0
- package/dist/types/hooks/messages/useMessageReactionsInFeed.d.ts +25 -0
- package/dist/types/hooks/messages/useMessageReactionsMount.d.ts +10 -0
- package/package.json +1 -1
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
import { defineComponent as y, computed as a, createElementBlock as r, openBlock as n, normalizeClass as v, createCommentVNode as c, createElementVNode as k, toDisplayString as d } from "vue";
|
|
2
|
+
const C = ["src"], E = { class: "feed-reply-quote__content" }, w = {
|
|
3
|
+
key: 0,
|
|
4
|
+
class: "feed-reply-quote__heading"
|
|
5
|
+
}, q = {
|
|
6
|
+
key: 1,
|
|
7
|
+
class: "feed-reply-quote__body"
|
|
8
|
+
}, I = /* @__PURE__ */ y({
|
|
9
|
+
__name: "FeedReplyQuote",
|
|
10
|
+
props: {
|
|
11
|
+
message: {
|
|
12
|
+
type: Object,
|
|
13
|
+
default: () => ({})
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
emits: ["reply"],
|
|
17
|
+
setup(m, { emit: g }) {
|
|
18
|
+
const _ = g, t = m, p = /* @__PURE__ */ new Set(["message.image", "message.sticker"]), o = a(() => {
|
|
19
|
+
const e = t.message;
|
|
20
|
+
return !(e != null && e.url) || !p.has(e.type || "") || e.url.endsWith(".tgs") ? "" : e.url;
|
|
21
|
+
}), i = a(() => {
|
|
22
|
+
var s;
|
|
23
|
+
const e = (s = t.message) == null ? void 0 : s.header;
|
|
24
|
+
return e ? `В ответ ${e}` : "";
|
|
25
|
+
}), l = a(() => {
|
|
26
|
+
var u;
|
|
27
|
+
const e = t.message, s = (u = e == null ? void 0 : e.text) == null ? void 0 : u.replace(/\s+/g, " ").trim();
|
|
28
|
+
if (s) return s;
|
|
29
|
+
switch (e == null ? void 0 : e.type) {
|
|
30
|
+
case "message.image":
|
|
31
|
+
return "Фотография";
|
|
32
|
+
case "message.sticker":
|
|
33
|
+
return "Стикер";
|
|
34
|
+
case "message.file":
|
|
35
|
+
return e.filename || "Файл";
|
|
36
|
+
case "message.audio":
|
|
37
|
+
return "Аудиосообщение";
|
|
38
|
+
case "message.video":
|
|
39
|
+
return "Видео";
|
|
40
|
+
case "message.call":
|
|
41
|
+
return e.isMissedCall ? "Пропущенный аудиозвонок" : "Аудиозвонок";
|
|
42
|
+
default:
|
|
43
|
+
return "";
|
|
44
|
+
}
|
|
45
|
+
}), f = a(() => o.value ? "grid" : "");
|
|
46
|
+
function h() {
|
|
47
|
+
var e;
|
|
48
|
+
(e = t.message) != null && e.messageId && _("reply", t.message.messageId);
|
|
49
|
+
}
|
|
50
|
+
return (e, s) => (n(), r("div", {
|
|
51
|
+
class: v(["reply__container", f.value]),
|
|
52
|
+
onClick: h
|
|
53
|
+
}, [
|
|
54
|
+
o.value ? (n(), r("img", {
|
|
55
|
+
key: 0,
|
|
56
|
+
class: "feed-reply-quote__preview",
|
|
57
|
+
src: o.value,
|
|
58
|
+
alt: "",
|
|
59
|
+
width: "40",
|
|
60
|
+
height: "40",
|
|
61
|
+
loading: "lazy",
|
|
62
|
+
decoding: "async"
|
|
63
|
+
}, null, 8, C)) : c("", !0),
|
|
64
|
+
k("div", E, [
|
|
65
|
+
i.value ? (n(), r("p", w, d(i.value), 1)) : c("", !0),
|
|
66
|
+
l.value ? (n(), r("p", q, d(l.value), 1)) : c("", !0)
|
|
67
|
+
])
|
|
68
|
+
], 2));
|
|
69
|
+
}
|
|
70
|
+
});
|
|
71
|
+
export {
|
|
72
|
+
I as default
|
|
73
|
+
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import o from "./FileMessage.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
3
|
import e from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
-
const a = /* @__PURE__ */ e(o, [["__scopeId", "data-v-
|
|
4
|
+
const a = /* @__PURE__ */ e(o, [["__scopeId", "data-v-432e12b5"]]);
|
|
5
5
|
export {
|
|
6
6
|
a as default
|
|
7
7
|
};
|
|
@@ -1,20 +1,21 @@
|
|
|
1
|
-
import { defineComponent as
|
|
2
|
-
import
|
|
3
|
-
import
|
|
4
|
-
import
|
|
5
|
-
import
|
|
6
|
-
import
|
|
7
|
-
import
|
|
8
|
-
import
|
|
9
|
-
import
|
|
10
|
-
import
|
|
11
|
-
import { useMessageActions as
|
|
12
|
-
import { useMessageHoverActions as
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
16
|
-
import {
|
|
17
|
-
import {
|
|
1
|
+
import { defineComponent as ce, inject as ge, computed as b, ref as H, createElementBlock as r, openBlock as o, unref as s, normalizeStyle as h, normalizeClass as f, createCommentVNode as l, createElementVNode as i, createVNode as u, withCtx as j, createTextVNode as de, toDisplayString as y, Fragment as B, createBlock as c, withModifiers as fe, Teleport as ye, Transition as ve } from "vue";
|
|
2
|
+
import be from "../../1_atoms/ContextMenu/ContextMenu.vue.js";
|
|
3
|
+
import he from "../../1_atoms/LinkPreview/LinkPreview.vue.js";
|
|
4
|
+
import ke from "../../1_atoms/EmbedPreview/EmbedPreview.vue.js";
|
|
5
|
+
import we from "../FeedReplyQuote/FeedReplyQuote.vue.js";
|
|
6
|
+
import Me from "../MessageReactions/MessageReactions.vue.js";
|
|
7
|
+
import V from "../MessageStatusIndicator/MessageStatusIndicator.vue.js";
|
|
8
|
+
import Re from "../MessageSmsInvite/MessageSmsInvite.vue.js";
|
|
9
|
+
import Se from "../DeletedMessageContent/DeletedMessageContent.vue.js";
|
|
10
|
+
import Ce from "../../1_atoms/Tooltip/Tooltip.vue.js";
|
|
11
|
+
import { useMessageActions as Ie } from "../../../hooks/messages/useMessageActions.js";
|
|
12
|
+
import { useMessageHoverActions as Te } from "../../../hooks/messages/useMessageHoverActions.js";
|
|
13
|
+
import { useMessageReactionsInFeed as pe } from "../../../hooks/messages/useMessageReactionsInFeed.js";
|
|
14
|
+
import { useMessageMenuActions as xe } from "../../../hooks/messages/useMessageMenuActions.js";
|
|
15
|
+
import { useMessageLinks as Ae } from "../../../hooks/messages/useMessageLinks.js";
|
|
16
|
+
import { useChannelAccentColor as Ee } from "../../../hooks/messages/useChannelAccentColor.js";
|
|
17
|
+
import { useSubtextTooltip as Le } from "../../../hooks/messages/useSubtextTooltip.js";
|
|
18
|
+
import { useStartReply as Fe } from "../../../hooks/messages/useStartReply.js";
|
|
18
19
|
import "../../../hooks/useMessageDraft.js";
|
|
19
20
|
import "../../../hooks/useSearchModel.js";
|
|
20
21
|
import "../../../hooks/useTheme.js";
|
|
@@ -23,21 +24,21 @@ import "../../../hooks/useEmojiNative.js";
|
|
|
23
24
|
/* empty css */
|
|
24
25
|
import "../../../locale/useLocale.js";
|
|
25
26
|
/* empty css */
|
|
26
|
-
import { buildReplyPayload as
|
|
27
|
-
import { getStatus as
|
|
28
|
-
import { getMessageClass as
|
|
29
|
-
import { createReactionHandlers as
|
|
27
|
+
import { buildReplyPayload as $ } from "../../../hooks/messages/buildReplyPayload.js";
|
|
28
|
+
import { getStatus as Pe, getStatusTitle as Ue } from "../../../functions/getStatusMessage.js";
|
|
29
|
+
import { getMessageClass as Ne } from "../../../functions/getMessageClass.js";
|
|
30
|
+
import { createReactionHandlers as Oe } from "../../../functions/createReactionHandlers.js";
|
|
30
31
|
import "../../../functions/parseMarkdown.js";
|
|
31
|
-
const
|
|
32
|
+
const He = ["messageId"], je = ["src"], Be = {
|
|
32
33
|
key: 1,
|
|
33
34
|
class: "file-message__subtext"
|
|
34
|
-
},
|
|
35
|
+
}, Ve = { class: "file-message__footer" }, $e = { class: "file-message__info-container" }, De = {
|
|
35
36
|
key: 0,
|
|
36
37
|
class: "file-message__time"
|
|
37
|
-
},
|
|
38
|
+
}, qe = ["href"], ze = { class: "file-message__filename-text" }, Qe = {
|
|
38
39
|
key: 1,
|
|
39
40
|
class: "file-message__text-container"
|
|
40
|
-
},
|
|
41
|
+
}, We = ["innerHTML"], Ge = { class: "file-message__footer" }, Je = { class: "file-message__info-container" }, Ke = { class: "file-message__time" }, ps = /* @__PURE__ */ ce({
|
|
41
42
|
__name: "FileMessage",
|
|
42
43
|
props: {
|
|
43
44
|
message: {
|
|
@@ -81,210 +82,236 @@ const Ae = ["messageId"], Ee = ["src"], Le = {
|
|
|
81
82
|
}
|
|
82
83
|
},
|
|
83
84
|
emits: ["action", "reply", "sms-invite"],
|
|
84
|
-
setup(e, { emit:
|
|
85
|
-
const
|
|
86
|
-
() =>
|
|
87
|
-
() =>
|
|
88
|
-
() =>
|
|
89
|
-
),
|
|
90
|
-
isOpenMenu:
|
|
91
|
-
buttonMenuVisible:
|
|
92
|
-
menuAnchorRef:
|
|
93
|
-
menuRef:
|
|
94
|
-
menuStyle:
|
|
95
|
-
menuTheme:
|
|
96
|
-
showMenu:
|
|
97
|
-
hideMenu:
|
|
98
|
-
openMenu:
|
|
99
|
-
toggleMenu:
|
|
100
|
-
onMenuMouseEnter:
|
|
101
|
-
onMenuMouseLeave:
|
|
102
|
-
clickAction:
|
|
85
|
+
setup(e, { emit: D }) {
|
|
86
|
+
const n = e, k = D, { linkedHtml: q, inNewWindow: M } = Ae(() => n.message.text), { menuActions: v } = xe(() => n.message), { hoverActionsEnabled: R, reactionsActive: S } = Te(
|
|
87
|
+
() => n.channel,
|
|
88
|
+
() => n.reactionsEnabled,
|
|
89
|
+
() => n.message
|
|
90
|
+
), z = ge("chatAppId"), { startReply: Q } = Fe(z || ""), {
|
|
91
|
+
isOpenMenu: W,
|
|
92
|
+
buttonMenuVisible: G,
|
|
93
|
+
menuAnchorRef: J,
|
|
94
|
+
menuRef: K,
|
|
95
|
+
menuStyle: X,
|
|
96
|
+
menuTheme: Y,
|
|
97
|
+
showMenu: Z,
|
|
98
|
+
hideMenu: C,
|
|
99
|
+
openMenu: _,
|
|
100
|
+
toggleMenu: I,
|
|
101
|
+
onMenuMouseEnter: ee,
|
|
102
|
+
onMenuMouseLeave: se,
|
|
103
|
+
clickAction: te,
|
|
103
104
|
viewsAction: T,
|
|
104
|
-
handleClickReplied:
|
|
105
|
-
} =
|
|
106
|
-
onReply: () =>
|
|
107
|
-
}),
|
|
108
|
-
|
|
105
|
+
handleClickReplied: ne
|
|
106
|
+
} = Ie(n.message, k, {
|
|
107
|
+
onReply: () => Q($(n.message, "message.file"))
|
|
108
|
+
}), p = b(() => Pe(n.message.status)), x = b(() => Ue(n.message.status, n.message.statusMsg)), { bubbleStyle: ae } = Ee(
|
|
109
|
+
b(() => n.message),
|
|
109
110
|
{ cssVariable: "--chotto-filemessage-right-bg", position: "right" }
|
|
110
111
|
);
|
|
111
|
-
function
|
|
112
|
-
return
|
|
112
|
+
function w(m) {
|
|
113
|
+
return Ne(m.position, "file-message");
|
|
113
114
|
}
|
|
114
|
-
const { onToggleReaction:
|
|
115
|
-
|
|
115
|
+
const { onToggleReaction: A, onAddReaction: E, onRemoveReaction: L } = Oe(k), F = H(null), P = H(null), ie = b(() => {
|
|
116
|
+
var t;
|
|
117
|
+
const m = (t = P.value) == null ? void 0 : t.$el;
|
|
118
|
+
return m instanceof HTMLElement ? m : null;
|
|
119
|
+
}), { showReactions: oe, onContentPointerEnter: U, onContentPointerLeave: N } = pe({
|
|
120
|
+
message: () => n.message,
|
|
121
|
+
messageId: () => n.message.messageId,
|
|
122
|
+
reactions: () => n.message.reactions,
|
|
123
|
+
reactionsActive: S,
|
|
124
|
+
reactionsMode: () => n.reactionsMode,
|
|
125
|
+
reply: () => $(n.message, "message.file"),
|
|
126
|
+
menuEnabled: () => v.value.length > 0,
|
|
127
|
+
contentRef: F,
|
|
128
|
+
chipsRef: ie,
|
|
129
|
+
handlers: {
|
|
130
|
+
onToggleReaction: A,
|
|
131
|
+
onAddReaction: E,
|
|
132
|
+
onRemoveReaction: L,
|
|
133
|
+
onMenu: _
|
|
134
|
+
}
|
|
135
|
+
}), le = async () => {
|
|
136
|
+
if (n.message.url)
|
|
116
137
|
try {
|
|
117
|
-
const
|
|
118
|
-
if (
|
|
119
|
-
const
|
|
120
|
-
|
|
138
|
+
const m = new URL(n.message.url, window.location.href);
|
|
139
|
+
if (m.origin === window.location.origin) {
|
|
140
|
+
const d = document.createElement("a");
|
|
141
|
+
d.href = m.toString(), d.download = n.message.filename || `file-${n.message.messageId}`, document.body.appendChild(d), d.click(), document.body.removeChild(d);
|
|
121
142
|
return;
|
|
122
143
|
}
|
|
123
|
-
const
|
|
124
|
-
if (!
|
|
125
|
-
throw new Error(`HTTP error! status: ${
|
|
126
|
-
const
|
|
127
|
-
|
|
128
|
-
} catch (
|
|
129
|
-
console.error("Ошибка при скачивании файла:",
|
|
144
|
+
const a = await fetch(n.message.url);
|
|
145
|
+
if (!a.ok)
|
|
146
|
+
throw new Error(`HTTP error! status: ${a.status}`);
|
|
147
|
+
const ue = await a.blob(), O = window.URL.createObjectURL(ue), g = document.createElement("a");
|
|
148
|
+
g.href = O, g.download = n.message.filename || `file-${n.message.messageId}`, document.body.appendChild(g), g.click(), document.body.removeChild(g), window.URL.revokeObjectURL(O);
|
|
149
|
+
} catch (m) {
|
|
150
|
+
console.error("Ошибка при скачивании файла:", m), window.open(n.message.url, "_blank");
|
|
130
151
|
}
|
|
131
|
-
},
|
|
132
|
-
function
|
|
133
|
-
|
|
152
|
+
}, me = Le(() => n.message, () => n.subtextTooltipData);
|
|
153
|
+
function re() {
|
|
154
|
+
k("sms-invite", n.message);
|
|
134
155
|
}
|
|
135
|
-
return (
|
|
156
|
+
return (m, t) => (o(), r("div", {
|
|
136
157
|
ref_key: "menuAnchorRef",
|
|
137
|
-
ref:
|
|
138
|
-
class:
|
|
139
|
-
|
|
158
|
+
ref: J,
|
|
159
|
+
class: f(["file-message", [
|
|
160
|
+
w(e.message),
|
|
140
161
|
e.applyStyle(e.message)
|
|
141
162
|
]]),
|
|
142
163
|
messageId: e.message.messageId,
|
|
143
|
-
style:
|
|
144
|
-
onMouseleave:
|
|
145
|
-
(...
|
|
164
|
+
style: h(s(ae)),
|
|
165
|
+
onMouseleave: t[6] || (t[6] = //@ts-ignore
|
|
166
|
+
(...a) => s(C) && s(C)(...a))
|
|
146
167
|
}, [
|
|
147
|
-
e.message.avatar && e.isFirstInSeries ? (
|
|
168
|
+
e.message.avatar && e.isFirstInSeries ? (o(), r("img", {
|
|
148
169
|
key: 0,
|
|
149
170
|
class: "file-message__avatar",
|
|
150
171
|
src: e.message.avatar,
|
|
151
172
|
height: "32",
|
|
152
173
|
width: "32",
|
|
153
|
-
style:
|
|
154
|
-
}, null, 12,
|
|
155
|
-
e.message.subText && e.isFirstInSeries ? (
|
|
156
|
-
u(
|
|
157
|
-
text: s(
|
|
174
|
+
style: h({ gridRow: e.message.subText ? "2" : "1" })
|
|
175
|
+
}, null, 12, je)) : l("", !0),
|
|
176
|
+
e.message.subText && e.isFirstInSeries ? (o(), r("p", Be, [
|
|
177
|
+
u(Ce, {
|
|
178
|
+
text: s(me),
|
|
158
179
|
position: e.message.position === "left" ? "right" : "left",
|
|
159
180
|
offset: 8
|
|
160
181
|
}, {
|
|
161
|
-
default:
|
|
162
|
-
|
|
182
|
+
default: j(() => [
|
|
183
|
+
de(y(e.message.subText), 1)
|
|
163
184
|
]),
|
|
164
185
|
_: 1
|
|
165
186
|
}, 8, ["text", "position"])
|
|
166
187
|
])) : l("", !0),
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
188
|
+
i("div", {
|
|
189
|
+
ref_key: "contentRef",
|
|
190
|
+
ref: F,
|
|
191
|
+
class: f(["file-message__content", { "is-first": e.isFirstInSeries, "with-avatar-indent": !e.isFirstInSeries && e.message.avatar }]),
|
|
192
|
+
style: h({ gridRow: e.message.subText ? "2" : "1" }),
|
|
193
|
+
onMouseenter: t[3] || (t[3] = (a) => s(R) && s(Z)()),
|
|
194
|
+
onPointerenter: t[4] || (t[4] = //@ts-ignore
|
|
195
|
+
(...a) => s(U) && s(U)(...a)),
|
|
196
|
+
onPointerleave: t[5] || (t[5] = //@ts-ignore
|
|
197
|
+
(...a) => s(N) && s(N)(...a))
|
|
171
198
|
}, [
|
|
172
|
-
|
|
199
|
+
t[11] || (t[11] = i("div", {
|
|
173
200
|
class: "file-message__bottom-shadow",
|
|
174
201
|
"aria-hidden": "true"
|
|
175
202
|
}, null, -1)),
|
|
176
|
-
e.message.deleted ? (
|
|
177
|
-
u(
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
e.message.time ? (
|
|
181
|
-
u(
|
|
203
|
+
e.message.deleted ? (o(), r(B, { key: 0 }, [
|
|
204
|
+
u(Se),
|
|
205
|
+
i("div", Ve, [
|
|
206
|
+
i("div", $e, [
|
|
207
|
+
e.message.time ? (o(), r("span", De, y(e.message.time), 1)) : l("", !0),
|
|
208
|
+
u(V, {
|
|
182
209
|
"base-class": "file-message",
|
|
183
|
-
"message-class":
|
|
210
|
+
"message-class": w(e.message),
|
|
184
211
|
"message-status": e.message.status,
|
|
185
|
-
"status-class":
|
|
186
|
-
"status-title":
|
|
212
|
+
"status-class": p.value,
|
|
213
|
+
"status-title": x.value
|
|
187
214
|
}, null, 8, ["message-class", "message-status", "status-class", "status-title"])
|
|
188
215
|
])
|
|
189
216
|
])
|
|
190
|
-
], 64)) : (
|
|
191
|
-
e.message.reply ? (
|
|
217
|
+
], 64)) : (o(), r(B, { key: 1 }, [
|
|
218
|
+
e.message.reply ? (o(), c(we, {
|
|
192
219
|
key: 0,
|
|
193
220
|
message: e.message.reply,
|
|
194
|
-
class:
|
|
195
|
-
onReply: s(
|
|
221
|
+
class: f(e.message.position),
|
|
222
|
+
onReply: s(ne)
|
|
196
223
|
}, null, 8, ["message", "class", "onReply"])) : l("", !0),
|
|
197
|
-
|
|
224
|
+
i("a", {
|
|
198
225
|
class: "file-message__link",
|
|
199
226
|
href: e.message.url,
|
|
200
|
-
onClick: le
|
|
227
|
+
onClick: fe(le, ["prevent"])
|
|
201
228
|
}, [
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
229
|
+
t[7] || (t[7] = i("span", { class: "pi pi-file" }, null, -1)),
|
|
230
|
+
i("p", ze, y(e.message.filename), 1),
|
|
231
|
+
t[8] || (t[8] = i("div", { class: "file-message__download-button" }, [
|
|
232
|
+
i("span", { class: "pi pi-download" })
|
|
206
233
|
], -1))
|
|
207
|
-
], 8,
|
|
208
|
-
e.message.text ? (
|
|
209
|
-
|
|
210
|
-
onClick:
|
|
211
|
-
(...
|
|
212
|
-
innerHTML: s(
|
|
213
|
-
}, null, 8,
|
|
234
|
+
], 8, qe),
|
|
235
|
+
e.message.text ? (o(), r("div", Qe, [
|
|
236
|
+
i("p", {
|
|
237
|
+
onClick: t[0] || (t[0] = //@ts-ignore
|
|
238
|
+
(...a) => s(M) && s(M)(...a)),
|
|
239
|
+
innerHTML: s(q)
|
|
240
|
+
}, null, 8, We)
|
|
214
241
|
])) : l("", !0),
|
|
215
|
-
e.message.linkPreview ? (
|
|
242
|
+
e.message.linkPreview ? (o(), c(he, {
|
|
216
243
|
key: 2,
|
|
217
|
-
class:
|
|
244
|
+
class: f(e.message.position),
|
|
218
245
|
"link-preview": e.message.linkPreview
|
|
219
246
|
}, null, 8, ["class", "link-preview"])) : l("", !0),
|
|
220
|
-
e.message.embed ? (
|
|
247
|
+
e.message.embed ? (o(), c(ke, {
|
|
221
248
|
key: 3,
|
|
222
|
-
class:
|
|
249
|
+
class: f(e.message.position),
|
|
223
250
|
embed: e.message.embed
|
|
224
251
|
}, null, 8, ["class", "embed"])) : l("", !0),
|
|
225
|
-
|
|
226
|
-
|
|
252
|
+
i("div", Ge, [
|
|
253
|
+
s(oe) ? (o(), c(Me, {
|
|
254
|
+
key: 0,
|
|
255
|
+
ref_key: "reactionsRef",
|
|
256
|
+
ref: P,
|
|
227
257
|
reactions: e.message.reactions,
|
|
228
258
|
"message-id": e.message.messageId,
|
|
229
|
-
|
|
230
|
-
enabled: s(O),
|
|
259
|
+
enabled: s(S),
|
|
231
260
|
mode: e.reactionsMode,
|
|
232
261
|
"current-user-id": e.currentUserId,
|
|
233
262
|
"reaction-user-names": e.reactionUserNames,
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
n("div", Ve, [
|
|
241
|
-
e.message.views ? (i(), m("div", {
|
|
263
|
+
onToggleReaction: s(A),
|
|
264
|
+
onAddReaction: s(E),
|
|
265
|
+
onRemoveReaction: s(L)
|
|
266
|
+
}, null, 8, ["reactions", "message-id", "enabled", "mode", "current-user-id", "reaction-user-names", "onToggleReaction", "onAddReaction", "onRemoveReaction"])) : l("", !0),
|
|
267
|
+
i("div", Je, [
|
|
268
|
+
e.message.views ? (o(), r("div", {
|
|
242
269
|
key: 0,
|
|
243
270
|
class: "file-message__views",
|
|
244
|
-
onClick:
|
|
245
|
-
(...
|
|
271
|
+
onClick: t[1] || (t[1] = //@ts-ignore
|
|
272
|
+
(...a) => s(T) && s(T)(...a))
|
|
246
273
|
}, [
|
|
247
|
-
|
|
248
|
-
|
|
274
|
+
t[9] || (t[9] = i("span", { class: "pi pi-eye" }, null, -1)),
|
|
275
|
+
i("p", null, y(e.message.views), 1)
|
|
249
276
|
])) : l("", !0),
|
|
250
|
-
|
|
251
|
-
u(
|
|
277
|
+
i("span", Ke, y(e.message.time), 1),
|
|
278
|
+
u(V, {
|
|
252
279
|
"base-class": "file-message",
|
|
253
|
-
"message-class":
|
|
280
|
+
"message-class": w(e.message),
|
|
254
281
|
"message-status": e.message.status,
|
|
255
|
-
"status-class":
|
|
256
|
-
"status-title":
|
|
282
|
+
"status-class": p.value,
|
|
283
|
+
"status-title": x.value
|
|
257
284
|
}, null, 8, ["message-class", "message-status", "status-class", "status-title"])
|
|
258
285
|
])
|
|
259
286
|
]),
|
|
260
|
-
u(
|
|
287
|
+
u(Re, {
|
|
261
288
|
status: e.message.status,
|
|
262
289
|
"has-messenger-account": e.message.hasMessengerAccount,
|
|
263
290
|
channel: e.channel,
|
|
264
|
-
onSmsInvite:
|
|
291
|
+
onSmsInvite: re
|
|
265
292
|
}, null, 8, ["status", "has-messenger-account", "channel"]),
|
|
266
|
-
s(
|
|
293
|
+
s(G) && s(v).length && !e.reactionsEnabled && s(R) ? (o(), r("button", {
|
|
267
294
|
key: 4,
|
|
268
295
|
class: "file-message__menu-button",
|
|
269
|
-
onClick:
|
|
270
|
-
(...
|
|
271
|
-
}, [...
|
|
272
|
-
|
|
296
|
+
onClick: t[2] || (t[2] = //@ts-ignore
|
|
297
|
+
(...a) => s(I) && s(I)(...a))
|
|
298
|
+
}, [...t[10] || (t[10] = [
|
|
299
|
+
i("span", { class: "pi pi-ellipsis-h" }, null, -1)
|
|
273
300
|
])])) : l("", !0),
|
|
274
|
-
(
|
|
275
|
-
u(
|
|
276
|
-
default:
|
|
277
|
-
s(
|
|
301
|
+
(o(), c(ye, { to: "body" }, [
|
|
302
|
+
u(ve, null, {
|
|
303
|
+
default: j(() => [
|
|
304
|
+
s(W) && s(v).length ? (o(), c(be, {
|
|
278
305
|
key: 0,
|
|
279
306
|
ref_key: "menuRef",
|
|
280
|
-
ref:
|
|
307
|
+
ref: K,
|
|
281
308
|
class: "file-message__context-menu message-actions-menu",
|
|
282
|
-
style:
|
|
283
|
-
"data-theme": s(
|
|
284
|
-
actions: s(
|
|
285
|
-
onClick: s(
|
|
286
|
-
onMouseenter: s(
|
|
287
|
-
onMouseleave: s(
|
|
309
|
+
style: h(s(X)),
|
|
310
|
+
"data-theme": s(Y),
|
|
311
|
+
actions: s(v),
|
|
312
|
+
onClick: s(te),
|
|
313
|
+
onMouseenter: s(ee),
|
|
314
|
+
onMouseleave: s(se)
|
|
288
315
|
}, null, 8, ["style", "data-theme", "actions", "onClick", "onMouseenter", "onMouseleave"])) : l("", !0)
|
|
289
316
|
]),
|
|
290
317
|
_: 1
|
|
@@ -292,9 +319,9 @@ const Ae = ["messageId"], Ee = ["src"], Le = {
|
|
|
292
319
|
]))
|
|
293
320
|
], 64))
|
|
294
321
|
], 38)
|
|
295
|
-
], 46,
|
|
322
|
+
], 46, He));
|
|
296
323
|
}
|
|
297
324
|
});
|
|
298
325
|
export {
|
|
299
|
-
|
|
326
|
+
ps as default
|
|
300
327
|
};
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import
|
|
1
|
+
import a from "./ImageMessage.vue2.js";
|
|
2
2
|
/* empty css */
|
|
3
|
-
import
|
|
4
|
-
const r = /* @__PURE__ */ a
|
|
3
|
+
import o from "../../../_virtual/_plugin-vue_export-helper.js";
|
|
4
|
+
const r = /* @__PURE__ */ o(a, [["__scopeId", "data-v-3bc133aa"]]);
|
|
5
5
|
export {
|
|
6
6
|
r as default
|
|
7
7
|
};
|