X-Git-Url: https://git.arvados.org/arvados-workbench2.git/blobdiff_plain/378c6a3a18cd9849bf4233e130a9ffdf250de35e..e3064da256b0c0f78e97bfe53825a5c0bf11a4cb:/src/models/collection.ts diff --git a/src/models/collection.ts b/src/models/collection.ts index 0e96f7fd..defaca76 100644 --- a/src/models/collection.ts +++ b/src/models/collection.ts @@ -2,23 +2,73 @@ // // SPDX-License-Identifier: AGPL-3.0 -import { Resource, ResourceKind } from "./resource"; +import { + ResourceKind, + TrashableResource, + ResourceWithProperties +} from "./resource"; -export interface CollectionResource extends Resource { +export interface CollectionResource extends TrashableResource, ResourceWithProperties { kind: ResourceKind.COLLECTION; name: string; description: string; - properties: any; portableDataHash: string; manifestText: string; replicationDesired: number; replicationConfirmed: number; replicationConfirmedAt: string; - trashAt: string; - deleteAt: string; - isTrashed: boolean; + 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}`; -}; \ No newline at end of file +}; + +export enum CollectionType { + GENERAL = 'nil', + OUTPUT = 'output', + LOG = 'log', + INTERMEDIATE = 'intermediate', +}