WarEraAPI 0.1.6__tar.gz → 0.2.7__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {wareraapi-0.1.6/src/WarEraAPI.egg-info → wareraapi-0.2.7}/PKG-INFO +1 -1
- {wareraapi-0.1.6 → wareraapi-0.2.7}/pyproject.toml +1 -1
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/client.py +29 -2
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/__init__.py +1 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/constants.py +21 -0
- wareraapi-0.2.7/src/WarEraAPI/types/party.py +30 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/user.py +6 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7/src/WarEraAPI.egg-info}/PKG-INFO +1 -1
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI.egg-info/SOURCES.txt +1 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/LICENSE +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/README.md +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/setup.cfg +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/__init__.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/errors.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/article.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/battle.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/battle_data.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/battle_order.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/company.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/country.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/entity_upgrade.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/event.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/game_dates.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/government.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/item_offer.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/military_unit.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/production_bonus.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/rankings.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/recommended_region.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/region.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/round.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/search_result.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/trading_order.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/__init__.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/article_tip_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/battle_loot_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/craft_item_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/dismantle_item_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/donation_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/item_market_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/open_case_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/trading_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/transactions/wage_tx.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/user_equipments.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/work_offer.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/types/worker.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI/utils.py +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI.egg-info/dependency_links.txt +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI.egg-info/requires.txt +0 -0
- {wareraapi-0.1.6 → wareraapi-0.2.7}/src/WarEraAPI.egg-info/top_level.txt +0 -0
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "WarEraAPI"
|
|
7
|
-
version = "0.
|
|
7
|
+
version = "0.2.7"
|
|
8
8
|
description = "an api client for the online Multiplayer game WarEra written in python (unfinished)"
|
|
9
9
|
authors = [
|
|
10
10
|
{ name = "SpicyPenguin", email = "kerolisand@gmail.com" }
|
|
@@ -567,7 +567,7 @@ class WarEraClient:
|
|
|
567
567
|
:type cursor: str | None
|
|
568
568
|
:param return_users: wether to return User objects or just user Ids
|
|
569
569
|
:type return_users: bool
|
|
570
|
-
:return: a tuple with the first index holding a list of User objects (or str in case of return_users=False) and the second index holding the next cursor (optional)
|
|
570
|
+
:return: a tuple with the first index holding a list of User objects (or dict[str, str] in case of return_users=False) and the second index holding the next cursor (optional)
|
|
571
571
|
:rtype: tuple[list[User] | dict[str, str], str | None]
|
|
572
572
|
'''
|
|
573
573
|
|
|
@@ -1397,4 +1397,31 @@ class WarEraClient:
|
|
|
1397
1397
|
}
|
|
1398
1398
|
)
|
|
1399
1399
|
|
|
1400
|
-
return result
|
|
1400
|
+
return result
|
|
1401
|
+
|
|
1402
|
+
|
|
1403
|
+
# party
|
|
1404
|
+
|
|
1405
|
+
|
|
1406
|
+
async def get_party(
|
|
1407
|
+
self,
|
|
1408
|
+
partyId: str
|
|
1409
|
+
) -> Party:
|
|
1410
|
+
'''
|
|
1411
|
+
party.get_party
|
|
1412
|
+
|
|
1413
|
+
:param partyId: the party Id
|
|
1414
|
+
:type partyId: str
|
|
1415
|
+
:return: a Party object
|
|
1416
|
+
:rtype: Party
|
|
1417
|
+
'''
|
|
1418
|
+
|
|
1419
|
+
result = await self.request(
|
|
1420
|
+
method="POST",
|
|
1421
|
+
endpoint="party.getById",
|
|
1422
|
+
body={
|
|
1423
|
+
"partyId": partyId
|
|
1424
|
+
}
|
|
1425
|
+
)
|
|
1426
|
+
|
|
1427
|
+
return Party(**result)
|
|
@@ -20,6 +20,7 @@ from .production_bonus import ProductionBonus
|
|
|
20
20
|
from .entity_upgrade import EntityUpgrade
|
|
21
21
|
from .battle_order import BattleOrder
|
|
22
22
|
from .user_equipments import UserEquipments
|
|
23
|
+
from .party import Party
|
|
23
24
|
from .transactions import *
|
|
24
25
|
from .constants import *
|
|
25
26
|
|
|
@@ -234,6 +234,16 @@ class LiveRoundStats(TypedDict):
|
|
|
234
234
|
|
|
235
235
|
# User Stuff
|
|
236
236
|
|
|
237
|
+
class UserMute(TypedDict):
|
|
238
|
+
|
|
239
|
+
reason: str
|
|
240
|
+
mutedUntil: datetime
|
|
241
|
+
|
|
242
|
+
class UserBuffs(TypedDict):
|
|
243
|
+
|
|
244
|
+
buffCodes: list[str]
|
|
245
|
+
buffEndAt: datetime
|
|
246
|
+
|
|
237
247
|
class UserLeveling(TypedDict):
|
|
238
248
|
|
|
239
249
|
level: int
|
|
@@ -450,6 +460,17 @@ class ItemMarket(TypedDict):
|
|
|
450
460
|
lastAcquisitionAt: datetime
|
|
451
461
|
isEquipStatsMigrated: bool | None
|
|
452
462
|
|
|
463
|
+
|
|
464
|
+
# Party stuff
|
|
465
|
+
|
|
466
|
+
class PartyEthics(TypedDict):
|
|
467
|
+
|
|
468
|
+
militarism: int
|
|
469
|
+
isolationism: int
|
|
470
|
+
imperialism: int
|
|
471
|
+
inudstrialism: int
|
|
472
|
+
|
|
473
|
+
|
|
453
474
|
# Minimal Stuff
|
|
454
475
|
|
|
455
476
|
class MinimalRound(TypedDict):
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
from dataclasses import dataclass, field
|
|
2
|
+
from datetime import datetime
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
from WarEraAPI.types.constants import PartyEthics
|
|
6
|
+
from WarEraAPI.utils import edit_types
|
|
7
|
+
|
|
8
|
+
|
|
9
|
+
@dataclass
|
|
10
|
+
class Party:
|
|
11
|
+
|
|
12
|
+
_id: str
|
|
13
|
+
name: str
|
|
14
|
+
ethics: PartyEthics
|
|
15
|
+
country: str
|
|
16
|
+
region: str
|
|
17
|
+
leader: str
|
|
18
|
+
councilMembers: list[str]
|
|
19
|
+
members: list[str]
|
|
20
|
+
createdAt: datetime
|
|
21
|
+
updatedAt: datetime
|
|
22
|
+
description: str
|
|
23
|
+
avatarUrl: str | None = field(default=None)
|
|
24
|
+
treasurer: str | None = field(default=None)
|
|
25
|
+
primaryWinner: str | None = field(default=None)
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
def __post_init__(self):
|
|
29
|
+
|
|
30
|
+
edit_types(self)
|
|
@@ -10,6 +10,8 @@ from WarEraAPI.types.constants import UserSkills
|
|
|
10
10
|
from WarEraAPI.types.constants import UserStats
|
|
11
11
|
from WarEraAPI.types.constants import UserEquipment
|
|
12
12
|
from WarEraAPI.types.constants import UserRankings
|
|
13
|
+
from WarEraAPI.types.constants import UserBuffs
|
|
14
|
+
from WarEraAPI.types.constants import UserMute
|
|
13
15
|
|
|
14
16
|
|
|
15
17
|
@dataclass
|
|
@@ -45,6 +47,10 @@ class User:
|
|
|
45
47
|
warning: dict[str, Any] | None = field(default=None)
|
|
46
48
|
discord: dict[str, Any] | None = field(default=None)
|
|
47
49
|
equippedSkinKeys: dict[str, str] | None = field(default=None)
|
|
50
|
+
animatedAvatarUrl: str | None = field(default=None)
|
|
51
|
+
buffs: UserBuffs | None = field(default=None)
|
|
52
|
+
mute: UserMute | None = field(default=None)
|
|
53
|
+
isLocked: bool | None = field(default=None)
|
|
48
54
|
|
|
49
55
|
|
|
50
56
|
def __post_init__(self):
|
|
@@ -24,6 +24,7 @@ src/WarEraAPI/types/game_dates.py
|
|
|
24
24
|
src/WarEraAPI/types/government.py
|
|
25
25
|
src/WarEraAPI/types/item_offer.py
|
|
26
26
|
src/WarEraAPI/types/military_unit.py
|
|
27
|
+
src/WarEraAPI/types/party.py
|
|
27
28
|
src/WarEraAPI/types/production_bonus.py
|
|
28
29
|
src/WarEraAPI/types/rankings.py
|
|
29
30
|
src/WarEraAPI/types/recommended_region.py
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|