first commit
This commit is contained in:
69
backend/app/domain/admin.py
Normal file
69
backend/app/domain/admin.py
Normal file
@@ -0,0 +1,69 @@
|
||||
from __future__ import annotations
|
||||
|
||||
from dataclasses import dataclass
|
||||
from datetime import datetime
|
||||
from typing import Any
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class Site:
|
||||
id: str
|
||||
site_key: str
|
||||
name: str
|
||||
primary_domain: str
|
||||
status: str
|
||||
settings: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class Experiment:
|
||||
id: str
|
||||
site_id: str
|
||||
experiment_key: str
|
||||
name: str
|
||||
module_type: str
|
||||
status: str
|
||||
start_at: datetime | None = None
|
||||
end_at: datetime | None = None
|
||||
targeting_config: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class Variant:
|
||||
id: str
|
||||
experiment_id: str
|
||||
variant_key: str
|
||||
name: str
|
||||
traffic_weight: int
|
||||
content_config: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class ExperimentRelease:
|
||||
id: str
|
||||
experiment_id: str
|
||||
version_no: int
|
||||
status: str
|
||||
runtime_payload: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class Goal:
|
||||
id: str
|
||||
site_id: str
|
||||
goal_key: str
|
||||
name: str
|
||||
goal_type: str
|
||||
match_rule: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
|
||||
@dataclass(slots=True)
|
||||
class SdkConfig:
|
||||
id: str
|
||||
site_id: str
|
||||
sdk_key: str
|
||||
status: str
|
||||
origin_url: str | None = None
|
||||
cdn_url: str | None = None
|
||||
sdk_config: dict[str, Any] | list[Any] | None = None
|
||||
|
||||
Reference in New Issue
Block a user