feat: notes/create のメソッドをcreateに変更

pull/125/head
yupix 9 months ago
parent bef1efedd2
commit c50e83ed34
No known key found for this signature in database
GPG Key ID: 2FF705F5C56D9C06

@ -16,7 +16,7 @@ from mipac.types.reaction import IReactionAcceptance
from mipac.utils.cache import cache
from mipac.utils.format import remove_dict_empty
from mipac.utils.pagination import Pagination
from mipac.utils.util import check_multi_arg
from mipac.utils.util import check_multi_arg, deprecated
if TYPE_CHECKING:
from mipac.client import ClientManager
@ -38,6 +38,7 @@ def create_note_body(
renote_id: str | None = None,
channel_id: str | None = None,
files: list[MiFile | File | str] | None = None,
media_ids: list[str] | None = None,
poll: MiPoll | None = None,
):
text = text or None
@ -45,6 +46,7 @@ def create_note_body(
"visibility": visibility,
"visibleUserIds": visible_user_ids,
"text": text,
"mediaIds": media_ids,
"cw": cw,
"localOnly": local_only,
"reactionAcceptance": reaction_acceptance,
@ -790,6 +792,51 @@ class NoteActions(ClientNoteActions):
):
super().__init__(note_id=note_id, session=session, client=client)
async def create(
self,
visibility: INoteVisibility = "public",
visible_user_ids: list[str] | None = None,
cw: str | None = None,
local_only: bool = False,
reaction_acceptance: IReactionAcceptance | None = None,
no_extrace_mentions: bool = False,
no_extract_hashtags: bool = False,
no_extract_emojis: bool = False,
reply_id: str | None = None,
renote_id: str | None = None,
channel_id: str | None = None,
text: str | None = None,
file_ids: list[MiFile | File | str] | None = None,
media_ids: list[str] | None = None,
poll: MiPoll | None = None,
) -> Note:
data = create_note_body(
text=text,
visibility=visibility,
visible_user_ids=visible_user_ids,
cw=cw,
local_only=local_only,
reaction_acceptance=reaction_acceptance,
extract_mentions=not no_extrace_mentions,
extract_hashtags=not no_extract_hashtags,
extract_emojis=not no_extract_emojis,
reply_id=reply_id,
renote_id=renote_id,
channel_id=channel_id,
files=file_ids,
media_ids=media_ids,
poll=poll,
)
raw_created_note: ICreatedNote = await self._session.request(
Route("POST", "/api/notes/create"),
auth=True,
json=data,
)
return Note(raw_note=raw_created_note["created_note"], client=self._client)
@deprecated
async def send(
self,
text: str | None = None,

Loading…
Cancel
Save