diff --git a/speckle/api/models.py b/speckle/api/models.py new file mode 100644 index 0000000..c1bf270 --- /dev/null +++ b/speckle/api/models.py @@ -0,0 +1,86 @@ +# generated by datamodel-codegen: +# filename: stream_schema.json +# timestamp: 2020-11-17T14:33:13+00:00 + +from __future__ import annotations + +from datetime import datetime +from typing import Any, Dict, List, Optional + + +from pydantic import BaseModel + + +class Collaborator(BaseModel): + id: Optional[str] + name: Optional[str] + role: Optional[str] + avatar: Optional[str] + + +class User(BaseModel): + id: Optional[str] + email: Optional[str] + name: Optional[str] + bio: Optional[str] + company: Optional[str] + avatar: Optional[str] + verified: bool + role: Optional[str] + streams: Streams + + +class Commit(BaseModel): + id: Optional[str] + message: Optional[str] + authorName: Optional[str] + authorId: Optional[str] + authorAvatar: Optional[str] + createdAt: Optional[str] + referencedObject: Optional[str] + + +class Commits(BaseModel): + totalCount: int + cursor: Any + items: List[Commit] + + +class Object(BaseModel): + id: Optional[str] + speckleType: Optional[str] + applicationId: Optional[str] + totalChildrenCount: int + createdAt: Optional[str] + + +class Branch(BaseModel): + id: Optional[str] + name: Optional[str] + description: Optional[str] + commits: Commits + + +class Branches(BaseModel): + totalCount: int + cursor: datetime + items: List[Branch] + + +class Streams(BaseModel): + totalCount: int + cursor: datetime + items: List[Stream] + + +class Stream(BaseModel): + id: Optional[str] + name: Optional[str] + description: Optional[str] + isPublic: bool + createdAt: Optional[str] + updatedAt: Optional[str] + collaborators: List[Collaborator] + branches: Branches + commit: Commit + object: Object