X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/3cb71e5a3dadfaa307dc948f8933e6ca3af4df60..c1c27e7fe3cbe068e939994e20b26a78348597c6:/src/models/collection.ts diff --git a/src/models/collection.ts b/src/models/collection.ts index 2b16ea25..9a5d2ee2 100644 --- a/src/models/collection.ts +++ b/src/models/collection.ts @@ -2,13 +2,16 @@ // // SPDX-License-Identifier: AGPL-3.0 -import { ResourceKind, TrashableResource } from "./resource"; +import { + ResourceKind, + TrashableResource, + ResourceWithProperties +} from "./resource"; -export interface CollectionResource extends TrashableResource { +export interface CollectionResource extends TrashableResource, ResourceWithProperties { kind: ResourceKind.COLLECTION; name: string; description: string; - properties: any; portableDataHash: string; manifestText: string; replicationDesired: number; @@ -17,8 +20,48 @@ export interface CollectionResource extends TrashableResource { storageClassesDesired: string[]; storageClassesConfirmed: string[]; storageClassesConfirmedAt: string; + currentVersionUuid: string; + version: number; + preserveVersion: boolean; + unsignedManifestText?: string; + fileCount: number; + fileSizeTotal: number; } +// We exclude 'manifestText' and 'unsignedManifestText' from the default +export const defaultCollectionSelectedFields = [ + 'name', + 'description', + 'portableDataHash', + 'replicationDesired', + 'replicationConfirmed', + 'replicationConfirmedAt', + 'storageClassesDesired', + 'storageClassesConfirmed', + 'storageClassesConfirmedAt', + 'currentVersionUuid', + 'version', + 'preserveVersion', + 'fileCount', + 'fileSizeTotal', + // ResourceWithProperties field + 'properties', + // TrashableResource fields + 'trashAt', + 'deleteAt', + 'isTrashed', + // Resource fields + 'uuid', + 'ownerUuid', + 'createdAt', + 'modifiedByClientUuid', + 'modifiedByUserUuid', + 'modifiedAt', + 'href', + 'kind', + 'etag', +]; + export const getCollectionUrl = (uuid: string) => { return `/collections/${uuid}`; };