From e33f39dae0b9a18f978cb14db8a9e5a0b426c68f Mon Sep 17 00:00:00 2001 From: secret-rare Date: Wed, 18 Feb 2026 23:14:15 +0000 Subject: [PATCH] deploy: 9c7bd63d02ffaada0bf1da923b299aa0f58e8193 --- .nojekyll | 0 index.html | 7 + rbx_upload.html | 1525 +++++++++++++++++++++++++++++++++++++++++++++++ search.js | 46 ++ 4 files changed, 1578 insertions(+) create mode 100644 .nojekyll create mode 100644 index.html create mode 100644 rbx_upload.html create mode 100644 search.js diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/index.html b/index.html new file mode 100644 index 0000000..a3bd637 --- /dev/null +++ b/index.html @@ -0,0 +1,7 @@ + + + + + + + diff --git a/rbx_upload.html b/rbx_upload.html new file mode 100644 index 0000000..340bafc --- /dev/null +++ b/rbx_upload.html @@ -0,0 +1,1525 @@ + + + + + + + rbx_upload API documentation + + + + + + + + + +
+
+

+rbx_upload

+ + + + + + +
 1from .client import RobloxClient
+ 2from .models import (
+ 3    AssetNotFoundError,
+ 4    AuthError,
+ 5    BatchResult,
+ 6    BatchUploadItem,
+ 7    ClothingAsset,
+ 8    RateLimitError,
+ 9    RbxAsset,
+10    RbxAssetType,
+11    RbxCreator,
+12    RbxError,
+13    UploadError,
+14)
+15
+16__all__ = [
+17    "RobloxClient",
+18    "RbxError",
+19    "AuthError",
+20    "RateLimitError",
+21    "UploadError",
+22    "AssetNotFoundError",
+23    "BatchUploadItem",
+24    "BatchResult",
+25    "RbxAsset",
+26    "ClothingAsset",
+27    "RbxCreator",
+28    "RbxAssetType",
+29]
+
+ + +
+
+ +
+ + class + RobloxClient: + + + +
+ +
 23class RobloxClient:
+ 24    def __init__(
+ 25        self,
+ 26        roblosecurity: str,
+ 27        publisher_user_id: int,
+ 28        proxy: str | None = None,
+ 29    ):
+ 30        self._roblosecurity = roblosecurity
+ 31        self._publisher_user_id = publisher_user_id
+ 32        self._proxy = proxy
+ 33        self._http = httpx.AsyncClient()
+ 34
+ 35        self._fetch_headers = {
+ 36            "Cookie": f".ROBLOSECURITY={roblosecurity}",
+ 37            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
+ 38        }
+ 39        self._csrf_headers = {
+ 40            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+ 41            "Referer": "https://create.roblox.com/",
+ 42            "Origin": "https://create.roblox.com",
+ 43        }
+ 44        self._csrf_cookies = {".ROBLOSECURITY": roblosecurity}
+ 45
+ 46    def _proxy_url(self, url: str) -> str:
+ 47        if not self._proxy:
+ 48            return url
+ 49        return url.replace("roblox.com", self._proxy)
+ 50
+ 51    async def _get_csrf_token(self) -> str:
+ 52        url = self._proxy_url("https://apis.roblox.com/assets/user-auth/v1/assets")
+ 53        response = await self._http.post(
+ 54            url, cookies=self._csrf_cookies, headers=self._csrf_headers
+ 55        )
+ 56        csrf = response.headers.get("X-CSRF-TOKEN")
+ 57        if not csrf:
+ 58            if response.status_code in (401, 403):
+ 59                raise AuthError("Invalid or expired ROBLOSECURITY token.")
+ 60            raise AuthError("Failed to retrieve X-CSRF-TOKEN.")
+ 61        return csrf
+ 62
+ 63    async def _economy_request(self, asset_id: int) -> httpx.Response:
+ 64        url = self._proxy_url(
+ 65            f"https://economy.roblox.com/v2/assets/{asset_id}/details"
+ 66        )
+ 67        return await self._http.get(url, headers=self._fetch_headers)
+ 68
+ 69    async def _asset_delivery_request(self, asset_id: int) -> httpx.Response:
+ 70        url = self._proxy_url(
+ 71            f"https://assetdelivery.roblox.com/v1/asset/?id={asset_id}"
+ 72        )
+ 73        return await self._http.get(
+ 74            url, headers=self._fetch_headers, follow_redirects=True
+ 75        )
+ 76
+ 77    async def _get_asset_xml(self, asset: RbxAsset) -> xml.etree.ElementTree.Element:
+ 78        response = await self._asset_delivery_request(asset.asset_id)
+ 79        response.raise_for_status()
+ 80        content = response.content.decode("utf-8")
+ 81        return xml.etree.ElementTree.fromstring(content)
+ 82
+ 83    @staticmethod
+ 84    def _get_shirt_template_id_from_xml(root: xml.etree.ElementTree.Element) -> int:
+ 85        url_element = root.find(".//url")
+ 86        if url_element is None:
+ 87            raise ValueError("XML did not contain a <url> tag.")
+ 88        url = url_element.text
+ 89        if not url:
+ 90            raise ValueError("<url> tag did not contain any text.")
+ 91        return int(url.split("id=")[1])
+ 92
+ 93    async def asset_from_id(self, asset_id: int) -> RbxAsset:
+ 94        """Fetch asset information from Roblox by asset ID."""
+ 95        response = await self._economy_request(asset_id)
+ 96        if response.status_code == 404:
+ 97            raise AssetNotFoundError(f"Asset {asset_id} not found.")
+ 98        if response.status_code in (401, 403):
+ 99            raise AuthError("Not authorized to fetch this asset.")
+100        response.raise_for_status()
+101        asset_info = response.json()
+102        creator_info = asset_info["Creator"]
+103        creator = RbxCreator(
+104            creator_id=creator_info["Id"],
+105            username=creator_info["Name"],
+106            creator_type=creator_info["CreatorType"],
+107        )
+108        asset_type_id = asset_info["AssetTypeId"]
+109        if asset_type_id in (RbxAssetType.SHIRT, RbxAssetType.PANTS):
+110            return ClothingAsset(
+111                asset_id=asset_info["AssetId"],
+112                creator=creator,
+113                name=asset_info["Name"],
+114                description=asset_info["Description"],
+115                asset_type=asset_type_id,
+116            )
+117        return RbxAsset(
+118            asset_id=asset_info["AssetId"],
+119            creator=creator,
+120            name=asset_info["Name"],
+121            description=asset_info["Description"],
+122            asset_type=asset_type_id,
+123        )
+124
+125    async def fetch_clothing_image(self, asset: ClothingAsset) -> bytes:
+126        """Fetch the image data for a clothing asset."""
+127        xml_root = await self._get_asset_xml(asset)
+128        template_id = self._get_shirt_template_id_from_xml(xml_root)
+129        image = await self._asset_delivery_request(template_id)
+130        image.raise_for_status()
+131        return image.content
+132
+133    async def upload_clothing_image(
+134        self,
+135        image: bytes,
+136        name: str,
+137        description: str,
+138        asset_type: RbxAssetType,
+139        group_id: int,
+140        max_attempts: int = 10,
+141        poll_interval: float = 1.0,
+142    ) -> dict:
+143        """Upload a clothing image to Roblox and return the operation result.
+144
+145        Args:
+146            image: Raw PNG bytes of the clothing image.
+147            name: Display name for the asset.
+148            description: Description for the asset.
+149            asset_type: RbxAssetType.SHIRT or RbxAssetType.PANTS.
+150            group_id: ID of the group to upload the asset to.
+151            max_attempts: Number of times to poll the operation status. Defaults to 10.
+152            poll_interval: Seconds to wait between polls. Defaults to 1.0.
+153        """
+154        csrf = await self._get_csrf_token()
+155        upload_url = self._proxy_url(
+156            "https://apis.roblox.com/assets/user-auth/v1/assets"
+157        )
+158        meta = {
+159            "displayName": name,
+160            "description": description,
+161            "assetType": asset_type,
+162            "creationContext": {
+163                "creator": {"groupId": group_id},
+164                "expectedPrice": 10,
+165            },
+166        }
+167        upload_headers = {
+168            "X-CSRF-TOKEN": csrf,
+169            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+170            "Accept": "*/*",
+171            "Accept-Language": "en-US,en;q=0.5",
+172            "Referer": "https://create.roblox.com/",
+173            "Origin": "https://create.roblox.com",
+174            "Sec-Fetch-Dest": "empty",
+175            "Sec-Fetch-Mode": "cors",
+176            "Sec-Fetch-Site": "same-site",
+177        }
+178        response = await self._http.post(
+179            upload_url,
+180            files={
+181                "request": (None, json.dumps(meta), "application/json"),
+182                "fileContent": ("clothing_upload", image, "image/png"),
+183            },
+184            headers=upload_headers,
+185            cookies=self._csrf_cookies,
+186        )
+187
+188        if response.status_code == 429:
+189            raise RateLimitError("Rate limit hit during upload.")
+190        if response.status_code in (401, 403):
+191            raise AuthError("Not authorized to upload assets.")
+192
+193        response.raise_for_status()
+194        data = response.json()
+195
+196        operation_id = data.get("operationId")
+197        if operation_id:
+198            for _ in range(max_attempts):
+199                await asyncio.sleep(poll_interval)
+200                op_response = await self._http.get(
+201                    self._proxy_url(
+202                        f"https://apis.roblox.com/assets/user-auth/v1/operations/{operation_id}"
+203                    ),
+204                    headers={"X-CSRF-TOKEN": csrf},
+205                    cookies=self._csrf_cookies,
+206                )
+207                op_response.raise_for_status()
+208                op_data = op_response.json()
+209                if op_data.get("done"):
+210                    if op_data.get("response", {}).get("assetId"):
+211                        return {"asset_id": op_data["response"]["assetId"]}
+212                    return op_data
+213            raise UploadError(
+214                f"Upload operation did not complete after {max_attempts} attempts."
+215            )
+216
+217        return data
+218
+219    async def batch_upload(
+220        self,
+221        items: list[BatchUploadItem],
+222        max_attempts: int = 10,
+223        poll_interval: float = 1.0,
+224    ) -> BatchResult:
+225        """Upload multiple clothing images with limited concurrency.
+226
+227        Processes items 2 at a time. Continues on failure and reports all
+228        failures in the returned BatchResult.
+229
+230        Args:
+231            items: List of BatchUploadItem to upload.
+232            max_attempts: Passed to each upload_clothing_image call.
+233            poll_interval: Passed to each upload_clothing_image call.
+234        """
+235        result = BatchResult()
+236        semaphore = asyncio.Semaphore(2)
+237
+238        async def _upload_one(item: BatchUploadItem):
+239            async with semaphore:
+240                try:
+241                    upload_result = await self.upload_clothing_image(
+242                        image=item.image,
+243                        name=item.name,
+244                        description=item.description,
+245                        asset_type=item.asset_type,
+246                        group_id=item.group_id,
+247                        max_attempts=max_attempts,
+248                        poll_interval=poll_interval,
+249                    )
+250                    result.succeeded.append((item, upload_result))
+251                except Exception as e:
+252                    result.failed.append((item, e))
+253
+254        await asyncio.gather(*[_upload_one(item) for item in items])
+255        return result
+256
+257    async def onsale_asset(
+258        self,
+259        asset_id: int,
+260        name: str,
+261        description: str,
+262        group_id: int,
+263        price: int = 5,
+264    ) -> dict:
+265        """Put an asset on sale."""
+266        csrf = await self._get_csrf_token()
+267        data = {
+268            "saleLocationConfiguration": {"saleLocationType": 1, "places": []},
+269            "targetId": asset_id,
+270            "priceInRobux": price,
+271            "publishingType": 2,
+272            "idempotencyToken": str(uuid.uuid4()),
+273            "publisherUserId": self._publisher_user_id,
+274            "creatorGroupId": group_id,
+275            "name": name,
+276            "description": description,
+277            "isFree": False,
+278            "agreedPublishingFee": 0,
+279            "priceOffset": 0,
+280            "quantity": 0,
+281            "quantityLimitPerUser": 0,
+282            "resaleRestriction": 2,
+283            "targetType": 0,
+284        }
+285        response = await self._http.post(
+286            self._proxy_url("https://itemconfiguration.roblox.com/v1/collectibles"),
+287            json=data,
+288            headers={
+289                "X-CSRF-TOKEN": csrf,
+290                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+291                "Referer": "https://create.roblox.com/",
+292                "Origin": "https://create.roblox.com",
+293            },
+294            cookies=self._csrf_cookies,
+295        )
+296
+297        if response.status_code == 429:
+298            raise RateLimitError("Rate limit hit during onsale.")
+299        if response.status_code in (401, 403):
+300            raise AuthError("Not authorized to put this asset on sale.")
+301
+302        response.raise_for_status()
+303        return response.json()
+304
+305    async def close(self):
+306        """Close the underlying HTTP client."""
+307        await self._http.aclose()
+308
+309    async def __aenter__(self):
+310        return self
+311
+312    async def __aexit__(self, *args):
+313        await self.close()
+
+ + + + +
+ +
+ + RobloxClient(roblosecurity: str, publisher_user_id: int, proxy: str | None = None) + + + +
+ +
24    def __init__(
+25        self,
+26        roblosecurity: str,
+27        publisher_user_id: int,
+28        proxy: str | None = None,
+29    ):
+30        self._roblosecurity = roblosecurity
+31        self._publisher_user_id = publisher_user_id
+32        self._proxy = proxy
+33        self._http = httpx.AsyncClient()
+34
+35        self._fetch_headers = {
+36            "Cookie": f".ROBLOSECURITY={roblosecurity}",
+37            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36",
+38        }
+39        self._csrf_headers = {
+40            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+41            "Referer": "https://create.roblox.com/",
+42            "Origin": "https://create.roblox.com",
+43        }
+44        self._csrf_cookies = {".ROBLOSECURITY": roblosecurity}
+
+ + + + +
+
+ +
+ + async def + asset_from_id(self, asset_id: int) -> RbxAsset: + + + +
+ +
 93    async def asset_from_id(self, asset_id: int) -> RbxAsset:
