mirror of
https://github.com/jxxghp/MoviePilot.git
synced 2026-11-01 21:07:01 +08:00
严格检查全部宿主源码,清零类型错误预算并移除按模块类型豁免。 按原因、所属方法、错误码及语法指纹锁定必要兼容例外和站点类型桩, CI 阻断新增忽略、检查范围退化、本地桩替代真实接口及新的类型错误。 修复空值、异步和供应方类型边界,保持插件与 API 兼容合同, 并补充存储、订阅、通知、Agent 和工作流边界的回归覆盖。
56 lines
1.4 KiB
Python
56 lines
1.4 KiB
Python
"""
|
|
存储授权 API 输出模型。
|
|
"""
|
|
|
|
from typing import Optional
|
|
|
|
from pydantic import BaseModel, Field
|
|
|
|
|
|
class StorageQrCodeData(BaseModel):
|
|
"""
|
|
云存储扫码授权二维码。
|
|
"""
|
|
|
|
codeContent: Optional[str] = Field(default=None, description="二维码原始内容")
|
|
codeUrl: Optional[str] = Field(default=None, description="二维码图片地址")
|
|
|
|
|
|
class StorageAuthUrlData(BaseModel):
|
|
"""
|
|
云存储 OAuth 授权入口。
|
|
"""
|
|
|
|
authUrl: str = Field(description="授权地址")
|
|
state: str = Field(description="授权状态校验值")
|
|
|
|
|
|
class StorageLoginStatusData(BaseModel):
|
|
"""
|
|
云存储扫码或 OAuth 登录状态。
|
|
"""
|
|
|
|
status: int | str = Field(description="授权状态")
|
|
tip: str = Field(description="状态提示")
|
|
|
|
|
|
class StorageOption(BaseModel):
|
|
"""
|
|
前端选择控件可安全消费的存储摘要。
|
|
"""
|
|
|
|
name: str = Field(description="存储显示名称")
|
|
type: str = Field(description="存储类型标识")
|
|
|
|
|
|
class StorageCatalogOption(BaseModel):
|
|
"""
|
|
前端新增存储和路径选择器可消费的存储类型目录项。
|
|
"""
|
|
|
|
type: str = Field(description="存储类型标识")
|
|
name: str = Field(description="存储原始显示名称")
|
|
name_i18n: str = Field(description="按请求语言返回的显示名称")
|
|
icon: str = Field(description="Vuetify 存储图标")
|
|
remote: bool = Field(description="是否为远程存储")
|