chore: adopt StrEnum and auto() for some string-typed enums (#25129)

Co-authored-by: autofix-ci[bot] <114827586+autofix-ci[bot]@users.noreply.github.com>
Co-authored-by: crazywoola <100913391+crazywoola@users.noreply.github.com>
This commit is contained in:
Krito.
2025-09-12 21:14:26 +08:00
committed by GitHub
parent 635e7d3e70
commit a13d7987e0
68 changed files with 558 additions and 559 deletions

View File

@@ -224,35 +224,35 @@ class Dataset(Base):
doc_metadata.append(
{
"id": "built-in",
"name": BuiltInField.document_name.value,
"name": BuiltInField.document_name,
"type": "string",
}
)
doc_metadata.append(
{
"id": "built-in",
"name": BuiltInField.uploader.value,
"name": BuiltInField.uploader,
"type": "string",
}
)
doc_metadata.append(
{
"id": "built-in",
"name": BuiltInField.upload_date.value,
"name": BuiltInField.upload_date,
"type": "time",
}
)
doc_metadata.append(
{
"id": "built-in",
"name": BuiltInField.last_update_date.value,
"name": BuiltInField.last_update_date,
"type": "time",
}
)
doc_metadata.append(
{
"id": "built-in",
"name": BuiltInField.source.value,
"name": BuiltInField.source,
"type": "string",
}
)
@@ -544,7 +544,7 @@ class Document(Base):
"id": "built-in",
"name": BuiltInField.source,
"type": "string",
"value": MetadataDataSource[self.data_source_type].value,
"value": MetadataDataSource[self.data_source_type],
}
)
return built_in_fields

View File

@@ -3,7 +3,7 @@ import re
import uuid
from collections.abc import Mapping
from datetime import datetime
from enum import Enum, StrEnum
from enum import StrEnum, auto
from typing import TYPE_CHECKING, Any, Literal, Optional, cast
from core.plugin.entities.plugin import GenericProviderID
@@ -62,9 +62,9 @@ class AppMode(StrEnum):
raise ValueError(f"invalid mode value {value}")
class IconType(Enum):
IMAGE = "image"
EMOJI = "emoji"
class IconType(StrEnum):
IMAGE = auto()
EMOJI = auto()
class App(Base):
@@ -149,15 +149,15 @@ class App(Base):
if app_model_config.agent_mode_dict.get("enabled", False) and app_model_config.agent_mode_dict.get(
"strategy", ""
) in {"function_call", "react"}:
self.mode = AppMode.AGENT_CHAT.value
self.mode = AppMode.AGENT_CHAT
db.session.commit()
return True
return False
@property
def mode_compatible_with_agent(self) -> str:
if self.mode == AppMode.CHAT.value and self.is_agent:
return AppMode.AGENT_CHAT.value
if self.mode == AppMode.CHAT and self.is_agent:
return AppMode.AGENT_CHAT
return str(self.mode)
@@ -713,7 +713,7 @@ class Conversation(Base):
model_config = {}
app_model_config: Optional[AppModelConfig] = None
if self.mode == AppMode.ADVANCED_CHAT.value:
if self.mode == AppMode.ADVANCED_CHAT:
if self.override_model_configs:
override_model_configs = json.loads(self.override_model_configs)
model_config = override_model_configs

View File

@@ -1,5 +1,5 @@
from datetime import datetime
from enum import Enum
from enum import StrEnum, auto
from functools import cached_property
from typing import Optional
@@ -12,9 +12,9 @@ from .engine import db
from .types import StringUUID
class ProviderType(Enum):
CUSTOM = "custom"
SYSTEM = "system"
class ProviderType(StrEnum):
CUSTOM = auto()
SYSTEM = auto()
@staticmethod
def value_of(value: str) -> "ProviderType":
@@ -24,14 +24,14 @@ class ProviderType(Enum):
raise ValueError(f"No matching enum found for value '{value}'")
class ProviderQuotaType(Enum):
PAID = "paid"
class ProviderQuotaType(StrEnum):
PAID = auto()
"""hosted paid quota"""
FREE = "free"
FREE = auto()
"""third-party free quota"""
TRIAL = "trial"
TRIAL = auto()
"""hosted trial quota"""
@staticmethod

View File

@@ -2,7 +2,7 @@ import json
import logging
from collections.abc import Mapping, Sequence
from datetime import datetime
from enum import Enum, StrEnum
from enum import StrEnum, auto
from typing import TYPE_CHECKING, Any, Optional, Union, cast
from uuid import uuid4
@@ -41,13 +41,13 @@ from .types import EnumText, StringUUID
logger = logging.getLogger(__name__)
class WorkflowType(Enum):
class WorkflowType(StrEnum):
"""
Workflow Type Enum
"""
WORKFLOW = "workflow"
CHAT = "chat"
WORKFLOW = auto()
CHAT = auto()
@classmethod
def value_of(cls, value: str) -> "WorkflowType":
@@ -777,7 +777,7 @@ class WorkflowNodeExecutionModel(Base):
return extras
class WorkflowAppLogCreatedFrom(Enum):
class WorkflowAppLogCreatedFrom(StrEnum):
"""
Workflow App Log Created From Enum
"""