@codori/client 0.0.7 → 0.0.9
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/app/assets/css/main.css +22 -0
- package/app/components/BottomDrawerShell.vue +62 -0
- package/app/components/ChatWorkspace.vue +1009 -13
- package/app/components/LocalFileViewerModal.vue +314 -0
- package/app/components/MessagePartRenderer.ts +1 -0
- package/app/components/PendingUserRequestDrawer.vue +88 -0
- package/app/components/ProjectStatusDot.vue +1 -2
- package/app/components/ReviewStartDrawer.vue +186 -0
- package/app/components/SubagentTranscriptPanel.vue +5 -1
- package/app/components/UsageStatusModal.vue +265 -0
- package/app/components/VisualSubagentStack.vue +2 -0
- package/app/components/message-part/Event.vue +42 -8
- package/app/components/message-part/LocalFileLink.vue +51 -0
- package/app/components/message-part/ReviewPriorityBadge.vue +38 -0
- package/app/components/message-part/Text.vue +159 -10
- package/app/components/pending-request/McpElicitationForm.vue +264 -0
- package/app/components/pending-request/McpElicitationUrlPrompt.vue +100 -0
- package/app/components/pending-request/RequestUserInputForm.vue +235 -0
- package/app/composables/useChatSession.ts +1 -0
- package/app/composables/useLocalFileViewer.ts +46 -0
- package/app/composables/usePendingUserRequest.ts +124 -0
- package/app/composables/useThreadSummaries.ts +28 -2
- package/app/pages/index.vue +0 -1
- package/app/pages/projects/[...projectId]/threads/[threadId].vue +2 -0
- package/app/utils/chat-turn-engagement.ts +11 -2
- package/app/utils/review-priority-badge.ts +90 -0
- package/app/utils/slash-prompt-focus.ts +8 -0
- package/package.json +8 -1
- package/server/api/codori/projects/[projectId]/git/branches.get.ts +15 -0
- package/server/api/codori/projects/[projectId]/local-file.get.ts +44 -0
- package/shared/account-rate-limits.ts +190 -0
- package/shared/codex-chat.ts +72 -2
- package/shared/codex-rpc.ts +79 -3
- package/shared/codori.ts +20 -0
- package/shared/file-autocomplete.ts +166 -0
- package/shared/file-highlighting.ts +127 -0
- package/shared/local-files.ts +122 -0
- package/shared/pending-user-request.ts +374 -0
- package/shared/slash-commands.ts +97 -0
package/app/assets/css/main.css
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
@import "tailwindcss";
|
|
2
2
|
@import "@nuxt/ui";
|
|
3
|
+
@import "katex/dist/katex.min.css";
|
|
3
4
|
|
|
4
5
|
html,
|
|
5
6
|
body,
|
|
@@ -73,3 +74,24 @@ body {
|
|
|
73
74
|
padding-left: 1rem;
|
|
74
75
|
color: var(--ui-text-toned);
|
|
75
76
|
}
|
|
77
|
+
|
|
78
|
+
.cd-markdown .math.block {
|
|
79
|
+
overflow-x: auto;
|
|
80
|
+
padding-bottom: 0.25rem;
|
|
81
|
+
}
|
|
82
|
+
|
|
83
|
+
.cd-markdown .mermaid {
|
|
84
|
+
overflow-x: auto;
|
|
85
|
+
border: 1px solid color-mix(in srgb, var(--ui-border) 85%, transparent);
|
|
86
|
+
background: color-mix(in srgb, var(--ui-bg-elevated) 60%, transparent);
|
|
87
|
+
border-radius: 1rem;
|
|
88
|
+
padding: 0.75rem;
|
|
89
|
+
min-height: 0;
|
|
90
|
+
}
|
|
91
|
+
|
|
92
|
+
.cd-markdown .mermaid svg {
|
|
93
|
+
display: block;
|
|
94
|
+
max-width: min(100%, 48rem);
|
|
95
|
+
height: auto;
|
|
96
|
+
margin: 0 auto;
|
|
97
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
<script setup lang="ts">
|
|
2
|
+
withDefaults(defineProps<{
|
|
3
|
+
open?: boolean
|
|
4
|
+
title?: string
|
|
5
|
+
description?: string
|
|
6
|
+
hideHeader?: boolean
|
|
7
|
+
bodyClass?: string
|
|
8
|
+
}>(), {
|
|
9
|
+
open: false,
|
|
10
|
+
title: '',
|
|
11
|
+
description: '',
|
|
12
|
+
hideHeader: false,
|
|
13
|
+
bodyClass: ''
|
|
14
|
+
})
|
|
15
|
+
|
|
16
|
+
const emit = defineEmits<{
|
|
17
|
+
'update:open': [open: boolean]
|
|
18
|
+
}>()
|
|
19
|
+
</script>
|
|
20
|
+
|
|
21
|
+
<template>
|
|
22
|
+
<UDrawer
|
|
23
|
+
:open="open"
|
|
24
|
+
direction="bottom"
|
|
25
|
+
:handle="true"
|
|
26
|
+
:ui="{
|
|
27
|
+
content: 'inset-x-auto right-auto bottom-0 left-1/2 w-[90vw] max-w-[52rem] -translate-x-1/2 rounded-t-2xl rounded-b-none border-x border-t border-default bg-default shadow-2xl md:w-[min(50vw,52rem)]',
|
|
28
|
+
container: 'gap-0 p-0',
|
|
29
|
+
handle: 'mt-2 !h-1 !w-10 rounded-full',
|
|
30
|
+
header: hideHeader ? 'hidden' : 'px-4 pb-1 pt-3 md:px-5',
|
|
31
|
+
body: bodyClass || 'px-4 pb-4 pt-2 md:px-5',
|
|
32
|
+
footer: 'hidden'
|
|
33
|
+
}"
|
|
34
|
+
@update:open="emit('update:open', $event)"
|
|
35
|
+
>
|
|
36
|
+
<template #header>
|
|
37
|
+
<div
|
|
38
|
+
v-if="!hideHeader && (title || description || $slots.header)"
|
|
39
|
+
class="space-y-1.5"
|
|
40
|
+
>
|
|
41
|
+
<slot name="header">
|
|
42
|
+
<h2
|
|
43
|
+
v-if="title"
|
|
44
|
+
class="text-sm font-semibold text-highlighted md:text-base"
|
|
45
|
+
>
|
|
46
|
+
{{ title }}
|
|
47
|
+
</h2>
|
|
48
|
+
<p
|
|
49
|
+
v-if="description"
|
|
50
|
+
class="text-sm leading-5 text-muted"
|
|
51
|
+
>
|
|
52
|
+
{{ description }}
|
|
53
|
+
</p>
|
|
54
|
+
</slot>
|
|
55
|
+
</div>
|
|
56
|
+
</template>
|
|
57
|
+
|
|
58
|
+
<template #body>
|
|
59
|
+
<slot />
|
|
60
|
+
</template>
|
|
61
|
+
</UDrawer>
|
|
62
|
+
</template>
|