TaskCustomFieldDefinitionBase (task_custom_fields.py)

openclaw-mission-control · automation

Schemas for task custom field metadata, board bindings, and payloads.

"""Schemas for task custom field metadata, board bindings, and payloads."""

from __future__ import annotations

import re
from datetime import date, datetime
from functools import lru_cache
from typing import Literal, Self
from urllib.parse import urlparse
from uuid import UUID

from pydantic import Field, field_validator, model_validator
from sqlmodel import SQLModel

from app.schemas.common import NonEmptyStr

RUNTIME_ANNOTATION_TYPES = (datetime, UUID, date)

TaskCustomFieldType = Literal[
    "text",
    "text_long",
    "integer",
    "decimal",
    "boolean",
    "date",
    "date_time",
    "url",
    "json",
]
TaskCustomFieldUiVisibility = Literal["always", "if_set", "hidden"]
STRING_FIELD_TYPES: set[str] = {"text", "text_long", "date", "date_time", "url"}
TASK_CUSTOM_FIELD_TYPE_A

... (truncated -- full source via MCP)

See the full source, get the GitHub permalink, and search 40K more like it.

Get a free API key