UNPKG

contentful-management

Version:
33 lines (32 loc) 1.18 kB
import copy from 'fast-copy'; import { freezeSys, toPlainObject } from 'contentful-sdk-core'; import enhanceWithMethods from '../enhance-with-methods'; import { wrapCollection } from '../common-utils'; /** * @private * @param makeRequest - function to make requests via an adapter * @param data - Raw personal access token data * @return Wrapped personal access token */ export function wrapPersonalAccessToken(makeRequest, data) { const personalAccessToken = toPlainObject(copy(data)); const personalAccessTokenWithMethods = enhanceWithMethods(personalAccessToken, { revoke: function () { return makeRequest({ entityType: 'PersonalAccessToken', action: 'revoke', params: { tokenId: data.sys.id } }).then(data => wrapPersonalAccessToken(makeRequest, data)); } }); return freezeSys(personalAccessTokenWithMethods); } /** * @private * @param makeRequest - function to make requests via an adapter * @param data - Raw personal access collection data * @return Wrapped personal access token collection data */ export const wrapPersonalAccessTokenCollection = wrapCollection(wrapPersonalAccessToken);