openblox
Version:
Roblox API Wrapper For Both Classic And OpenCloud APIs.
103 lines (102 loc) • 4.68 kB
JavaScript
var __defProp = Object.defineProperty;
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
var __getOwnPropNames = Object.getOwnPropertyNames;
var __hasOwnProp = Object.prototype.hasOwnProperty;
var __export = (target, all) => {
for (var name in all)
__defProp(target, name, { get: all[name], enumerable: true });
};
var __copyProps = (to, from, except, desc) => {
if (from && typeof from === "object" || typeof from === "function") {
for (let key of __getOwnPropNames(from))
if (!__hasOwnProp.call(to, key) && key !== except)
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
}
return to;
};
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
var creatorStore_exports = {};
__export(creatorStore_exports, {
createCreatorStoreProduct: () => createCreatorStoreProduct,
creatorStoreProductInfo: () => creatorStoreProductInfo,
updateCreatorStoreProduct: () => updateCreatorStoreProduct
});
module.exports = __toCommonJS(creatorStore_exports);
var import_apiGroup = require("../../apiGroup");
const { createApiMethod } = (0, import_apiGroup.createApiGroup)({ name: "CreatorStore", baseUrl: "https://apis.roblox.com/cloud" });
const creatorStoreProductInfo = createApiMethod(async ({ modelAssetId, pluginAssetId, audioAssetId, decalAssetId, meshPartAssetId, videoAssetId, fontFamilyAssetId }) => {
const [productType, productId] = modelAssetId ? ["PRODUCT_TYPE_MODEL", modelAssetId] : pluginAssetId ? ["PRODUCT_TYPE_PLUGIN", pluginAssetId] : audioAssetId ? ["PRODUCT_TYPE_AUDIO", audioAssetId] : decalAssetId ? ["PRODUCT_TYPE_DECAL", decalAssetId] : meshPartAssetId ? ["PRODUCT_TYPE_MESH_PART", meshPartAssetId] : videoAssetId ? ["PRODUCT_TYPE_VIDEO", videoAssetId] : fontFamilyAssetId ? ["PRODUCT_TYPE_FONT_FAMILY", fontFamilyAssetId] : ["PRODUCT_TYPE_INVALID", void 0];
return {
path: `/v2/creator-store-products/CreatorMarketplaceAsset-${productType}-${productId}`,
method: "GET",
name: "creatorStoreProductInfo"
};
});
const createCreatorStoreProduct = createApiMethod(async ({
displayName,
description,
basePrice,
purchasePrice,
published,
purchasable,
modelAssetId,
pluginAssetId,
audioAssetId,
decalAssetId,
meshPartAssetId,
videoAssetId,
fontFamilyAssetId
}) => {
const productData = modelAssetId ? { productType: "PRODUCT_TYPE_MODEL", modelAssetId: modelAssetId.toString() } : pluginAssetId ? { productType: "PRODUCT_TYPE_PLUGIN", pluginAssetId: pluginAssetId.toString() } : audioAssetId ? { productType: "PRODUCT_TYPE_AUDIO", audioAssetId: audioAssetId.toString() } : decalAssetId ? { productType: "PRODUCT_TYPE_DECAL", decalAssetId: decalAssetId.toString() } : meshPartAssetId ? { productType: "PRODUCT_TYPE_MESH_PART", meshPartAssetId: meshPartAssetId.toString() } : videoAssetId ? { productType: "PRODUCT_TYPE_VIDEO", videoAssetId: videoAssetId.toString() } : fontFamilyAssetId ? { productType: "PRODUCT_TYPE_FONT_FAMILY", fontFamilyAssetId: fontFamilyAssetId.toString() } : { productType: "PRODUCT_TYPE_INVALID" };
return {
path: `/v2/creator-store-products`,
method: "POST",
name: "createCreatorStoreProduct",
body: {
displayName,
description,
basePrice,
purchasePrice: purchasePrice ?? basePrice,
published,
purchasable,
...productData
}
};
});
const updateCreatorStoreProduct = createApiMethod(async ({
displayName,
description,
basePrice,
purchasePrice,
published,
purchasable,
modelAssetId,
pluginAssetId,
audioAssetId,
decalAssetId,
meshPartAssetId,
videoAssetId,
fontFamilyAssetId
}) => {
const [productType, productId] = modelAssetId ? ["PRODUCT_TYPE_MODEL", modelAssetId] : pluginAssetId ? ["PRODUCT_TYPE_PLUGIN", pluginAssetId] : audioAssetId ? ["PRODUCT_TYPE_AUDIO", audioAssetId] : decalAssetId ? ["PRODUCT_TYPE_DECAL", decalAssetId] : meshPartAssetId ? ["PRODUCT_TYPE_MESH_PART", meshPartAssetId] : videoAssetId ? ["PRODUCT_TYPE_VIDEO", videoAssetId] : fontFamilyAssetId ? ["PRODUCT_TYPE_FONT_FAMILY", fontFamilyAssetId] : ["PRODUCT_TYPE_INVALID", void 0];
return {
path: `/v2/creator-store-products/CreatorMarketplaceAsset-${productType}-${productId}`,
method: "PATCH",
name: "updateCreatorStoreProduct",
body: {
displayName,
description,
basePrice,
purchasePrice: purchasePrice ?? basePrice,
published,
purchasable
}
};
});
// Annotate the CommonJS export names for ESM import in node:
0 && (module.exports = {
createCreatorStoreProduct,
creatorStoreProductInfo,
updateCreatorStoreProduct
});
;