From 5ce0f36d412cd1a82ab75c758d135de5cd0125ec Mon Sep 17 00:00:00 2001 From: Cheng Shi Date: Tue, 10 Dec 2024 03:33:01 -0500 Subject: [PATCH 1/5] feat: add lock/unlock icon(hardcoded) --- .../items-list/file-card/FileCard.module.scss | 4 ++++ .../items-list/file-card/FileCardHeader.tsx | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/src/sections/collection/collection-items-panel/items-list/file-card/FileCard.module.scss b/src/sections/collection/collection-items-panel/items-list/file-card/FileCard.module.scss index 7514bb2d1..7b80b7314 100644 --- a/src/sections/collection/collection-items-panel/items-list/file-card/FileCard.module.scss +++ b/src/sections/collection/collection-items-panel/items-list/file-card/FileCard.module.scss @@ -110,3 +110,7 @@ color: black; } } + +.restricted-icon { + margin: -5px -5px 0 0; +} diff --git a/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx b/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx index 43f5f0c0b..9ecd664da 100644 --- a/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx +++ b/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx @@ -8,6 +8,7 @@ import { Route } from '@/sections/Route.enum' import { LinkToPage } from '@/sections/shared/link-to-page/LinkToPage' import { DatasetLabels } from '@/sections/dataset/dataset-labels/DatasetLabels' import { FileCardHelper } from './FileCardHelper' +import { FileAccessRestrictedIcon } from '../../../../file/file-access/FileAccessRestrictedIcon' import styles from './FileCard.module.scss' interface FileCardHeaderProps { @@ -21,6 +22,10 @@ export function FileCardHeader({ filePreview }: FileCardHeaderProps) { return (
+
+ {/* TODO: change the properties to dynamic ones for the icon */} + +
Date: Tue, 7 Jan 2025 11:10:07 -0500 Subject: [PATCH 2/5] feat: add restriction fields and tabular fields --- src/files/domain/models/FileItemTypePreview.ts | 6 ++++++ .../mappers/JSFileItemTypePreviewMapper.ts | 8 +++++++- .../items-list/file-card/FileCardHeader.tsx | 8 +++++--- .../files/domain/models/FileItemTypePreviewMother.ts | 9 +++++++++ .../collection-items-panel/file-card/FileCard.spec.tsx | 3 +++ 5 files changed, 30 insertions(+), 4 deletions(-) diff --git a/src/files/domain/models/FileItemTypePreview.ts b/src/files/domain/models/FileItemTypePreview.ts index 3c129bfdf..430264adf 100644 --- a/src/files/domain/models/FileItemTypePreview.ts +++ b/src/files/domain/models/FileItemTypePreview.ts @@ -21,6 +21,12 @@ export interface FileItemTypePreview { datasetCitation: string publicationStatuses: PublicationStatus[] releaseOrCreateDate: Date + restricted: boolean + canDownloadFile: boolean + categories?: string[] + tabularTags?: string[] + observations?: number + variables?: number } export interface FilePreviewChecksum { diff --git a/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts b/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts index e3ae4dea3..bc5313966 100644 --- a/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts +++ b/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts @@ -22,7 +22,13 @@ export class JSFileItemTypePreviewMapper { datasetPersistentId: jsFilePreview.datasetPersistentId, datasetCitation: jsFilePreview.datasetCitation, publicationStatuses: jsFilePreview.publicationStatuses, - releaseOrCreateDate: jsFilePreview.releaseOrCreateDate + releaseOrCreateDate: jsFilePreview.releaseOrCreateDate, + restricted: jsFilePreview.restricted, + canDownloadFile: jsFilePreview.canDownloadFile, + categories: jsFilePreview.categories, + tabularTags: jsFilePreview.tabularTags, + observations: jsFilePreview.observations, + variables: jsFilePreview.variables } } } diff --git a/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx b/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx index 9ecd664da..5e1946f77 100644 --- a/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx +++ b/src/sections/collection/collection-items-panel/items-list/file-card/FileCardHeader.tsx @@ -22,9 +22,11 @@ export function FileCardHeader({ filePreview }: FileCardHeaderProps) { return (
-
- {/* TODO: change the properties to dynamic ones for the icon */} - +
+
{ const filePreview = FileItemTypePreviewMother.create() cy.customMount() + filePreview.restricted + ? cy.findByTestId('file-access-restricted-icon').should('exist') + : cy.findByTestId('file-access-restricted-icon').should('not.exist') cy.contains(DateHelper.toDisplayFormat(filePreview.releaseOrCreateDate)).should('exist') cy.contains(filePreview.fileType).should('exist') filePreview.checksum?.type && cy.contains(filePreview.checksum?.type).should('exist') From 0f1ba7912740cef78a4db7c71602b7149d288ed0 Mon Sep 17 00:00:00 2001 From: Cheng Shi Date: Wed, 8 Jan 2025 12:31:22 -0500 Subject: [PATCH 3/5] js-dataverse package(need to be deleted after merge --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 713da3164..8e801f4ce 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "dependencies": { "@faker-js/faker": "7.6.0", - "@iqss/dataverse-client-javascript": "2.0.0-alpha.11", + "@iqss/dataverse-client-javascript": "2.0.0-pr234.4321ffd", "@iqss/dataverse-design-system": "*", "@istanbuljs/nyc-config-typescript": "1.0.2", "@tanstack/react-table": "8.9.2", @@ -3674,9 +3674,9 @@ }, "node_modules/@iqss/dataverse-client-javascript": { "name": "@IQSS/dataverse-client-javascript", - "version": "2.0.0-alpha.11", - "resolved": "https://npm.pkg.github.com/download/@IQSS/dataverse-client-javascript/2.0.0-alpha.11/77723d5bcef1f38f1dcfa0fd195d2edc2baa7ed9", - "integrity": "sha512-KKgrCeKT9tplhRUxjzgaI2fg8X6OfH2DAnFzDdcFQpoJejwBH4BSbp4d58zG7WxrjRI+sP0Iw5A1o8fsc9TOqw==", + "version": "2.0.0-pr234.4321ffd", + "resolved": "https://npm.pkg.github.com/download/@IQSS/dataverse-client-javascript/2.0.0-pr234.4321ffd/37e1fd41eafde95dfb0994d625f6052a04a67c60", + "integrity": "sha512-pQmSvB3YufhJ8xLEfUiSeNpsbDCdWxB/8A20OwqKnq0gina2xtpzFT6ws//kv6xE3jlMFpRjVM7o+A+MMv+H1A==", "license": "MIT", "dependencies": { "@types/node": "^18.15.11", diff --git a/package.json b/package.json index c74c8e142..7b0316b0e 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@faker-js/faker": "7.6.0", - "@iqss/dataverse-client-javascript": "2.0.0-alpha.11", + "@iqss/dataverse-client-javascript": "2.0.0-pr234.4321ffd", "@iqss/dataverse-design-system": "*", "@istanbuljs/nyc-config-typescript": "1.0.2", "@tanstack/react-table": "8.9.2", From 4f824787a90f71bc1ff04a6842adf03a17ac0a16 Mon Sep 17 00:00:00 2001 From: Cheng Shi Date: Thu, 9 Jan 2025 15:04:58 -0500 Subject: [PATCH 4/5] fix: remove unused new fields --- src/files/domain/models/FileItemTypePreview.ts | 4 ---- .../infrastructure/mappers/JSFileItemTypePreviewMapper.ts | 6 +----- .../files/domain/models/FileItemTypePreviewMother.ts | 5 ----- 3 files changed, 1 insertion(+), 14 deletions(-) diff --git a/src/files/domain/models/FileItemTypePreview.ts b/src/files/domain/models/FileItemTypePreview.ts index 430264adf..881dab1a7 100644 --- a/src/files/domain/models/FileItemTypePreview.ts +++ b/src/files/domain/models/FileItemTypePreview.ts @@ -23,10 +23,6 @@ export interface FileItemTypePreview { releaseOrCreateDate: Date restricted: boolean canDownloadFile: boolean - categories?: string[] - tabularTags?: string[] - observations?: number - variables?: number } export interface FilePreviewChecksum { diff --git a/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts b/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts index bc5313966..af31af661 100644 --- a/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts +++ b/src/files/infrastructure/mappers/JSFileItemTypePreviewMapper.ts @@ -24,11 +24,7 @@ export class JSFileItemTypePreviewMapper { publicationStatuses: jsFilePreview.publicationStatuses, releaseOrCreateDate: jsFilePreview.releaseOrCreateDate, restricted: jsFilePreview.restricted, - canDownloadFile: jsFilePreview.canDownloadFile, - categories: jsFilePreview.categories, - tabularTags: jsFilePreview.tabularTags, - observations: jsFilePreview.observations, - variables: jsFilePreview.variables + canDownloadFile: jsFilePreview.canDownloadFile } } } diff --git a/tests/component/files/domain/models/FileItemTypePreviewMother.ts b/tests/component/files/domain/models/FileItemTypePreviewMother.ts index 7837f0c1a..f61b34124 100644 --- a/tests/component/files/domain/models/FileItemTypePreviewMother.ts +++ b/tests/component/files/domain/models/FileItemTypePreviewMother.ts @@ -31,10 +31,6 @@ export class FileItemTypePreviewMother { releaseOrCreateDate: faker.date.past(), restricted: faker.datatype.boolean(), canDownloadFile: faker.datatype.boolean(), - categories: [faker.lorem.word()], - tabularTags: [faker.lorem.word()], - observations: faker.datatype.number(), - variables: faker.datatype.number(), ...props } } @@ -68,7 +64,6 @@ export class FileItemTypePreviewMother { releaseOrCreateDate: new Date('2023-05-15T08:21:01Z'), restricted: false, canDownloadFile: true, - categories: ['test category'], ...props }) } From 715fff0a492b0ea36b9c98c33402eab88d88201c Mon Sep 17 00:00:00 2001 From: Cheng Shi Date: Wed, 15 Jan 2025 09:34:03 -0500 Subject: [PATCH 5/5] feat: update package.json --- package-lock.json | 8 ++++---- package.json | 2 +- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/package-lock.json b/package-lock.json index 8e801f4ce..39e3377e1 100644 --- a/package-lock.json +++ b/package-lock.json @@ -9,7 +9,7 @@ "version": "0.1.0", "dependencies": { "@faker-js/faker": "7.6.0", - "@iqss/dataverse-client-javascript": "2.0.0-pr234.4321ffd", + "@iqss/dataverse-client-javascript": "2.0.0-alpha.13", "@iqss/dataverse-design-system": "*", "@istanbuljs/nyc-config-typescript": "1.0.2", "@tanstack/react-table": "8.9.2", @@ -3674,9 +3674,9 @@ }, "node_modules/@iqss/dataverse-client-javascript": { "name": "@IQSS/dataverse-client-javascript", - "version": "2.0.0-pr234.4321ffd", - "resolved": "https://npm.pkg.github.com/download/@IQSS/dataverse-client-javascript/2.0.0-pr234.4321ffd/37e1fd41eafde95dfb0994d625f6052a04a67c60", - "integrity": "sha512-pQmSvB3YufhJ8xLEfUiSeNpsbDCdWxB/8A20OwqKnq0gina2xtpzFT6ws//kv6xE3jlMFpRjVM7o+A+MMv+H1A==", + "version": "2.0.0-alpha.13", + "resolved": "https://npm.pkg.github.com/download/@IQSS/dataverse-client-javascript/2.0.0-alpha.13/99f81ce18bdd855a54cd79520367516c28b262b8", + "integrity": "sha512-Giv/g1+6bFUTiVcwnzrJhdhWhyMd6gcXLnArN36kxAPrhoR0adRjUa8bevE41Vb5lASw56UoVF17XS/G9Uhj7A==", "license": "MIT", "dependencies": { "@types/node": "^18.15.11", diff --git a/package.json b/package.json index 7b0316b0e..a373e4161 100644 --- a/package.json +++ b/package.json @@ -13,7 +13,7 @@ }, "dependencies": { "@faker-js/faker": "7.6.0", - "@iqss/dataverse-client-javascript": "2.0.0-pr234.4321ffd", + "@iqss/dataverse-client-javascript": "2.0.0-alpha.13", "@iqss/dataverse-design-system": "*", "@istanbuljs/nyc-config-typescript": "1.0.2", "@tanstack/react-table": "8.9.2",