PHP 8.2.30
Preview: payload.py Size: 1.29 KB
//opt/cloudlinux/venv/lib/python3.11/site-packages/hc_json_rpc_client/payload.py

from typing import Dict, Optional, TypedDict, Union

from pydantic import BaseModel
from typing_extensions import NotRequired

MetadataType = TypedDict(
    "MetadataType",
    {
        "entityId": str,
        "entityName": str,
        "eventName": str,
        "publisherName": NotRequired[str],
        "publishDate": NotRequired[str],
        "authorization": NotRequired[str],
        "traceparent": NotRequired[str],
        "tracestate": NotRequired[str],
        "containsPersonalData": NotRequired[bool],
        "token": NotRequired[str],
    },
)
ParamsType = TypedDict(
    "ParamsType", {"metadata": MetadataType, "payload": Dict[str, str]}
)


class Metadata(BaseModel):
    entityId: str
    entityName: str
    eventName: str
    publisherName: str = ""
    publishDate: str = ""
    authorization: Optional[str] = None
    traceparent: str = ""
    tracestate: str = ""
    containsPersonalData: bool = False
    token: str = ""


class Params(BaseModel):
    metadata: Metadata
    payload: dict = {}

    @staticmethod
    def from_dict(data: Union[dict, ParamsType]):
        return Params(
            metadata=Metadata(**data.get("metadata", {})),
            payload=data.get("payload", {}),
        )


class Payload(BaseModel):
    method: str
    params: Params
    jsonrpc: str
    id: int

Directory Contents

Dirs: 1 × Files: 4

Name Size Perms Modified Actions
- drwxr-xr-x 2025-06-07 07:01:26
Edit Download
3.15 KB lrw-r--r-- 2025-06-07 07:01:26
Edit Download
163 B lrw-r--r-- 2025-06-07 07:01:26
Edit Download
1.29 KB lrw-r--r-- 2025-06-07 07:01:26
Edit Download
160 B lrw-r--r-- 2025-06-07 07:01:26
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).