• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

IQSS / dataverse-frontend / 18140405254

30 Sep 2025 06:55PM UTC coverage: 98.052% (+0.7%) from 97.333%
18140405254

push

github

web-flow
Merge pull request #844 from IQSS/jggautier-patch-1

Adding "Featured Items" to changes section of README

1582 of 1638 branches covered (96.58%)

Branch coverage included in aggregate %.

3804 of 3855 relevant lines covered (98.68%)

10860.15 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

89.47
/src/sections/dataset/dataset-files/dataset-upload-files-button/DatasetUploadFilesButton.tsx
1
import { useNavigate } from 'react-router-dom'
2
import { useTranslation } from 'react-i18next'
3
import { PlusLg } from 'react-bootstrap-icons'
4
import { Button } from '@iqss/dataverse-design-system'
5
import { useSession } from '../../../session/SessionContext'
6
import { useDataset } from '../../DatasetContext'
7
import { QueryParamKey, Route } from '../../../Route.enum'
8
import {
9
  DatasetNonNumericVersionSearchParam,
10
  DatasetPublishingStatus
11
} from '../../../../dataset/domain/models/Dataset'
12
import styles from './DatasetUploadFilesButton.module.scss'
13

14
export function DatasetUploadFilesButton() {
10,262✔
15
  const { t } = useTranslation('dataset')
10,262✔
16
  const { user } = useSession()
10,177✔
17
  const { dataset } = useDataset()
10,177✔
18
  const navigate = useNavigate()
10,177✔
19

20
  if (!user || !dataset?.permissions.canUpdateDataset) {
10,177✔
21
    return <></>
10,160✔
22
  }
23

24
  // TODO: remove this when we can handle non-S3 files
17✔
25
  if (!dataset?.fileStore?.startsWith('s3')) {
2✔
26
    return <></>
2✔
27
  }
28

2!
29
  const handleClick = () => {
×
30
    const searchParams = new URLSearchParams()
31
    searchParams.set(QueryParamKey.PERSISTENT_ID, dataset.persistentId)
32

2✔
33
    if (dataset.version.publishingStatus === DatasetPublishingStatus.DRAFT) {
34
      searchParams.set(QueryParamKey.VERSION, DatasetNonNumericVersionSearchParam.DRAFT)
35
    }
17✔
36

37
    navigate(`${Route.UPLOAD_DATASET_FILES}?${searchParams.toString()}`)
38
  }
39

40
  return (
41
    <Button
42
      type="button"
43
      onClick={handleClick}
44
      icon={<PlusLg className={styles.icon} />}
98✔
45
      disabled={dataset.checkIsLockedFromEdits(user.persistentId)}>
46
      {t('datasetActionButtons.uploadFiles')}
47
    </Button>
48
  )
49
}
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2025 Coveralls, Inc