diff --git a/src/stores/dataset.ts b/src/stores/dataset.ts index f0c63482..60d200a8 100644 --- a/src/stores/dataset.ts +++ b/src/stores/dataset.ts @@ -12,7 +12,7 @@ export const useDatasetStore = defineStore("dataset", () => { title: "", created_at: 0, description: "", - updated_at: 0, + updated_on: 0, }); const fetchAllDatasets = async (_studyId: string) => { @@ -28,7 +28,7 @@ export const useDatasetStore = defineStore("dataset", () => { title: "Dataset 1", created_at: 0, description: "Dataset 1 description", - updated_at: 0, + updated_on: 0, }, ]; } diff --git a/src/types/Dataset.d.ts b/src/types/Dataset.d.ts index 3a7f7bf0..57daca2a 100644 --- a/src/types/Dataset.d.ts +++ b/src/types/Dataset.d.ts @@ -1,9 +1,12 @@ +import { Version } from "@/types/Version"; + export interface Dataset { id: string; title: string; created_at: number; description: string; - updated_at: number; + latest_version?: Version[] | null; + updated_on: number; } export interface DatasetTitle { diff --git a/src/views/study/dataset/overview/DatasetOverview.vue b/src/views/study/dataset/overview/DatasetOverview.vue index aa0d5b2f..8cb26241 100644 --- a/src/views/study/dataset/overview/DatasetOverview.vue +++ b/src/views/study/dataset/overview/DatasetOverview.vue @@ -14,7 +14,7 @@ const dataset = ref({ title: "", created_at: 0, description: "", - updated_at: 0, + updated_on: 0, }); const routeParams = { diff --git a/src/views/study/dataset/publish/versions/PublishAllVersions.vue b/src/views/study/dataset/publish/versions/PublishAllVersions.vue index b48741fa..b084bb16 100644 --- a/src/views/study/dataset/publish/versions/PublishAllVersions.vue +++ b/src/views/study/dataset/publish/versions/PublishAllVersions.vue @@ -205,7 +205,7 @@ const deleteVersion = async (id: string) => { - View dataset on data.fairhub.io + View dataset on fairhub.io diff --git a/src/views/study/datasets/AllDatasets.vue b/src/views/study/datasets/AllDatasets.vue index 99dbda03..36366403 100644 --- a/src/views/study/datasets/AllDatasets.vue +++ b/src/views/study/datasets/AllDatasets.vue @@ -21,11 +21,9 @@ const routeParams = { }; onBeforeMount(async () => { - const studyId = routeParams.studyId as string; - sidebarStore.setAppSidebarCollapsed(false); - const response = await fetch(`${baseURL}/study/${studyId}/dataset`, { + const response = await fetch(`${baseURL}/study/${routeParams.studyId}/dataset`, { method: "GET", }); @@ -38,10 +36,9 @@ onBeforeMount(async () => { } const data = await response.json(); - - console.log(data); - datasets.value = data; + // loop datasets to fetch versions for each + console.log(data); }); const navigateToDataset = (datasetId: string) => { @@ -49,6 +46,32 @@ const navigateToDataset = (datasetId: string) => { router.push({ name: "dataset:overview", params: { datasetId } }); }; + +const navigateToNewVersion = (datasetId: string) => { + router.push({ + name: "dataset:publish:versions:new", + params: { + datasetId, + studyId: routeParams.studyId, + }, + }); +}; + +const navigateToDatasetVersion = (datasetId: string) => { + router.push({ + name: "dataset:publish:versions", + params: { + datasetId, + studyId: routeParams.studyId, + }, + }); +}; + +const draftAndNonExistingVersions = computed(() => + datasets.value.filter((d) => d.latest_version === null) +); + +const publishedVersions = computed(() => datasets.value.filter((d) => d.latest_version !== null)); - Create a new dataset + Publish a new dataset @@ -104,62 +127,112 @@ const navigateToDataset = (datasetId: string) => {
-

{{ dataset.title || "Untitled Dataset" }}

+

{{ d.title || "Untitled Dataset" }}

- Description: + Description: - {{ dataset.description || "No description provided" }} + {{ d.description || "No description provided" }}

- +

+ Created date: - + {{ displayHumanFriendlyDateAndTime(d.created_at) }} +

- Created date: + Last updated date: - - {{ displayHumanFriendlyDateAndTime(dataset.created_at) }} - + {{ displayHumanFriendlyDateAndTime(d.updated_on) }}

- Last updated date: + Status: - {{ displayHumanFriendlyDateAndTime(dataset.created_at) }} + {{ + d.latest_version?.some((v) => v.published) ? "Published" : " In preparation" + }}

+
+ +
+ + View dataset workflow + + + + Publish a new version + +
+
+ + +

+ Published Datasets +

+ +
+
+

{{ d.title || "Untitled Dataset" }}

+
+ + + +
+

+ Description: + + {{ d.description || "No description provided" }} +

- Number of participants: - + Created date: - 0 + {{ displayHumanFriendlyDateAndTime(d.created_at) }}

- Status: - + Last updated date: - In preparation + {{ displayHumanFriendlyDateAndTime(d.updated_on) }}

+ +

+ Status: + + Published +

+
+ +
+ + View all versions + + + + + + View on FAIRhub.io + +