fix: collapsible space toggle issue

This commit is contained in:
Timothy J. Baek
2024-10-16 22:36:44 -07:00
parent 7b97d7a718
commit 29c39d44e1
4 changed files with 76 additions and 17 deletions

View File

@@ -101,6 +101,10 @@ class FolderTable:
try:
with get_db() as db:
folder = db.query(Folder).filter_by(id=id, user_id=user_id).first()
if not folder:
return None
return FolderModel.model_validate(folder)
except Exception:
return None
@@ -119,12 +123,16 @@ class FolderTable:
with get_db() as db:
folder = (
db.query(Folder)
.filter_by(parent_id=parent_id, user_id=user_id, name=name)
.filter_by(parent_id=parent_id, user_id=user_id, name=name.lower())
.first()
)
if not folder:
return None
return FolderModel.model_validate(folder)
except Exception as e:
log.error(f"get_folder_by_name_and_user_id: {e}")
log.error(f"get_folder_by_parent_id_and_user_id_and_name: {e}")
return None
def get_folders_by_parent_id_and_user_id(
@@ -147,6 +155,10 @@ class FolderTable:
try:
with get_db() as db:
folder = db.query(Folder).filter_by(id=id, user_id=user_id).first()
if not folder:
return None
folder.parent_id = parent_id
folder.updated_at = int(time.time())
@@ -164,6 +176,9 @@ class FolderTable:
with get_db() as db:
folder = db.query(Folder).filter_by(id=id, user_id=user_id).first()
if not folder:
return None
existing_folder = (
db.query(Folder)
.filter_by(name=name, parent_id=folder.parent_id, user_id=user_id)
@@ -190,6 +205,9 @@ class FolderTable:
with get_db() as db:
folder = db.query(Folder).filter_by(id=id, user_id=user_id).first()
if not folder:
return None
folder.items = items.model_dump()
folder.updated_at = int(time.time())

View File

@@ -215,7 +215,18 @@ async def delete_folder_by_id(id: str, user=Depends(get_verified_user)):
if folder:
try:
result = Folders.delete_folder_by_id_and_user_id(id, user.id)
return result
if result:
# Delete all chats in the folder
chats = Chats.get_chats_by_folder_id_and_user_id(id, user.id)
for chat in chats:
Chats.delete_chat_by_id(chat.id, user.id)
return result
else:
raise HTTPException(
status_code=status.HTTP_400_BAD_REQUEST,
detail=ERROR_MESSAGES.DEFAULT("Error deleting folder"),
)
except Exception as e:
log.exception(e)
log.error(f"Error deleting folder: {id}")