UNPKG

contentful-management

Version:
47 lines (44 loc) 1.47 kB
import { toPlainObject, freezeSys } from 'contentful-sdk-core'; import copy from 'fast-copy'; import { wrapCollection } from '../common-utils.js'; import enhanceWithMethods from '../enhance-with-methods.js'; /** * @internal */ function createAppBundleApi(makeRequest) { const getParams = (data) => ({ organizationId: data.sys.organization.sys.id, appDefinitionId: data.sys.appDefinition.sys.id, appBundleId: data.sys.id, }); return { delete: function del() { const data = this.toPlainObject(); return makeRequest({ entityType: 'AppBundle', action: 'delete', params: getParams(data), }); }, }; } /** * @internal * @param makeRequest - function to make requests via an adapter * @param data - Raw App Bundle data * @returns Wrapped App Bundle data */ function wrapAppBundle(makeRequest, data) { const appBundle = toPlainObject(copy(data)); const appBundleWithMethods = enhanceWithMethods(appBundle, createAppBundleApi(makeRequest)); return freezeSys(appBundleWithMethods); } /** * @internal * @param makeRequest - function to make requests via an adapter * @param data - Raw App Bundle collection data * @returns Wrapped App Bundle collection data */ const wrapAppBundleCollection = wrapCollection(wrapAppBundle); export { wrapAppBundle, wrapAppBundleCollection }; //# sourceMappingURL=app-bundle.js.map