UNPKG

battlemetrics

Version:

A Promise-Based Battlemetrics API Wrapper

83 lines (82 loc) 2.75 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.Flags = void 0; const base_1 = require("../../base"); const resourceName = 'player-flags'; class Flags extends base_1.Client { createFlag(params, optionalParams) { let createFlagDataObj = { data: { type: 'playerFlag', attributes: { icon: params.icon, name: params.name, color: params.color, description: params.description, }, }, }; if (optionalParams) { if (optionalParams.orgId) { createFlagDataObj.data['relationships'] = { organization: { data: { type: 'organization', id: optionalParams.orgId, }, }, }; } if (optionalParams.userId) { if (createFlagDataObj.data.relationships) { createFlagDataObj.data.relationships['user'] = { data: { type: 'user', id: optionalParams.userId, }, }; } else { createFlagDataObj.data['relationships'] = { user: { data: { type: 'user', id: optionalParams.userId, }, }, }; } } } return this.request(`${resourceName}`, { method: 'POST', data: JSON.stringify(createFlagDataObj), }); } deleteFlagById(flagId) { return this.request(`${resourceName}/${flagId}`, { method: 'DELETE', }); } //getFlags to be implemented //getFlagInfoById to be implemented updateFlagById(flagId, params) { let updateFlagDataObj = { data: { type: 'playerFlag', id: flagId, attributes: { icon: params.icon, name: params.name, color: params.color, description: params.description, }, }, }; return this.request(`${resourceName}/${flagId}`, { method: 'PATCH', data: JSON.stringify(updateFlagDataObj), }); } } exports.Flags = Flags;