UNPKG

dc-management-sdk-js

Version:
68 lines 4.87 kB
import { HalResource } from '../hal/models/HalResource'; import { ContentItem, ContentItemsPage } from './ContentItem'; import { Folder, FoldersPage } from './Folder'; import { Hub } from './Hub'; import { Page } from './Page'; /** * Class representing the [Content Repository](https://amplience.com/docs/api/dynamic-content/management/#tag/Content-Repositories) resource. * Content repositories are containers where content can be stored. */ export class ContentRepository extends HalResource { constructor() { super(...arguments); /** * Resources and actions related to a Content Repository */ this.related = { /** * Retrieves the Hub this content repository is stored in */ hub: () => this.fetchLinkedResource('hub', {}, Hub), folders: { /** * Retrieves the list of top-level folders within this Content Repository */ list: (options) => this.fetchLinkedResource('folders', options, FoldersPage), /** * Creates a folder in the Content Repository * @param resource The new Folder to create */ create: (resource) => this.createLinkedResource('create-folder', {}, resource, Folder), }, contentItems: { /** * Creates a content item inside the repository * @param resource The new content item to create * @param options * @param options.ignoreValidation Should items be validated ? */ create: (resource, params) => this.createLinkedResource('create-content-item', { ...params }, resource, ContentItem), /** * Retrieves a list of Content Items stored within this Content Repository */ list: (options) => this.fetchLinkedResource('content-items', options, ContentItemsPage), }, contentTypes: { /** * Assigns a content type to the repository */ assign: (contentTypeId) => this.performActionThatReturnsResource('assign-content-type', {}, { contentTypeId }, ContentRepository), /** * Unassign a content type from this repository */ unassign: (contentTypeId) => this.deleteLinkedResource('unassign-content-type', { id: contentTypeId, }), }, }; } } /** * @hidden */ export class ContentRepositoriesPage extends Page { constructor(data) { super('content-repositories', ContentRepository, data); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29udGVudFJlcG9zaXRvcnkuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbGliL21vZGVsL0NvbnRlbnRSZXBvc2l0b3J5LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUN4RCxPQUFPLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBRSxNQUFNLEVBQUUsV0FBVyxFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQy9DLE9BQU8sRUFBRSxHQUFHLEVBQUUsTUFBTSxPQUFPLENBQUM7QUFDNUIsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQW9COUI7OztHQUdHO0FBQ0gsTUFBTSxPQUFPLGlCQUFrQixTQUFRLFdBQVc7SUFBbEQ7O1FBcUNFOztXQUVHO1FBQ2EsWUFBTyxHQUFHO1lBQ3hCOztlQUVHO1lBQ0gsR0FBRyxFQUFFLEdBQWlCLEVBQUUsQ0FBQyxJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxHQUFHLENBQUM7WUFFakUsT0FBTyxFQUFFO2dCQUNQOzttQkFFRztnQkFDSCxJQUFJLEVBQUUsQ0FBQyxPQUFrQixFQUF5QixFQUFFLENBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxTQUFTLEVBQUUsT0FBTyxFQUFFLFdBQVcsQ0FBQztnQkFFM0Q7OzttQkFHRztnQkFDSCxNQUFNLEVBQUUsQ0FBQyxRQUFnQixFQUFtQixFQUFFLENBQzVDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUM7YUFDbkU7WUFFRCxZQUFZLEVBQUU7Z0JBQ1o7Ozs7O21CQUtHO2dCQUNILE1BQU0sRUFBRSxDQUNOLFFBQXFCLEVBQ3JCLE1BQTZDLEVBQ3ZCLEVBQUUsQ0FDeEIsSUFBSSxDQUFDLG9CQUFvQixDQUN2QixxQkFBcUIsRUFDckIsRUFBRSxHQUFHLE1BQU0sRUFBRSxFQUNiLFFBQVEsRUFDUixXQUFXLENBQ1o7Z0JBRUg7O21CQUVHO2dCQUNILElBQUksRUFBRSxDQUFDLE9BQTZCLEVBQThCLEVBQUUsQ0FDbEUsSUFBSSxDQUFDLG1CQUFtQixDQUFDLGVBQWUsRUFBRSxPQUFPLEVBQUUsZ0JBQWdCLENBQUM7YUFDdkU7WUFFRCxZQUFZLEVBQUU7Z0JBQ1o7O21CQUVHO2dCQUNILE1BQU0sRUFBRSxDQUFDLGFBQXFCLEVBQThCLEVBQUUsQ0FDNUQsSUFBSSxDQUFDLGdDQUFnQyxDQUNuQyxxQkFBcUIsRUFDckIsRUFBRSxFQUNGLEVBQUUsYUFBYSxFQUFFLEVBQ2pCLGlCQUFpQixDQUNsQjtnQkFFSDs7bUJBRUc7Z0JBQ0gsUUFBUSxFQUFFLENBQUMsYUFBcUIsRUFBaUIsRUFBRSxDQUNqRCxJQUFJLENBQUMsb0JBQW9CLENBQUMsdUJBQXVCLEVBQUU7b0JBQ2pELEVBQUUsRUFBRSxhQUFhO2lCQUNsQixDQUFDO2FBQ0w7U0FDRixDQUFDO0lBQ0osQ0FBQztDQUFBO0FBRUQ7O0dBRUc7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsSUFBdUI7SUFDbEUsWUFBWSxJQUFVO1FBQ3BCLEtBQUssQ0FBQyxzQkFBc0IsRUFBRSxpQkFBaUIsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6RCxDQUFDO0NBQ0YifQ==