Merge branch 'master' of git.curoverse.com:arvados-workbench2 into 13751-shared-with...
[arvados.git] / src / views-components / details-panel / details-data.tsx
1 // Copyright (C) The Arvados Authors. All rights reserved.
2 //
3 // SPDX-License-Identifier: AGPL-3.0
4
5 import * as React from 'react';
6 import { DetailsResource } from "~/models/details";
7
8 export abstract class DetailsData<T extends DetailsResource = DetailsResource> {
9     constructor(protected item: T) {}
10
11     getTitle(): string {
12         return this.item.name || 'Projects';
13     }
14
15     abstract getIcon(className?: string): React.ReactElement<any>;
16     abstract getDetails(): React.ReactElement<any>;
17
18     getActivity(): React.ReactElement<any> {
19         return <div/>;
20     }
21 }