PeerTube/shared/extra-utils/users/blocklist.ts

198 lines
4.3 KiB
TypeScript
Raw Normal View History

2020-01-31 16:56:52 +01:00
/* eslint-disable @typescript-eslint/no-unused-expressions,@typescript-eslint/require-await */
2018-11-19 17:36:20 +01:00
import { makeGetRequest, makeDeleteRequest, makePostBodyRequest } from '../requests/requests'
function getAccountBlocklistByAccount (
url: string,
token: string,
start: number,
count: number,
sort = '-createdAt',
statusCodeExpected = 200
) {
const path = '/api/v1/users/me/blocklist/accounts'
return makeGetRequest({
url,
token,
query: { start, count, sort },
path,
statusCodeExpected
})
}
function addAccountToAccountBlocklist (url: string, token: string, accountToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/users/me/blocklist/accounts'
return makePostBodyRequest({
url,
path,
token,
fields: {
accountName: accountToBlock
},
statusCodeExpected
})
}
function removeAccountFromAccountBlocklist (url: string, token: string, accountToUnblock: string, statusCodeExpected = 204) {
const path = '/api/v1/users/me/blocklist/accounts/' + accountToUnblock
return makeDeleteRequest({
url,
path,
token,
statusCodeExpected
})
}
function getServerBlocklistByAccount (
url: string,
token: string,
start: number,
count: number,
sort = '-createdAt',
statusCodeExpected = 200
) {
const path = '/api/v1/users/me/blocklist/servers'
return makeGetRequest({
url,
token,
query: { start, count, sort },
path,
statusCodeExpected
})
}
function addServerToAccountBlocklist (url: string, token: string, serverToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/users/me/blocklist/servers'
return makePostBodyRequest({
url,
path,
token,
fields: {
host: serverToBlock
},
statusCodeExpected
})
}
function removeServerFromAccountBlocklist (url: string, token: string, serverToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/users/me/blocklist/servers/' + serverToBlock
return makeDeleteRequest({
url,
path,
token,
statusCodeExpected
})
}
function getAccountBlocklistByServer (
url: string,
token: string,
start: number,
count: number,
sort = '-createdAt',
statusCodeExpected = 200
) {
const path = '/api/v1/server/blocklist/accounts'
return makeGetRequest({
url,
token,
query: { start, count, sort },
path,
statusCodeExpected
})
}
function addAccountToServerBlocklist (url: string, token: string, accountToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/server/blocklist/accounts'
return makePostBodyRequest({
url,
path,
token,
fields: {
accountName: accountToBlock
},
statusCodeExpected
})
}
function removeAccountFromServerBlocklist (url: string, token: string, accountToUnblock: string, statusCodeExpected = 204) {
const path = '/api/v1/server/blocklist/accounts/' + accountToUnblock
return makeDeleteRequest({
url,
path,
token,
statusCodeExpected
})
}
function getServerBlocklistByServer (
url: string,
token: string,
start: number,
count: number,
sort = '-createdAt',
statusCodeExpected = 200
) {
const path = '/api/v1/server/blocklist/servers'
return makeGetRequest({
url,
token,
query: { start, count, sort },
path,
statusCodeExpected
})
}
function addServerToServerBlocklist (url: string, token: string, serverToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/server/blocklist/servers'
return makePostBodyRequest({
url,
path,
token,
fields: {
host: serverToBlock
},
statusCodeExpected
})
}
function removeServerFromServerBlocklist (url: string, token: string, serverToBlock: string, statusCodeExpected = 204) {
const path = '/api/v1/server/blocklist/servers/' + serverToBlock
return makeDeleteRequest({
url,
path,
token,
statusCodeExpected
})
}
// ---------------------------------------------------------------------------
export {
getAccountBlocklistByAccount,
addAccountToAccountBlocklist,
removeAccountFromAccountBlocklist,
getServerBlocklistByAccount,
addServerToAccountBlocklist,
removeServerFromAccountBlocklist,
getAccountBlocklistByServer,
addAccountToServerBlocklist,
removeAccountFromServerBlocklist,
getServerBlocklistByServer,
addServerToServerBlocklist,
removeServerFromServerBlocklist
}