UNPKG

contentful-management

Version:
31 lines (28 loc) 1.19 kB
import copy from 'fast-copy'; import { freezeSys, toPlainObject } from 'contentful-sdk-core'; import enhanceWithMethods from '../enhance-with-methods'; import { wrapCollection } from '../common-utils'; import createAppDefinitionApi from '../create-app-definition-api'; /** * These locations are currently restricted to internal Contentful apps only. * If you are interested in using these locations for your app, * please reach out to Contentful Support (https://www.contentful.com/support/). */ /** * @private * @param makeRequest - function to make requests via an adapter * @param data - Raw App Definition data * @return Wrapped App Definition data */ export function wrapAppDefinition(makeRequest, data) { const appDefinition = toPlainObject(copy(data)); const appDefinitionWithMethods = enhanceWithMethods(appDefinition, createAppDefinitionApi(makeRequest)); return freezeSys(appDefinitionWithMethods); } /** * @private * @param makeRequest - function to make requests via an adapter * @param data - Raw App Definition collection data * @return Wrapped App Definition collection data */ export const wrapAppDefinitionCollection = wrapCollection(wrapAppDefinition);