mirror of
https://github.com/open-webui/open-webui.git
synced 2025-12-11 20:05:19 +00:00
refac
This commit is contained in:
parent
54b7ec56d6
commit
39f778c275
1 changed files with 16 additions and 3 deletions
|
|
@ -9,7 +9,7 @@ from open_webui.models.users import Users, User, UserNameResponse
|
||||||
from open_webui.models.channels import Channels, ChannelMember
|
from open_webui.models.channels import Channels, ChannelMember
|
||||||
|
|
||||||
|
|
||||||
from pydantic import BaseModel, ConfigDict
|
from pydantic import BaseModel, ConfigDict, field_validator
|
||||||
from sqlalchemy import BigInteger, Boolean, Column, String, Text, JSON
|
from sqlalchemy import BigInteger, Boolean, Column, String, Text, JSON
|
||||||
from sqlalchemy import or_, func, select, and_, text
|
from sqlalchemy import or_, func, select, and_, text
|
||||||
from sqlalchemy.sql import exists
|
from sqlalchemy.sql import exists
|
||||||
|
|
@ -108,11 +108,24 @@ class MessageUserResponse(MessageModel):
|
||||||
user: Optional[UserNameResponse] = None
|
user: Optional[UserNameResponse] = None
|
||||||
|
|
||||||
|
|
||||||
|
class MessageUserSlimResponse(MessageUserResponse):
|
||||||
|
data: bool | None = None
|
||||||
|
|
||||||
|
@field_validator("data", mode="before")
|
||||||
|
def convert_data_to_bool(cls, v):
|
||||||
|
# No data or not a dict → False
|
||||||
|
if not isinstance(v, dict):
|
||||||
|
return False
|
||||||
|
|
||||||
|
# True if ANY value in the dict is non-empty
|
||||||
|
return any(bool(val) for val in v.values())
|
||||||
|
|
||||||
|
|
||||||
class MessageReplyToResponse(MessageUserResponse):
|
class MessageReplyToResponse(MessageUserResponse):
|
||||||
reply_to_message: Optional[MessageUserResponse] = None
|
reply_to_message: Optional[MessageUserSlimResponse] = None
|
||||||
|
|
||||||
|
|
||||||
class MessageWithReactionsResponse(MessageUserResponse):
|
class MessageWithReactionsResponse(MessageUserSlimResponse):
|
||||||
reactions: list[Reactions]
|
reactions: list[Reactions]
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue