UNPKG

openblox

Version:

Roblox API Wrapper For Both Classic And OpenCloud APIs.

125 lines (124 loc) 5.55 kB
"use strict"; 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 memoryStores_exports = {}; __export(memoryStores_exports, { createSortedMapItem: () => createSortedMapItem, deleteSortedMapItem: () => deleteSortedMapItem, dequeueItems: () => dequeueItems, enqueueItem: () => enqueueItem, flushAllQueues: () => flushAllQueues, listSortedMapItems: () => listSortedMapItems, readQueueItems: () => readQueueItems, sortedMapItem: () => sortedMapItem, updateSortedMapItem: () => updateSortedMapItem }); module.exports = __toCommonJS(memoryStores_exports); var import_apiGroup = require("../../apiGroup"); var import_utils = require("../../../utils/utils"); const { createApiMethod } = (0, import_apiGroup.createApiGroup)({ name: "MemoryStore", baseUrl: "https://apis.roblox.com/cloud" }); const sortedMapItem = createApiMethod(async ({ universeId, sortedMap, itemId }) => ({ path: `/v2/universes/${universeId}/memory-store/sorted-maps/${sortedMap}/items/${itemId}`, method: "GET", name: "sortedMapItem", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => obj.expireTime = new Date(obj.expireTime)) })); const listSortedMapItems = createApiMethod(async ({ universeId, sortedMap, maxPageSize, orderBy, filter, cursor }) => ({ path: `/v2/universes/${universeId}/memory-store/sorted-maps/${sortedMap}/items`, method: "GET", searchParams: { maxPageSize, orderBy, filter, pageToken: cursor }, name: "listSortedMapItems", formatRawDataFn: ({ items }) => (0, import_utils.cloneAndMutateObject)(items, (obj) => { obj.forEach((value) => { value.expireTime = new Date(value.expireTime); }); }), getCursorsFn: ({ nextPageToken }) => [void 0, nextPageToken] })); const createSortedMapItem = createApiMethod(async ({ universeId, sortedMap, item }) => ({ path: `/v2/universes/${universeId}/memory-store/sorted-maps/${sortedMap}/items`, method: "POST", body: { Id: item.id, Value: item.value, Ttl: item.ttl, NumericSortKey: item.numericSortKey, StringSortKey: item.stringSortKey }, name: "createSortedMapItem", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => obj.expireTime = new Date(obj.expireTime)) })); const updateSortedMapItem = createApiMethod(async ({ universeId, sortedMap, itemId, updatedItemData, allowMissing }) => ({ path: `/v2/universes/${universeId}/memory-store/sorted-maps/${sortedMap}/items/${itemId}`, method: "PATCH", searchParams: { allowMissing }, body: { Value: updatedItemData.value, Ttl: updatedItemData.ttl, NumericSortKey: updatedItemData.numericSortKey, StringSortKey: updatedItemData.stringSortKey }, name: "updateSortedMapItem", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => obj.expireTime = new Date(obj.expireTime)) })); const deleteSortedMapItem = createApiMethod(async ({ universeId, sortedMap, itemId, etag }) => ({ path: `/v2/universes/${universeId}/memory-store/sorted-maps/${sortedMap}/items/${itemId}`, method: "DELETE", searchParams: { etag }, name: "deleteSortedMapItem" })); const enqueueItem = createApiMethod(async ({ universeId, queue, item }) => ({ path: `/v2/universes/${universeId}/memory-store/queues/${queue}/items`, method: "POST", body: { data: { name: item.name, value: item.value }, ttl: item.ttl, priority: item.priority }, name: "enqueueItem", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => obj.expireTime = new Date(obj.expireTime)) })); const readQueueItems = createApiMethod(async ({ universeId, queue, limit, allOrNothing, invisibilityTimeoutSeconds }) => ({ path: `/v2/universes/${universeId}/memory-store/queues/${queue}/items:read`, method: "GET", searchParams: { count: limit, allOrNothing, invisibilityTimeoutSeconds }, name: "readQueueItems", formatRawDataFn: ({ data, id }) => ({ items: data, readId: id }) })); const dequeueItems = createApiMethod(async ({ universeId, queue, readId }) => ({ path: `/v2/universes/${universeId}/memory-store/queues/${queue}/items:discard`, method: "POST", searchParams: { readId }, name: "dequeueItems" })); const flushAllQueues = createApiMethod(async ({ universeId }) => ({ path: `/v2/universes/${universeId}/memory-store:flush`, method: "POST", name: "flushQueue", pathToPoll: ({ path }) => `/universes/${universeId}/memory-store/operations/${path.split("/")[5]}`, formatRawDataFn: ({ path, done }) => ({ path, done: done ? true : false }) })); // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { createSortedMapItem, deleteSortedMapItem, dequeueItems, enqueueItem, flushAllQueues, listSortedMapItems, readQueueItems, sortedMapItem, updateSortedMapItem });