Skip to content

Commit

Permalink
Chore/update docstring (#142)
Browse files Browse the repository at this point in the history
* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring

* chore: update docstring
  • Loading branch information
sousuke0422 authored Jun 24, 2024
1 parent 77b665b commit 9cd073b
Show file tree
Hide file tree
Showing 5 changed files with 263 additions and 66 deletions.
123 changes: 119 additions & 4 deletions mipac/actions/antenna.py
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,9 @@ def __init__(self, *, session: HTTPClient, client: ClientManager):
self._client: ClientManager = client

async def delete(self, *, antenna_id: str) -> bool:
"""
Delete antenna from identifier
"""Delete antenna from identifier
Endpoint: `/api/antennas/delete`
Parameters
----------
Expand All @@ -44,6 +45,8 @@ async def delete(self, *, antenna_id: str) -> bool:
async def show(self, *, antenna_id: str) -> Antenna:
"""Show antenna from identifier
Endpoint: `/api/antennas/show`
Parameters
----------
antenna_id : str | None, optional
Expand All @@ -70,6 +73,30 @@ async def get_notes(
*,
antenna_id: str,
) -> list[Note]:
"""ノートを取得します
Endpoint: `/api/antennas/notes`
Parameters
----------
antenna_id : str
アンテナのID
limit : int, optional
一度に取得する件数, default=10
since_id : str | None
指定したIDのノートより後のノートを取得します, default=None
until_id : str | None
指定したIDのノートより前のノートを取得します, default=None
since_date : str | None
指定した日付のノートより後のノートを取得します, default=None
until_date : str | None
指定した日付のノートより前のノートを取得します, default=None
Returns
-------
list[Note]
取得したノートのリスト
"""
body = remove_dict_empty(
{
"antennaId": antenna_id,
Expand All @@ -96,6 +123,30 @@ async def get_all_notes(
*,
antenna_id: str,
) -> AsyncGenerator[Note, None]:
"""すべてのノートを取得します
Endpoint: `/api/antennas/notes`
Parameters
----------
antenna_id : str
アンテナのID
limit : int, optional
一度に取得する件数, default=10
since_id : str | None, optional
指定したIDのノートより後のノートを取得します, default=None
until_id : str | None, optional
指定したIDのノートより前のノートを取得します, default=None
since_date : str | None, optional
指定した日付のノートより後のノートを取得します, default=None
until_date : str | None, optional
指定した日付のノートより前のノートを取得します, default=None
Yields
------
Iterator[AsyncGenerator[Note, None]]
取得したノートのリスト
"""
body = remove_dict_empty(
{
"antennaId": antenna_id,
Expand Down Expand Up @@ -133,6 +184,8 @@ async def update(
) -> Antenna:
"""Update an antenna.
Endpoint: `/api/antennas/update`
Parameters
----------
name : str
Expand Down Expand Up @@ -200,8 +253,9 @@ def __init__(self, *, antenna_id: str, session: HTTPClient, client: ClientManage

@override
async def delete(self) -> bool:
"""
Delete antenna from identifier
"""Delete antenna from identifier
Endpoint: `/api/antennas/delete`
Returns
-------
Expand All @@ -214,6 +268,8 @@ async def delete(self) -> bool:
async def show(self) -> Antenna:
"""Show antenna from identifier
Endpoint: `/api/antennas/show`
Returns
-------
Antenna
Expand All @@ -231,6 +287,29 @@ async def get_notes(
since_date: str | None = None,
until_date: str | None = None,
) -> list[Note]:
"""ノートを取得します
Endpoint: `/api/antennas/notes`
Parameters
----------
limit : int, optional
一度に取得する件数, default=10
since_id : str | None, optional
指定したIDのノートより後のノートを取得します, by default None
until_id : str | None, optional
指定したIDのノートより前のノートを取得します, by default None
since_date : str | None, optional
指定した日付のノートより後のノートを取得します, by default None
until_date : str | None, optional
指定した日付のノートより前のノートを取得します, by default None
Returns
-------
list[Note]
取得したノートのリスト
"""

return await super().get_notes(
limit=limit,
since_id=since_id,
Expand All @@ -249,6 +328,29 @@ async def get_all_notes(
since_date: str | None = None,
until_date: str | None = None,
) -> AsyncGenerator[Note, None]:
"""すべてのノートを取得します
Endpoint: `/api/antennas/notes`
Parameters
----------
limit : int, optional
一度に取得する件数, default=10
since_id : str | None, optional
指定したIDのノートより後のノートを取得します, default=None
until_id : str | None, optional
指定したIDのノートより前のノートを取得します, default=None
since_date : str | None, optional
指定した日付のノートより後のノートを取得します, default=None
until_date : str | None, optional
指定した日付のノートより前のノートを取得します, default=None
Yields
------
AsyncGenerator[Note, None]
取得したノートのリスト
"""

async for i in super().get_all_notes(
limit, since_id, until_id, since_date, until_date, antenna_id=self.__antenna_id
):
Expand All @@ -270,6 +372,8 @@ async def update(
) -> Antenna:
"""Update an antenna.
Endpoint: `/api/antennas/update`
Parameters
----------
name : str
Expand Down Expand Up @@ -333,6 +437,8 @@ async def create(
) -> Antenna:
"""Create an antenna.
Endpoint: `/api/antennas/create`
Parameters
----------
name : str
Expand Down Expand Up @@ -402,6 +508,15 @@ async def create(
return Antenna(res_antenna, client=self._client)

async def get_list(self) -> list[Antenna]:
"""アンテナの一覧を取得します
Endpoint: `/api/antennas/list`
Returns
-------
list[Antenna]
アンテナのリスト
"""
res_antennas: list[IAntenna] = await self._session.request(
Route("POST", "/api/antennas/list"), auth=True
)
Expand Down
82 changes: 82 additions & 0 deletions mipac/actions/blocking.py
Original file line number Diff line number Diff line change
Expand Up @@ -20,12 +20,40 @@ def __init__(self, *, session: HTTPClient, client: ClientManager):
self._client: ClientManager = client

async def add(self, *, user_id: str) -> UserDetailedNotMe | MeDetailed:
"""ユーザーをブロックします
Endpoint: `/api/blocking/create`
Parameters
----------
user_id : str
対象のユーザー
Returns
-------
UserDetailedNotMe | MeDetailed
ブロック対象のユーザー情報
"""
res: IUserDetailed = await self._session.request(
Route("POST", "/api/blocking/create"), auth=True, json={"userId": user_id}, lower=True
)
return packed_user(res, client=self._client)

async def remove(self, *, user_id: str) -> UserDetailedNotMe | MeDetailed:
"""ユーザーのブロックを解除します
Endpoint: `/api/blocking/delete`
Parameters
----------
user_id : str
対象のユーザー
Returns
-------
UserDetailedNotMe | MeDetailed
ブロック解除対象のユーザー情報
"""
res: IUserDetailed = await self._session.request(
Route("POST", "/api/blocking/delete"), auth=True, json={"userId": user_id}, lower=True
)
Expand All @@ -44,10 +72,28 @@ def __init__(self, user_id: str, *, session: HTTPClient, client: ClientManager):

@override
async def add(self) -> UserDetailedNotMe | MeDetailed:
"""ユーザーをブロックします
Endpoint: `/api/blocking/create`
Returns
-------
UserDetailedNotMe | MeDetailed
ブロック対象のユーザー情報
"""
return await super().add(user_id=self.__user_id)

@override
async def remove(self) -> UserDetailedNotMe | MeDetailed:
"""ユーザーのブロックを解除します
Endpoint: `/api/blocking/delete`
Returns
-------
UserDetailedNotMe | MeDetailed
ブロック解除対象のユーザー情報
"""
return await super().remove(user_id=self.__user_id)


Expand All @@ -65,6 +111,24 @@ async def get_list(
until_id: str | None = None,
limit: int = 100,
) -> list[Blocking]:
"""ブロックしているユーザーの一覧を取得します
Endpoint: `/api/blocking/list`
Parameters
----------
since_id : str | None, optional
指定したIDのユーザーより後のユーザーを取得します, default=None
until_id : str | None, optional
指定したIDのユーザーより前のユーザーを取得します, default=None
limit : int, optional
一度に取得する件数, default=100
Returns
-------
list[Blocking]
ブロックしているユーザーの一覧
"""
body = {"limit": limit, "sinceId": since_id, "untilId": until_id}
raw_blocking_list = await self._session.request(
Route("POST", "/api/blocking/list"), json=body, auth=True
Expand All @@ -76,6 +140,24 @@ async def get_list(
async def get_all_list(
self, limit: int = 30, since_id: str | None = None, until_id: str | None = None
) -> AsyncGenerator[Blocking, None]:
"""すべてのブロックしているユーザーの一覧を取得します
Endpoint: `/api/blocking/list`
Parameters
----------
limit : int, optional
一度に取得する件数, default=30
since_id : str | None, optional
指定したIDのユーザーより前のユーザーを取得します, default=None
until_id : str | None, optional
指定したIDのユーザーより前のユーザーを取得します, default=None
Yields
------
AsyncGenerator[Blocking, None]
ブロックしているユーザーの一覧
"""
pagination = Pagination[IBlocking](
self._session,
Route("POST", "/api/blocking/list"),
Expand Down
Loading

0 comments on commit 9cd073b

Please sign in to comment.