Skip to content

Commit 7abe6ff

Browse files
committed
fixed the npm test
1 parent f7095ab commit 7abe6ff

File tree

4 files changed

+25
-45
lines changed

4 files changed

+25
-45
lines changed

resources/js/pages/chats/Details.vue

Lines changed: 21 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,17 @@ import {
1515
InputGroupButton,
1616
InputGroupTextarea,
1717
} from '@/components/ui/input-group';
18-
import { Badge } from '@/components/ui/badge'
1918
import AppLayout from '@/layouts/AppLayout.vue';
2019
import { dashboard, chat } from '@/routes';
2120
import { show } from '@/actions/App/Http/Controllers/FileController';
2221
import { type BreadcrumbItem } from '@/types';
23-
import { Check, Circle, Dot } from 'lucide-vue-next';
2422
import { Button } from '@/components/ui/button';
2523
import { Head, Form, Link } from '@inertiajs/vue3';
2624
import { Ellipsis, Trash, ArrowUpIcon } from "lucide-vue-next";
2725
import { ScrollArea } from '@/components/ui/scroll-area';
2826
import store from '@/actions/App/Http/Controllers/FileChatStoreController';
2927
import chatDetails from '@/actions/App/Http/Controllers/FileChatDetailsController';
30-
import { ref, onMounted, nextTick } from 'vue';
28+
import { ref, onMounted, nextTick, watch } from 'vue';
3129
3230
const props = defineProps<{
3331
file: any;
@@ -36,8 +34,6 @@ const props = defineProps<{
3634
conversations: any;
3735
}>();
3836
39-
const emit = defineEmits(['addMessage']);
40-
4137
const disabledButton = ref(false);
4238
4339
const scrollAreaRef = ref<{ $el: HTMLElement } | null>(null);
@@ -50,6 +46,12 @@ if(props.messages.data.length > 0 && props.messages.data[props.messages.data.len
5046
disabledButton.value = true;
5147
}
5248
49+
if(props.messages.data.length == 1 && props.messages.data[props.messages.data.length - 1].participant === 'user') {
50+
isTyping.value = true;
51+
}
52+
53+
const localMessages = ref(props.messages.data);
54+
5355
const isReady = ref(true);
5456
5557
const breadcrumbs: BreadcrumbItem[] = [
@@ -81,14 +83,16 @@ const handleError = () => {
8183
console.log('error');
8284
}
8385
84-
86+
const addNewMessage = (message: any) => {
87+
localMessages.value.push(message);
88+
}
8589
8690
onMounted(() => {
8791
window.Echo.private(`message-created.${props.conversation.data.id}`)
8892
.listen('MessageCreated', async (e) => {
8993
disabledButton.value = false;
9094
isTyping.value = false;
91-
props.messages.data.push(e.message);
95+
addNewMessage(e.message);
9296
await nextTick();
9397
scrollToBottom();
9498
});
@@ -99,6 +103,14 @@ onMounted(async () => {
99103
await scrollToBottom();
100104
});
101105
106+
watch(
107+
() => props.messages.data,
108+
(newMessagesData) => {
109+
localMessages.value = newMessagesData;
110+
},
111+
{ deep: true }
112+
);
113+
102114
</script>
103115

104116

@@ -116,7 +128,7 @@ onMounted(async () => {
116128
<ScrollArea v-show="isReady" ref="scrollAreaRef" class="w-full rounded-md h-[600px] md:h-[350px] p-2 mb-2">
117129
<div class="space-y-2">
118130
<div
119-
v-for="message in messages.data"
131+
v-for="message in localMessages"
120132
:key="message.id" class="flex"
121133
:class="message.participant === 'user' ? 'justify-end' : 'justify-start'"
122134
>
@@ -126,7 +138,7 @@ onMounted(async () => {
126138
</p>
127139
</div>
128140
</div>
129-
<div v-if="isTyping" class="relative flex items-center space-x-2 px-2">
141+
<div v-if="isTyping" class="relative flex items-center space-x-2 px-2 mb-4">
130142
<span class="flex h-3 w-3">
131143
<span class="animate-ping absolute inline-flex h-3 w-3 rounded-full bg-blue-400 opacity-75"></span>
132144
<span class="relative inline-flex rounded-full h-3 w-3 bg-blue-500"></span>
@@ -146,8 +158,6 @@ onMounted(async () => {
146158
class="w-full px-1"
147159
#default="{
148160
processing,
149-
errors,
150-
reset
151161
}"
152162
>
153163
<InputGroup class="w-full rounded-3xl">

resources/js/pages/chats/Index.vue

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ import {
1515
DropdownMenuItem,
1616
DropdownMenuTrigger,
1717
} from '@/components/ui/dropdown-menu';
18-
import { Badge } from '@/components/ui/badge'
1918
import AppLayout from '@/layouts/AppLayout.vue';
2019
import { dashboard } from '@/routes';
2120
import { show } from '@/actions/App/Http/Controllers/FileController';
@@ -84,8 +83,6 @@ const handleSuccess = () => {
8483
resetOnSuccess
8584
#default="{
8685
processing,
87-
errors,
88-
reset
8986
}"
9087

9188
class="w-full h-full"

resources/js/pages/files/Index.vue

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -42,11 +42,8 @@ import { Button } from '@/components/ui/button';
4242
import { Form, Head, Link, router } from '@inertiajs/vue3';
4343
import { ref } from 'vue';
4444
import { toast } from 'vue-sonner';
45-
import { usePage } from '@inertiajs/vue3';
4645
import DialogHeader from "@/components/ui/dialog/DialogHeader.vue";
47-
import { Spinner } from "@/components/ui/spinner"
48-
49-
const page = usePage();
46+
import { Spinner } from "@/components/ui/spinner";
5047
5148
defineProps<{
5249
files: { data: any[] };
@@ -138,8 +135,7 @@ const handleError = (page: any) => {
138135
resetOnSuccess
139136
#default="{
140137
processing,
141-
errors,
142-
reset
138+
errors
143139
}"
144140
>
145141
<DialogHeader>
@@ -208,7 +204,6 @@ const handleError = (page: any) => {
208204
#default="{
209205
processing,
210206
errors,
211-
reset
212207
}"
213208
>
214209
<DrawerHeader>
@@ -279,8 +274,7 @@ const handleError = (page: any) => {
279274
resetOnSuccess
280275
#default="{
281276
processing,
282-
errors,
283-
reset
277+
errors
284278
}"
285279
>
286280
<DialogHeader>

resources/js/pages/files/Show.vue

Lines changed: 1 addition & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ import {
66
import { Badge } from '@/components/ui/badge'
77
import {
88
Item,
9-
ItemActions,
109
ItemContent,
1110
ItemDescription,
1211
ItemFooter,
@@ -17,13 +16,12 @@ import { Spinner } from "@/components/ui/spinner"
1716
import { Progress } from "@/components/ui/progress";
1817
import AppLayout from '@/layouts/AppLayout.vue';
1918
import { dashboard, chat } from '@/routes';
20-
import { index, show } from '@/actions/App/Http/Controllers/FileController';
19+
import { index } from '@/actions/App/Http/Controllers/FileController';
2120
import { type BreadcrumbItem } from '@/types';
2221
import { BotMessageSquare } from 'lucide-vue-next';
2322
import { Button } from '@/components/ui/button';
2423
import { Head, Link } from '@inertiajs/vue3';
2524
import { onMounted, ref } from 'vue';
26-
import files from '@/routes/files';
2725
2826
const props = defineProps<{
2927
file: any;
@@ -65,25 +63,6 @@ onMounted(() => {
6563
});
6664
});
6765
68-
69-
const steps = [
70-
{
71-
step: 1,
72-
title: "Chunking",
73-
description: "Splitting file into chunks",
74-
},
75-
{
76-
step: 2,
77-
title: "Embeddings",
78-
description: "Generating embeddings",
79-
},
80-
{
81-
step: 3,
82-
title: "Storage",
83-
description: "Saving embeddings to vector storage",
84-
},
85-
]
86-
8766
</script>
8867

8968

0 commit comments

Comments
 (0)