chore: fix: typing

This commit is contained in:
QuantumGhost
2025-12-26 15:01:40 +08:00
parent 513048c397
commit 74b6b48f40
19 changed files with 108 additions and 96 deletions

View File

@ -2,12 +2,10 @@
Human Input node entities.
"""
import enum
import re
import uuid
from collections.abc import Mapping, Sequence
from datetime import datetime, timedelta
from enum import StrEnum
from typing import Annotated, Any, ClassVar, Literal, Optional, Self
from pydantic import BaseModel, Field, field_validator, model_validator
@ -16,62 +14,11 @@ from core.variables.consts import SELECTORS_LENGTH
from core.workflow.nodes.base import BaseNodeData
from core.workflow.nodes.base.variable_template_parser import VariableTemplateParser
from .enums import ButtonStyle, DeliveryMethodType, EmailRecipientType, FormInputType, PlaceholderType, TimeoutUnit
_OUTPUT_VARIABLE_PATTERN = re.compile(r"\{\{#\$outputs\.(?P<field_name>[a-zA-Z_][a-zA-Z0-9_]{0,29})#\}\}")
class HumanInputFormStatus(StrEnum):
"""Status of a human input form."""
WAITING = enum.auto()
EXPIRED = enum.auto()
SUBMITTED = enum.auto()
TIMEOUT = enum.auto()
class DeliveryMethodType(StrEnum):
"""Delivery method types for human input forms."""
WEBAPP = enum.auto()
EMAIL = enum.auto()
class ButtonStyle(StrEnum):
"""Button styles for user actions."""
PRIMARY = enum.auto()
DEFAULT = enum.auto()
ACCENT = enum.auto()
GHOST = enum.auto()
class TimeoutUnit(StrEnum):
"""Timeout unit for form expiration."""
HOUR = enum.auto()
DAY = enum.auto()
class FormInputType(StrEnum):
"""Form input types."""
TEXT_INPUT = enum.auto()
PARAGRAPH = enum.auto()
class PlaceholderType(StrEnum):
"""Placeholder types for form inputs."""
VARIABLE = enum.auto()
CONSTANT = enum.auto()
class EmailRecipientType(StrEnum):
"""Email recipient types."""
MEMBER = enum.auto()
EXTERNAL = enum.auto()
class _WebAppDeliveryConfig(BaseModel):
"""Configuration for webapp delivery method."""

View File

@ -0,0 +1,54 @@
import enum
class HumanInputFormStatus(enum.StrEnum):
"""Status of a human input form."""
WAITING = enum.auto()
EXPIRED = enum.auto()
SUBMITTED = enum.auto()
TIMEOUT = enum.auto()
class DeliveryMethodType(enum.StrEnum):
"""Delivery method types for human input forms."""
WEBAPP = enum.auto()
EMAIL = enum.auto()
class ButtonStyle(enum.StrEnum):
"""Button styles for user actions."""
PRIMARY = enum.auto()
DEFAULT = enum.auto()
ACCENT = enum.auto()
GHOST = enum.auto()
class TimeoutUnit(enum.StrEnum):
"""Timeout unit for form expiration."""
HOUR = enum.auto()
DAY = enum.auto()
class FormInputType(enum.StrEnum):
"""Form input types."""
TEXT_INPUT = enum.auto()
PARAGRAPH = enum.auto()
class PlaceholderType(enum.StrEnum):
"""Placeholder types for form inputs."""
VARIABLE = enum.auto()
CONSTANT = enum.auto()
class EmailRecipientType(enum.StrEnum):
"""Email recipient types."""
MEMBER = enum.auto()
EXTERNAL = enum.auto()

View File

@ -17,7 +17,8 @@ from core.workflow.workflow_type_encoder import WorkflowRuntimeTypeConverter
from extensions.ext_database import db
from libs.datetime_utils import naive_utc_now
from .entities import HumanInputFormStatus, HumanInputNodeData, PlaceholderType
from .entities import HumanInputNodeData
from .enums import HumanInputFormStatus, PlaceholderType
if TYPE_CHECKING:
from core.workflow.entities.graph_init_params import GraphInitParams