2023-03-17 15:13:37 +00:00
|
|
|
import { Ref } from 'vue';
|
|
|
|
|
|
|
|
export interface Dataset {
|
2023-06-01 12:29:56 +00:00
|
|
|
[key: string]: string | Ref<string>| boolean | Array<Title> | Array<Description>| Array<Person> | number | (IErrorMessage | undefined) | Coverage | TethysFile | File;
|
2023-03-17 15:13:37 +00:00
|
|
|
language: Ref<string>;
|
|
|
|
// licenses: Array<number>;
|
|
|
|
rights: boolean;
|
|
|
|
type: string;
|
|
|
|
creating_corporation: string;
|
|
|
|
titles: Array<Title>;
|
|
|
|
descriptions: Array<Description>;
|
2023-03-24 10:41:52 +00:00
|
|
|
authors: Array<Person>;
|
|
|
|
contributors: Array<Person>;
|
|
|
|
project_id?: number;
|
|
|
|
embargo_date?: string,
|
2023-03-31 12:54:15 +00:00
|
|
|
coverage: Coverage,
|
2023-03-17 15:13:37 +00:00
|
|
|
errors?: IErrorMessage;
|
|
|
|
// async (user): Promise<void>;
|
2023-06-01 12:29:56 +00:00
|
|
|
subjects: Array<Subject>,
|
|
|
|
file: File | undefined,
|
|
|
|
upload: TethysFile
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface TethysFile {
|
|
|
|
label: string,
|
|
|
|
sorting: number,
|
2023-05-19 09:30:49 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Subject {
|
|
|
|
// id: number;
|
|
|
|
language: string
|
|
|
|
type: string;
|
|
|
|
value: string;
|
|
|
|
external_key?: string;
|
2023-03-17 15:13:37 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Title {
|
|
|
|
value: string;
|
|
|
|
type: string;
|
|
|
|
language: string | Ref<string>;
|
|
|
|
}
|
|
|
|
|
|
|
|
export interface Description {
|
|
|
|
value: string;
|
|
|
|
type: string;
|
|
|
|
language: string | Ref<string>;
|
|
|
|
}
|
|
|
|
|
2023-03-24 10:41:52 +00:00
|
|
|
export interface Person {
|
|
|
|
id: number;
|
|
|
|
name: string;
|
|
|
|
email: string;
|
|
|
|
name_type: string;
|
|
|
|
identifier_orcid: string;
|
|
|
|
datasetCount: string;
|
|
|
|
created_at: string;
|
|
|
|
}
|
|
|
|
|
2023-03-17 15:13:37 +00:00
|
|
|
interface IErrorMessage {
|
|
|
|
[key: string]: Array<string>;
|
2023-03-31 12:54:15 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
export interface Coverage {
|
2023-05-02 16:10:32 +00:00
|
|
|
x_min?: number;
|
|
|
|
y_min?: number;
|
|
|
|
x_max?: number;
|
|
|
|
y_max?: number;
|
2023-03-31 12:54:15 +00:00
|
|
|
elevation_min?: number;
|
|
|
|
elevation_max?: number;
|
|
|
|
elevation_absolut?: number;
|
|
|
|
|
|
|
|
depth_min?: number;
|
|
|
|
depth_max?: number;
|
|
|
|
depth_absolut?: number;
|
|
|
|
|
|
|
|
time_min?: number,
|
|
|
|
time_max?: number,
|
|
|
|
time_absolut?: number
|
2023-03-17 15:13:37 +00:00
|
|
|
}
|