Fix pydantic issues impacting autodoc
This commit is contained in:
@@ -1002,17 +1002,15 @@ class TokenDetails(BaseModel):
|
|||||||
image_tokens: Number of image tokens used (for input only).
|
image_tokens: Number of image tokens used (for input only).
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
model_config = ConfigDict(extra="allow")
|
||||||
|
__pydantic_extra__: dict[str, Any]
|
||||||
|
|
||||||
cached_tokens: Optional[int] = 0
|
cached_tokens: Optional[int] = 0
|
||||||
text_tokens: Optional[int] = 0
|
text_tokens: Optional[int] = 0
|
||||||
audio_tokens: Optional[int] = 0
|
audio_tokens: Optional[int] = 0
|
||||||
cached_tokens_details: Optional[CachedTokensDetails] = None
|
cached_tokens_details: Optional[CachedTokensDetails] = None
|
||||||
image_tokens: Optional[int] = 0
|
image_tokens: Optional[int] = 0
|
||||||
|
|
||||||
class Config:
|
|
||||||
"""Pydantic configuration for TokenDetails."""
|
|
||||||
|
|
||||||
extra = "allow"
|
|
||||||
|
|
||||||
|
|
||||||
class Usage(BaseModel):
|
class Usage(BaseModel):
|
||||||
"""Token usage statistics for a response.
|
"""Token usage statistics for a response.
|
||||||
|
|||||||
@@ -877,15 +877,13 @@ class TokenDetails(BaseModel):
|
|||||||
audio_tokens: Number of audio tokens used. Defaults to 0.
|
audio_tokens: Number of audio tokens used. Defaults to 0.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
model_config = ConfigDict(extra="allow")
|
||||||
|
__pydantic_extra__: dict[str, Any]
|
||||||
|
|
||||||
cached_tokens: Optional[int] = 0
|
cached_tokens: Optional[int] = 0
|
||||||
text_tokens: Optional[int] = 0
|
text_tokens: Optional[int] = 0
|
||||||
audio_tokens: Optional[int] = 0
|
audio_tokens: Optional[int] = 0
|
||||||
|
|
||||||
class Config:
|
|
||||||
"""Pydantic configuration for TokenDetails."""
|
|
||||||
|
|
||||||
extra = "allow"
|
|
||||||
|
|
||||||
|
|
||||||
class Usage(BaseModel):
|
class Usage(BaseModel):
|
||||||
"""Token usage statistics for a response.
|
"""Token usage statistics for a response.
|
||||||
|
|||||||
@@ -10,11 +10,11 @@ Methods that wrap the Daily API to create rooms, check room URLs, and get meetin
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
import time
|
import time
|
||||||
from typing import Dict, List, Literal, Optional
|
from typing import Any, Dict, List, Literal, Optional
|
||||||
from urllib.parse import urlparse
|
from urllib.parse import urlparse
|
||||||
|
|
||||||
import aiohttp
|
import aiohttp
|
||||||
from pydantic import BaseModel, Field, ValidationError
|
from pydantic import BaseModel, ConfigDict, Field, ValidationError
|
||||||
|
|
||||||
|
|
||||||
class DailyRoomSipParams(BaseModel):
|
class DailyRoomSipParams(BaseModel):
|
||||||
@@ -77,7 +77,7 @@ class TranscriptionBucketConfig(BaseModel):
|
|||||||
allow_api_access: bool = False
|
allow_api_access: bool = False
|
||||||
|
|
||||||
|
|
||||||
class DailyRoomProperties(BaseModel, extra="allow"):
|
class DailyRoomProperties(BaseModel):
|
||||||
"""Properties for configuring a Daily room.
|
"""Properties for configuring a Daily room.
|
||||||
|
|
||||||
Reference: https://docs.daily.co/reference/rest-api/rooms/create-room#properties
|
Reference: https://docs.daily.co/reference/rest-api/rooms/create-room#properties
|
||||||
@@ -100,6 +100,11 @@ class DailyRoomProperties(BaseModel, extra="allow"):
|
|||||||
start_video_off: Whether video is off by default.
|
start_video_off: Whether video is off by default.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
|
model_config = ConfigDict(extra="allow")
|
||||||
|
|
||||||
|
# Pydantic v2.12+ requires explicit annotation for extra fields
|
||||||
|
__pydantic_extra__: dict[str, Any]
|
||||||
|
|
||||||
exp: Optional[float] = None
|
exp: Optional[float] = None
|
||||||
enable_chat: bool = False
|
enable_chat: bool = False
|
||||||
enable_prejoin_ui: bool = False
|
enable_prejoin_ui: bool = False
|
||||||
@@ -113,7 +118,7 @@ class DailyRoomProperties(BaseModel, extra="allow"):
|
|||||||
recordings_bucket: Optional[RecordingsBucketConfig] = None
|
recordings_bucket: Optional[RecordingsBucketConfig] = None
|
||||||
transcription_bucket: Optional[TranscriptionBucketConfig] = None
|
transcription_bucket: Optional[TranscriptionBucketConfig] = None
|
||||||
sip: Optional[DailyRoomSipParams] = None
|
sip: Optional[DailyRoomSipParams] = None
|
||||||
sip_uri: Optional[dict] = None
|
sip_uri: Optional[Dict[str, Any]] = None
|
||||||
start_video_off: bool = False
|
start_video_off: bool = False
|
||||||
|
|
||||||
@property
|
@property
|
||||||
@@ -203,7 +208,7 @@ class DailyMeetingTokenProperties(BaseModel):
|
|||||||
enable_recording: Optional[Literal["cloud", "local", "raw-tracks"]] = None
|
enable_recording: Optional[Literal["cloud", "local", "raw-tracks"]] = None
|
||||||
enable_prejoin_ui: Optional[bool] = None
|
enable_prejoin_ui: Optional[bool] = None
|
||||||
start_cloud_recording: Optional[bool] = None
|
start_cloud_recording: Optional[bool] = None
|
||||||
permissions: Optional[dict] = None
|
permissions: Optional[Dict[str, Any]] = None
|
||||||
|
|
||||||
|
|
||||||
class DailyMeetingTokenParams(BaseModel):
|
class DailyMeetingTokenParams(BaseModel):
|
||||||
|
|||||||
Reference in New Issue
Block a user