@opentiny/tiny-robot 0.3.0-alpha.2 → 0.3.0-alpha.4
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/action-group/index.js +45 -42
- package/dist/base-popper/index.js +4 -0
- package/dist/bubble/index.js +1359 -2141
- package/dist/close.js +1 -1
- package/dist/container/index.js +4 -4
- package/dist/dropdown-menu/index.js +79 -64
- package/dist/feedback/index.js +43 -43
- package/dist/flow-layout-buttons/index.js +36 -33
- package/dist/history/index.js +43 -43
- package/dist/icon-button/index.js +18 -19
- package/dist/index.d.ts +562 -1945
- package/dist/index.js +43 -58
- package/dist/index2.js +359 -290
- package/dist/index3.js +137 -298
- package/dist/index4.js +269 -591
- package/dist/index5.js +528 -2048
- package/dist/index6.js +2069 -4665
- package/dist/index7.js +4749 -0
- package/dist/question/index.js +55 -55
- package/dist/sender/index.js +994 -1184
- package/dist/style.css +1 -1
- package/dist/suggestion/index.js +74 -74
- package/dist/suggestion-pills/index.js +125 -158
- package/dist/suggestion-popover/index.js +246 -219
- package/dist/tiny-robot-svgs.js +158 -211
- package/dist/useSlotRefs.js +36 -0
- package/dist/utils.js +4 -15
- package/package.json +3 -4
- package/dist/loading.js +0 -4
package/dist/question/index.js
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { ref as m, computed as H, watch as D, defineComponent as
|
|
2
|
-
import {
|
|
1
|
+
import { ref as m, computed as H, watch as D, defineComponent as K, onMounted as Z, onBeforeUnmount as ne, createElementBlock as d, openBlock as i, normalizeClass as V, createElementVNode as t, withDirectives as le, Fragment as L, renderList as R, createVNode as T, unref as q, toDisplayString as O, vShow as ie, nextTick as ae, createCommentVNode as Y, withModifiers as ce, normalizeStyle as ue, renderSlot as B, createTextVNode as ee, createBlock as J, withCtx as N } from "vue";
|
|
2
|
+
import { A as X, a as te, O as se, K as de, U as re } from "../tiny-robot-svgs.js";
|
|
3
3
|
import { i as me } from "../close.js";
|
|
4
|
-
import { B as ve } from "../
|
|
4
|
+
import { B as ve } from "../index4.js";
|
|
5
5
|
function he(v = m([])) {
|
|
6
|
-
const
|
|
7
|
-
if (!
|
|
6
|
+
const w = m(""), y = m(!1), a = m(!1), r = m("light"), k = H(() => {
|
|
7
|
+
if (!w.value && v.value.length > 0)
|
|
8
8
|
return v.value[0].questions;
|
|
9
|
-
const s = v.value.find((l) => l.id ===
|
|
9
|
+
const s = v.value.find((l) => l.id === w.value);
|
|
10
10
|
return s ? s.questions : [];
|
|
11
|
-
}),
|
|
12
|
-
|
|
11
|
+
}), x = (s) => {
|
|
12
|
+
w.value = s;
|
|
13
13
|
}, p = () => {
|
|
14
14
|
a.value = !0;
|
|
15
15
|
}, _ = () => {
|
|
@@ -27,12 +27,12 @@ function he(v = m([])) {
|
|
|
27
27
|
return D(a, (s) => {
|
|
28
28
|
b(s);
|
|
29
29
|
}), {
|
|
30
|
-
activeCategory:
|
|
30
|
+
activeCategory: w,
|
|
31
31
|
isFloatingExpanded: y,
|
|
32
32
|
modalVisible: a,
|
|
33
33
|
currentTheme: r,
|
|
34
34
|
activeQuestions: k,
|
|
35
|
-
setActiveCategory:
|
|
35
|
+
setActiveCategory: x,
|
|
36
36
|
openModal: p,
|
|
37
37
|
closeModal: _,
|
|
38
38
|
toggleFloating: c,
|
|
@@ -46,7 +46,7 @@ function he(v = m([])) {
|
|
|
46
46
|
toggleBodyScroll: b
|
|
47
47
|
};
|
|
48
48
|
}
|
|
49
|
-
const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-questions_expanded-wrapper" }, ge = { class: "tr-common-questions_expanded-area" }, ye = ["onClick"], ke = { class: "tr-common-questions_item_icon" }, _e = { class: "tr-common-questions_item_text" }, Ce = { class: "tr-common-questions_container" }, qe = ["onClick"], $e = { class: "tr-common-questions_item_icon" },
|
|
49
|
+
const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-questions_expanded-wrapper" }, ge = { class: "tr-common-questions_expanded-area" }, ye = ["onClick"], ke = { class: "tr-common-questions_item_icon" }, _e = { class: "tr-common-questions_item_text" }, Ce = { class: "tr-common-questions_container" }, qe = ["onClick"], $e = { class: "tr-common-questions_item_icon" }, we = { class: "tr-common-questions_item_text" }, xe = /* @__PURE__ */ K({
|
|
50
50
|
__name: "CommonQuestions",
|
|
51
51
|
props: {
|
|
52
52
|
questions: {
|
|
@@ -59,8 +59,8 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
59
59
|
}
|
|
60
60
|
},
|
|
61
61
|
emits: ["question-click", "toggle-expand", "hover-change"],
|
|
62
|
-
setup(v, { emit:
|
|
63
|
-
const y = v, a =
|
|
62
|
+
setup(v, { emit: w }) {
|
|
63
|
+
const y = v, a = w, r = m(null), k = m(!1), x = m(!1), p = m(!1), _ = m([]), c = m([]), b = m(0), f = m(null), o = H(() => c.value.length > 0), u = H(() => {
|
|
64
64
|
if (b.value <= 0 || c.value.length === 0) return [];
|
|
65
65
|
const e = [], h = [...c.value];
|
|
66
66
|
for (; h.length > 0; )
|
|
@@ -70,31 +70,31 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
70
70
|
if (h.length === 0) return 0;
|
|
71
71
|
const E = e.clientWidth, W = 8, g = document.createElement("div");
|
|
72
72
|
g.className = "tr-common-questions_item", g.style.visibility = "hidden", g.style.position = "absolute", e.appendChild(g);
|
|
73
|
-
let
|
|
73
|
+
let S = 0;
|
|
74
74
|
const z = Math.min(3, h.length);
|
|
75
75
|
for (let A = 0; A < z; A++) {
|
|
76
76
|
g.innerHTML = `<span class="icon-placeholder"></span>${h[A].text}`;
|
|
77
77
|
const j = g.offsetWidth + W + 24;
|
|
78
|
-
|
|
78
|
+
S += j;
|
|
79
79
|
}
|
|
80
|
-
const M =
|
|
80
|
+
const M = S / z;
|
|
81
81
|
return e.removeChild(g), {
|
|
82
82
|
maxItemsCount: Math.max(1, Math.floor((E - $) / M))
|
|
83
83
|
};
|
|
84
84
|
}, l = (e, h, $, E = 40) => {
|
|
85
|
-
const g = [],
|
|
85
|
+
const g = [], S = [];
|
|
86
86
|
let z = 0;
|
|
87
87
|
if (h.length === 0)
|
|
88
|
-
return { visible: g, hidden:
|
|
88
|
+
return { visible: g, hidden: S };
|
|
89
89
|
const M = document.createElement("div");
|
|
90
90
|
M.className = "tr-common-questions_item", M.style.visibility = "hidden", M.style.position = "absolute", e.appendChild(M);
|
|
91
91
|
for (let A = 0; A < h.length; A++) {
|
|
92
92
|
const I = h[A];
|
|
93
93
|
M.innerHTML = `<span class="icon-placeholder"></span>${I.text}`;
|
|
94
94
|
const G = M.offsetWidth + 8 + 24, oe = $ - E;
|
|
95
|
-
z + G <= oe ? (z += G, g.push(I)) :
|
|
95
|
+
z + G <= oe ? (z += G, g.push(I)) : S.push(I);
|
|
96
96
|
}
|
|
97
|
-
return e.removeChild(M), { visible: g, hidden:
|
|
97
|
+
return e.removeChild(M), { visible: g, hidden: S };
|
|
98
98
|
};
|
|
99
99
|
D(
|
|
100
100
|
() => y.isExpanded,
|
|
@@ -106,17 +106,17 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
106
106
|
if (await ae(), r.value) {
|
|
107
107
|
const e = r.value, h = e.clientWidth, $ = 40;
|
|
108
108
|
if (_.value = [], c.value = [], y.questions.length === 0) {
|
|
109
|
-
|
|
109
|
+
x.value = !1;
|
|
110
110
|
return;
|
|
111
111
|
}
|
|
112
112
|
const { maxItemsCount: E } = s(e, y.questions, $);
|
|
113
113
|
b.value = E;
|
|
114
114
|
const { visible: W, hidden: g } = l(e, y.questions, h, $);
|
|
115
|
-
_.value = W, c.value = g, c.value.length > 0 && _.value.push(c.value[0]),
|
|
115
|
+
_.value = W, c.value = g, c.value.length > 0 && _.value.push(c.value[0]), x.value = c.value.length > 0, y.isExpanded || (p.value = !1);
|
|
116
116
|
}
|
|
117
117
|
}, P = () => {
|
|
118
118
|
f.value && (clearTimeout(f.value), f.value = null), k.value = !0, a("hover-change", !0);
|
|
119
|
-
},
|
|
119
|
+
}, U = () => {
|
|
120
120
|
f.value = setTimeout(() => {
|
|
121
121
|
k.value = !1, a("hover-change", !1), f.value = null;
|
|
122
122
|
}, 500);
|
|
@@ -133,7 +133,7 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
133
133
|
const C = () => {
|
|
134
134
|
Q();
|
|
135
135
|
};
|
|
136
|
-
return
|
|
136
|
+
return Z(() => {
|
|
137
137
|
Q(), window.addEventListener("resize", C);
|
|
138
138
|
}), ne(() => {
|
|
139
139
|
window.removeEventListener("resize", C), f.value && (window.clearTimeout(f.value), f.value = null);
|
|
@@ -142,7 +142,7 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
142
142
|
ref_key: "commonQuestionsRef",
|
|
143
143
|
ref: r,
|
|
144
144
|
onMouseenter: P,
|
|
145
|
-
onMouseleave:
|
|
145
|
+
onMouseleave: U
|
|
146
146
|
}, [
|
|
147
147
|
t("div", pe, [
|
|
148
148
|
t("div", fe, [
|
|
@@ -154,12 +154,12 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
154
154
|
(i(!0), d(L, null, R($, (W, g) => (i(), d("div", {
|
|
155
155
|
key: `hidden-${W.id}-${g}`,
|
|
156
156
|
class: "tr-common-questions_item",
|
|
157
|
-
onClick: (
|
|
157
|
+
onClick: (S) => n(W)
|
|
158
158
|
}, [
|
|
159
159
|
t("div", ke, [
|
|
160
|
-
T(q(
|
|
160
|
+
T(q(X))
|
|
161
161
|
]),
|
|
162
|
-
t("div", _e,
|
|
162
|
+
t("div", _e, O(W.text), 1)
|
|
163
163
|
], 8, ye))), 128))
|
|
164
164
|
]))), 128))
|
|
165
165
|
], 512), [
|
|
@@ -173,9 +173,9 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
173
173
|
onClick: (W) => n($)
|
|
174
174
|
}, [
|
|
175
175
|
t("div", $e, [
|
|
176
|
-
T(q(
|
|
176
|
+
T(q(X))
|
|
177
177
|
]),
|
|
178
|
-
t("div",
|
|
178
|
+
t("div", we, O($.text), 1)
|
|
179
179
|
], 10, qe))), 128))
|
|
180
180
|
])
|
|
181
181
|
])
|
|
@@ -187,10 +187,10 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
187
187
|
}, We = ["onClick"], Me = { class: "category-icon" }, Te = { class: "tr-question-content" }, Be = {
|
|
188
188
|
key: 0,
|
|
189
189
|
class: "tr-question-loading"
|
|
190
|
-
},
|
|
190
|
+
}, Oe = { key: 1 }, Se = ["onClick"], Ae = {
|
|
191
191
|
key: 2,
|
|
192
192
|
class: "tr-question-empty"
|
|
193
|
-
}, ze = /* @__PURE__ */
|
|
193
|
+
}, ze = /* @__PURE__ */ K({
|
|
194
194
|
__name: "HotQuestions",
|
|
195
195
|
props: {
|
|
196
196
|
visible: {
|
|
@@ -215,8 +215,8 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
215
215
|
}
|
|
216
216
|
},
|
|
217
217
|
emits: ["update:visible", "close", "select-category", "question-click"],
|
|
218
|
-
setup(v, { emit:
|
|
219
|
-
const y = me(), a = v, r =
|
|
218
|
+
setup(v, { emit: w }) {
|
|
219
|
+
const y = me(), a = v, r = w, k = m(""), x = H(() => {
|
|
220
220
|
if (!k.value && a.categories.length > 0)
|
|
221
221
|
return a.categories[0].questions || [];
|
|
222
222
|
const o = a.categories.find((u) => u.id === k.value);
|
|
@@ -281,17 +281,17 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
281
281
|
t("div", Me, [
|
|
282
282
|
T(q(se))
|
|
283
283
|
]),
|
|
284
|
-
t("span", null,
|
|
284
|
+
t("span", null, O(s.label), 1)
|
|
285
285
|
])
|
|
286
286
|
], 10, We))), 128))
|
|
287
|
-
])) :
|
|
287
|
+
])) : Y("", !0),
|
|
288
288
|
t("div", Te, [
|
|
289
289
|
v.loading ? (i(), d("div", Be, [
|
|
290
290
|
B(o.$slots, "loading-indicator", {}, () => [
|
|
291
291
|
u[2] || (u[2] = t("div", { class: "tr-question-loading-spinner" }, null, -1))
|
|
292
292
|
])
|
|
293
|
-
])) :
|
|
294
|
-
(i(!0), d(L, null, R(
|
|
293
|
+
])) : x.value.length > 0 ? (i(), d("ul", Oe, [
|
|
294
|
+
(i(!0), d(L, null, R(x.value, (s, l) => (i(), d("li", {
|
|
295
295
|
key: s.id,
|
|
296
296
|
class: "tr-question-list-item",
|
|
297
297
|
onClick: (Q) => c(s)
|
|
@@ -300,10 +300,10 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
300
300
|
question: s,
|
|
301
301
|
index: l
|
|
302
302
|
}, () => [
|
|
303
|
-
t("span", null,
|
|
304
|
-
ee(" " +
|
|
303
|
+
t("span", null, O(l + 1) + ".", 1),
|
|
304
|
+
ee(" " + O(s.text), 1)
|
|
305
305
|
])
|
|
306
|
-
], 8,
|
|
306
|
+
], 8, Se))), 128))
|
|
307
307
|
])) : (i(), d("div", Ae, [
|
|
308
308
|
B(o.$slots, "empty-state", {}, () => [
|
|
309
309
|
u[3] || (u[3] = t("p", null, "暂无相关问题", -1))
|
|
@@ -311,9 +311,9 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
311
311
|
]))
|
|
312
312
|
])
|
|
313
313
|
], 36)
|
|
314
|
-
], 32)) :
|
|
314
|
+
], 32)) : Y("", !0);
|
|
315
315
|
}
|
|
316
|
-
}), Le = ["data-theme"], Re = { class: "tr-question__header" }, He = { class: "category-icon" }, F = /* @__PURE__ */
|
|
316
|
+
}), Le = ["data-theme"], Re = { class: "tr-question__header" }, He = { class: "category-icon" }, F = /* @__PURE__ */ K({
|
|
317
317
|
__name: "index",
|
|
318
318
|
props: {
|
|
319
319
|
categories: { default: () => [] },
|
|
@@ -325,10 +325,10 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
325
325
|
loading: { type: Boolean, default: !1 }
|
|
326
326
|
},
|
|
327
327
|
emits: ["question-click", "select-category"],
|
|
328
|
-
setup(v, { expose:
|
|
328
|
+
setup(v, { expose: w, emit: y }) {
|
|
329
329
|
const a = v, r = () => {
|
|
330
330
|
p.value = !p.value;
|
|
331
|
-
}, k = y,
|
|
331
|
+
}, k = y, x = H(() => a.categories), p = m(a.initialExpanded), _ = m(!1), { modalVisible: c, currentTheme: b, setActiveCategory: f, openModal: o, closeModal: u, setTheme: s, refreshData: l } = he(x);
|
|
332
332
|
D(
|
|
333
333
|
() => a.theme,
|
|
334
334
|
(n) => {
|
|
@@ -339,12 +339,12 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
339
339
|
u(), k("question-click", n);
|
|
340
340
|
}, P = (n) => {
|
|
341
341
|
_.value = n;
|
|
342
|
-
},
|
|
342
|
+
}, U = (n) => {
|
|
343
343
|
n && (f(n.id), k("select-category", n));
|
|
344
344
|
};
|
|
345
|
-
return
|
|
345
|
+
return Z(() => {
|
|
346
346
|
document.documentElement.setAttribute("data-theme", b.value);
|
|
347
|
-
}),
|
|
347
|
+
}), w({
|
|
348
348
|
openModal: o,
|
|
349
349
|
closeModal: u,
|
|
350
350
|
toggleFloating: r,
|
|
@@ -362,7 +362,7 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
362
362
|
}, [
|
|
363
363
|
T(q(te), { style: { color: "#1476ff" } })
|
|
364
364
|
]),
|
|
365
|
-
T(
|
|
365
|
+
T(xe, {
|
|
366
366
|
questions: n.commonQuestions,
|
|
367
367
|
isExpanded: p.value,
|
|
368
368
|
onQuestionClick: Q,
|
|
@@ -374,25 +374,25 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
374
374
|
onClick: r
|
|
375
375
|
}, [
|
|
376
376
|
p.value ? (i(), J(q(re), { key: 1 })) : (i(), J(q(de), { key: 0 }))
|
|
377
|
-
])) :
|
|
377
|
+
])) : Y("", !0)
|
|
378
378
|
]),
|
|
379
379
|
T(ze, {
|
|
380
380
|
visible: q(c),
|
|
381
|
-
categories:
|
|
381
|
+
categories: x.value,
|
|
382
382
|
"modal-width": n.modalWidth,
|
|
383
383
|
loading: n.loading,
|
|
384
384
|
"close-on-click-outside": n.closeOnClickOutside,
|
|
385
385
|
"onUpdate:visible": C[1] || (C[1] = (e) => c.value = e),
|
|
386
386
|
onClose: C[2] || (C[2] = (e) => c.value = !1),
|
|
387
387
|
onQuestionClick: Q,
|
|
388
|
-
onSelectCategory:
|
|
388
|
+
onSelectCategory: U
|
|
389
389
|
}, {
|
|
390
390
|
"category-label": N(({ category: e }) => [
|
|
391
391
|
B(n.$slots, "category-label", { category: e }, () => [
|
|
392
392
|
t("div", He, [
|
|
393
393
|
T(q(se))
|
|
394
394
|
]),
|
|
395
|
-
t("span", null,
|
|
395
|
+
t("span", null, O(e.label), 1)
|
|
396
396
|
])
|
|
397
397
|
]),
|
|
398
398
|
"question-item": N(({ question: e, index: h }) => [
|
|
@@ -400,8 +400,8 @@ const pe = { class: "tr-common-questions_content" }, fe = { class: "tr-common-qu
|
|
|
400
400
|
question: e,
|
|
401
401
|
index: h
|
|
402
402
|
}, () => [
|
|
403
|
-
t("span", null,
|
|
404
|
-
ee(" " +
|
|
403
|
+
t("span", null, O(h + 1) + ".", 1),
|
|
404
|
+
ee(" " + O(e.text), 1)
|
|
405
405
|
])
|
|
406
406
|
]),
|
|
407
407
|
"loading-indicator": N(() => [
|