+ 94        """Fetch asset information from Roblox by asset ID."""
+ 95        response = await self._economy_request(asset_id)
+ 96        if response.status_code == 404:
+ 97            raise AssetNotFoundError(f"Asset {asset_id} not found.")
+ 98        if response.status_code in (401, 403):
+ 99            raise AuthError("Not authorized to fetch this asset.")
+100        response.raise_for_status()
+101        asset_info = response.json()
+102        creator_info = asset_info["Creator"]
+103        creator = RbxCreator(
+104            creator_id=creator_info["Id"],
+105            username=creator_info["Name"],
+106            creator_type=creator_info["CreatorType"],
+107        )
+108        asset_type_id = asset_info["AssetTypeId"]
+109        if asset_type_id in (RbxAssetType.SHIRT, RbxAssetType.PANTS):
+110            return ClothingAsset(
+111                asset_id=asset_info["AssetId"],
+112                creator=creator,
+113                name=asset_info["Name"],
+114                description=asset_info["Description"],
+115                asset_type=asset_type_id,
+116            )
+117        return RbxAsset(
+118            asset_id=asset_info["AssetId"],
+119            creator=creator,
+120            name=asset_info["Name"],
+121            description=asset_info["Description"],
+122            asset_type=asset_type_id,
+123        )
+
+ + +

Fetch asset information from Roblox by asset ID.

+
+ + +
+
+ +
+ + async def + fetch_clothing_image(self, asset: ClothingAsset) -> bytes: + + + +
+ +
125    async def fetch_clothing_image(self, asset: ClothingAsset) -> bytes:
+126        """Fetch the image data for a clothing asset."""
+127        xml_root = await self._get_asset_xml(asset)
+128        template_id = self._get_shirt_template_id_from_xml(xml_root)
+129        image = await self._asset_delivery_request(template_id)
+130        image.raise_for_status()
+131        return image.content
+
+ + +

Fetch the image data for a clothing asset.

