@mobilon-dev/chotto 0.3.70 → 0.3.72

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.
@@ -1,7 +1,7 @@
1
1
  import t from "./ContactContextMenu.vue2.js";
2
2
  /* empty css */
3
3
  import o from "../../../_virtual/_plugin-vue_export-helper.js";
4
- const m = /* @__PURE__ */ o(t, [["__scopeId", "data-v-9e8db691"]]);
4
+ const m = /* @__PURE__ */ o(t, [["__scopeId", "data-v-10e21295"]]);
5
5
  export {
6
6
  m as default
7
7
  };
@@ -1,15 +1,15 @@
1
- import { defineComponent as L, inject as g, useId as O, ref as m, onMounted as T, nextTick as k, onUnmounted as N, createElementBlock as R, openBlock as x, createElementVNode as M, unref as c, createBlock as V, createVNode as _, Teleport as j } from "vue";
2
- import P from "../ContextMenu/ContextMenu.vue.js";
1
+ import { defineComponent as V, inject as _, useId as R, ref as h, computed as j, onMounted as z, watch as P, onUnmounted as U, createElementBlock as D, openBlock as v, createElementVNode as M, normalizeClass as b, unref as a, createBlock as w, createVNode as F, Teleport as G, createCommentVNode as H, nextTick as A } from "vue";
2
+ import J from "../ContextMenu/ContextMenu.vue.js";
3
3
  import "../../../hooks/useMessageDraft.js";
4
4
  import "../../../hooks/useSearchModel.js";
5
- import { useTheme as U } from "../../../hooks/useTheme.js";
5
+ import { useTheme as K } from "../../../hooks/useTheme.js";
6
6
  /* empty css */
7
7
  /* empty css */
8
8
  import "../../../node_modules/linkifyjs/dist/linkify.js";
9
9
  import "../../../node_modules/linkify-string/dist/linkify-string.js";
10
10
  import "../../../functions/parseMarkdown.js";
