GeoIntel release gates / Compile, test, contracts and builds (push) Successful in 1m49s
GeoIntel release gates / Python and npm vulnerability policy (push) Successful in 21s
GeoIntel release gates / Production AI image, SBOM and container scan (push) Successful in 5m39s
GeoIntel release gates / Deploy exact gated revision to Unraid (push) Failing after 58m43s
69 lines
1.5 KiB
Python
69 lines
1.5 KiB
Python
from __future__ import annotations
|
|
|
|
from uuid import UUID
|
|
from pydantic import BaseModel
|
|
|
|
|
|
class ProviderCapabilityResponse(BaseModel):
|
|
provider_name: str
|
|
display_name: str
|
|
authority_level: str
|
|
supported_layers: list[str]
|
|
supported_geometry_types: list[str]
|
|
supported_query_modes: list[str]
|
|
fetch_signature: str
|
|
configured: bool
|
|
status: str
|
|
limitation_message: str
|
|
attribution: str
|
|
license_note: str
|
|
not_configured_reason: str | None = None
|
|
|
|
|
|
class ProviderCapabilitiesResponse(BaseModel):
|
|
providers: list[ProviderCapabilityResponse]
|
|
|
|
|
|
class ProviderLayersResponse(BaseModel):
|
|
provider_name: str
|
|
layers: list[str]
|
|
|
|
|
|
class ProviderStatusResponse(BaseModel):
|
|
provider_name: str
|
|
configured: bool
|
|
status: str
|
|
limitation_message: str
|
|
|
|
|
|
class ExternalFetchRequest(BaseModel):
|
|
project_id: UUID
|
|
area_id: UUID | None = None
|
|
layers: list[str] = []
|
|
|
|
|
|
class ExternalFetchResponse(BaseModel):
|
|
provider: str
|
|
status: str
|
|
message: str
|
|
requested_layers: list[str]
|
|
project_id: UUID
|
|
area_id: UUID | None = None
|
|
|
|
|
|
class ProviderImportRequest(BaseModel):
|
|
project_id: str
|
|
area_id: str | None = None
|
|
layers: list[str] = []
|
|
dataset_role: str | None = None
|
|
|
|
|
|
class ProviderImportResponse(BaseModel):
|
|
provider_name: str
|
|
status: str
|
|
message: str
|
|
requested_layers: list[str]
|
|
dataset_id: str | None = None
|
|
dataset_role: str | None = None
|
|
source_name: str | None = None
|