+
+ + +
+
+ +
+ + async def + upload_clothing_image( self, image: bytes, name: str, description: str, asset_type: RbxAssetType, group_id: int, max_attempts: int = 10, poll_interval: float = 1.0) -> dict: + + + +
+ +
133    async def upload_clothing_image(
+134        self,
+135        image: bytes,
+136        name: str,
+137        description: str,
+138        asset_type: RbxAssetType,
+139        group_id: int,
+140        max_attempts: int = 10,
+141        poll_interval: float = 1.0,
+142    ) -> dict:
+143        """Upload a clothing image to Roblox and return the operation result.
+144
+145        Args:
+146            image: Raw PNG bytes of the clothing image.
+147            name: Display name for the asset.
+148            description: Description for the asset.
+149            asset_type: RbxAssetType.SHIRT or RbxAssetType.PANTS.
+150            group_id: ID of the group to upload the asset to.
+151            max_attempts: Number of times to poll the operation status. Defaults to 10.
+152            poll_interval: Seconds to wait between polls. Defaults to 1.0.
+153        """
+154        csrf = await self._get_csrf_token()
+155        upload_url = self._proxy_url(
+156            "https://apis.roblox.com/assets/user-auth/v1/assets"
+157        )
+158        meta = {
+159            "displayName": name,
+160            "description": description,
+161            "assetType": asset_type,
+162            "creationContext": {
+163                "creator": {"groupId": group_id},
+164                "expectedPrice": 10,
+165            },
+166        }
+167        upload_headers = {
+168            "X-CSRF-TOKEN": csrf,
+169            "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+170            "Accept": "*/*",
+171            "Accept-Language": "en-US,en;q=0.5",
+172            "Referer": "https://create.roblox.com/",
+173            "Origin": "https://create.roblox.com",
+174            "Sec-Fetch-Dest": "empty",
+175            "Sec-Fetch-Mode": "cors",
+176            "Sec-Fetch-Site": "same-site",
+177        }
+178        response = await self._http.post(
+179            upload_url,
+180            files={
+181                "request": (None, json.dumps(meta), "application/json"),
+182                "fileContent": ("clothing_upload", image, "image/png"),
+183            },
+184            headers=upload_headers,
+185            cookies=self._csrf_cookies,
+186        )
+187
+188        if response.status_code == 429:
+189            raise RateLimitError("Rate limit hit during upload.")
+190        if response.status_code in (401, 403):
+191            raise AuthError("Not authorized to upload assets.")
+192
+193        response.raise_for_status()
+194        data = response.json()
+195
+196        operation_id = data.get("operationId")
+197        if operation_id:
+198            for _ in range(max_attempts):
+199                await asyncio.sleep(poll_interval)
+200                op_response = await self._http.get(
+201                    self._proxy_url(
+202                        f"https://apis.roblox.com/assets/user-auth/v1/operations/{operation_id}"
+203                    ),
+204                    headers={"X-CSRF-TOKEN": csrf},
+205                    cookies=self._csrf_cookies,
+206                )
+207                op_response.raise_for_status()
+208                op_data = op_response.json()
+209                if op_data.get("done"):
+210                    if op_data.get("response", {}).get("assetId"):
+211                        return {"asset_id": op_data["response"]["assetId"]}
+212                    return op_data
+213            raise UploadError(
+214                f"Upload operation did not complete after {max_attempts} attempts."
+215            )
+216
+217        return data
+
+ + +

Upload a clothing image to Roblox and return the operation result.

+ +

Args: + image: Raw PNG bytes of the clothing image. + name: Display name for the asset. + description: Description for the asset. + asset_type: RbxAssetType.SHIRT or RbxAssetType.PANTS. + group_id: ID of the group to upload the asset to. + max_attempts: Number of times to poll the operation status. Defaults to 10. + poll_interval: Seconds to wait between polls. Defaults to 1.0.

+
+ + +
+
+ +
+ + async def + batch_upload( self, items: list[BatchUploadItem], max_attempts: int = 10, poll_interval: float = 1.0) -> BatchResult: + + + +
+ +
219    async def batch_upload(
+220        self,
+221        items: list[BatchUploadItem],
+222        max_attempts: int = 10,
+223        poll_interval: float = 1.0,
+224    ) -> BatchResult:
+225        """Upload multiple clothing images with limited concurrency.
+226
+227        Processes items 2 at a time. Continues on failure and reports all
+228        failures in the returned BatchResult.
+229
+230        Args:
+231            items: List of BatchUploadItem to upload.
+232            max_attempts: Passed to each upload_clothing_image call.
+233            poll_interval: Passed to each upload_clothing_image call.
+234        """
+235        result = BatchResult()
+236        semaphore = asyncio.Semaphore(2)
+237
+238        async def _upload_one(item: BatchUploadItem):
+239            async with semaphore:
+240                try:
+241                    upload_result = await self.upload_clothing_image(
+242                        image=item.image,
+243                        name=item.name,
+244                        description=item.description,
+245                        asset_type=item.asset_type,
+246                        group_id=item.group_id,
+247                        max_attempts=max_attempts,
+248                        poll_interval=poll_interval,
+249                    )
+250                    result.succeeded.append((item, upload_result))
+251                except Exception as e:
+252                    result.failed.append((item, e))
+253
+254        await asyncio.gather(*[_upload_one(item) for item in items])
+255        return result
+
+ + +

Upload multiple clothing images with limited concurrency.

+ +

Processes items 2 at a time. Continues on failure and reports all +failures in the returned BatchResult.

+ +

Args: + items: List of BatchUploadItem to upload. + max_attempts: Passed to each upload_clothing_image call. + poll_interval: Passed to each upload_clothing_image call.

+
+ + +
+
+ +
+ + async def + onsale_asset( self, asset_id: int, name: str, description: str, group_id: int, price: int = 5) -> dict: + + + +
+ +
257    async def onsale_asset(
+258        self,
+259        asset_id: int,
+260        name: str,
+261        description: str,
+262        group_id: int,
+263        price: int = 5,
+264    ) -> dict:
+265        """Put an asset on sale."""
+266        csrf = await self._get_csrf_token()
+267        data = {
+268            "saleLocationConfiguration": {"saleLocationType": 1, "places": []},
+269            "targetId": asset_id,
+270            "priceInRobux": price,
+271            "publishingType": 2,
+272            "idempotencyToken": str(uuid.uuid4()),
+273            "publisherUserId": self._publisher_user_id,
+274            "creatorGroupId": group_id,
+275            "name": name,
+276            "description": description,
+277            "isFree": False,
+278            "agreedPublishingFee": 0,
+279            "priceOffset": 0,
+280            "quantity": 0,
+281            "quantityLimitPerUser": 0,
+282            "resaleRestriction": 2,
+283            "targetType": 0,
+284        }
+285        response = await self._http.post(
+286            self._proxy_url("https://itemconfiguration.roblox.com/v1/collectibles"),
+287            json=data,
+288            headers={
+289                "X-CSRF-TOKEN": csrf,
+290                "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:145.0) Gecko/20100101 Firefox/145.0",
+291                "Referer": "https://create.roblox.com/",
+292                "Origin": "https://create.roblox.com",
+293            },
+294            cookies=self._csrf_cookies,
+295        )
+296
+297        if response.status_code == 429:
+298            raise RateLimitError("Rate limit hit during onsale.")
+299        if response.status_code in (401, 403):
+300            raise AuthError("Not authorized to put this asset on sale.")
+301
+302        response.raise_for_status()
+303        return response.json()
+
+ + +

Put an asset on sale.

+
+ + +
+
+ +
+ + async def + close(self): + + + +
+ +
305    async def close(self):
+306        """Close the underlying HTTP client."""
+307        await self._http.aclose()
+
+ + +

Close the underlying HTTP client.

+
+ + +
+
+
+ +
+ + class + RbxError(builtins.Exception): + + + +
+ +
20class RbxError(Exception):
+21    """Base exception for all rbx-upload errors."""
+22    pass
+
+ + +

Base exception for all rbx-upload errors.

+
+ + +
+
+ +
+ + class + AuthError(rbx_upload.RbxError): + + + +
+ +
25class AuthError(RbxError):
+26    """Raised when authentication fails or the ROBLOSECURITY token is invalid."""
+27    pass
+
+ + +

Raised when authentication fails or the ROBLOSECURITY token is invalid.

+
+ + +
+
+ +
+ + class + RateLimitError(rbx_upload.RbxError): + + + +
+ +
30class RateLimitError(RbxError):
+31    """Raised when hitting Roblox rate limits (HTTP 429)."""
+32    pass
+
+ + +

Raised when hitting Roblox rate limits (HTTP 429).

+
+ + +
+
+ +
+ + class + UploadError(rbx_upload.RbxError): + + + +
+ +
35class UploadError(RbxError):
+36    """Raised when an asset upload fails."""
+37    pass
+
+ + +

Raised when an asset upload fails.

+
+ + +
+
+ +
+ + class + AssetNotFoundError(rbx_upload.RbxError): + + + +
+ +
40class AssetNotFoundError(RbxError):
+41    """Raised when an asset cannot be found."""
+42    pass
+
+ + +

Raised when an asset cannot be found.

+
+ + +
+
+ +
+
@dataclass
+ + class + BatchUploadItem: + + + +
+ +
86@dataclass
+87class BatchUploadItem:
+88    image: bytes
+89    name: str
+90    asset_type: RbxAssetType
+91    group_id: int
+92    description: str = ""
+
+ + + + +
+
+ + BatchUploadItem( image: bytes, name: str, asset_type: RbxAssetType, group_id: int, description: str = '') + + +
+ + + + +
+
+
+ image: bytes + + +
+ + + + +
+
+
+ name: str + + +
+ + + + +
+
+
+ asset_type: RbxAssetType + + +
+ + + + +
+
+
+ group_id: int + + +
+ + + + +
+
+
+ description: str = +'' + + +
+ + + + +
+
+
+ +
+
@dataclass
+ + class + BatchResult: + + + +
+ +
 95@dataclass
+ 96class BatchResult:
+ 97    succeeded: list[tuple[BatchUploadItem, dict]] = field(default_factory=list)
+ 98    failed: list[tuple[BatchUploadItem, Exception]] = field(default_factory=list)
+ 99
+100    @property
+101    def all_succeeded(self) -> bool:
+102        return len(self.failed) == 0
+
+ + + + +
+
+ + BatchResult( succeeded: list[tuple[BatchUploadItem, dict]] = <factory>, failed: list[tuple[BatchUploadItem, Exception]] = <factory>) + + +
+ + + + +
+
+
+ succeeded: list[tuple[BatchUploadItem, dict]] + + +
+ + + + +
+
+
+ failed: list[tuple[BatchUploadItem, Exception]] + + +
+ + + + +
+
+ +
+ all_succeeded: bool + + + +
+ +
100    @property
+101    def all_succeeded(self) -> bool:
+102        return len(self.failed) == 0
+
+ + + + +
+
+
+ +
+ + class + RbxAsset: + + + +
+ +
52class RbxAsset:
+53    def __init__(
+54        self,
+55        asset_id: int,
+56        creator: RbxCreator,
+57        name: str,
+58        description: str,
+59        asset_type: RbxAssetType,
+60    ) -> None:
+61        self.asset_id = asset_id
+62        self.name = name
+63        self.description = description
+64        self.creator = creator
+65        self.asset_type = asset_type
+
+ + + + +
+ +
+ + RbxAsset( asset_id: int, creator: RbxCreator, name: str, description: str, asset_type: RbxAssetType) + + + +
+ +
53    def __init__(
+54        self,
+55        asset_id: int,
+56        creator: RbxCreator,
+57        name: str,
+58        description: str,
+59        asset_type: RbxAssetType,
+60    ) -> None:
+61        self.asset_id = asset_id
+62        self.name = name
+63        self.description = description
+64        self.creator = creator
+65        self.asset_type = asset_type
+
+ + + + +
+
+
+ asset_id + + +
+ + + + +
+
+
+ name + + +
+ + + + +
+
+
+ description + + +
+ + + + +
+
+
+ creator + + +
+ + + + +
+
+
+ asset_type + + +
+ + + + +
+
+
+ +
+ + class + ClothingAsset(rbx_upload.RbxAsset): + + + +
+ +
68class ClothingAsset(RbxAsset):
+69    def __init__(
+70        self,
+71        asset_id: int,
+72        creator: RbxCreator,
+73        name: str,
+74        description: str,
+75        asset_type: ClothingAssetType,
+76    ) -> None:
+77        super().__init__(
+78            asset_id=asset_id,
+79            creator=creator,
+80            name=name,
+81            description=description,
+82            asset_type=asset_type,
+83        )
+
+ + + + +
+ +
+ + ClothingAsset( asset_id: int, creator: RbxCreator, name: str, description: str, asset_type: Literal[<RbxAssetType.SHIRT: 11>, <RbxAssetType.PANTS: 12>]) + + + +
+ +
69    def __init__(
+70        self,
+71        asset_id: int,
+72        creator: RbxCreator,
+73        name: str,
+74        description: str,
+75        asset_type: ClothingAssetType,
+76    ) -> None:
+77        super().__init__(
+78            asset_id=asset_id,
+79            creator=creator,
+80            name=name,
+81            description=description,
+82            asset_type=asset_type,
+83        )
+
+ + + + +
+
+
+ +
+ + class + RbxCreator: + + + +
+ +
45class RbxCreator:
+46    def __init__(self, creator_id: int, username: str, creator_type: CreatorType):
+47        self.creator_id = creator_id
+48        self.username = username
+49        self.creator_type = creator_type
+
+ + + + +
+ +
+ + RbxCreator( creator_id: int, username: str, creator_type: Literal['User', 'Group']) + + + +
+ +
46    def __init__(self, creator_id: int, username: str, creator_type: CreatorType):
+47        self.creator_id = creator_id
+48        self.username = username
+49        self.creator_type = creator_type
+
+ + + + +
+
+
+ creator_id + + +
+ + + + +
+
+
+ username + + +
+ + + + +
+
+
+ creator_type + + +
+ + + + +
+
+
+ +
+ + class + RbxAssetType(enum.IntEnum): + + + +
+ +
 7class RbxAssetType(IntEnum):
+ 8    IMAGE = 1
+ 9    SHIRT = 11
+10    PANTS = 12
+
+ + + + +
+
+ IMAGE = +<RbxAssetType.IMAGE: 1> + + +
+ + + + +
+
+
+ SHIRT = +<RbxAssetType.SHIRT: 11> + + +
+ + + + +
+
+
+ PANTS = +<RbxAssetType.PANTS: 12> + + +
+ + + + +
+
+
+ + \ No newline at end of file diff --git a/search.js b/search.js new file mode 100644 index 0000000..c2aaad0 --- /dev/null +++ b/search.js @@ -0,0 +1,46 @@ +window.pdocSearch = (function(){ +/** elasticlunr - http://weixsong.github.io * Copyright (C) 2017 Oliver Nightingale * Copyright (C) 2017 Wei Song * MIT Licensed */!function(){function e(e){if(null===e||"object"!=typeof e)return e;var t=e.constructor();for(var n in e)e.hasOwnProperty(n)&&(t[n]=e[n]);return t}var t=function(e){var n=new t.Index;return n.pipeline.add(t.trimmer,t.stopWordFilter,t.stemmer),e&&e.call(n,n),n};t.version="0.9.5",lunr=t,t.utils={},t.utils.warn=function(e){return function(t){e.console&&console.warn&&console.warn(t)}}(this),t.utils.toString=function(e){return void 0===e||null===e?"":e.toString()},t.EventEmitter=function(){this.events={}},t.EventEmitter.prototype.addListener=function(){var e=Array.prototype.slice.call(arguments),t=e.pop(),n=e;if("function"!=typeof t)throw new TypeError("last argument must be a function");n.forEach(function(e){this.hasHandler(e)||(this.events[e]=[]),this.events[e].push(t)},this)},t.EventEmitter.prototype.removeListener=function(e,t){if(this.hasHandler(e)){var n=this.events[e].indexOf(t);-1!==n&&(this.events[e].splice(n,1),0==this.events[e].length&&delete this.events[e])}},t.EventEmitter.prototype.emit=function(e){if(this.hasHandler(e)){var t=Array.prototype.slice.call(arguments,1);this.events[e].forEach(function(e){e.apply(void 0,t)},this)}},t.EventEmitter.prototype.hasHandler=function(e){return e in this.events},t.tokenizer=function(e){if(!arguments.length||null===e||void 0===e)return[];if(Array.isArray(e)){var n=e.filter(function(e){return null===e||void 0===e?!1:!0});n=n.map(function(e){return t.utils.toString(e).toLowerCase()});var i=[];return n.forEach(function(e){var n=e.split(t.tokenizer.seperator);i=i.concat(n)},this),i}return e.toString().trim().toLowerCase().split(t.tokenizer.seperator)},t.tokenizer.defaultSeperator=/[\s\-]+/,t.tokenizer.seperator=t.tokenizer.defaultSeperator,t.tokenizer.setSeperator=function(e){null!==e&&void 0!==e&&"object"==typeof e&&(t.tokenizer.seperator=e)},t.tokenizer.resetSeperator=function(){t.tokenizer.seperator=t.tokenizer.defaultSeperator},t.tokenizer.getSeperator=function(){return t.tokenizer.seperator},t.Pipeline=function(){this._queue=[]},t.Pipeline.registeredFunctions={},t.Pipeline.registerFunction=function(e,n){n in t.Pipeline.registeredFunctions&&t.utils.warn("Overwriting existing registered function: "+n),e.label=n,t.Pipeline.registeredFunctions[n]=e},t.Pipeline.getRegisteredFunction=function(e){return e in t.Pipeline.registeredFunctions!=!0?null:t.Pipeline.registeredFunctions[e]},t.Pipeline.warnIfFunctionNotRegistered=function(e){var n=e.label&&e.label in this.registeredFunctions;n||t.utils.warn("Function is not registered with pipeline. This may cause problems when serialising the index.\n",e)},t.Pipeline.load=function(e){var n=new t.Pipeline;return e.forEach(function(e){var i=t.Pipeline.getRegisteredFunction(e);if(!i)throw new Error("Cannot load un-registered function: "+e);n.add(i)}),n},t.Pipeline.prototype.add=function(){var e=Array.prototype.slice.call(arguments);e.forEach(function(e){t.Pipeline.warnIfFunctionNotRegistered(e),this._queue.push(e)},this)},t.Pipeline.prototype.after=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i+1,0,n)},t.Pipeline.prototype.before=function(e,n){t.Pipeline.warnIfFunctionNotRegistered(n);var i=this._queue.indexOf(e);if(-1===i)throw new Error("Cannot find existingFn");this._queue.splice(i,0,n)},t.Pipeline.prototype.remove=function(e){var t=this._queue.indexOf(e);-1!==t&&this._queue.splice(t,1)},t.Pipeline.prototype.run=function(e){for(var t=[],n=e.length,i=this._queue.length,o=0;n>o;o++){for(var r=e[o],s=0;i>s&&(r=this._queue[s](r,o,e),void 0!==r&&null!==r);s++);void 0!==r&&null!==r&&t.push(r)}return t},t.Pipeline.prototype.reset=function(){this._queue=[]},t.Pipeline.prototype.get=function(){return this._queue},t.Pipeline.prototype.toJSON=function(){return this._queue.map(function(e){return t.Pipeline.warnIfFunctionNotRegistered(e),e.label})},t.Index=function(){this._fields=[],this._ref="id",this.pipeline=new t.Pipeline,this.documentStore=new t.DocumentStore,this.index={},this.eventEmitter=new t.EventEmitter,this._idfCache={},this.on("add","remove","update",function(){this._idfCache={}}.bind(this))},t.Index.prototype.on=function(){var e=Array.prototype.slice.call(arguments);return this.eventEmitter.addListener.apply(this.eventEmitter,e)},t.Index.prototype.off=function(e,t){return this.eventEmitter.removeListener(e,t)},t.Index.load=function(e){e.version!==t.version&&t.utils.warn("version mismatch: current "+t.version+" importing "+e.version);var n=new this;n._fields=e.fields,n._ref=e.ref,n.documentStore=t.DocumentStore.load(e.documentStore),n.pipeline=t.Pipeline.load(e.pipeline),n.index={};for(var i in e.index)n.index[i]=t.InvertedIndex.load(e.index[i]);return n},t.Index.prototype.addField=function(e){return this._fields.push(e),this.index[e]=new t.InvertedIndex,this},t.Index.prototype.setRef=function(e){return this._ref=e,this},t.Index.prototype.saveDocument=function(e){return this.documentStore=new t.DocumentStore(e),this},t.Index.prototype.addDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.addDoc(i,e),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));this.documentStore.addFieldLength(i,n,o.length);var r={};o.forEach(function(e){e in r?r[e]+=1:r[e]=1},this);for(var s in r){var u=r[s];u=Math.sqrt(u),this.index[n].addToken(s,{ref:i,tf:u})}},this),n&&this.eventEmitter.emit("add",e,this)}},t.Index.prototype.removeDocByRef=function(e){if(e&&this.documentStore.isDocStored()!==!1&&this.documentStore.hasDoc(e)){var t=this.documentStore.getDoc(e);this.removeDoc(t,!1)}},t.Index.prototype.removeDoc=function(e,n){if(e){var n=void 0===n?!0:n,i=e[this._ref];this.documentStore.hasDoc(i)&&(this.documentStore.removeDoc(i),this._fields.forEach(function(n){var o=this.pipeline.run(t.tokenizer(e[n]));o.forEach(function(e){this.index[n].removeToken(e,i)},this)},this),n&&this.eventEmitter.emit("remove",e,this))}},t.Index.prototype.updateDoc=function(e,t){var t=void 0===t?!0:t;this.removeDocByRef(e[this._ref],!1),this.addDoc(e,!1),t&&this.eventEmitter.emit("update",e,this)},t.Index.prototype.idf=function(e,t){var n="@"+t+"/"+e;if(Object.prototype.hasOwnProperty.call(this._idfCache,n))return this._idfCache[n];var i=this.index[t].getDocFreq(e),o=1+Math.log(this.documentStore.length/(i+1));return this._idfCache[n]=o,o},t.Index.prototype.getFields=function(){return this._fields.slice()},t.Index.prototype.search=function(e,n){if(!e)return[];e="string"==typeof e?{any:e}:JSON.parse(JSON.stringify(e));var i=null;null!=n&&(i=JSON.stringify(n));for(var o=new t.Configuration(i,this.getFields()).get(),r={},s=Object.keys(e),u=0;u0&&t.push(e);for(var i in n)"docs"!==i&&"df"!==i&&this.expandToken(e+i,t,n[i]);return t},t.InvertedIndex.prototype.toJSON=function(){return{root:this.root}},t.Configuration=function(e,n){var e=e||"";if(void 0==n||null==n)throw new Error("fields should not be null");this.config={};var i;try{i=JSON.parse(e),this.buildUserConfig(i,n)}catch(o){t.utils.warn("user configuration parse failed, will use default configuration"),this.buildDefaultConfig(n)}},t.Configuration.prototype.buildDefaultConfig=function(e){this.reset(),e.forEach(function(e){this.config[e]={boost:1,bool:"OR",expand:!1}},this)},t.Configuration.prototype.buildUserConfig=function(e,n){var i="OR",o=!1;if(this.reset(),"bool"in e&&(i=e.bool||i),"expand"in e&&(o=e.expand||o),"fields"in e)for(var r in e.fields)if(n.indexOf(r)>-1){var s=e.fields[r],u=o;void 0!=s.expand&&(u=s.expand),this.config[r]={boost:s.boost||0===s.boost?s.boost:1,bool:s.bool||i,expand:u}}else t.utils.warn("field name in user configuration not found in index instance fields");else this.addAllFields2UserConfig(i,o,n)},t.Configuration.prototype.addAllFields2UserConfig=function(e,t,n){n.forEach(function(n){this.config[n]={boost:1,bool:e,expand:t}},this)},t.Configuration.prototype.get=function(){return this.config},t.Configuration.prototype.reset=function(){this.config={}},lunr.SortedSet=function(){this.length=0,this.elements=[]},lunr.SortedSet.load=function(e){var t=new this;return t.elements=e,t.length=e.length,t},lunr.SortedSet.prototype.add=function(){var e,t;for(e=0;e1;){if(r===e)return o;e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o]}return r===e?o:-1},lunr.SortedSet.prototype.locationFor=function(e){for(var t=0,n=this.elements.length,i=n-t,o=t+Math.floor(i/2),r=this.elements[o];i>1;)e>r&&(t=o),r>e&&(n=o),i=n-t,o=t+Math.floor(i/2),r=this.elements[o];return r>e?o:e>r?o+1:void 0},lunr.SortedSet.prototype.intersect=function(e){for(var t=new lunr.SortedSet,n=0,i=0,o=this.length,r=e.length,s=this.elements,u=e.elements;;){if(n>o-1||i>r-1)break;s[n]!==u[i]?s[n]u[i]&&i++:(t.add(s[n]),n++,i++)}return t},lunr.SortedSet.prototype.clone=function(){var e=new lunr.SortedSet;return e.elements=this.toArray(),e.length=e.elements.length,e},lunr.SortedSet.prototype.union=function(e){var t,n,i;this.length>=e.length?(t=this,n=e):(t=e,n=this),i=t.clone();for(var o=0,r=n.toArray();o

\n"}, "rbx_upload.RobloxClient": {"fullname": "rbx_upload.RobloxClient", "modulename": "rbx_upload", "qualname": "RobloxClient", "kind": "class", "doc": "

\n"}, "rbx_upload.RobloxClient.__init__": {"fullname": "rbx_upload.RobloxClient.__init__", "modulename": "rbx_upload", "qualname": "RobloxClient.__init__", "kind": "function", "doc": "

\n", "signature": "(roblosecurity: str, publisher_user_id: int, proxy: str | None = None)"}, "rbx_upload.RobloxClient.asset_from_id": {"fullname": "rbx_upload.RobloxClient.asset_from_id", "modulename": "rbx_upload", "qualname": "RobloxClient.asset_from_id", "kind": "function", "doc": "

Fetch asset information from Roblox by asset ID.

\n", "signature": "(self, asset_id: int) -> rbx_upload.models.RbxAsset:", "funcdef": "async def"}, "rbx_upload.RobloxClient.fetch_clothing_image": {"fullname": "rbx_upload.RobloxClient.fetch_clothing_image", "modulename": "rbx_upload", "qualname": "RobloxClient.fetch_clothing_image", "kind": "function", "doc": "

Fetch the image data for a clothing asset.

\n", "signature": "(self, asset: rbx_upload.models.ClothingAsset) -> bytes:", "funcdef": "async def"}, "rbx_upload.RobloxClient.upload_clothing_image": {"fullname": "rbx_upload.RobloxClient.upload_clothing_image", "modulename": "rbx_upload", "qualname": "RobloxClient.upload_clothing_image", "kind": "function", "doc": "

Upload a clothing image to Roblox and return the operation result.

\n\n

Args:\n image: Raw PNG bytes of the clothing image.\n name: Display name for the asset.\n description: Description for the asset.\n asset_type: RbxAssetType.SHIRT or RbxAssetType.PANTS.\n group_id: ID of the group to upload the asset to.\n max_attempts: Number of times to poll the operation status. Defaults to 10.\n poll_interval: Seconds to wait between polls. Defaults to 1.0.

\n", "signature": "(\tself,\timage: bytes,\tname: str,\tdescription: str,\tasset_type: rbx_upload.models.RbxAssetType,\tgroup_id: int,\tmax_attempts: int = 10,\tpoll_interval: float = 1.0) -> dict:", "funcdef": "async def"}, "rbx_upload.RobloxClient.batch_upload": {"fullname": "rbx_upload.RobloxClient.batch_upload", "modulename": "rbx_upload", "qualname": "RobloxClient.batch_upload", "kind": "function", "doc": "

Upload multiple clothing images with limited concurrency.

\n\n

Processes items 2 at a time. Continues on failure and reports all\nfailures in the returned BatchResult.

\n\n

Args:\n items: List of BatchUploadItem to upload.\n max_attempts: Passed to each upload_clothing_image call.\n poll_interval: Passed to each upload_clothing_image call.

\n", "signature": "(\tself,\titems: list[rbx_upload.models.BatchUploadItem],\tmax_attempts: int = 10,\tpoll_interval: float = 1.0) -> rbx_upload.models.BatchResult:", "funcdef": "async def"}, "rbx_upload.RobloxClient.onsale_asset": {"fullname": "rbx_upload.RobloxClient.onsale_asset", "modulename": "rbx_upload", "qualname": "RobloxClient.onsale_asset", "kind": "function", "doc": "

Put an asset on sale.

\n", "signature": "(\tself,\tasset_id: int,\tname: str,\tdescription: str,\tgroup_id: int,\tprice: int = 5) -> dict:", "funcdef": "async def"}, "rbx_upload.RobloxClient.close": {"fullname": "rbx_upload.RobloxClient.close", "modulename": "rbx_upload", "qualname": "RobloxClient.close", "kind": "function", "doc": "

Close the underlying HTTP client.

\n", "signature": "(self):", "funcdef": "async def"}, "rbx_upload.RbxError": {"fullname": "rbx_upload.RbxError", "modulename": "rbx_upload", "qualname": "RbxError", "kind": "class", "doc": "

Base exception for all rbx-upload errors.

\n", "bases": "builtins.Exception"}, "rbx_upload.AuthError": {"fullname": "rbx_upload.AuthError", "modulename": "rbx_upload", "qualname": "AuthError", "kind": "class", "doc": "

Raised when authentication fails or the ROBLOSECURITY token is invalid.

\n", "bases": "rbx_upload.models.RbxError"}, "rbx_upload.RateLimitError": {"fullname": "rbx_upload.RateLimitError", "modulename": "rbx_upload", "qualname": "RateLimitError", "kind": "class", "doc": "

Raised when hitting Roblox rate limits (HTTP 429).

\n", "bases": "rbx_upload.models.RbxError"}, "rbx_upload.UploadError": {"fullname": "rbx_upload.UploadError", "modulename": "rbx_upload", "qualname": "UploadError", "kind": "class", "doc": "

Raised when an asset upload fails.

\n", "bases": "rbx_upload.models.RbxError"}, "rbx_upload.AssetNotFoundError": {"fullname": "rbx_upload.AssetNotFoundError", "modulename": "rbx_upload", "qualname": "AssetNotFoundError", "kind": "class", "doc": "

Raised when an asset cannot be found.

\n", "bases": "rbx_upload.models.RbxError"}, "rbx_upload.BatchUploadItem": {"fullname": "rbx_upload.BatchUploadItem", "modulename": "rbx_upload", "qualname": "BatchUploadItem", "kind": "class", "doc": "

\n"}, "rbx_upload.BatchUploadItem.__init__": {"fullname": "rbx_upload.BatchUploadItem.__init__", "modulename": "rbx_upload", "qualname": "BatchUploadItem.__init__", "kind": "function", "doc": "

\n", "signature": "(\timage: bytes,\tname: str,\tasset_type: rbx_upload.models.RbxAssetType,\tgroup_id: int,\tdescription: str = '')"}, "rbx_upload.BatchUploadItem.image": {"fullname": "rbx_upload.BatchUploadItem.image", "modulename": "rbx_upload", "qualname": "BatchUploadItem.image", "kind": "variable", "doc": "

\n", "annotation": ": bytes"}, "rbx_upload.BatchUploadItem.name": {"fullname": "rbx_upload.BatchUploadItem.name", "modulename": "rbx_upload", "qualname": "BatchUploadItem.name", "kind": "variable", "doc": "

\n", "annotation": ": str"}, "rbx_upload.BatchUploadItem.asset_type": {"fullname": "rbx_upload.BatchUploadItem.asset_type", "modulename": "rbx_upload", "qualname": "BatchUploadItem.asset_type", "kind": "variable", "doc": "

\n", "annotation": ": rbx_upload.models.RbxAssetType"}, "rbx_upload.BatchUploadItem.group_id": {"fullname": "rbx_upload.BatchUploadItem.group_id", "modulename": "rbx_upload", "qualname": "BatchUploadItem.group_id", "kind": "variable", "doc": "

\n", "annotation": ": int"}, "rbx_upload.BatchUploadItem.description": {"fullname": "rbx_upload.BatchUploadItem.description", "modulename": "rbx_upload", "qualname": "BatchUploadItem.description", "kind": "variable", "doc": "

\n", "annotation": ": str", "default_value": "''"}, "rbx_upload.BatchResult": {"fullname": "rbx_upload.BatchResult", "modulename": "rbx_upload", "qualname": "BatchResult", "kind": "class", "doc": "

\n"}, "rbx_upload.BatchResult.__init__": {"fullname": "rbx_upload.BatchResult.__init__", "modulename": "rbx_upload", "qualname": "BatchResult.__init__", "kind": "function", "doc": "

\n", "signature": "(\tsucceeded: list[tuple[rbx_upload.models.BatchUploadItem, dict]] = <factory>,\tfailed: list[tuple[rbx_upload.models.BatchUploadItem, Exception]] = <factory>)"}, "rbx_upload.BatchResult.succeeded": {"fullname": "rbx_upload.BatchResult.succeeded", "modulename": "rbx_upload", "qualname": "BatchResult.succeeded", "kind": "variable", "doc": "

\n", "annotation": ": list[tuple[rbx_upload.models.BatchUploadItem, dict]]"}, "rbx_upload.BatchResult.failed": {"fullname": "rbx_upload.BatchResult.failed", "modulename": "rbx_upload", "qualname": "BatchResult.failed", "kind": "variable", "doc": "

\n", "annotation": ": list[tuple[rbx_upload.models.BatchUploadItem, Exception]]"}, "rbx_upload.BatchResult.all_succeeded": {"fullname": "rbx_upload.BatchResult.all_succeeded", "modulename": "rbx_upload", "qualname": "BatchResult.all_succeeded", "kind": "variable", "doc": "

\n", "annotation": ": bool"}, "rbx_upload.RbxAsset": {"fullname": "rbx_upload.RbxAsset", "modulename": "rbx_upload", "qualname": "RbxAsset", "kind": "class", "doc": "

\n"}, "rbx_upload.RbxAsset.__init__": {"fullname": "rbx_upload.RbxAsset.__init__", "modulename": "rbx_upload", "qualname": "RbxAsset.__init__", "kind": "function", "doc": "

\n", "signature": "(\tasset_id: int,\tcreator: rbx_upload.models.RbxCreator,\tname: str,\tdescription: str,\tasset_type: rbx_upload.models.RbxAssetType)"}, "rbx_upload.RbxAsset.asset_id": {"fullname": "rbx_upload.RbxAsset.asset_id", "modulename": "rbx_upload", "qualname": "RbxAsset.asset_id", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxAsset.name": {"fullname": "rbx_upload.RbxAsset.name", "modulename": "rbx_upload", "qualname": "RbxAsset.name", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxAsset.description": {"fullname": "rbx_upload.RbxAsset.description", "modulename": "rbx_upload", "qualname": "RbxAsset.description", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxAsset.creator": {"fullname": "rbx_upload.RbxAsset.creator", "modulename": "rbx_upload", "qualname": "RbxAsset.creator", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxAsset.asset_type": {"fullname": "rbx_upload.RbxAsset.asset_type", "modulename": "rbx_upload", "qualname": "RbxAsset.asset_type", "kind": "variable", "doc": "

\n"}, "rbx_upload.ClothingAsset": {"fullname": "rbx_upload.ClothingAsset", "modulename": "rbx_upload", "qualname": "ClothingAsset", "kind": "class", "doc": "

\n", "bases": "rbx_upload.models.RbxAsset"}, "rbx_upload.ClothingAsset.__init__": {"fullname": "rbx_upload.ClothingAsset.__init__", "modulename": "rbx_upload", "qualname": "ClothingAsset.__init__", "kind": "function", "doc": "

\n", "signature": "(\tasset_id: int,\tcreator: rbx_upload.models.RbxCreator,\tname: str,\tdescription: str,\tasset_type: Literal[<RbxAssetType.SHIRT: 11>, <RbxAssetType.PANTS: 12>])"}, "rbx_upload.RbxCreator": {"fullname": "rbx_upload.RbxCreator", "modulename": "rbx_upload", "qualname": "RbxCreator", "kind": "class", "doc": "

\n"}, "rbx_upload.RbxCreator.__init__": {"fullname": "rbx_upload.RbxCreator.__init__", "modulename": "rbx_upload", "qualname": "RbxCreator.__init__", "kind": "function", "doc": "

\n", "signature": "(\tcreator_id: int,\tusername: str,\tcreator_type: Literal['User', 'Group'])"}, "rbx_upload.RbxCreator.creator_id": {"fullname": "rbx_upload.RbxCreator.creator_id", "modulename": "rbx_upload", "qualname": "RbxCreator.creator_id", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxCreator.username": {"fullname": "rbx_upload.RbxCreator.username", "modulename": "rbx_upload", "qualname": "RbxCreator.username", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxCreator.creator_type": {"fullname": "rbx_upload.RbxCreator.creator_type", "modulename": "rbx_upload", "qualname": "RbxCreator.creator_type", "kind": "variable", "doc": "

\n"}, "rbx_upload.RbxAssetType": {"fullname": "rbx_upload.RbxAssetType", "modulename": "rbx_upload", "qualname": "RbxAssetType", "kind": "class", "doc": "

\n", "bases": "enum.IntEnum"}, "rbx_upload.RbxAssetType.IMAGE": {"fullname": "rbx_upload.RbxAssetType.IMAGE", "modulename": "rbx_upload", "qualname": "RbxAssetType.IMAGE", "kind": "variable", "doc": "

\n", "default_value": "<RbxAssetType.IMAGE: 1>"}, "rbx_upload.RbxAssetType.SHIRT": {"fullname": "rbx_upload.RbxAssetType.SHIRT", "modulename": "rbx_upload", "qualname": "RbxAssetType.SHIRT", "kind": "variable", "doc": "

\n", "default_value": "<RbxAssetType.SHIRT: 11>"}, "rbx_upload.RbxAssetType.PANTS": {"fullname": "rbx_upload.RbxAssetType.PANTS", "modulename": "rbx_upload", "qualname": "RbxAssetType.PANTS", "kind": "variable", "doc": "

\n", "default_value": "<RbxAssetType.PANTS: 12>"}}, "docInfo": {"rbx_upload": {"qualname": 0, "fullname": 2, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RobloxClient": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RobloxClient.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 49, "bases": 0, "doc": 3}, "rbx_upload.RobloxClient.asset_from_id": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 36, "bases": 0, "doc": 11}, "rbx_upload.RobloxClient.fetch_clothing_image": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 35, "bases": 0, "doc": 11}, "rbx_upload.RobloxClient.upload_clothing_image": {"qualname": 4, "fullname": 6, "annotation": 0, "default_value": 0, "signature": 122, "bases": 0, "doc": 79}, "rbx_upload.RobloxClient.batch_upload": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 93, "bases": 0, "doc": 58}, "rbx_upload.RobloxClient.onsale_asset": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 79, "bases": 0, "doc": 8}, "rbx_upload.RobloxClient.close": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 11, "bases": 0, "doc": 8}, "rbx_upload.RbxError": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 10}, "rbx_upload.AuthError": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 13}, "rbx_upload.RateLimitError": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 11}, "rbx_upload.UploadError": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 9}, "rbx_upload.AssetNotFoundError": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 10}, "rbx_upload.BatchUploadItem": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 82, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.image": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.name": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.asset_type": {"qualname": 3, "fullname": 5, "annotation": 5, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.group_id": {"qualname": 3, "fullname": 5, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchUploadItem.description": {"qualname": 2, "fullname": 4, "annotation": 2, "default_value": 4, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchResult": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchResult.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 110, "bases": 0, "doc": 3}, "rbx_upload.BatchResult.succeeded": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchResult.failed": {"qualname": 2, "fullname": 4, "annotation": 6, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.BatchResult.all_succeeded": {"qualname": 3, "fullname": 5, "annotation": 2, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 83, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.asset_id": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.name": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.description": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.creator": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAsset.asset_type": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.ClothingAsset": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 4, "doc": 3}, "rbx_upload.ClothingAsset.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 120, "bases": 0, "doc": 3}, "rbx_upload.RbxCreator": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxCreator.__init__": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 59, "bases": 0, "doc": 3}, "rbx_upload.RbxCreator.creator_id": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxCreator.username": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxCreator.creator_type": {"qualname": 3, "fullname": 5, "annotation": 0, "default_value": 0, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAssetType": {"qualname": 1, "fullname": 3, "annotation": 0, "default_value": 0, "signature": 0, "bases": 2, "doc": 3}, "rbx_upload.RbxAssetType.IMAGE": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 7, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAssetType.SHIRT": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 7, "signature": 0, "bases": 0, "doc": 3}, "rbx_upload.RbxAssetType.PANTS": {"qualname": 2, "fullname": 4, "annotation": 0, "default_value": 7, "signature": 0, "bases": 0, "doc": 3}}, "length": 44, "save": true}, "index": {"qualname": {"root": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 6, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient": {"tf": 1}, "rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 8}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAsset": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}, "rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}}, "df": 7, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxAssetType": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 4}}}}}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxCreator": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.username": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 5}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 6}}}, "d": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}}, "df": 4}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}}, "df": 4}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}}, "df": 5, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 2, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.ClothingAsset": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 3}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.UploadError": {"tf": 1}}, "df": 1}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxCreator.username": {"tf": 1}}, "df": 1}}}}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.BatchUploadItem": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}}, "df": 7}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.BatchResult": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 5}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}}, "df": 2}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 3}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"rbx_upload.BatchUploadItem.group_id": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.BatchUploadItem.description": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}}, "df": 2}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 2}}}}}}}}, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAssetType.SHIRT": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 1}}}}}}}, "fullname": {"root": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 6, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload": {"tf": 1}, "rbx_upload.RobloxClient": {"tf": 1}, "rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}, "rbx_upload.RbxError": {"tf": 1}, "rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}, "rbx_upload.BatchUploadItem": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}, "rbx_upload.BatchResult": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}, "rbx_upload.RbxAsset": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}, "rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}, "rbx_upload.ClothingAsset": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.username": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}, "rbx_upload.RbxAssetType": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 44, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAsset": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}, "rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}}, "df": 7, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxAssetType": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 4}}}}}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxCreator": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.username": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 5}}}}}}}}}, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient": {"tf": 1}, "rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 8}}}}}}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload": {"tf": 1}, "rbx_upload.RobloxClient": {"tf": 1}, "rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}, "rbx_upload.RbxError": {"tf": 1}, "rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}, "rbx_upload.BatchUploadItem": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}, "rbx_upload.BatchResult": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}, "rbx_upload.RbxAsset": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}, "rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}, "rbx_upload.ClothingAsset": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.username": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}, "rbx_upload.RbxAssetType": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 44, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.UploadError": {"tf": 1}}, "df": 1}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxCreator.username": {"tf": 1}}, "df": 1}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 6}}}, "d": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}}, "df": 4}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1}}, "df": 4}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.RbxAsset.asset_id": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}}, "df": 5, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 1}}}, "f": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 1}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 2, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.ClothingAsset": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxAsset.creator": {"tf": 1}, "rbx_upload.RbxCreator.creator_id": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 3}}}}}}}, "b": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.BatchUploadItem": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}}, "df": 7}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.BatchResult": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 5}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}}}}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.RbxAsset.name": {"tf": 1}}, "df": 2}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.RbxAsset.asset_type": {"tf": 1}, "rbx_upload.RbxCreator.creator_type": {"tf": 1}}, "df": 3}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"rbx_upload.BatchUploadItem.group_id": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.BatchUploadItem.description": {"tf": 1}, "rbx_upload.RbxAsset.description": {"tf": 1}}, "df": 2}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 2}}}}}}}}, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAssetType.SHIRT": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 1}}}}}}}, "annotation": {"root": {"docs": {"rbx_upload.BatchUploadItem.image": {"tf": 1}, "rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 8, "b": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.BatchUploadItem.image": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}, "o": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.BatchResult.all_succeeded": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.BatchUploadItem.name": {"tf": 1}, "rbx_upload.BatchUploadItem.description": {"tf": 1}}, "df": 2}}}, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 3}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.BatchUploadItem.asset_type": {"tf": 1}, "rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 3}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.BatchUploadItem.group_id": {"tf": 1}}, "df": 1}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "[": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.BatchResult.succeeded": {"tf": 1}, "rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 2}}}}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.BatchResult.succeeded": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.BatchResult.failed": {"tf": 1}}, "df": 1}}}}}}}}}}}, "default_value": {"root": {"1": {"1": {"docs": {"rbx_upload.RbxAssetType.SHIRT": {"tf": 1}}, "df": 1}, "2": {"docs": {"rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 1}, "docs": {"rbx_upload.RbxAssetType.IMAGE": {"tf": 1}}, "df": 1}, "docs": {"rbx_upload.BatchUploadItem.description": {"tf": 1.4142135623730951}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1.4142135623730951}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1.4142135623730951}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1.4142135623730951}}, "df": 4, "x": {"2": {"7": {"docs": {"rbx_upload.BatchUploadItem.description": {"tf": 1.4142135623730951}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 3}}, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 3}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxAssetType.IMAGE": {"tf": 1}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAssetType.IMAGE": {"tf": 1}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 3}}, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RbxAssetType.SHIRT": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RbxAssetType.PANTS": {"tf": 1}}, "df": 1}}}}}}}, "signature": {"root": {"0": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}, "1": {"0": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}, "1": {"docs": {"rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 1}, "2": {"docs": {"rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 1}, "docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}, "3": {"9": {"docs": {"rbx_upload.BatchUploadItem.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxCreator.__init__": {"tf": 2}}, "df": 2}, "docs": {}, "df": 0}, "5": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}, "docs": {"rbx_upload.RobloxClient.__init__": {"tf": 6.244997998398398}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 5.291502622129181}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 5.291502622129181}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 9.797958971132712}, "rbx_upload.RobloxClient.batch_upload": {"tf": 8.54400374531753}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 8}, "rbx_upload.RobloxClient.close": {"tf": 3.1622776601683795}, "rbx_upload.BatchUploadItem.__init__": {"tf": 8.06225774829855}, "rbx_upload.BatchResult.__init__": {"tf": 9.38083151964686}, "rbx_upload.RbxAsset.__init__": {"tf": 8.06225774829855}, "rbx_upload.ClothingAsset.__init__": {"tf": 9.746794344808963}, "rbx_upload.RbxCreator.__init__": {"tf": 6.708203932499369}}, "df": 12, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 8, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.4142135623730951}}, "df": 4}}}}}}}}}, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 2}}}}}}}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1.4142135623730951}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 7}}, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "f": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 6}}}, "u": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 1}}}}}, "p": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}}, "df": 1}}}}}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 1}}}}}, "u": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 2, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 1}}}}}}}, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 8}}}}}}, "i": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1.4142135623730951}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 8}, "n": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 9, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}}, "df": 2}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.__init__": {"tf": 1.4142135623730951}}, "df": 1}}}, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 5}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.4142135623730951}}, "df": 7}}}}, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}, "rbx_upload.RbxAsset.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 8}}}}}, "a": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1.4142135623730951}}, "df": 3}}}}}}}, "b": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}}, "df": 3}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}}, "df": 2}}}}}}}}}}, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}}}}, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}}, "df": 5}}}}}}}}}}, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1}}, "df": 3}}}}, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxAsset.__init__": {"tf": 1}, "rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 5}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 4}}}}, "t": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.4142135623730951}}, "df": 2}}, "f": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}}, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1}}, "df": 1}}}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}}, "df": 2}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.ClothingAsset.__init__": {"tf": 1}, "rbx_upload.RbxCreator.__init__": {"tf": 1}}, "df": 2}}}}}}, "t": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1.4142135623730951}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.4142135623730951}}, "df": 2}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.BatchResult.__init__": {"tf": 1}}, "df": 1}}}}}}}}}}}, "bases": {"root": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}}}}, "e": {"docs": {}, "df": 0, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}}}}, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RbxAssetType": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}, "rbx_upload.ClothingAsset": {"tf": 1}}, "df": 5, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 4}}}}}, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.ClothingAsset": {"tf": 1}}, "df": 1}}}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}, "rbx_upload.ClothingAsset": {"tf": 1}}, "df": 5}}}}}}, "m": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}, "rbx_upload.ClothingAsset": {"tf": 1}}, "df": 5}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RbxAssetType": {"tf": 1}}, "df": 1}}}}}}}}}, "doc": {"root": {"0": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}, "1": {"0": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}, "docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}, "2": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}, "4": {"2": {"9": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}, "docs": {}, "df": 0}, "docs": {}, "df": 0}, "docs": {"rbx_upload": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.__init__": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.asset_from_id": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 2.449489742783178}, "rbx_upload.RobloxClient.batch_upload": {"tf": 3}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.close": {"tf": 1.7320508075688772}, "rbx_upload.RbxError": {"tf": 1.7320508075688772}, "rbx_upload.AuthError": {"tf": 1.7320508075688772}, "rbx_upload.RateLimitError": {"tf": 1.7320508075688772}, "rbx_upload.UploadError": {"tf": 1.7320508075688772}, "rbx_upload.AssetNotFoundError": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.__init__": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.image": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.name": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.asset_type": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.group_id": {"tf": 1.7320508075688772}, "rbx_upload.BatchUploadItem.description": {"tf": 1.7320508075688772}, "rbx_upload.BatchResult": {"tf": 1.7320508075688772}, "rbx_upload.BatchResult.__init__": {"tf": 1.7320508075688772}, "rbx_upload.BatchResult.succeeded": {"tf": 1.7320508075688772}, "rbx_upload.BatchResult.failed": {"tf": 1.7320508075688772}, "rbx_upload.BatchResult.all_succeeded": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.__init__": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.asset_id": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.name": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.description": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.creator": {"tf": 1.7320508075688772}, "rbx_upload.RbxAsset.asset_type": {"tf": 1.7320508075688772}, "rbx_upload.ClothingAsset": {"tf": 1.7320508075688772}, "rbx_upload.ClothingAsset.__init__": {"tf": 1.7320508075688772}, "rbx_upload.RbxCreator": {"tf": 1.7320508075688772}, "rbx_upload.RbxCreator.__init__": {"tf": 1.7320508075688772}, "rbx_upload.RbxCreator.creator_id": {"tf": 1.7320508075688772}, "rbx_upload.RbxCreator.username": {"tf": 1.7320508075688772}, "rbx_upload.RbxCreator.creator_type": {"tf": 1.7320508075688772}, "rbx_upload.RbxAssetType": {"tf": 1.7320508075688772}, "rbx_upload.RbxAssetType.IMAGE": {"tf": 1.7320508075688772}, "rbx_upload.RbxAssetType.SHIRT": {"tf": 1.7320508075688772}, "rbx_upload.RbxAssetType.PANTS": {"tf": 1.7320508075688772}}, "df": 44, "f": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}}, "df": 2}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1}}}, "o": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RbxError": {"tf": 1}}, "df": 3}, "u": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 1}}}}, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}}, "df": 2}}}}}, "a": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 3, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 2}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 6}}}}, "n": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 3, "d": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}, "r": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}, "t": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}}}}}, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RbxError": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}}}}}}}}}}}, "i": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "f": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1}}}}}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}}}}}, "v": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}}}, "d": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 2}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "g": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}}, "df": 3, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}}, "df": 1}}}}, "s": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}}, "df": 3}, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}}}}}}}}}, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}, "p": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "w": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 4}}}}, "t": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}}}, "b": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1, "a": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}}}}, "b": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.RobloxClient.asset_from_id": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {"rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 1, "t": {"docs": {}, "df": 0, "w": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "m": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 2.6457513110645907}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.close": {"tf": 1}, "rbx_upload.AuthError": {"tf": 1}}, "df": 5}}, "o": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 2.6457513110645907}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.7320508075688772}}, "df": 2, "k": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.AuthError": {"tf": 1}}, "df": 1}}}}, "y": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}, "d": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "a": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}}, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}}, "f": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "c": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RobloxClient.fetch_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1.7320508075688772}}, "df": 3}}}}}, "s": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "y": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}}, "df": 1}}, "n": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 1}}}}}}, "u": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.batch_upload": {"tf": 2}, "rbx_upload.RbxError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}}, "df": 4}}}}}, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "y": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}}, "df": 1}}}}}}}}}}, "o": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}}}}}}, "f": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.7320508075688772}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}, "r": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.AuthError": {"tf": 1}}, "df": 2}, "n": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}, "rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 2}}, "p": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}, "a": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "o": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "l": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "s": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}, "u": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}}}, "n": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}, "u": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "b": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "r": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}}, "s": {"docs": {}, "df": 0, "h": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}, "t": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}, "e": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "d": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}}}}, "a": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.onsale_asset": {"tf": 1}}, "df": 1}}}}, "g": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "u": {"docs": {}, "df": 0, "p": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1.4142135623730951}}, "df": 1}}}}}, "m": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "x": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}, "rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 2}}, "u": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "l": {"docs": {}, "df": 0, "e": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}}}}}, "w": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.upload_clothing_image": {"tf": 1}}, "df": 1}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}, "h": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.AuthError": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}, "rbx_upload.UploadError": {"tf": 1}, "rbx_upload.AssetNotFoundError": {"tf": 1}}, "df": 4}}}}, "l": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "m": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "d": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}, "s": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}}}}, "s": {"docs": {}, "df": 0, "t": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1}}, "df": 1}}}}, "e": {"docs": {}, "df": 0, "a": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "h": {"docs": {"rbx_upload.RobloxClient.batch_upload": {"tf": 1.4142135623730951}}, "df": 1}}}, "x": {"docs": {}, "df": 0, "c": {"docs": {}, "df": 0, "e": {"docs": {}, "df": 0, "p": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "n": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}}}}, "r": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "o": {"docs": {}, "df": 0, "r": {"docs": {}, "df": 0, "s": {"docs": {"rbx_upload.RbxError": {"tf": 1}}, "df": 1}}}}}}, "h": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "p": {"docs": {"rbx_upload.RobloxClient.close": {"tf": 1}, "rbx_upload.RateLimitError": {"tf": 1}}, "df": 2}}}, "i": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "t": {"docs": {}, "df": 0, "i": {"docs": {}, "df": 0, "n": {"docs": {}, "df": 0, "g": {"docs": {"rbx_upload.RateLimitError": {"tf": 1}}, "df": 1}}}}}}}}}}, "pipeline": ["trimmer"], "_isPrebuiltIndex": true}; + + // mirrored in build-search-index.js (part 1) + // Also split on html tags. this is a cheap heuristic, but good enough. + elasticlunr.tokenizer.setSeperator(/[\s\-.;&_'"=,()]+|<[^>]*>/); + + let searchIndex; + if (docs._isPrebuiltIndex) { + console.info("using precompiled search index"); + searchIndex = elasticlunr.Index.load(docs); + } else { + console.time("building search index"); + // mirrored in build-search-index.js (part 2) + searchIndex = elasticlunr(function () { + this.pipeline.remove(elasticlunr.stemmer); + this.pipeline.remove(elasticlunr.stopWordFilter); + this.addField("qualname"); + this.addField("fullname"); + this.addField("annotation"); + this.addField("default_value"); + this.addField("signature"); + this.addField("bases"); + this.addField("doc"); + this.setRef("fullname"); + }); + for (let doc of docs) { + searchIndex.addDoc(doc); + } + console.timeEnd("building search index"); + } + + return (term) => searchIndex.search(term, { + fields: { + qualname: {boost: 4}, + fullname: {boost: 2}, + annotation: {boost: 2}, + default_value: {boost: 2}, + signature: {boost: 2}, + bases: {boost: 2}, + doc: {boost: 1}, + }, + expand: true + }); +})(); \ No newline at end of file