UNPKG

openblox

Version:

Roblox API Wrapper For Both Classic And OpenCloud APIs.

609 lines (608 loc) 25.7 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 groups_exports = {}; __export(groups_exports, { acceptGroupJoinRequest: () => acceptGroupJoinRequest, acceptGroupRelationshipRequest: () => acceptGroupRelationshipRequest, addGroupSocialLink: () => addGroupSocialLink, allGroupRolesForUser_V1: () => allGroupRolesForUser_V1, allGroupRolesForUser_v2: () => allGroupRolesForUser_v2, authenticatedUserGroupMembershipInfo: () => authenticatedUserGroupMembershipInfo, authenticatedUserPendingGroups: () => authenticatedUserPendingGroups, authenticatedUserRemovePrimaryGroup: () => authenticatedUserRemovePrimaryGroup, authenticatedUserSetPrimaryGroup: () => authenticatedUserSetPrimaryGroup, authenticatedUserSubscribeToGroupWallNotificationEvents: () => authenticatedUserSubscribeToGroupWallNotificationEvents, batchAcceptGroupJoinRequests: () => batchAcceptGroupJoinRequests, batchAcceptGroupRelationshipRequests: () => batchAcceptGroupRelationshipRequests, batchDeclineGroupJoinRequests: () => batchDeclineGroupJoinRequests, batchDeclineGroupRelationshipRequests: () => batchDeclineGroupRelationshipRequests, declineGroupJoinRequest: () => declineGroupJoinRequest, declineGroupRelationshipRequest: () => declineGroupRelationshipRequest, featuredEvent: () => featuredEvent, groupAuditLogs: () => groupAuditLogs, groupGuestRolePermissions: () => groupGuestRolePermissions, groupInfo: () => groupInfo, groupJoinRequestInfo: () => groupJoinRequestInfo, groupJoinRequests: () => groupJoinRequests, groupLookupSearch: () => groupLookupSearch, groupMembers: () => groupMembers, groupMembersWithRole: () => groupMembersWithRole, groupNameHistory: () => groupNameHistory, groupPayoutRestrictionsInfo: () => groupPayoutRestrictionsInfo, groupPayoutsInfo: () => groupPayoutsInfo, groupPermissionsForAllRoles: () => groupPermissionsForAllRoles, groupPermissionsForRole: () => groupPermissionsForRole, groupRelationshipRequests: () => groupRelationshipRequests, groupRelationships: () => groupRelationships, groupRoles: () => groupRoles, groupRolesFromIds: () => groupRolesFromIds, groupSearch: () => groupSearch, groupSearchMetadata: () => groupSearchMetadata, groupSettings: () => groupSettings, groupSocialLinks: () => groupSocialLinks, groupWallPosts_V1: () => groupWallPosts_V1, groupWallPosts_V2: () => groupWallPosts_V2, groupsConfigMetadata: () => groupsConfigMetadata, groupsInfo: () => groupsInfo, groupsMetadata: () => groupsMetadata, groupsPolicyInfo: () => groupsPolicyInfo, groupsThatUsersFriendsAreIn: () => groupsThatUsersFriendsAreIn, primaryGroupForUser: () => primaryGroupForUser, removeAllGroupWallPostsMadeByUser: () => removeAllGroupWallPostsMadeByUser, removeFeaturedEvent: () => removeFeaturedEvent, removeGroupMember: () => removeGroupMember, removeGroupRelationship: () => removeGroupRelationship, removeGroupSocialLink: () => removeGroupSocialLink, removeGroupWallPost: () => removeGroupWallPost, requestGroupRelationship: () => requestGroupRelationship, setFeaturedEvent: () => setFeaturedEvent, setGroupDescription: () => setGroupDescription, setGroupIcon: () => setGroupIcon, setGroupRolePermissions: () => setGroupRolePermissions, setGroupSettings: () => setGroupSettings, setGroupShout: () => setGroupShout, updateGroupMemberRole: () => updateGroupMemberRole, updateGroupRoleSet: () => updateGroupRoleSet, updateGroupSocialLink: () => updateGroupSocialLink }); module.exports = __toCommonJS(groups_exports); var import_apiGroup = require("../../apiGroup"); var import_utils = require("../../../utils/utils"); var import_file = require("../../../file"); const { createApiMethod } = (0, import_apiGroup.createApiGroup)({ name: "ClassicGroups", baseUrl: "https://groups.roblox.com" }); const featuredEvent = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/featured-content/event`, searchParams: { groupId }, name: `featuredEvent`, formatRawDataFn: (data) => data ? data.contentId : null })); const setFeaturedEvent = createApiMethod(async ({ groupId, eventId }) => ({ method: "POST", path: `/v1/featured-content/event`, searchParams: { groupId, eventId }, name: `setFeaturedEvent`, formatRawDataFn: ({ contentId }) => contentId })); const removeFeaturedEvent = createApiMethod(async ({ groupId, eventId }) => ({ method: "DELETE", path: `/v1/featured-content/event`, searchParams: { groupId, eventId }, name: `removeFeaturedEvent`, formatRawDataFn: (rawData) => rawData === "" })); const groupInfo = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}`, name: "universeIdFromPlaceId", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { if (!obj?.shout) return; obj.shout.created = new Date(obj.shout.created); obj.shout.updated = new Date(obj.shout.updated); }) })); const groupAuditLogs = createApiMethod(async ({ groupId, actionType, userId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/audit-log`, searchParams: { actionType, userId, limit, sortOrder, cursor }, name: "groupAuditLog", formatRawDataFn: ({ data }) => { let formattedData = (0, import_utils.toCamel)(data); formattedData.forEach((log) => { log.actionType = log.actionType.replaceAll(/ +/g, ""); }); return formattedData; } })); const groupNameHistory = createApiMethod(async ({ groupId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/name-history`, searchParams: { limit, sortOrder, cursor }, name: "groupNameHistory", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => { obj.forEach((name) => { name.created = new Date(name.created); }); }) })); const groupSettings = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/settings`, name: "groupSettings" })); const setGroupSettings = createApiMethod(async ({ groupId, newSettings }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/settings`, body: newSettings, name: "setGroupSettings", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupsConfigMetadata = createApiMethod(async () => ({ method: "GET", path: `/v1/groups/configuration/metadata`, name: "groupsConfigMetadata" })); const groupsMetadata = createApiMethod(async () => ({ method: "GET", path: `/v1/groups/metadata`, name: "groupsMetadata" })); const groupsPolicyInfo = createApiMethod(async ({ groupIds }) => ({ method: "POST", path: `/v1/groups/policies`, body: { groupIds }, name: "groupsPolicyInfo", formatRawDataFn: ({ groups }) => (0, import_utils.createObjectMapByKeyWithMiddleware)(groups, "groupId", ({ groupId, ...rest }) => ({ ...rest })) })); const setGroupDescription = createApiMethod(async ({ groupId, newDescription }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/description`, body: { description: newDescription }, name: "setGroupDescription", formatRawDataFn: ({ newDescription: newDescription2 }) => newDescription2 })); const setGroupShout = createApiMethod(async ({ groupId, newShout }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/status`, body: { message: newShout }, name: "setGroupShout", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { obj.created = new Date(obj.created); obj.updated = new Date(obj.updated); }) })); const setGroupIcon = createApiMethod(async ({ groupId, newIcon }) => ({ method: "PATCH", path: `/v1/groups/icon`, searchParams: { groupId }, formData: (0, import_utils.formDataBuilder)().append("Files", typeof newIcon == "string" ? new File([new Blob([await (0, import_file.readFile)(newIcon)])], "Files") : newIcon), name: "setGroupIcon", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const batchDeclineGroupJoinRequests = createApiMethod(async ({ groupId, userIds }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/join-requests`, body: { UserIds: userIds }, name: "batchDeclineGroupJoinRequests", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupJoinRequests = createApiMethod(async ({ groupId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/join-requests`, searchParams: { limit, sortOrder, cursor }, name: "groupJoinRequests", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => obj.forEach((request) => request.created = new Date(request.created))) })); const batchAcceptGroupJoinRequests = createApiMethod(async ({ groupId, userIds }) => ({ method: "POST", path: `/v1/groups/${groupId}/join-requests`, body: { UserIds: userIds }, name: "batchAcceptGroupJoinRequests", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const declineGroupJoinRequest = createApiMethod(async ({ groupId, userId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/join-requests/users/${userId}`, name: "declineGroupJoinRequest", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupJoinRequestInfo = createApiMethod(async ({ groupId, userId }) => ({ method: "GET", path: `/v1/groups/${groupId}/join-requests/users/${userId}`, name: "groupJoinRequestInfo", formatRawDataFn: (rawData) => !Object.keys(rawData) ? {} : (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { obj.created = new Date(obj.created); }) })); const acceptGroupJoinRequest = createApiMethod(async ({ groupId, userId }) => ({ method: "POST", path: `/v1/groups/${groupId}/join-requests/users/${userId}`, name: "acceptGroupJoinRequest", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const authenticatedUserGroupMembershipInfo = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/membership`, name: "authenticatedUserGroupMembershipInfo" })); const groupRoles = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/roles`, name: "groupRoles", formatRawDataFn: ({ roles }) => roles })); const groupMembersWithRole = createApiMethod(async ({ groupId, roleSetId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/roles/${roleSetId}/users`, searchParams: { limit, sortOrder, cursor }, name: "groupMembersWithRole", formatRawDataFn: ({ data }) => data })); const groupMembers = createApiMethod(async ({ groupId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/users`, searchParams: { limit, sortOrder, cursor }, name: "groupMembers", formatRawDataFn: ({ data }) => data })); const authenticatedUserPendingGroups = createApiMethod(async () => ({ method: "GET", path: `/v1/user/groups/pending`, name: "authenticatedUserPendingGroups", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => obj.forEach((group) => { if (!group.shout) return; group.shout.created = new Date(group.shout.created); group.shout.updated = new Date(group.shout.updated); })) })); const groupsThatUsersFriendsAreIn = createApiMethod(async ({ userId }) => ({ method: "GET", path: `/v1/users/${userId}/friends/groups/roles`, name: "groupsThatUsersFriendsAreIn", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => obj.forEach((user) => { user.groups.forEach((group) => { if (!group.group.shout) return; group.group.shout.created = new Date(group.group.shout.created); group.group.shout.updated = new Date(group.group.shout.updated); }); })) })); const allGroupRolesForUser_V1 = createApiMethod(async ({ userId }) => ({ method: "GET", path: `/v1/users/${userId}/groups/roles`, name: "allGroupRolesForUser_V1", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => obj.forEach((group) => { if (!group.group.shout) return; group.group.shout.created = new Date(group.group.shout.created); group.group.shout.updated = new Date(group.group.shout.updated); })) })); const removeGroupMember = createApiMethod(async ({ groupId, userId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/users/${userId}`, name: "removeGroupMember", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const updateGroupMemberRole = createApiMethod(async ({ groupId, userId, roleId }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/users/${userId}`, body: { roleId }, name: "updateGroupMemberRole", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupPayoutRestrictionsInfo = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/payout-restriction`, name: "groupPayoutRestrictionsInfo" })); const groupPayoutsInfo = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/payouts`, name: "groupPayoutsInfo", formatRawDataFn: ({ data }) => data })); const groupRelationships = createApiMethod(async ({ groupId, groupRelationshipType, maxRows = 10, startRowIndex = 0 }) => ({ method: "GET", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}`, searchParams: { StartRowIndex: startRowIndex, MaxRows: maxRows }, name: "groupRelationships", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { obj.relatedGroups.forEach((group) => { if (!group.shout) return; group.shout.created = new Date(group.shout.created); group.shout.updated = new Date(group.shout.updated); }); }), getCursorsFn: ({ nextRowIndex }) => [null, nextRowIndex] })); const batchDeclineGroupRelationshipRequests = createApiMethod(async ({ groupId, groupRelationshipType, groupIds }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/requests`, body: { groupIds }, name: "batchDeclineGroupRelationshipRequests", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupRelationshipRequests = createApiMethod(async ({ groupId, groupRelationshipType, maxRows = 10, startRowIndex = 0 }) => ({ method: "GET", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/requests`, searchParams: { StartRowIndex: startRowIndex, MaxRows: maxRows }, name: "groupRelationshipRequests", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { obj.relatedGroups.forEach((group) => { if (!group.shout) return; group.shout.created = new Date(group.shout.created); group.shout.updated = new Date(group.shout.updated); }); }), getCursorsFn: ({ nextRowIndex }) => [null, nextRowIndex] })); const batchAcceptGroupRelationshipRequests = createApiMethod(async ({ groupId, groupRelationshipType, groupIds }) => ({ method: "POST", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/requests`, body: { groupIds }, name: "batchDeclineGroupRelationshipRequests", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const removeGroupRelationship = createApiMethod(async ({ groupId, groupRelationshipType, relatedGroupId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/${relatedGroupId}`, name: "removeGroupRelationship", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const requestGroupRelationship = createApiMethod(async ({ groupId, groupRelationshipType, relatedGroupId }) => ({ method: "POST", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/${relatedGroupId}`, name: "requestGroupRelationship", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const declineGroupRelationshipRequest = createApiMethod(async ({ groupId, groupRelationshipType, relatedGroupId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/requests/${relatedGroupId}`, name: "declineGroupRelationshipRequest", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const acceptGroupRelationshipRequest = createApiMethod(async ({ groupId, groupRelationshipType, relatedGroupId }) => ({ method: "POST", path: `/v1/groups/${groupId}/relationships/${groupRelationshipType}/requests/${relatedGroupId}`, name: "acceptGroupRelationshipRequest", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupPermissionsForRole = createApiMethod(async ({ groupId, roleSetId }) => ({ method: "GET", path: `/v1/groups/${groupId}/roles/${roleSetId}/permissions`, name: "groupPermissionsForRole" })); const setGroupRolePermissions = createApiMethod(async ({ groupId, roleSetId, permissions }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/roles/${roleSetId}/permissions`, body: { permissions: (0, import_utils.toPascal)(permissions) }, name: "setGroupRolePermissions", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupGuestRolePermissions = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/roles/guest/permissions`, name: "groupGuestRolePermissions" })); const groupPermissionsForAllRoles = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/roles/permissions`, name: "groupGuestRolePermissions", formatRawDataFn: ({ data }) => data })); const groupSocialLinks = createApiMethod(async ({ groupId }) => ({ method: "GET", path: `/v1/groups/${groupId}/social-links`, name: "groupSocialLinks", formatRawDataFn: ({ data }) => data })); const addGroupSocialLink = createApiMethod(async ({ groupId, newSocial }) => ({ method: "POST", path: `/v1/groups/${groupId}/social-links`, body: newSocial, name: "addGroupSocialLink" })); const removeGroupSocialLink = createApiMethod(async ({ groupId, socialLinkId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/social-links/${socialLinkId}`, name: "removeGroupSocialLink", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const updateGroupSocialLink = createApiMethod(async ({ groupId, socialLinkId, newSocial }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/social-links/${socialLinkId}`, body: newSocial, name: "updateGroupSocialLink" })); const groupWallPosts_V1 = createApiMethod(async ({ groupId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v1/groups/${groupId}/wall/posts`, searchParams: { limit, sortOrder, cursor }, name: "groupWallPosts_V1", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => { obj.forEach((wallPost) => { wallPost.created = new Date(wallPost.created); wallPost.updated = new Date(wallPost.updated); }); }) })); const authenticatedUserSubscribeToGroupWallNotificationEvents = createApiMethod(async ({ groupId }) => ({ method: "POST", path: `/v1/groups/${groupId}/wall/subscribe`, name: "authenticatedUserSubscribeToGroupWallNotificationEvents" })); const removeGroupWallPost = createApiMethod(async ({ groupId, wallPostId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/wall/posts/${wallPostId}`, name: "removeGroupWallPost", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const removeAllGroupWallPostsMadeByUser = createApiMethod(async ({ groupId, userId }) => ({ method: "DELETE", path: `/v1/groups/${groupId}/wall/users/${userId}/posts`, name: "removeAllGroupWallPostsMadeByUser", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const groupSearch = createApiMethod(async ({ keyword, prioritizeExactMatch, limit, cursor }) => ({ method: "GET", path: `/v1/groups/search`, searchParams: { keyword, prioritizeExactMatch, limit, cursor }, name: "groupSearch", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => obj.forEach((result) => { result.created = new Date(result.created); result.updated = new Date(result.updated); })) })); const groupLookupSearch = createApiMethod(async ({ groupName }) => ({ method: "GET", path: `/v1/groups/search/lookup`, searchParams: { groupName }, name: "groupLookupSearch", formatRawDataFn: ({ data }) => data })); const groupSearchMetadata = createApiMethod(async () => ({ method: "GET", path: `/v1/groups/search/metadata`, name: "groupSearchMetadata", formatRawDataFn: (rawData) => (0, import_utils.toCamel)(rawData) })); const groupRolesFromIds = createApiMethod(async ({ roleIds }) => ({ method: "GET", path: `/v1/roles`, searchParams: { ids: roleIds }, name: "groupRolesFromIds", formatRawDataFn: ({ data }) => (0, import_utils.createObjectMapByKeyWithMiddleware)(data, "id", ({ id, ...rest }) => rest) })); const primaryGroupForUser = createApiMethod(async ({ userId }) => ({ method: "GET", path: `/v1/users/${userId}/groups/primary/role`, name: "primaryGroupForUser", formatRawDataFn: (rawData) => (0, import_utils.cloneAndMutateObject)(rawData, (obj) => { if (!obj.group.shout) return; obj.group.shout.created = new Date(obj.group.shout.created); obj.group.shout.updated = new Date(obj.group.shout.updated); }) })); const authenticatedUserRemovePrimaryGroup = createApiMethod(async () => ({ method: "DELETE", path: `/v1/user/groups/primary`, name: "authenticatedUserRemovePrimaryGroup", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const authenticatedUserSetPrimaryGroup = createApiMethod(async ({ groupId }) => ({ method: "POST", path: `/v1/user/groups/primary`, body: { groupId }, name: "authenticatedUserSetPrimaryGroup", formatRawDataFn: (rawData) => (0, import_utils.dataIsSuccess)(rawData) })); const updateGroupRoleSet = createApiMethod(async ({ groupId, roleSetId, newData }) => ({ method: "PATCH", path: `/v1/groups/${groupId}/rolesets/${roleSetId}`, body: newData, name: "updateGroupRoleSet" })); const groupsInfo = createApiMethod(async ({ groupIds }) => ({ method: "GET", path: `/v2/groups`, searchParams: { groupIds }, name: "groupIdsToGroupsInfo", formatRawDataFn: ({ data }) => (0, import_utils.createObjectMapByKeyWithMiddleware)(data, "id", ({ id, created, ...rest }) => ({ created: new Date(created), ...rest })) })); const allGroupRolesForUser_v2 = createApiMethod(async ({ userId }) => ({ method: "GET", path: `/v2/users/${userId}/groups/roles`, name: "allGroupRolesForUser_v2", formatRawDataFn: ({ data }) => data })); const groupWallPosts_V2 = createApiMethod(async ({ groupId, limit, sortOrder, cursor }) => ({ method: "GET", path: `/v2/groups/${groupId}/wall/posts`, searchParams: { limit, sortOrder, cursor }, name: "groupWallPosts_V2", formatRawDataFn: ({ data }) => (0, import_utils.cloneAndMutateObject)(data, (obj) => obj.forEach((wallPost) => { wallPost.created = new Date(wallPost.created); wallPost.updated = new Date(wallPost.updated); })) })); // Annotate the CommonJS export names for ESM import in node: 0 && (module.exports = { acceptGroupJoinRequest, acceptGroupRelationshipRequest, addGroupSocialLink, allGroupRolesForUser_V1, allGroupRolesForUser_v2, authenticatedUserGroupMembershipInfo, authenticatedUserPendingGroups, authenticatedUserRemovePrimaryGroup, authenticatedUserSetPrimaryGroup, authenticatedUserSubscribeToGroupWallNotificationEvents, batchAcceptGroupJoinRequests, batchAcceptGroupRelationshipRequests, batchDeclineGroupJoinRequests, batchDeclineGroupRelationshipRequests, declineGroupJoinRequest, declineGroupRelationshipRequest, featuredEvent, groupAuditLogs, groupGuestRolePermissions, groupInfo, groupJoinRequestInfo, groupJoinRequests, groupLookupSearch, groupMembers, groupMembersWithRole, groupNameHistory, groupPayoutRestrictionsInfo, groupPayoutsInfo, groupPermissionsForAllRoles, groupPermissionsForRole, groupRelationshipRequests, groupRelationships, groupRoles, groupRolesFromIds, groupSearch, groupSearchMetadata, groupSettings, groupSocialLinks, groupWallPosts_V1, groupWallPosts_V2, groupsConfigMetadata, groupsInfo, groupsMetadata, groupsPolicyInfo, groupsThatUsersFriendsAreIn, primaryGroupForUser, removeAllGroupWallPostsMadeByUser, removeFeaturedEvent, removeGroupMember, removeGroupRelationship, removeGroupSocialLink, removeGroupWallPost, requestGroupRelationship, setFeaturedEvent, setGroupDescription, setGroupIcon, setGroupRolePermissions, setGroupSettings, setGroupShout, updateGroupMemberRole, updateGroupRoleSet, updateGroupSocialLink });