@meistrari/chat-nuxt 3.9.2 → 3.10.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/README.md +50 -440
- package/dist/module.d.mts +1 -1
- package/dist/module.json +1 -1
- package/dist/runtime/assets/css/markstream.css +1 -1
- package/dist/runtime/conversations/components/chat-conversation-creator-filter.vue +11 -67
- package/dist/runtime/conversations/components/chat-conversation-item.d.vue.ts +2 -1
- package/dist/runtime/conversations/components/chat-conversation-item.vue +29 -33
- package/dist/runtime/conversations/components/chat-conversation-item.vue.d.ts +2 -1
- package/dist/runtime/conversations/components/chat-conversation-list.d.vue.ts +0 -1
- package/dist/runtime/conversations/components/chat-conversation-list.vue +117 -158
- package/dist/runtime/conversations/components/chat-conversation-list.vue.d.ts +0 -1
- package/dist/runtime/conversations/components/chat-conversation-new-group-button.vue +34 -73
- package/dist/runtime/conversations/components/chat-conversation-search.vue +1 -21
- package/dist/runtime/conversations/components/chat-widget-history-list.d.vue.ts +12 -0
- package/dist/runtime/conversations/components/chat-widget-history-list.vue +27 -0
- package/dist/runtime/conversations/components/chat-widget-history-list.vue.d.ts +12 -0
- package/dist/runtime/conversations/composables/conversation-groups.d.ts +1 -0
- package/dist/runtime/conversations/composables/conversation-groups.js +2 -0
- package/dist/runtime/conversations/composables/conversation-item.js +4 -4
- package/dist/runtime/conversations/composables/conversation-list.js +14 -5
- package/dist/runtime/embed/components/chat-configuration-modal.d.vue.ts +3 -3
- package/dist/runtime/embed/components/chat-configuration-modal.vue.d.ts +3 -3
- package/dist/runtime/embed/components/chat-embed-inner.d.vue.ts +6 -3
- package/dist/runtime/embed/components/chat-embed-inner.vue +365 -152
- package/dist/runtime/embed/components/chat-embed-inner.vue.d.ts +6 -3
- package/dist/runtime/embed/components/chat-embed.d.vue.ts +31 -4
- package/dist/runtime/embed/components/chat-embed.vue +10 -4
- package/dist/runtime/embed/components/chat-embed.vue.d.ts +31 -4
- package/dist/runtime/embed/components/chat-topbar.vue +83 -85
- package/dist/runtime/embed/components/meistrari-chat-embed.d.vue.ts +5 -3
- package/dist/runtime/embed/components/meistrari-chat-embed.vue +118 -57
- package/dist/runtime/embed/components/meistrari-chat-embed.vue.d.ts +5 -3
- package/dist/runtime/embed/components/mobile/chat-mobile-drawer.d.vue.ts +0 -1
- package/dist/runtime/embed/components/mobile/chat-mobile-drawer.vue +2 -45
- package/dist/runtime/embed/components/mobile/chat-mobile-drawer.vue.d.ts +0 -1
- package/dist/runtime/embed/components/mobile/chat-mobile-home-suggestions.d.vue.ts +9 -5
- package/dist/runtime/embed/components/mobile/chat-mobile-home-suggestions.vue +14 -25
- package/dist/runtime/embed/components/mobile/chat-mobile-home-suggestions.vue.d.ts +9 -5
- package/dist/runtime/embed/components/mobile/chat-mobile-shell.d.vue.ts +4 -4
- package/dist/runtime/embed/components/mobile/chat-mobile-shell.vue +2 -3
- package/dist/runtime/embed/components/mobile/chat-mobile-shell.vue.d.ts +4 -4
- package/dist/runtime/embed/feature-config.d.ts +7 -0
- package/dist/runtime/embed/types.d.ts +47 -8
- package/dist/runtime/files/icons.d.ts +1 -1
- package/dist/runtime/files/icons.js +1 -1
- package/dist/runtime/messages/components/chat-mention-dropdown.d.vue.ts +6 -1
- package/dist/runtime/messages/components/chat-mention-dropdown.vue +46 -22
- package/dist/runtime/messages/components/chat-mention-dropdown.vue.d.ts +6 -1
- package/dist/runtime/messages/components/chat-message-bubble.vue +53 -71
- package/dist/runtime/messages/components/chat-message-feedback.vue +25 -229
- package/dist/runtime/messages/components/chat-message-input.vue +176 -134
- package/dist/runtime/messages/components/chat-message-list.d.vue.ts +6 -0
- package/dist/runtime/messages/components/chat-message-list.vue +27 -23
- package/dist/runtime/messages/components/chat-message-list.vue.d.ts +6 -0
- package/dist/runtime/messages/components/chat-model-selector.vue +10 -22
- package/dist/runtime/messages/components/reasoning/chat-reasoning-message.vue +2 -3
- package/dist/runtime/messages/components/reasoning/chat-reasoning-thought.vue +60 -69
- package/dist/runtime/messages/components/reasoning/chat-thinking-indicator.vue +3 -9
- package/dist/runtime/messages/components/widgets/chat-bash-widget.vue +3 -12
- package/dist/runtime/messages/components/widgets/chat-doc-sdk-widget.vue +3 -12
- package/dist/runtime/messages/components/widgets/chat-generic-tool-widget.vue +3 -12
- package/dist/runtime/messages/components/widgets/chat-grep-widget.vue +7 -17
- package/dist/runtime/messages/components/widgets/chat-read-widget.vue +7 -17
- package/dist/runtime/messages/components/widgets/chat-tela-skill-widget.vue +4 -13
- package/dist/runtime/messages/components/widgets/chat-thinking-widget.vue +11 -22
- package/dist/runtime/messages/components/widgets/chat-web-search-widget.vue +13 -40
- package/dist/runtime/messages/components/widgets/chat-workstation-query-widget.vue +52 -65
- package/dist/runtime/messages/components/widgets/chat-write-widget.vue +8 -18
- package/dist/runtime/messages/composables/mention-autocomplete.js +4 -0
- package/dist/runtime/messages/message-state.js +1 -0
- package/dist/runtime/public/files/generic.svg +2 -5
- package/dist/runtime/public/files/image.svg +2 -1
- package/dist/runtime/types/embed.d.ts +1 -1
- package/dist/runtime/types/schemas/chat/conversations.d.ts +2 -0
- package/dist/runtime/types/schemas/chat/conversations.js +3 -0
- package/dist/runtime/types/schemas/chat/messages.d.ts +4 -0
- package/dist/runtime/types/schemas/chat/messages.js +7 -0
- package/dist/types.d.mts +1 -1
- package/package.json +5 -4
- package/dist/runtime/conversations/components/chat-conversation-new-group-popover-content.d.vue.ts +0 -23
- package/dist/runtime/conversations/components/chat-conversation-new-group-popover-content.vue +0 -75
- package/dist/runtime/conversations/components/chat-conversation-new-group-popover-content.vue.d.ts +0 -23
- package/dist/runtime/messages/components/reasoning/chat-reasoning-step-item.d.vue.ts +0 -37
- package/dist/runtime/messages/components/reasoning/chat-reasoning-step-item.vue +0 -125
- package/dist/runtime/messages/components/reasoning/chat-reasoning-step-item.vue.d.ts +0 -37
|
@@ -1,91 +1,52 @@
|
|
|
1
1
|
<script setup>
|
|
2
2
|
import { useConversationGroups } from "../composables/conversation-groups";
|
|
3
|
-
import ChatConversationNewGroupPopoverContent from "./chat-conversation-new-group-popover-content.vue";
|
|
4
3
|
const props = defineProps({
|
|
5
4
|
label: { type: String, required: false },
|
|
6
5
|
variant: { type: String, required: false }
|
|
7
6
|
});
|
|
8
|
-
const
|
|
9
|
-
const
|
|
10
|
-
const
|
|
11
|
-
const isSaving = ref(false);
|
|
12
|
-
const creationErrorMessage = ref(null);
|
|
13
|
-
const popoverContentRef = ref(null);
|
|
7
|
+
const DEFAULT_GROUP_NAME = "Nova pasta";
|
|
8
|
+
const { groups, createGroup, pendingRenameGroupId } = useConversationGroups();
|
|
9
|
+
const isCreating = ref(false);
|
|
14
10
|
const hasLabel = computed(() => Boolean(props.label?.trim()));
|
|
15
11
|
const isEmptyState = computed(() => props.variant === "empty-state");
|
|
16
12
|
const buttonClasses = computed(() => {
|
|
17
13
|
if (isEmptyState.value)
|
|
18
|
-
return "h-32px w-full gap-6px px-12px
|
|
14
|
+
return "h-32px w-full gap-6px px-12px";
|
|
19
15
|
if (hasLabel.value)
|
|
20
|
-
return "h-28px px-10px gap-6px self-start
|
|
21
|
-
return "h-32px w-40px
|
|
16
|
+
return "h-28px px-10px gap-6px self-start";
|
|
17
|
+
return "h-32px! w-40px! p-0!";
|
|
22
18
|
});
|
|
23
|
-
|
|
24
|
-
const
|
|
25
|
-
()
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
}
|
|
32
|
-
await nextTick();
|
|
33
|
-
popoverContentRef.value?.focusInput?.();
|
|
34
|
-
});
|
|
35
|
-
watch(groupName, () => {
|
|
36
|
-
creationErrorMessage.value = null;
|
|
37
|
-
});
|
|
38
|
-
async function submitGroup() {
|
|
39
|
-
const name = groupName.value.trim();
|
|
40
|
-
if (!name || isSaving.value)
|
|
41
|
-
return;
|
|
42
|
-
creationErrorMessage.value = null;
|
|
43
|
-
isSaving.value = true;
|
|
44
|
-
const group = await createGroup(name);
|
|
45
|
-
isSaving.value = false;
|
|
46
|
-
if (!group) {
|
|
47
|
-
creationErrorMessage.value = groupCreationError.value || "Erro ao criar pasta";
|
|
48
|
-
return;
|
|
49
|
-
}
|
|
50
|
-
groupName.value = "";
|
|
51
|
-
creationErrorMessage.value = null;
|
|
52
|
-
isOpen.value = false;
|
|
19
|
+
function nextGroupName() {
|
|
20
|
+
const names = new Set(groups.value.map((group) => group.name));
|
|
21
|
+
if (!names.has(DEFAULT_GROUP_NAME))
|
|
22
|
+
return DEFAULT_GROUP_NAME;
|
|
23
|
+
let index = 2;
|
|
24
|
+
while (names.has(`${DEFAULT_GROUP_NAME} ${index}`))
|
|
25
|
+
index += 1;
|
|
26
|
+
return `${DEFAULT_GROUP_NAME} ${index}`;
|
|
53
27
|
}
|
|
54
|
-
function
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
28
|
+
async function handleCreateGroup() {
|
|
29
|
+
if (isCreating.value)
|
|
30
|
+
return;
|
|
31
|
+
isCreating.value = true;
|
|
32
|
+
const group = await createGroup(nextGroupName());
|
|
33
|
+
isCreating.value = false;
|
|
34
|
+
if (group)
|
|
35
|
+
pendingRenameGroupId.value = group.id;
|
|
58
36
|
}
|
|
59
37
|
</script>
|
|
60
38
|
|
|
61
39
|
<template>
|
|
62
|
-
<
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
>
|
|
75
|
-
<span i-ph-folder-plus text-16px :class="iconClasses" />
|
|
76
|
-
<span v-if="hasLabel" :class="labelClasses">
|
|
77
|
-
{{ label }}
|
|
78
|
-
</span>
|
|
79
|
-
</button>
|
|
80
|
-
</TelaPopoverTrigger>
|
|
81
|
-
|
|
82
|
-
<ChatConversationNewGroupPopoverContent
|
|
83
|
-
ref="popoverContentRef"
|
|
84
|
-
v-model="groupName"
|
|
85
|
-
:error-message="creationErrorMessage"
|
|
86
|
-
:saving="isSaving"
|
|
87
|
-
@submit="submitGroup"
|
|
88
|
-
@cancel="cancelGroup"
|
|
89
|
-
/>
|
|
90
|
-
</TelaPopover>
|
|
40
|
+
<TelaButton
|
|
41
|
+
type="button"
|
|
42
|
+
variant="secondary"
|
|
43
|
+
:class="buttonClasses"
|
|
44
|
+
:aria-label="label || 'Nova pasta'"
|
|
45
|
+
@click="handleCreateGroup"
|
|
46
|
+
>
|
|
47
|
+
<TelaIcon name="i-ph-folder-plus" size="16px" color="icon-secondary" ml-0.5px />
|
|
48
|
+
<span v-if="hasLabel">
|
|
49
|
+
{{ label }}
|
|
50
|
+
</span>
|
|
51
|
+
</TelaButton>
|
|
91
52
|
</template>
|
|
@@ -3,9 +3,6 @@ defineProps({
|
|
|
3
3
|
placeholder: { type: String, required: false, default: "Buscar conversas" }
|
|
4
4
|
});
|
|
5
5
|
const searchQuery = defineModel({ type: String, ...{ required: true } });
|
|
6
|
-
function clearSearch() {
|
|
7
|
-
searchQuery.value = "";
|
|
8
|
-
}
|
|
9
6
|
</script>
|
|
10
7
|
|
|
11
8
|
<template>
|
|
@@ -14,22 +11,5 @@ function clearSearch() {
|
|
|
14
11
|
icon="i-ph-magnifying-glass-bold"
|
|
15
12
|
:placeholder="placeholder"
|
|
16
13
|
autocomplete="off"
|
|
17
|
-
|
|
18
|
-
<template v-if="searchQuery" #trailing>
|
|
19
|
-
<TelaTooltip content="Limpar busca">
|
|
20
|
-
<button
|
|
21
|
-
type="button"
|
|
22
|
-
aria-label="Limpar busca"
|
|
23
|
-
hover:bg="#EBEFF199"
|
|
24
|
-
transition-colors
|
|
25
|
-
p-4px rounded-full
|
|
26
|
-
class="group"
|
|
27
|
-
tabindex="-1"
|
|
28
|
-
@click.stop="clearSearch"
|
|
29
|
-
>
|
|
30
|
-
<TelaIcon name="i-ph-x-circle-light" text="#031E22" op-40 group-hover:op-100 transition-opacity />
|
|
31
|
-
</button>
|
|
32
|
-
</TelaTooltip>
|
|
33
|
-
</template>
|
|
34
|
-
</TelaInput>
|
|
14
|
+
/>
|
|
35
15
|
</template>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
searchPlaceholder?: string;
|
|
3
|
+
emptyMessage?: string;
|
|
4
|
+
emptySearchMessage?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
7
|
+
searchPlaceholder: string;
|
|
8
|
+
emptyMessage: string;
|
|
9
|
+
emptySearchMessage: string;
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
declare const _default: typeof __VLS_export;
|
|
12
|
+
export default _default;
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
<script setup>
|
|
2
|
+
import { useConversations } from "../composables/conversations";
|
|
3
|
+
import { capitalizeFirst } from "../../shared/string";
|
|
4
|
+
defineProps({
|
|
5
|
+
searchPlaceholder: { type: String, required: false, default: "Buscar conversas" },
|
|
6
|
+
emptyMessage: { type: String, required: false, default: "Nenhuma conversa ainda" },
|
|
7
|
+
emptySearchMessage: { type: String, required: false, default: "Nenhuma conversa encontrada" }
|
|
8
|
+
});
|
|
9
|
+
const { conversations, loading, fetchConversations } = useConversations();
|
|
10
|
+
onMounted(() => {
|
|
11
|
+
fetchConversations();
|
|
12
|
+
});
|
|
13
|
+
const items = computed(() => conversations.value.map((conversation) => ({
|
|
14
|
+
id: conversation.id,
|
|
15
|
+
title: capitalizeFirst(conversation.title || "Nova conversa")
|
|
16
|
+
})));
|
|
17
|
+
</script>
|
|
18
|
+
|
|
19
|
+
<template>
|
|
20
|
+
<TelaChatWidgetHistoryList
|
|
21
|
+
:items="items"
|
|
22
|
+
:loading="loading"
|
|
23
|
+
:search-placeholder="searchPlaceholder"
|
|
24
|
+
:empty-message="emptyMessage"
|
|
25
|
+
:empty-search-message="emptySearchMessage"
|
|
26
|
+
/>
|
|
27
|
+
</template>
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
type __VLS_Props = {
|
|
2
|
+
searchPlaceholder?: string;
|
|
3
|
+
emptyMessage?: string;
|
|
4
|
+
emptySearchMessage?: string;
|
|
5
|
+
};
|
|
6
|
+
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{}>, {
|
|
7
|
+
searchPlaceholder: string;
|
|
8
|
+
emptyMessage: string;
|
|
9
|
+
emptySearchMessage: string;
|
|
10
|
+
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
11
|
+
declare const _default: typeof __VLS_export;
|
|
12
|
+
export default _default;
|
|
@@ -20,6 +20,7 @@ export function useConversationGroups() {
|
|
|
20
20
|
const loadingBuckets = useState("conversation-groups-loading", () => ({}));
|
|
21
21
|
const fetchedBuckets = useState("conversation-groups-fetched", () => ({}));
|
|
22
22
|
const errorBuckets = useState("conversation-groups-error", () => ({}));
|
|
23
|
+
const pendingRenameGroupId = useState("conversation-groups-pending-rename", () => null);
|
|
23
24
|
const runtimeScope = computed(() => resolveChatStateScope(
|
|
24
25
|
embedConfig?.workspaceId.value || activeOrganization.value?.id,
|
|
25
26
|
embedConfig?.telaAgentId.value,
|
|
@@ -155,6 +156,7 @@ export function useConversationGroups() {
|
|
|
155
156
|
groups: readonly(groups),
|
|
156
157
|
loading: readonly(loading),
|
|
157
158
|
error: readonly(error),
|
|
159
|
+
pendingRenameGroupId,
|
|
158
160
|
fetchGroups,
|
|
159
161
|
createGroup,
|
|
160
162
|
renameGroup,
|
|
@@ -128,22 +128,22 @@ export function useConversationItem(options, emit) {
|
|
|
128
128
|
const menuItems = [
|
|
129
129
|
{
|
|
130
130
|
label: "Renomear",
|
|
131
|
-
icon: "i-ph-pencil-simple",
|
|
131
|
+
icon: "i-ph-pencil-simple-bold",
|
|
132
132
|
click: () => startRename()
|
|
133
133
|
},
|
|
134
134
|
{
|
|
135
135
|
label: "Duplicar",
|
|
136
|
-
icon: "i-ph-copy",
|
|
136
|
+
icon: "i-ph-copy-bold",
|
|
137
137
|
click: () => emit("duplicate", options.conversation.id)
|
|
138
138
|
},
|
|
139
139
|
{
|
|
140
140
|
label: "Exportar",
|
|
141
|
-
icon: "i-ph-download-simple",
|
|
141
|
+
icon: "i-ph-download-simple-bold",
|
|
142
142
|
click: () => emit("export", options.conversation.id)
|
|
143
143
|
},
|
|
144
144
|
{
|
|
145
145
|
label: "Excluir",
|
|
146
|
-
icon: "i-ph-trash",
|
|
146
|
+
icon: "i-ph-trash-bold",
|
|
147
147
|
color: "negative",
|
|
148
148
|
click: () => showDeleteModal.value = true
|
|
149
149
|
}
|
|
@@ -15,7 +15,7 @@ export function useConversationList(options) {
|
|
|
15
15
|
const embedConfig = useEmbedConfig();
|
|
16
16
|
const { activeOrganization } = useChatAuth();
|
|
17
17
|
const { deleteConversation, renameConversation, duplicateConversation, moveConversationToGroup } = useConversations();
|
|
18
|
-
const { groups, fetchGroups, deleteGroup, renameGroup, error: groupError } = useConversationGroups();
|
|
18
|
+
const { groups, fetchGroups, deleteGroup, renameGroup, error: groupError, pendingRenameGroupId } = useConversationGroups();
|
|
19
19
|
const { setConversation } = useChat();
|
|
20
20
|
const route = useRoute();
|
|
21
21
|
const router = useRouter();
|
|
@@ -193,22 +193,31 @@ export function useConversationList(options) {
|
|
|
193
193
|
isIgnoringInitialGroupRenameBlur.value = true;
|
|
194
194
|
void focusRenameGroupInput();
|
|
195
195
|
}
|
|
196
|
+
watch([pendingRenameGroupId, groups], ([pendingId]) => {
|
|
197
|
+
if (!pendingId)
|
|
198
|
+
return;
|
|
199
|
+
const group = groups.value.find((item) => item.id === pendingId);
|
|
200
|
+
if (!group)
|
|
201
|
+
return;
|
|
202
|
+
pendingRenameGroupId.value = null;
|
|
203
|
+
startRenameGroup(group.id, group.name);
|
|
204
|
+
}, { immediate: true });
|
|
196
205
|
function getGroupMenuItems(groupId, groupName, conversations) {
|
|
197
206
|
return [
|
|
198
207
|
{
|
|
199
208
|
label: "Renomear pasta",
|
|
200
|
-
icon: "i-ph-pencil-simple",
|
|
209
|
+
icon: "i-ph-pencil-simple-bold",
|
|
201
210
|
click: () => startRenameGroup(groupId, groupName)
|
|
202
211
|
},
|
|
203
212
|
{
|
|
204
213
|
label: "Excluir pasta",
|
|
205
|
-
icon: "i-ph-folder-minus",
|
|
214
|
+
icon: "i-ph-folder-minus-bold",
|
|
206
215
|
color: "negative",
|
|
207
216
|
click: () => openDeleteGroupModal(groupId, groupName, conversations)
|
|
208
217
|
},
|
|
209
218
|
{
|
|
210
219
|
label: "Excluir conversas",
|
|
211
|
-
icon: "i-ph-trash",
|
|
220
|
+
icon: "i-ph-trash-bold",
|
|
212
221
|
color: "negative",
|
|
213
222
|
disabled: conversations.length === 0,
|
|
214
223
|
click: () => openDeleteGroupConversationsModal(groupId, groupName, conversations)
|
|
@@ -230,7 +239,7 @@ export function useConversationList(options) {
|
|
|
230
239
|
...groupBucket,
|
|
231
240
|
open,
|
|
232
241
|
dropTarget,
|
|
233
|
-
folderIcon: open ? "i-ph-folder-open" : "i-ph-folder",
|
|
242
|
+
folderIcon: open ? "i-ph-folder-notch-open-bold" : "i-ph-folder-notch-bold",
|
|
234
243
|
isRenaming: renamingGroupId.value === groupBucket.group.id,
|
|
235
244
|
conversationCountLabel: groupBucket.items.length > 0 ? String(groupBucket.items.length) : null,
|
|
236
245
|
showNewConversationAction: !hasConversationSearchQuery.value,
|
|
@@ -9,14 +9,14 @@ type __VLS_Props = {
|
|
|
9
9
|
showCredentialsTab?: boolean;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
12
|
-
save: (payload: ChatConfigurationSavePayload) => any;
|
|
13
12
|
"update:open": (value: boolean) => any;
|
|
13
|
+
save: (payload: ChatConfigurationSavePayload) => any;
|
|
14
14
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
-
onSave?: ((payload: ChatConfigurationSavePayload) => any) | undefined;
|
|
16
15
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
16
|
+
onSave?: ((payload: ChatConfigurationSavePayload) => any) | undefined;
|
|
17
17
|
}>, {
|
|
18
|
-
saving: boolean;
|
|
19
18
|
initialTab: ChatConfigurationTab;
|
|
19
|
+
saving: boolean;
|
|
20
20
|
showCredentialsTab: boolean;
|
|
21
21
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
@@ -9,14 +9,14 @@ type __VLS_Props = {
|
|
|
9
9
|
showCredentialsTab?: boolean;
|
|
10
10
|
};
|
|
11
11
|
declare const __VLS_export: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
12
|
-
save: (payload: ChatConfigurationSavePayload) => any;
|
|
13
12
|
"update:open": (value: boolean) => any;
|
|
13
|
+
save: (payload: ChatConfigurationSavePayload) => any;
|
|
14
14
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
15
|
-
onSave?: ((payload: ChatConfigurationSavePayload) => any) | undefined;
|
|
16
15
|
"onUpdate:open"?: ((value: boolean) => any) | undefined;
|
|
16
|
+
onSave?: ((payload: ChatConfigurationSavePayload) => any) | undefined;
|
|
17
17
|
}>, {
|
|
18
|
-
saving: boolean;
|
|
19
18
|
initialTab: ChatConfigurationTab;
|
|
19
|
+
saving: boolean;
|
|
20
20
|
showCredentialsTab: boolean;
|
|
21
21
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
22
22
|
declare const _default: typeof __VLS_export;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ChatFeatureConfig } from '../feature-config.js';
|
|
2
|
-
import type { ChatActor, ChatSidebarConfig } from '../types.js';
|
|
2
|
+
import type { ChatActor, ChatSidebarConfig, ChatSuggestion } from '../types.js';
|
|
3
3
|
type EmbedUser = ChatActor;
|
|
4
4
|
type __VLS_Props = {
|
|
5
5
|
conversationId?: string | null;
|
|
@@ -7,7 +7,8 @@ type __VLS_Props = {
|
|
|
7
7
|
hideSidebar?: boolean;
|
|
8
8
|
sidebar?: ChatSidebarConfig;
|
|
9
9
|
hideSettings?: boolean;
|
|
10
|
-
|
|
10
|
+
compact?: boolean;
|
|
11
|
+
suggestions?: readonly ChatSuggestion[] | null;
|
|
11
12
|
user?: EmbedUser | null;
|
|
12
13
|
features?: Partial<ChatFeatureConfig>;
|
|
13
14
|
};
|
|
@@ -17,13 +18,15 @@ type __VLS_Slots = {} & {
|
|
|
17
18
|
};
|
|
18
19
|
declare const __VLS_base: import("vue").DefineComponent<__VLS_Props, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {} & {
|
|
19
20
|
"update:conversationId": (value: string | null) => any;
|
|
21
|
+
"update:conversationTitle": (value: string | null) => any;
|
|
20
22
|
}, string, import("vue").PublicProps, Readonly<__VLS_Props> & Readonly<{
|
|
21
23
|
"onUpdate:conversationId"?: ((value: string | null) => any) | undefined;
|
|
24
|
+
"onUpdate:conversationTitle"?: ((value: string | null) => any) | undefined;
|
|
22
25
|
}>, {
|
|
23
|
-
hideFolderHint: boolean;
|
|
24
26
|
hideSettings: boolean;
|
|
25
27
|
hideSidebar: boolean;
|
|
26
28
|
initialConversationId: string | null;
|
|
29
|
+
compact: boolean;
|
|
27
30
|
}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
|
|
28
31
|
declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
|
|
29
32
|
declare const _default: typeof __VLS_export;
|