11
- import z from "../../1_icons/MenuIcon.vue.js";
12
- const D = { class: "contact-context-menu__wrapper" }, F = ["id"], G = { class: "contact-context-menu__icon" }, oe = /* @__PURE__ */ L({
11
+ import Q from "../../1_icons/MenuIcon.vue.js";
12
+ const W = { class: "contact-context-menu__wrapper" }, X = ["id"], se = /* @__PURE__ */ V({
13
13
  __name: "ContactContextMenu",
14
14
  props: {
15
15
  actions: {
@@ -33,26 +33,28 @@ const D = { class: "contact-context-menu__wrapper" }, F = ["id"], G = { class: "
33
33
  }
34
34
  },
35
35
  emits: ["click", "buttonClick", "menuMouseEnter", "menuMouseLeave"],
36
- setup(f, { expose: C, emit: b }) {
37
- const w = g("chatAppId"), p = g("extChatAppId", ""), { getTheme: h } = U(w), i = f, u = O(), a = b, n = m(), s = m(), d = m(!1), B = (t) => {
38
- l(), a("click", t);
39
- }, I = () => {
40
- i.disabled || (i.mode == "click" && !d.value ? r() : i.mode == "click" && d.value && l(), a("buttonClick"));
41
- }, E = () => {
42
- i.disabled || i.mode == "hover" && r();
43
- }, S = () => {
44
- i.disabled || i.mode == "hover" && l();
45
- }, A = () => {
46
- a("menuMouseEnter"), i.disabled || i.mode == "hover" && r();
36
+ setup(y, { expose: B, emit: E }) {
37
+ const I = _("chatAppId"), m = _("extChatAppId", ""), { getTheme: g } = K(I), n = y, f = R(), u = E, c = h(null), s = h(), r = h(!1), i = j(() => Array.isArray(n.actions) && n.actions.length > 0);
38
+ let d = !1;
39
+ const S = (t) => {
40
+ l(), u("click", t);
41
+ }, L = () => {
42
+ !n.disabled && i.value && (n.mode == "click" && !r.value ? p() : n.mode == "click" && r.value && l(), u("buttonClick"));
43
+ }, O = () => {
44
+ !n.disabled && i.value && n.mode == "hover" && p();
47
45
  }, q = () => {
48
- a("menuMouseLeave"), i.disabled || i.mode == "hover" && l();
49
- }, r = () => {
50
- if (s.value && n.value) {
51
- const t = n.value, e = s.value.getBoundingClientRect();
46
+ !n.disabled && i.value && n.mode == "hover" && l();
47
+ }, T = () => {
48
+ u("menuMouseEnter"), !n.disabled && i.value && n.mode == "hover" && p();
49
+ }, N = () => {
50
+ u("menuMouseLeave"), !n.disabled && i.value && n.mode == "hover" && l();
51
+ }, p = () => {
52
+ if (i.value && s.value && c.value) {
53
+ const t = c.value, e = s.value.getBoundingClientRect();
52
54
  t.style.display = "inherit";
53
- const o = n.value.getBoundingClientRect();
54
- t.style.display = "none", k(() => {
55
- const y = {
55
+ const o = c.value.getBoundingClientRect();
56
+ t.style.display = "none", A(() => {
57
+ const C = {
56
58
  left: { top: e.top - (o.height - e.height) / 2 - o.top, left: e.left - o.width - o.left },
57
59
  right: { top: e.top - (o.height - e.height) / 2 - o.top, left: e.left + e.width - o.left },
58
60
  bottom: { top: (e == null ? void 0 : e.bottom) - o.top, left: (e == null ? void 0 : e.left) - (o.width - e.width) / 2 - o.left },
@@ -60,56 +62,70 @@ const D = { class: "contact-context-menu__wrapper" }, F = ["id"], G = { class: "
60
62
  "top-right": { top: e.top - o.height, left: e.right - o.width / 2 },
61
63
  "bottom-left": { top: (e == null ? void 0 : e.bottom) - o.top + 10, left: e.left - o.width - o.left + 50 }
62
64
  };
63
- t.style.top = y[i.menuSide].top + "px", t.style.left = y[i.menuSide].left + "px", t.style.opacity = "1", t.style.visibility = "visible", t.style.display = "inherit", d.value = !0;
65
+ t.style.top = C[n.menuSide].top + "px", t.style.left = C[n.menuSide].left + "px", t.style.opacity = "1", t.style.visibility = "visible", t.style.display = "inherit", r.value = !0;
64
66
  });
65
67
  }
66
68
  }, l = () => {
67
- if (n.value) {
68
- const t = n.value;
69
- t && (t.style.top = "0", t.style.left = "0", t.style.opacity = "0", t.style.visibility = "hidden", t.style.display = "none", d.value = !1);
69
+ if (c.value) {
70
+ const t = c.value;
71
+ t && (t.style.top = "0", t.style.left = "0", t.style.opacity = "0", t.style.visibility = "hidden", t.style.display = "none", r.value = !1);
70
72
  }
71
- }, v = (t) => {
72
- i.mode == "click" && s.value && !s.value.contains(t.target) && l();
73
- };
74
- return T(() => {
75
- k(() => {
76
- if (n.value = document.getElementById("context-menu-" + u + p), n.value) {
77
- const t = n.value;
78
- t.style.display = "none", t.style.visibility = "hidden", t.style.opacity = "0", l(), document.addEventListener("click", v);
79
- }
73
+ }, k = (t) => {
74
+ n.mode == "click" && s.value && !s.value.contains(t.target) && l();
75
+ }, x = () => {
76
+ A(() => {
77
+ c.value = document.getElementById("context-menu-" + f + m), c.value && (l(), d || (document.addEventListener("click", k), d = !0));
80
78
  });
81
- }), N(() => {
82
- document.removeEventListener("click", v), n.value && l();
83
- }), C({
84
- updatePosition: r,
79
+ };
80
+ return z(() => {
81
+ x();
82
+ }), P(i, (t) => {
83
+ if (t) {
84
+ x();
85
+ return;
86
+ }
87
+ l();
88
+ }), U(() => {
89
+ d && (document.removeEventListener("click", k), d = !1), c.value && l();
90
+ }), B({
91
+ updatePosition: p,
85
92
  hideMenu: l
86
- }), (t, e) => (x(), R("div", D, [
93
+ }), (t, e) => (v(), D("div", W, [
87
94
  M("button", {
88
- id: "container-" + c(u) + c(p),
95
+ id: "container-" + a(f) + a(m),
89
96
  ref_key: "actionScope",
90
97
  ref: s,
91
- class: "contact-context-menu__button",
92
- onMouseenter: E,
93
- onMouseleave: S,
94
- onClick: I
95
- }, [
96
- M("span", G, [
97
- _(z)
98
+ class: b([
99
+ "contact-context-menu__button",
100
+ { "contact-context-menu__button--no-actions": !i.value }
98
101
  ]),
99
- (x(), V(j, { to: "body" }, [
100
- _(P, {
101
- id: "context-menu-" + c(u) + c(p),
102
- actions: f.actions,
103
- "data-theme": c(h)().theme ? c(h)().theme : "light",
104
- onMouseenter: A,
105
- onMouseleave: q,
106
- onClick: B
107
- }, null, 8, ["id", "actions", "data-theme"])
102
+ onMouseenter: O,
103
+ onMouseleave: q,
104
+ onClick: L
105
+ }, [
106
+ M("span", {
107
+ class: b([
108
+ "contact-context-menu__icon",
109
+ { "contact-context-menu__icon--no-actions": !i.value }
110
+ ])
111
+ }, [
112
+ F(Q)
113
+ ], 2),
114
+ (v(), w(G, { to: "body" }, [
115
+ i.value ? (v(), w(J, {
116
+ key: 0,
117
+ id: "context-menu-" + a(f) + a(m),
118
+ actions: y.actions,
119
+ "data-theme": a(g)().theme ? a(g)().theme : "light",
120
+ onMouseenter: T,
121
+ onMouseleave: N,
122
+ onClick: S
123
+ }, null, 8, ["id", "actions", "data-theme"])) : H("", !0)
108
124
  ]))
109
- ], 40, F)
125
+ ], 42, X)
110
126
  ]));
111
127
  }
112
128
  });
113
129
  export {
114
- oe as default
130
+ se as default
115
131
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mobilon-dev/chotto",
3
- "version": "0.3.70",
3
+ "version": "0.3.72",
4
4
  "type": "module",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.js",