Initial commit

This commit is contained in:
2026-02-17 19:28:52 -05:00
commit d2c69fa3a3
2 changed files with 71 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
[project]
name = "rbx-upload"
version = "0.1.0"
description = "Roblox asset upload client"
requires-python = ">=3.13"
dependencies = [
"httpx>=0.25.0",
]
[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"
[tool.hatch.build.targets.wheel]
packages = ["src/rbx_upload"]
+56
View File
@@ -0,0 +1,56 @@
from enum import IntEnum
from typing import Literal
class RbxAssetType(IntEnum):
IMAGE = 1
SHIRT = 11
PANTS = 12
ClothingAssetType = Literal[
RbxAssetType.SHIRT,
RbxAssetType.PANTS,
]
CreatorType = Literal["User", "Group"]
class RbxCreator:
def __init__(self, creator_id: int, username: str, creator_type: CreatorType):
self.creator_id = creator_id
self.username = username
self.creator_type = creator_type
class RbxAsset:
def __init__(
self,
asset_id: int,
creator: RbxCreator,
name: str,
description: str,
asset_type: RbxAssetType,
) -> None:
self.asset_id = asset_id
self.name = name
self.description = description
self.creator = creator
self.asset_type = asset_type
class ClothingAsset(RbxAsset):
def __init__(
self,
asset_id: int,
creator: RbxCreator,
name: str,
description: str,
asset_type: ClothingAssetType,
) -> None:
super().__init__(
asset_id=asset_id,
creator=creator,
name=name,
description=description,
asset_type=asset_type,
)