UNPKG

dc-management-sdk-js

Version:
54 lines 3.73 kB
import { HalResource } from '../hal/models/HalResource'; import { CURIEs } from '../hal/services/CURIEs'; import { ContentItemsPage } from './ContentItem'; import { ContentRepository } from './ContentRepository'; import { Page } from './Page'; export class Folder extends HalResource { constructor() { super(...arguments); /** * Resources and actions related to a Folder */ this.related = { /** * Retrieves the ContentRepository this folder is stored in */ contentRepository: () => this.fetchLinkedResource('content-repository', {}, ContentRepository), folders: { /** * Retrieves the parent folder of this Folder */ parent: () => this.fetchLinkedResource('parent-folder', {}, Folder), /** * Retrieves the list of sub-folders contained within this Folder * @param options Pagination options */ list: (options) => { const path = CURIEs.expand(`folders/${this.id}/folders{?page,size,sort}`, options); return this.client.fetchResource(path, FoldersPage); }, /** * Creates a folder beneath the folder * @param resource The new Folder to create */ create: (resource) => this.createLinkedResource('create-folder', {}, resource, Folder), }, contentItems: { /** * Retrieves a list of Content Items stored within this Folder * @param options Pagination options */ list: (options) => this.fetchLinkedResource('content-items', options, ContentItemsPage), }, }; } } /** * @hidden */ export class FoldersPage extends Page { constructor(data) { super('folders', Folder, data); } } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiRm9sZGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2xpYi9tb2RlbC9Gb2xkZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQ3hELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUNoRCxPQUFPLEVBQWUsZ0JBQWdCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDeEQsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLFFBQVEsQ0FBQztBQUk5QixNQUFNLE9BQU8sTUFBTyxTQUFRLFdBQVc7SUFBdkM7O1FBS0U7O1dBRUc7UUFDYSxZQUFPLEdBQUc7WUFDeEI7O2VBRUc7WUFDSCxpQkFBaUIsRUFBRSxHQUErQixFQUFFLENBQ2xELElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxvQkFBb0IsRUFBRSxFQUFFLEVBQUUsaUJBQWlCLENBQUM7WUFFdkUsT0FBTyxFQUFFO2dCQUNQOzttQkFFRztnQkFDSCxNQUFNLEVBQUUsR0FBb0IsRUFBRSxDQUM1QixJQUFJLENBQUMsbUJBQW1CLENBQUMsZUFBZSxFQUFFLEVBQUUsRUFBRSxNQUFNLENBQUM7Z0JBRXZEOzs7bUJBR0c7Z0JBQ0gsSUFBSSxFQUFFLENBQUMsT0FBNkIsRUFBeUIsRUFBRTtvQkFDN0QsTUFBTSxJQUFJLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FDeEIsV0FBVyxJQUFJLENBQUMsRUFBRSwyQkFBMkIsRUFDN0MsT0FBTyxDQUNSLENBQUM7b0JBQ0YsT0FBTyxJQUFJLENBQUMsTUFBTSxDQUFDLGFBQWEsQ0FBQyxJQUFJLEVBQUUsV0FBVyxDQUFDLENBQUM7Z0JBQ3RELENBQUM7Z0JBRUQ7OzttQkFHRztnQkFDSCxNQUFNLEVBQUUsQ0FBQyxRQUFnQixFQUFtQixFQUFFLENBQzVDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxNQUFNLENBQUM7YUFDbkU7WUFFRCxZQUFZLEVBQUU7Z0JBQ1o7OzttQkFHRztnQkFDSCxJQUFJLEVBQUUsQ0FBQyxPQUE2QixFQUE4QixFQUFFLENBQ2xFLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxlQUFlLEVBQUUsT0FBTyxFQUFFLGdCQUFnQixDQUFDO2FBQ3ZFO1NBQ0YsQ0FBQztJQUNKLENBQUM7Q0FBQTtBQUVEOztHQUVHO0FBQ0gsTUFBTSxPQUFPLFdBQVksU0FBUSxJQUFZO0lBQzNDLFlBQVksSUFBVTtRQUNwQixLQUFLLENBQUMsU0FBUyxFQUFFLE1BQU0sRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNqQyxDQUFDO0NBQ0YifQ==