@@ -52,35 +56,3 @@ export function DatasetCitation({ thumbnail, title, citation, version }: Dataset
>
)
}
-
-function CitationDescription({ citation, version }: { citation: string; version: DatasetVersion }) {
- const citationAsReactElement = parse(citation)
-
- return (
-
- {citationAsReactElement}
-
-
- )
-}
-
-interface CitationDatasetStatusProps {
- status: DatasetPublishingStatus
-}
-
-function CitationTooltip({ status }: CitationDatasetStatusProps) {
- const { t } = useTranslation('dataset')
-
- if (status !== DatasetPublishingStatus.RELEASED) {
- return (
- <>
- {' '}
-
- >
- )
- }
- return <>>
-}
diff --git a/src/sections/dataset/dataset-citation/DatasetCitationTooltip.tsx b/src/sections/dataset/dataset-citation/DatasetCitationTooltip.tsx
new file mode 100644
index 000000000..0ae1676b1
--- /dev/null
+++ b/src/sections/dataset/dataset-citation/DatasetCitationTooltip.tsx
@@ -0,0 +1,24 @@
+import { DatasetPublishingStatus } from '../../../dataset/domain/models/Dataset'
+import { useTranslation } from 'react-i18next'
+import { QuestionMarkTooltip } from '@iqss/dataverse-design-system'
+
+interface DatasetCitationTooltipProps {
+ status: DatasetPublishingStatus
+}
+
+export function DatasetCitationTooltip({ status }: DatasetCitationTooltipProps) {
+ const { t } = useTranslation('dataset')
+
+ if (status !== DatasetPublishingStatus.RELEASED) {
+ return (
+ <>
+ {' '}
+
+ >
+ )
+ }
+ return <>>
+}
diff --git a/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileDate.tsx b/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileDate.tsx
index 61ddb0c44..054ab4b89 100644
--- a/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileDate.tsx
+++ b/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileDate.tsx
@@ -1,17 +1,13 @@
import { FileDate as FileDateModel } from '../../../../../../../files/domain/models/File'
import { useTranslation } from 'react-i18next'
+import { DateHelper } from '../../../../../../../shared/domain/helpers/DateHelper'
export function FileDate({ date }: { date: FileDateModel }) {
const { t } = useTranslation('files')
return (
- {t(`table.date.${date.type}`)}{' '}
- {date.date.toLocaleDateString(Intl.DateTimeFormat().resolvedOptions().locale, {
- year: 'numeric',
- month: 'short',
- day: 'numeric'
- })}
+ {t(`table.date.${date.type}`)} {DateHelper.toDisplayFormat(date.date)}
)
diff --git a/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileEmbargoDate.tsx b/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileEmbargoDate.tsx
index 4c61171b9..50db565fa 100644
--- a/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileEmbargoDate.tsx
+++ b/src/sections/dataset/dataset-files/files-table/file-info/file-info-cell/file-info-data/FileEmbargoDate.tsx
@@ -1,5 +1,6 @@
import { FileEmbargo, FilePublishingStatus } from '../../../../../../../files/domain/models/File'
import { useTranslation } from 'react-i18next'
+import { DateHelper } from '../../../../../../../shared/domain/helpers/DateHelper'
interface FileEmbargoDateProps {
embargo: FileEmbargo | undefined
@@ -17,11 +18,7 @@ export function FileEmbargoDate({ embargo, publishingStatus }: FileEmbargoDatePr
{t(embargoTypeOfDate(embargo.isActive, publishingStatus))}{' '}
- {embargo.dateAvailable.toLocaleDateString(Intl.DateTimeFormat().resolvedOptions().locale, {
- year: 'numeric',
- month: 'short',
- day: 'numeric'
- })}
+ {DateHelper.toDisplayFormat(embargo.dateAvailable)}
)
diff --git a/src/sections/dataset/dataset-icon/DatasetIcon.module.scss b/src/sections/dataset/dataset-icon/DatasetIcon.module.scss
new file mode 100644
index 000000000..4025c0bbe
--- /dev/null
+++ b/src/sections/dataset/dataset-icon/DatasetIcon.module.scss
@@ -0,0 +1,6 @@
+@import "node_modules/@iqss/dataverse-design-system/src/lib/assets/styles/design-tokens/colors.module";
+
+.icon {
+ color: $dv-info-border-color;
+ line-height: 1.1;
+}
\ No newline at end of file
diff --git a/src/sections/dataset/dataset-icon/DatasetIcon.tsx b/src/sections/dataset/dataset-icon/DatasetIcon.tsx
new file mode 100644
index 000000000..ac68ba92b
--- /dev/null
+++ b/src/sections/dataset/dataset-icon/DatasetIcon.tsx
@@ -0,0 +1,10 @@
+import styles from './DatasetIcon.module.scss'
+import { Icon, IconName } from '@iqss/dataverse-design-system'
+
+export function DatasetIcon() {
+ return (
+
+
+
+ )
+}
diff --git a/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.module.scss b/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.module.scss
new file mode 100644
index 000000000..a464f4dc4
--- /dev/null
+++ b/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.module.scss
@@ -0,0 +1,6 @@
+.preview-image {
+ width: 100%;
+ max-width: 140px;
+ height: auto;
+ max-height: 140px;
+}
\ No newline at end of file
diff --git a/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.tsx b/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.tsx
new file mode 100644
index 000000000..628cdd8ac
--- /dev/null
+++ b/src/sections/dataset/dataset-thumbnail/DatasetThumbnail.tsx
@@ -0,0 +1,16 @@
+import styles from './DatasetThumbnail.module.scss'
+import { DatasetIcon } from '../dataset-icon/DatasetIcon'
+
+interface DatasetThumbnailProps {
+ thumbnail?: string
+ title: string
+ isDeaccessioned?: boolean
+}
+
+export function DatasetThumbnail({ thumbnail, title, isDeaccessioned }: DatasetThumbnailProps) {
+ if (thumbnail && !isDeaccessioned) {
+ return
+ }
+
+ return
+}
diff --git a/src/sections/home/datasets-list/DatasetsList.module.scss b/src/sections/home/datasets-list/DatasetsList.module.scss
index 852fa280c..15aff10a5 100644
--- a/src/sections/home/datasets-list/DatasetsList.module.scss
+++ b/src/sections/home/datasets-list/DatasetsList.module.scss
@@ -1,7 +1,8 @@
@import "node_modules/@iqss/dataverse-design-system/src/lib/assets/styles/design-tokens/colors.module";
.container {
- padding:15px;
+ min-height: calc(100vh + 100px);
+ padding:15px;
border: 1px solid #ddd;
border-radius: 4px;
}
@@ -9,4 +10,4 @@
.empty-message-container {
padding: .5em 1em;
background: $dv-warning-box-color;
-}
\ No newline at end of file
+}
diff --git a/src/sections/home/datasets-list/DatasetsList.tsx b/src/sections/home/datasets-list/DatasetsList.tsx
index c2f902295..da13f06d3 100644
--- a/src/sections/home/datasets-list/DatasetsList.tsx
+++ b/src/sections/home/datasets-list/DatasetsList.tsx
@@ -5,11 +5,10 @@ import { useEffect, useState } from 'react'
import { PaginationResultsInfo } from '../../shared/pagination/PaginationResultsInfo'
import { PaginationControls } from '../../shared/pagination/PaginationControls'
import { DatasetPaginationInfo } from '../../../dataset/domain/models/DatasetPaginationInfo'
-import { LinkToPage } from '../../shared/link-to-page/LinkToPage'
-import { Route } from '../../Route.enum'
import { useLoading } from '../../loading/LoadingContext'
import { DatasetsListSkeleton } from './DatasetsListSkeleton'
import { NoDatasetsMessage } from './NoDatasetsMessage'
+import { DatasetCard } from './dataset-card/DatasetCard'
interface DatasetsListProps {
datasetRepository: DatasetRepository
@@ -40,13 +39,7 @@ export function DatasetsList({ datasetRepository }: DatasetsListProps) {
{datasets.map((dataset) => (
-