"...git@developer.sourcefind.cn:chenpangpang/open-webui.git" did not exist on "4c490132ba77e78433d3b7b2474b69b07bf60eb8"
Commit facb6edf authored by Timothy J. Baek's avatar Timothy J. Baek
Browse files

refac: chat tags

parent e8085f80
......@@ -321,19 +321,28 @@ async def get_all_tags(user=Depends(get_current_user)):
############################
@router.get("/tags/tag/{tag_name}", response_model=List[ChatTitleIdResponse])
class TagNameForm(BaseModel):
name: str
@router.post("/tags", response_model=List[ChatTitleIdResponse])
async def get_user_chat_list_by_tag_name(
tag_name: str, user=Depends(get_current_user), skip: int = 0, limit: int = 50
form_data: TagNameForm,
user=Depends(get_current_user),
skip: int = 0,
limit: int = 50,
):
chat_ids = [
chat_id_tag.chat_id
for chat_id_tag in Tags.get_chat_ids_by_tag_name_and_user_id(tag_name, user.id)
for chat_id_tag in Tags.get_chat_ids_by_tag_name_and_user_id(
form_data.name, user.id
)
]
chats = Chats.get_chat_list_by_chat_ids(chat_ids, skip, limit)
if len(chats) == 0:
Tags.delete_tag_by_tag_name_and_user_id(tag_name, user.id)
Tags.delete_tag_by_tag_name_and_user_id(form_data.name, user.id)
return chats
......
......@@ -220,13 +220,16 @@ export const getAllChatTags = async (token: string) => {
export const getChatListByTagName = async (token: string = '', tagName: string) => {
let error = null;
const res = await fetch(`${WEBUI_API_BASE_URL}/chats/tags/tag/${tagName}`, {
method: 'GET',
const res = await fetch(`${WEBUI_API_BASE_URL}/chats/tags`, {
method: 'POST',
headers: {
Accept: 'application/json',
'Content-Type': 'application/json',
...(token && { authorization: `Bearer ${token}` })
}
},
body: JSON.stringify({
name: tagName
})
})
.then(async (res) => {
if (!res.ok) throw await res.json();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment