@strapi/upload 5.29.0 → 5.30.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/ai/components/AIAssetCard.js +31 -9
- package/dist/admin/ai/components/AIAssetCard.js.map +1 -1
- package/dist/admin/ai/components/AIAssetCard.mjs +25 -3
- package/dist/admin/ai/components/AIAssetCard.mjs.map +1 -1
- package/dist/admin/ai/components/AIUploadModal.js +3 -2
- package/dist/admin/ai/components/AIUploadModal.js.map +1 -1
- package/dist/admin/ai/components/AIUploadModal.mjs +3 -2
- package/dist/admin/ai/components/AIUploadModal.mjs.map +1 -1
- package/dist/admin/components/AssetCard/AssetCard.js +5 -4
- package/dist/admin/components/AssetCard/AssetCard.js.map +1 -1
- package/dist/admin/components/AssetCard/AssetCard.mjs +2 -1
- package/dist/admin/components/AssetCard/AssetCard.mjs.map +1 -1
- package/dist/admin/components/AssetCard/AssetCardBase.js +1 -1
- package/dist/admin/components/AssetCard/AssetCardBase.mjs +1 -1
- package/dist/admin/components/AssetCard/DocAssetCard.js +3 -7
- package/dist/admin/components/AssetCard/DocAssetCard.js.map +1 -1
- package/dist/admin/components/AssetCard/DocAssetCard.mjs +3 -7
- package/dist/admin/components/AssetCard/DocAssetCard.mjs.map +1 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.js +1 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.js.map +1 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.mjs +1 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.mjs.map +1 -1
- package/dist/admin/components/AssetCard/UploadingAssetCard.js +5 -4
- package/dist/admin/components/AssetCard/UploadingAssetCard.js.map +1 -1
- package/dist/admin/components/AssetCard/UploadingAssetCard.mjs +2 -1
- package/dist/admin/components/AssetCard/UploadingAssetCard.mjs.map +1 -1
- package/dist/admin/components/AssetCard/VideoAssetCard.js +1 -1
- package/dist/admin/components/AssetCard/VideoAssetCard.mjs +1 -1
- package/dist/admin/components/AssetDialog/AssetDialog.js +1 -1
- package/dist/admin/components/AssetDialog/AssetDialog.mjs +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.js +2 -0
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.js.map +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.mjs +2 -0
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.mjs.map +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/Filters.js +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/Filters.mjs +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.js +3 -3
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.js.map +1 -1
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.mjs +2 -2
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.mjs.map +1 -1
- package/dist/admin/components/AssetDialog/SelectedStep/SelectedStep.js +1 -1
- package/dist/admin/components/AssetDialog/SelectedStep/SelectedStep.mjs +1 -1
- package/dist/admin/components/Breadcrumbs/Breadcrumbs.js.map +1 -1
- package/dist/admin/components/Breadcrumbs/Breadcrumbs.mjs.map +1 -1
- package/dist/admin/components/Breadcrumbs/CrumbSimpleMenuAsync.js +1 -1
- package/dist/admin/components/Breadcrumbs/CrumbSimpleMenuAsync.mjs +1 -1
- package/dist/admin/components/BulkMoveDialog/BulkMoveDialog.js +1 -1
- package/dist/admin/components/BulkMoveDialog/BulkMoveDialog.mjs +1 -1
- package/dist/admin/components/CopyLinkButton/CopyLinkButton.js +1 -1
- package/dist/admin/components/CopyLinkButton/CopyLinkButton.mjs +1 -1
- package/dist/admin/components/EditAssetDialog/EditAssetContent.js +9 -6
- package/dist/admin/components/EditAssetDialog/EditAssetContent.js.map +1 -1
- package/dist/admin/components/EditAssetDialog/EditAssetContent.mjs +8 -5
- package/dist/admin/components/EditAssetDialog/EditAssetContent.mjs.map +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.js +15 -34
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.js.map +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.mjs +15 -34
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.mjs.map +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/CroppingActions.js +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/CroppingActions.mjs +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.js +5 -4
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.js.map +1 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.mjs +3 -2
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.mjs.map +1 -1
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.js +3 -3
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.js.map +1 -1
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.mjs +2 -2
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.mjs.map +1 -1
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.js +3 -2
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.js.map +1 -1
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.mjs +3 -2
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.mjs.map +1 -1
- package/dist/admin/components/EditFolderDialog/ModalHeader/ModalHeader.js +1 -1
- package/dist/admin/components/EditFolderDialog/ModalHeader/ModalHeader.mjs +1 -1
- package/dist/admin/components/EmptyAssets/EmptyAssetGrid.js.map +1 -1
- package/dist/admin/components/EmptyAssets/EmptyAssetGrid.mjs.map +1 -1
- package/dist/admin/components/FilterList/FilterList.js.map +1 -1
- package/dist/admin/components/FilterList/FilterList.mjs.map +1 -1
- package/dist/admin/components/FilterList/FilterTag.js.map +1 -1
- package/dist/admin/components/FilterList/FilterTag.mjs.map +1 -1
- package/dist/admin/components/FolderCard/FolderCardBody/FolderCardBody.js.map +1 -1
- package/dist/admin/components/FolderCard/FolderCardBody/FolderCardBody.mjs.map +1 -1
- package/dist/admin/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.js.map +1 -1
- package/dist/admin/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.mjs.map +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.js +8 -10
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.js.map +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.mjs +5 -7
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.mjs.map +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssetActions.js +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssetActions.mjs +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.js +1 -0
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.js.map +1 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs +1 -0
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs.map +1 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.js +1 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.js.map +1 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.mjs +1 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.mjs.map +1 -1
- package/dist/admin/components/SelectTree/Option.js.map +1 -1
- package/dist/admin/components/SelectTree/Option.mjs.map +1 -1
- package/dist/admin/components/SelectTree/SelectTree.js.map +1 -1
- package/dist/admin/components/SelectTree/SelectTree.mjs.map +1 -1
- package/dist/admin/components/SelectTree/utils/flattenTree.js.map +1 -1
- package/dist/admin/components/SelectTree/utils/flattenTree.mjs.map +1 -1
- package/dist/admin/components/SortPicker/SortPicker.js +1 -0
- package/dist/admin/components/SortPicker/SortPicker.js.map +1 -1
- package/dist/admin/components/SortPicker/SortPicker.mjs +1 -0
- package/dist/admin/components/SortPicker/SortPicker.mjs.map +1 -1
- package/dist/admin/components/TableList/CellContent.js +1 -1
- package/dist/admin/components/TableList/CellContent.mjs +1 -1
- package/dist/admin/components/TableList/PreviewCell.js +5 -4
- package/dist/admin/components/TableList/PreviewCell.js.map +1 -1
- package/dist/admin/components/TableList/PreviewCell.mjs +2 -1
- package/dist/admin/components/TableList/PreviewCell.mjs.map +1 -1
- package/dist/admin/components/TableList/TableList.js +1 -0
- package/dist/admin/components/TableList/TableList.js.map +1 -1
- package/dist/admin/components/TableList/TableList.mjs +1 -0
- package/dist/admin/components/TableList/TableList.mjs.map +1 -1
- package/dist/admin/components/TableList/TableRows.js +1 -0
- package/dist/admin/components/TableList/TableRows.js.map +1 -1
- package/dist/admin/components/TableList/TableRows.mjs +1 -0
- package/dist/admin/components/TableList/TableRows.mjs.map +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/AddAssetStep.js +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/AddAssetStep.mjs +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js +3 -2
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js.map +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs +2 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs.map +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.js +3 -3
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.js.map +1 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.mjs +2 -2
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.mjs.map +1 -1
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.js +3 -3
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.js.map +1 -1
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.mjs +2 -2
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.mjs.map +1 -1
- package/dist/admin/components/UploadProgress/UploadProgress.js.map +1 -1
- package/dist/admin/components/UploadProgress/UploadProgress.mjs.map +1 -1
- package/dist/admin/constants.js +5 -10
- package/dist/admin/constants.js.map +1 -1
- package/dist/admin/constants.mjs +5 -11
- package/dist/admin/constants.mjs.map +1 -1
- package/dist/admin/enums.js +20 -0
- package/dist/admin/enums.js.map +1 -0
- package/dist/admin/enums.mjs +17 -0
- package/dist/admin/enums.mjs.map +1 -0
- package/dist/admin/hooks/useBulkEdit.js +1 -1
- package/dist/admin/hooks/useBulkEdit.mjs +1 -1
- package/dist/admin/hooks/useBulkMove.js +1 -1
- package/dist/admin/hooks/useBulkMove.mjs +1 -1
- package/dist/admin/hooks/useBulkRemove.js +1 -1
- package/dist/admin/hooks/useBulkRemove.mjs +1 -1
- package/dist/admin/hooks/useConfig.js +2 -1
- package/dist/admin/hooks/useConfig.js.map +1 -1
- package/dist/admin/hooks/useConfig.mjs +2 -1
- package/dist/admin/hooks/useConfig.mjs.map +1 -1
- package/dist/admin/hooks/useEditAsset.js +1 -1
- package/dist/admin/hooks/useEditAsset.js.map +1 -1
- package/dist/admin/hooks/useEditAsset.mjs +1 -1
- package/dist/admin/hooks/useEditAsset.mjs.map +1 -1
- package/dist/admin/hooks/useEditFolder.js.map +1 -1
- package/dist/admin/hooks/useEditFolder.mjs.map +1 -1
- package/dist/admin/hooks/useFolder.js +1 -1
- package/dist/admin/hooks/useFolder.js.map +1 -1
- package/dist/admin/hooks/useFolder.mjs +1 -1
- package/dist/admin/hooks/useFolder.mjs.map +1 -1
- package/dist/admin/hooks/useFolderStructure.js +1 -1
- package/dist/admin/hooks/useFolderStructure.mjs +1 -1
- package/dist/admin/hooks/useModalQueryParams.js +2 -2
- package/dist/admin/hooks/useModalQueryParams.js.map +1 -1
- package/dist/admin/hooks/useModalQueryParams.mjs +1 -1
- package/dist/admin/hooks/useModalQueryParams.mjs.map +1 -1
- package/dist/admin/hooks/useRemoveAsset.js.map +1 -1
- package/dist/admin/hooks/useRemoveAsset.mjs.map +1 -1
- package/dist/admin/hooks/useTracking.js +24 -0
- package/dist/admin/hooks/useTracking.js.map +1 -0
- package/dist/admin/hooks/useTracking.mjs +22 -0
- package/dist/admin/hooks/useTracking.mjs.map +1 -0
- package/dist/admin/hooks/useUpload.js.map +1 -1
- package/dist/admin/hooks/useUpload.mjs.map +1 -1
- package/dist/admin/index.js +1 -0
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +1 -0
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/package.json.js +5 -5
- package/dist/admin/package.json.mjs +5 -5
- package/dist/admin/pages/App/App.js +1 -1
- package/dist/admin/pages/App/App.mjs +1 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.js +1 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.js.map +1 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.mjs +1 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.mjs.map +1 -1
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.js +1 -0
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.js.map +1 -1
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.mjs +1 -0
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.mjs.map +1 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.js.map +1 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.mjs.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/MediaLibrary.js +1 -0
- package/dist/admin/pages/App/MediaLibrary/MediaLibrary.js.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/MediaLibrary.mjs +1 -0
- package/dist/admin/pages/App/MediaLibrary/MediaLibrary.mjs.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/BulkActions.js +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/BulkActions.mjs +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/EmptyOrNoPermissions.js +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/EmptyOrNoPermissions.mjs +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Filters.js +3 -2
- package/dist/admin/pages/App/MediaLibrary/components/Filters.js.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Filters.mjs +3 -2
- package/dist/admin/pages/App/MediaLibrary/components/Filters.mjs.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Header.js +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Header.js.map +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Header.mjs +1 -1
- package/dist/admin/pages/App/MediaLibrary/components/Header.mjs.map +1 -1
- package/dist/admin/pages/SettingsPage/SettingsPage.js +1 -0
- package/dist/admin/pages/SettingsPage/SettingsPage.js.map +1 -1
- package/dist/admin/pages/SettingsPage/SettingsPage.mjs +1 -0
- package/dist/admin/pages/SettingsPage/SettingsPage.mjs.map +1 -1
- package/dist/admin/src/components/AssetCard/UploadingAssetCard.d.ts +1 -1
- package/dist/admin/src/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.d.ts +1 -1
- package/dist/admin/src/constants.d.ts +0 -6
- package/dist/admin/src/enums.d.ts +12 -0
- package/dist/admin/src/hooks/useTracking.d.ts +4 -0
- package/dist/admin/src/utils/icons.d.ts +14 -0
- package/dist/admin/src/utils/rawFileToAsset.d.ts +1 -1
- package/dist/admin/src/utils/typeFromMime.d.ts +2 -2
- package/dist/admin/src/utils/urlsToAssets.d.ts +1 -1
- package/dist/admin/translations/pt-BR.json.js +75 -7
- package/dist/admin/translations/pt-BR.json.js.map +1 -1
- package/dist/admin/translations/pt-BR.json.mjs +75 -7
- package/dist/admin/translations/pt-BR.json.mjs.map +1 -1
- package/dist/admin/utils/formatBytes.js.map +1 -1
- package/dist/admin/utils/formatBytes.mjs.map +1 -1
- package/dist/admin/utils/formatDuration.js.map +1 -1
- package/dist/admin/utils/formatDuration.mjs.map +1 -1
- package/dist/admin/utils/getFolderURL.js.map +1 -1
- package/dist/admin/utils/getFolderURL.mjs.map +1 -1
- package/dist/admin/utils/getTrad.js.map +1 -1
- package/dist/admin/utils/getTrad.mjs.map +1 -1
- package/dist/admin/utils/icons.js +23 -0
- package/dist/admin/utils/icons.js.map +1 -0
- package/dist/admin/utils/icons.mjs +19 -0
- package/dist/admin/utils/icons.mjs.map +1 -0
- package/dist/admin/utils/normalizeAPIError.js.map +1 -1
- package/dist/admin/utils/normalizeAPIError.mjs.map +1 -1
- package/dist/admin/utils/prefixFileUrlWithBackendUrl.js.map +1 -1
- package/dist/admin/utils/prefixFileUrlWithBackendUrl.mjs.map +1 -1
- package/dist/admin/utils/prefixPluginTranslations.js.map +1 -1
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +1 -1
- package/dist/admin/utils/typeFromMime.js +15 -11
- package/dist/admin/utils/typeFromMime.js.map +1 -1
- package/dist/admin/utils/typeFromMime.mjs +15 -11
- package/dist/admin/utils/typeFromMime.mjs.map +1 -1
- package/dist/server/controllers/admin-folder-file.js +2 -2
- package/dist/server/controllers/admin-folder-file.js.map +1 -1
- package/dist/server/controllers/admin-folder-file.mjs +2 -2
- package/dist/server/controllers/admin-folder-file.mjs.map +1 -1
- package/dist/server/controllers/admin-upload.js +1 -1
- package/dist/server/controllers/admin-upload.js.map +1 -1
- package/dist/server/controllers/admin-upload.mjs +1 -1
- package/dist/server/controllers/admin-upload.mjs.map +1 -1
- package/dist/server/controllers/utils/folders.js.map +1 -1
- package/dist/server/controllers/utils/folders.mjs.map +1 -1
- package/dist/server/controllers/validation/admin/folder-file.js.map +1 -1
- package/dist/server/controllers/validation/admin/folder-file.mjs.map +1 -1
- package/dist/server/controllers/validation/admin/folder.js +1 -1
- package/dist/server/controllers/validation/admin/folder.js.map +1 -1
- package/dist/server/controllers/validation/admin/folder.mjs +1 -1
- package/dist/server/controllers/validation/admin/folder.mjs.map +1 -1
- package/dist/server/register.js.map +1 -1
- package/dist/server/register.mjs.map +1 -1
- package/dist/server/services/ai-metadata.js.map +1 -1
- package/dist/server/services/ai-metadata.mjs.map +1 -1
- package/dist/server/services/api-upload-folder.js.map +1 -1
- package/dist/server/services/api-upload-folder.mjs.map +1 -1
- package/dist/server/services/folder.js.map +1 -1
- package/dist/server/services/folder.mjs.map +1 -1
- package/dist/server/services/image-manipulation.js.map +1 -1
- package/dist/server/services/image-manipulation.mjs.map +1 -1
- package/dist/server/services/metrics.js +14 -1
- package/dist/server/services/metrics.js.map +1 -1
- package/dist/server/services/metrics.mjs +14 -1
- package/dist/server/services/metrics.mjs.map +1 -1
- package/dist/server/services/upload.js +8 -8
- package/dist/server/services/upload.js.map +1 -1
- package/dist/server/services/upload.mjs +8 -8
- package/dist/server/services/upload.mjs.map +1 -1
- package/dist/server/services/weekly-metrics.js +3 -6
- package/dist/server/services/weekly-metrics.js.map +1 -1
- package/dist/server/services/weekly-metrics.mjs +3 -6
- package/dist/server/services/weekly-metrics.mjs.map +1 -1
- package/dist/server/src/index.d.ts +1 -1
- package/dist/server/src/services/index.d.ts +1 -1
- package/dist/server/src/services/metrics.d.ts +1 -0
- package/dist/server/src/services/metrics.d.ts.map +1 -1
- package/dist/server/src/services/upload.d.ts.map +1 -1
- package/dist/server/src/services/weekly-metrics.d.ts +0 -1
- package/dist/server/src/services/weekly-metrics.d.ts.map +1 -1
- package/dist/server/utils/cron.js.map +1 -1
- package/dist/server/utils/cron.mjs.map +1 -1
- package/package.json +5 -5
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchAsset.js","sources":["../../../../../../admin/src/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.tsx"],"sourcesContent":["// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport {
|
|
1
|
+
{"version":3,"file":"SearchAsset.js","sources":["../../../../../../admin/src/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.tsx"],"sourcesContent":["// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport { IconButton, Searchbar, SearchForm } from '@strapi/design-system';\nimport { Search } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { useTracking } from '../../../../hooks/useTracking';\nimport { getTrad } from '../../../../utils';\n\nimport type { Query } from '../../../../../../shared/contracts/files';\n\ninterface SearchAssetProps {\n onChangeSearch: (_q: Query['_q'] | null) => void;\n queryValue?: Query['_q'] | null;\n}\n\nexport const SearchAsset = ({ onChangeSearch, queryValue = null }: SearchAssetProps) => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = React.useState(!!queryValue);\n const [value, setValue] = React.useState(queryValue || '');\n const wrapperRef = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(() => {\n if (isOpen) {\n setTimeout(() => {\n wrapperRef.current?.querySelector('input')?.focus();\n }, 0);\n }\n }, [isOpen]);\n\n const handleToggle = () => {\n setIsOpen((prev) => !prev);\n };\n\n const handleClear = () => {\n handleToggle();\n onChangeSearch(null);\n };\n\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n trackUsage('didSearchMediaLibraryElements', { location: 'content-manager' });\n onChangeSearch(value);\n };\n\n if (isOpen) {\n return (\n <div ref={wrapperRef}>\n <SearchForm onSubmit={handleSubmit}>\n <Searchbar\n name=\"search\"\n onClear={handleClear}\n onChange={(e) => setValue(e.target.value)}\n clearLabel={formatMessage({\n id: getTrad('search.clear.label'),\n defaultMessage: 'Clear the search',\n })}\n aria-label=\"search\"\n size=\"S\"\n value={value}\n placeholder={formatMessage({\n id: getTrad('search.placeholder'),\n defaultMessage: 'e.g: the first dog on the moon',\n })}\n >\n {formatMessage({ id: getTrad('search.label'), defaultMessage: 'Search for an asset' })}\n </Searchbar>\n </SearchForm>\n </div>\n );\n }\n\n return (\n <IconButton label=\"Search\" onClick={handleToggle}>\n <Search />\n </IconButton>\n );\n};\n"],"names":["SearchAsset","onChangeSearch","queryValue","formatMessage","useIntl","trackUsage","useTracking","isOpen","setIsOpen","React","useState","value","setValue","wrapperRef","useRef","useLayoutEffect","setTimeout","current","querySelector","focus","handleToggle","prev","handleClear","handleSubmit","e","preventDefault","stopPropagation","location","_jsx","div","ref","SearchForm","onSubmit","Searchbar","name","onClear","onChange","target","clearLabel","id","getTrad","defaultMessage","aria-label","size","placeholder","IconButton","label","onClick","Search"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAiBO,MAAMA,cAAc,CAAC,EAAEC,cAAc,EAAEC,UAAAA,GAAa,IAAI,EAAoB,GAAA;IACjF,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAEC,UAAU,EAAE,GAAGC,uBAAAA,EAAAA;IACvB,MAAM,CAACC,QAAQC,SAAU,CAAA,GAAGC,iBAAMC,QAAQ,CAAC,CAAC,CAACR,UAAAA,CAAAA;AAC7C,IAAA,MAAM,CAACS,KAAOC,EAAAA,QAAAA,CAAS,GAAGH,gBAAMC,CAAAA,QAAQ,CAACR,UAAc,IAAA,EAAA,CAAA;IACvD,MAAMW,UAAAA,GAAaJ,gBAAMK,CAAAA,MAAM,CAAiB,IAAA,CAAA;AAEhDL,IAAAA,gBAAAA,CAAMM,eAAe,CAAC,IAAA;AACpB,QAAA,IAAIR,MAAQ,EAAA;YACVS,UAAW,CAAA,IAAA;gBACTH,UAAWI,CAAAA,OAAO,EAAEC,aAAAA,CAAc,OAAUC,CAAAA,EAAAA,KAAAA,EAAAA;aAC3C,EAAA,CAAA,CAAA;AACL;KACC,EAAA;AAACZ,QAAAA;AAAO,KAAA,CAAA;AAEX,IAAA,MAAMa,YAAe,GAAA,IAAA;QACnBZ,SAAU,CAAA,CAACa,OAAS,CAACA,IAAAA,CAAAA;AACvB,KAAA;AAEA,IAAA,MAAMC,WAAc,GAAA,IAAA;AAClBF,QAAAA,YAAAA,EAAAA;QACAnB,cAAe,CAAA,IAAA,CAAA;AACjB,KAAA;AAEA,IAAA,MAAMsB,eAAe,CAACC,CAAAA,GAAAA;AACpBA,QAAAA,CAAAA,CAAEC,cAAc,EAAA;AAChBD,QAAAA,CAAAA,CAAEE,eAAe,EAAA;AAEjBrB,QAAAA,UAAAA,CAAW,+BAAiC,EAAA;YAAEsB,QAAU,EAAA;AAAkB,SAAA,CAAA;QAC1E1B,cAAeU,CAAAA,KAAAA,CAAAA;AACjB,KAAA;AAEA,IAAA,IAAIJ,MAAQ,EAAA;AACV,QAAA,qBACEqB,cAACC,CAAAA,KAAAA,EAAAA;YAAIC,GAAKjB,EAAAA,UAAAA;AACR,YAAA,QAAA,gBAAAe,cAACG,CAAAA,uBAAAA,EAAAA;gBAAWC,QAAUT,EAAAA,YAAAA;AACpB,gBAAA,QAAA,gBAAAK,cAACK,CAAAA,sBAAAA,EAAAA;oBACCC,IAAK,EAAA,QAAA;oBACLC,OAASb,EAAAA,WAAAA;AACTc,oBAAAA,QAAAA,EAAU,CAACZ,CAAMZ,GAAAA,QAAAA,CAASY,CAAEa,CAAAA,MAAM,CAAC1B,KAAK,CAAA;AACxC2B,oBAAAA,UAAAA,EAAYnC,aAAc,CAAA;AACxBoC,wBAAAA,EAAAA,EAAIC,eAAQ,CAAA,oBAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA,CAAA;oBACAC,YAAW,EAAA,QAAA;oBACXC,IAAK,EAAA,GAAA;oBACLhC,KAAOA,EAAAA,KAAAA;AACPiC,oBAAAA,WAAAA,EAAazC,aAAc,CAAA;AACzBoC,wBAAAA,EAAAA,EAAIC,eAAQ,CAAA,oBAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA,CAAA;8BAECtC,aAAc,CAAA;AAAEoC,wBAAAA,EAAAA,EAAIC,eAAQ,CAAA,cAAA,CAAA;wBAAiBC,cAAgB,EAAA;AAAsB,qBAAA;;;;AAK9F;AAEA,IAAA,qBACEb,cAACiB,CAAAA,uBAAAA,EAAAA;QAAWC,KAAM,EAAA,QAAA;QAASC,OAAS3B,EAAAA,YAAAA;AAClC,QAAA,QAAA,gBAAAQ,cAACoB,CAAAA,YAAAA,EAAAA,EAAAA;;AAGP;;;;"}
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { useTracking } from '@strapi/admin/strapi-admin';
|
|
4
3
|
import { SearchForm, Searchbar, IconButton } from '@strapi/design-system';
|
|
5
4
|
import { Search } from '@strapi/icons';
|
|
6
5
|
import { useIntl } from 'react-intl';
|
|
6
|
+
import { useTracking } from '../../../../hooks/useTracking.mjs';
|
|
7
7
|
import 'byte-size';
|
|
8
8
|
import 'date-fns';
|
|
9
9
|
import { getTrad } from '../../../../utils/getTrad.mjs';
|
|
10
10
|
import 'qs';
|
|
11
|
-
import '../../../../
|
|
11
|
+
import '../../../../utils/typeFromMime.mjs';
|
|
12
12
|
import '../../../../utils/urlYupSchema.mjs';
|
|
13
13
|
|
|
14
14
|
// TODO: find a better naming convention for the file that was an index file before
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"SearchAsset.mjs","sources":["../../../../../../admin/src/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.tsx"],"sourcesContent":["// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport {
|
|
1
|
+
{"version":3,"file":"SearchAsset.mjs","sources":["../../../../../../admin/src/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.tsx"],"sourcesContent":["// TODO: find a better naming convention for the file that was an index file before\nimport * as React from 'react';\n\nimport { IconButton, Searchbar, SearchForm } from '@strapi/design-system';\nimport { Search } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { useTracking } from '../../../../hooks/useTracking';\nimport { getTrad } from '../../../../utils';\n\nimport type { Query } from '../../../../../../shared/contracts/files';\n\ninterface SearchAssetProps {\n onChangeSearch: (_q: Query['_q'] | null) => void;\n queryValue?: Query['_q'] | null;\n}\n\nexport const SearchAsset = ({ onChangeSearch, queryValue = null }: SearchAssetProps) => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = React.useState(!!queryValue);\n const [value, setValue] = React.useState(queryValue || '');\n const wrapperRef = React.useRef<HTMLDivElement>(null);\n\n React.useLayoutEffect(() => {\n if (isOpen) {\n setTimeout(() => {\n wrapperRef.current?.querySelector('input')?.focus();\n }, 0);\n }\n }, [isOpen]);\n\n const handleToggle = () => {\n setIsOpen((prev) => !prev);\n };\n\n const handleClear = () => {\n handleToggle();\n onChangeSearch(null);\n };\n\n const handleSubmit = (e: React.FormEvent<HTMLFormElement>) => {\n e.preventDefault();\n e.stopPropagation();\n\n trackUsage('didSearchMediaLibraryElements', { location: 'content-manager' });\n onChangeSearch(value);\n };\n\n if (isOpen) {\n return (\n <div ref={wrapperRef}>\n <SearchForm onSubmit={handleSubmit}>\n <Searchbar\n name=\"search\"\n onClear={handleClear}\n onChange={(e) => setValue(e.target.value)}\n clearLabel={formatMessage({\n id: getTrad('search.clear.label'),\n defaultMessage: 'Clear the search',\n })}\n aria-label=\"search\"\n size=\"S\"\n value={value}\n placeholder={formatMessage({\n id: getTrad('search.placeholder'),\n defaultMessage: 'e.g: the first dog on the moon',\n })}\n >\n {formatMessage({ id: getTrad('search.label'), defaultMessage: 'Search for an asset' })}\n </Searchbar>\n </SearchForm>\n </div>\n );\n }\n\n return (\n <IconButton label=\"Search\" onClick={handleToggle}>\n <Search />\n </IconButton>\n );\n};\n"],"names":["SearchAsset","onChangeSearch","queryValue","formatMessage","useIntl","trackUsage","useTracking","isOpen","setIsOpen","React","useState","value","setValue","wrapperRef","useRef","useLayoutEffect","setTimeout","current","querySelector","focus","handleToggle","prev","handleClear","handleSubmit","e","preventDefault","stopPropagation","location","_jsx","div","ref","SearchForm","onSubmit","Searchbar","name","onClear","onChange","target","clearLabel","id","getTrad","defaultMessage","aria-label","size","placeholder","IconButton","label","onClick","Search"],"mappings":";;;;;;;;;;;;;AAAA;AAiBO,MAAMA,cAAc,CAAC,EAAEC,cAAc,EAAEC,UAAAA,GAAa,IAAI,EAAoB,GAAA;IACjF,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;IAC1B,MAAM,EAAEC,UAAU,EAAE,GAAGC,WAAAA,EAAAA;IACvB,MAAM,CAACC,QAAQC,SAAU,CAAA,GAAGC,MAAMC,QAAQ,CAAC,CAAC,CAACR,UAAAA,CAAAA;AAC7C,IAAA,MAAM,CAACS,KAAOC,EAAAA,QAAAA,CAAS,GAAGH,KAAMC,CAAAA,QAAQ,CAACR,UAAc,IAAA,EAAA,CAAA;IACvD,MAAMW,UAAAA,GAAaJ,KAAMK,CAAAA,MAAM,CAAiB,IAAA,CAAA;AAEhDL,IAAAA,KAAAA,CAAMM,eAAe,CAAC,IAAA;AACpB,QAAA,IAAIR,MAAQ,EAAA;YACVS,UAAW,CAAA,IAAA;gBACTH,UAAWI,CAAAA,OAAO,EAAEC,aAAAA,CAAc,OAAUC,CAAAA,EAAAA,KAAAA,EAAAA;aAC3C,EAAA,CAAA,CAAA;AACL;KACC,EAAA;AAACZ,QAAAA;AAAO,KAAA,CAAA;AAEX,IAAA,MAAMa,YAAe,GAAA,IAAA;QACnBZ,SAAU,CAAA,CAACa,OAAS,CAACA,IAAAA,CAAAA;AACvB,KAAA;AAEA,IAAA,MAAMC,WAAc,GAAA,IAAA;AAClBF,QAAAA,YAAAA,EAAAA;QACAnB,cAAe,CAAA,IAAA,CAAA;AACjB,KAAA;AAEA,IAAA,MAAMsB,eAAe,CAACC,CAAAA,GAAAA;AACpBA,QAAAA,CAAAA,CAAEC,cAAc,EAAA;AAChBD,QAAAA,CAAAA,CAAEE,eAAe,EAAA;AAEjBrB,QAAAA,UAAAA,CAAW,+BAAiC,EAAA;YAAEsB,QAAU,EAAA;AAAkB,SAAA,CAAA;QAC1E1B,cAAeU,CAAAA,KAAAA,CAAAA;AACjB,KAAA;AAEA,IAAA,IAAIJ,MAAQ,EAAA;AACV,QAAA,qBACEqB,GAACC,CAAAA,KAAAA,EAAAA;YAAIC,GAAKjB,EAAAA,UAAAA;AACR,YAAA,QAAA,gBAAAe,GAACG,CAAAA,UAAAA,EAAAA;gBAAWC,QAAUT,EAAAA,YAAAA;AACpB,gBAAA,QAAA,gBAAAK,GAACK,CAAAA,SAAAA,EAAAA;oBACCC,IAAK,EAAA,QAAA;oBACLC,OAASb,EAAAA,WAAAA;AACTc,oBAAAA,QAAAA,EAAU,CAACZ,CAAMZ,GAAAA,QAAAA,CAASY,CAAEa,CAAAA,MAAM,CAAC1B,KAAK,CAAA;AACxC2B,oBAAAA,UAAAA,EAAYnC,aAAc,CAAA;AACxBoC,wBAAAA,EAAAA,EAAIC,OAAQ,CAAA,oBAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA,CAAA;oBACAC,YAAW,EAAA,QAAA;oBACXC,IAAK,EAAA,GAAA;oBACLhC,KAAOA,EAAAA,KAAAA;AACPiC,oBAAAA,WAAAA,EAAazC,aAAc,CAAA;AACzBoC,wBAAAA,EAAAA,EAAIC,OAAQ,CAAA,oBAAA,CAAA;wBACZC,cAAgB,EAAA;AAClB,qBAAA,CAAA;8BAECtC,aAAc,CAAA;AAAEoC,wBAAAA,EAAAA,EAAIC,OAAQ,CAAA,cAAA,CAAA;wBAAiBC,cAAgB,EAAA;AAAsB,qBAAA;;;;AAK9F;AAEA,IAAA,qBACEb,GAACiB,CAAAA,UAAAA,EAAAA;QAAWC,KAAM,EAAA,QAAA;QAASC,OAAS3B,EAAAA,YAAAA;AAClC,QAAA,QAAA,gBAAAQ,GAACoB,CAAAA,MAAAA,EAAAA,EAAAA;;AAGP;;;;"}
|
|
@@ -7,7 +7,7 @@ require('byte-size');
|
|
|
7
7
|
require('date-fns');
|
|
8
8
|
var getTrad = require('../../../utils/getTrad.js');
|
|
9
9
|
require('qs');
|
|
10
|
-
require('../../../
|
|
10
|
+
require('../../../utils/typeFromMime.js');
|
|
11
11
|
require('../../../utils/urlYupSchema.js');
|
|
12
12
|
var AssetGridList = require('../../AssetGridList/AssetGridList.js');
|
|
13
13
|
|
|
@@ -5,7 +5,7 @@ import 'byte-size';
|
|
|
5
5
|
import 'date-fns';
|
|
6
6
|
import { getTrad } from '../../../utils/getTrad.mjs';
|
|
7
7
|
import 'qs';
|
|
8
|
-
import '../../../
|
|
8
|
+
import '../../../utils/typeFromMime.mjs';
|
|
9
9
|
import '../../../utils/urlYupSchema.mjs';
|
|
10
10
|
import { AssetGridList } from '../../AssetGridList/AssetGridList.mjs';
|
|
11
11
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.js","sources":["../../../../admin/src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import {\n Breadcrumbs as BaseBreadcrumbs,\n Crumb,\n CrumbLink,\n BreadcrumbsProps as BaseBreadcrumbsProps,\n} from '@strapi/design-system';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport { Link as ReactRouterLink } from 'react-router-dom';\n\nimport { CrumbSimpleMenuAsync } from './CrumbSimpleMenuAsync';\n\nexport type CrumbDefinition = {\n id?: number | null;\n label?: MessageDescriptor | string;\n href?: string;\n path?: string;\n};\n\nexport interface BreadcrumbsProps extends BaseBreadcrumbsProps {\n breadcrumbs: Array<CrumbDefinition>;\n currentFolderId?: number;\n onChangeFolder?: (id: number, path?: string) => void;\n}\n\nexport const Breadcrumbs = ({\n breadcrumbs,\n onChangeFolder,\n currentFolderId,\n ...props\n}: BreadcrumbsProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <BaseBreadcrumbs {...props}>\n {breadcrumbs.map((crumb, index) => {\n if (Array.isArray(crumb)) {\n return (\n <CrumbSimpleMenuAsync\n parentsToOmit={[...breadcrumbs]\n .splice(index + 1, breadcrumbs.length - 1)\n .map((parent) => parent.id!)}\n key={`breadcrumb-${crumb?.id ?? 'menu'}`}\n currentFolderId={currentFolderId}\n onChangeFolder={onChangeFolder}\n />\n );\n }\n\n const isCurrentFolderMediaLibrary = crumb.id === null && currentFolderId === undefined;\n\n if (currentFolderId !== crumb.id && !isCurrentFolderMediaLibrary) {\n if (onChangeFolder) {\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n type=\"button\"\n onClick={() => onChangeFolder(crumb.id!, crumb.path)}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n to={crumb.href}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore - `tag` prop is not defined in the `BaseLinkProps` type\n tag={ReactRouterLink}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n\n return (\n <Crumb\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n isCurrent={index + 1 === breadcrumbs.length}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </Crumb>\n );\n })}\n </BaseBreadcrumbs>\n );\n};\n"],"names":["Breadcrumbs","breadcrumbs","onChangeFolder","currentFolderId","props","formatMessage","useIntl","_jsx","BaseBreadcrumbs","map","crumb","index","Array","isArray","CrumbSimpleMenuAsync","parentsToOmit","splice","length","parent","id","isCurrentFolderMediaLibrary","undefined","CrumbLink","type","onClick","path","label","to","href","tag","ReactRouterLink","Crumb","isCurrent"],"mappings":";;;;;;;;AAwBO,MAAMA,WAAc,GAAA,CAAC,EAC1BC,WAAW,EACXC,cAAc,EACdC,eAAe,EACf,GAAGC,KACc,EAAA,GAAA;IACjB,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEC,cAACC,CAAAA,wBAAAA,EAAAA;AAAiB,QAAA,GAAGJ,KAAK;kBACvBH,WAAYQ,CAAAA,GAAG,CAAC,CAACC,KAAOC,EAAAA,KAAAA,GAAAA;YACvB,IAAIC,KAAAA,CAAMC,OAAO,CAACH,KAAQ,CAAA,EAAA;AACxB,gBAAA,qBACEH,cAACO,CAAAA,yCAAAA,EAAAA;oBACCC,aAAe,EAAA;AAAId,wBAAAA,GAAAA;AAAY,qBAAA,CAC5Be,MAAM,CAACL,KAAQ,GAAA,CAAA,EAAGV,WAAYgB,CAAAA,MAAM,GAAG,CAAA,CAAA,CACvCR,GAAG,CAAC,CAACS,MAAAA,GAAWA,OAAOC,EAAE,CAAA;oBAE5BhB,eAAiBA,EAAAA,eAAAA;oBACjBD,cAAgBA,EAAAA;AAFX,iBAAA,EAAA,CAAC,WAAW,EAAEQ,KAAOS,EAAAA,EAAAA,IAAM,
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.js","sources":["../../../../admin/src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import {\n Breadcrumbs as BaseBreadcrumbs,\n Crumb,\n CrumbLink,\n BreadcrumbsProps as BaseBreadcrumbsProps,\n} from '@strapi/design-system';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport { Link as ReactRouterLink } from 'react-router-dom';\n\nimport { CrumbSimpleMenuAsync } from './CrumbSimpleMenuAsync';\n\nexport type CrumbDefinition = {\n id?: number | null;\n label?: MessageDescriptor | string;\n href?: string;\n path?: string;\n};\n\nexport interface BreadcrumbsProps extends BaseBreadcrumbsProps {\n breadcrumbs: Array<CrumbDefinition>;\n currentFolderId?: number;\n onChangeFolder?: (id: number, path?: string) => void;\n}\n\nexport const Breadcrumbs = ({\n breadcrumbs,\n onChangeFolder,\n currentFolderId,\n ...props\n}: BreadcrumbsProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <BaseBreadcrumbs {...props}>\n {breadcrumbs.map((crumb, index) => {\n if (Array.isArray(crumb)) {\n return (\n <CrumbSimpleMenuAsync\n parentsToOmit={[...breadcrumbs]\n .splice(index + 1, breadcrumbs.length - 1)\n .map((parent) => parent.id!)}\n key={`breadcrumb-${crumb?.id ?? 'menu'}`}\n currentFolderId={currentFolderId}\n onChangeFolder={onChangeFolder}\n />\n );\n }\n\n const isCurrentFolderMediaLibrary = crumb.id === null && currentFolderId === undefined;\n\n if (currentFolderId !== crumb.id && !isCurrentFolderMediaLibrary) {\n if (onChangeFolder) {\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n type=\"button\"\n onClick={() => onChangeFolder(crumb.id!, crumb.path)}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n to={crumb.href}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore - `tag` prop is not defined in the `BaseLinkProps` type\n tag={ReactRouterLink}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n\n return (\n <Crumb\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n isCurrent={index + 1 === breadcrumbs.length}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </Crumb>\n );\n })}\n </BaseBreadcrumbs>\n );\n};\n"],"names":["Breadcrumbs","breadcrumbs","onChangeFolder","currentFolderId","props","formatMessage","useIntl","_jsx","BaseBreadcrumbs","map","crumb","index","Array","isArray","CrumbSimpleMenuAsync","parentsToOmit","splice","length","parent","id","isCurrentFolderMediaLibrary","undefined","CrumbLink","type","onClick","path","label","to","href","tag","ReactRouterLink","Crumb","isCurrent"],"mappings":";;;;;;;;AAwBO,MAAMA,WAAc,GAAA,CAAC,EAC1BC,WAAW,EACXC,cAAc,EACdC,eAAe,EACf,GAAGC,KACc,EAAA,GAAA;IACjB,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;AAE1B,IAAA,qBACEC,cAACC,CAAAA,wBAAAA,EAAAA;AAAiB,QAAA,GAAGJ,KAAK;kBACvBH,WAAYQ,CAAAA,GAAG,CAAC,CAACC,KAAOC,EAAAA,KAAAA,GAAAA;YACvB,IAAIC,KAAAA,CAAMC,OAAO,CAACH,KAAQ,CAAA,EAAA;AACxB,gBAAA,qBACEH,cAACO,CAAAA,yCAAAA,EAAAA;oBACCC,aAAe,EAAA;AAAId,wBAAAA,GAAAA;AAAY,qBAAA,CAC5Be,MAAM,CAACL,KAAQ,GAAA,CAAA,EAAGV,WAAYgB,CAAAA,MAAM,GAAG,CAAA,CAAA,CACvCR,GAAG,CAAC,CAACS,MAAAA,GAAWA,OAAOC,EAAE,CAAA;oBAE5BhB,eAAiBA,EAAAA,eAAAA;oBACjBD,cAAgBA,EAAAA;AAFX,iBAAA,EAAA,CAAC,WAAW,EAAEQ,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAK9C;AAEA,YAAA,MAAMC,2BAA8BV,GAAAA,KAAAA,CAAMS,EAAE,KAAK,QAAQhB,eAAoBkB,KAAAA,SAAAA;AAE7E,YAAA,IAAIlB,eAAoBO,KAAAA,KAAAA,CAAMS,EAAE,IAAI,CAACC,2BAA6B,EAAA;AAChE,gBAAA,IAAIlB,cAAgB,EAAA;AAClB,oBAAA,qBACEK,cAACe,CAAAA,sBAAAA,EAAAA;wBAECC,IAAK,EAAA,QAAA;AACLC,wBAAAA,OAAAA,EAAS,IAAMtB,cAAeQ,CAAAA,KAAAA,CAAMS,EAAE,EAAGT,MAAMe,IAAI,CAAA;AAElD,wBAAA,QAAA,EAAA,OAAOf,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AANN,qBAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAS9C;AACA,gBAAA,qBACEZ,cAACe,CAAAA,sBAAAA,EAAAA;AAECK,oBAAAA,EAAAA,EAAIjB,MAAMkB,IAAI;;;oBAGdC,GAAKC,EAAAA,mBAAAA;AAEJ,oBAAA,QAAA,EAAA,OAAOpB,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AARN,iBAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAW9C;AAEA,YAAA,qBACEZ,cAACwB,CAAAA,kBAAAA,EAAAA;gBAECC,SAAWrB,EAAAA,KAAAA,GAAQ,CAAMV,KAAAA,WAAAA,CAAYgB,MAAM;AAE1C,gBAAA,QAAA,EAAA,OAAOP,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AALN,aAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAQ9C,SAAA;;AAGN;;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Breadcrumbs.mjs","sources":["../../../../admin/src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import {\n Breadcrumbs as BaseBreadcrumbs,\n Crumb,\n CrumbLink,\n BreadcrumbsProps as BaseBreadcrumbsProps,\n} from '@strapi/design-system';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport { Link as ReactRouterLink } from 'react-router-dom';\n\nimport { CrumbSimpleMenuAsync } from './CrumbSimpleMenuAsync';\n\nexport type CrumbDefinition = {\n id?: number | null;\n label?: MessageDescriptor | string;\n href?: string;\n path?: string;\n};\n\nexport interface BreadcrumbsProps extends BaseBreadcrumbsProps {\n breadcrumbs: Array<CrumbDefinition>;\n currentFolderId?: number;\n onChangeFolder?: (id: number, path?: string) => void;\n}\n\nexport const Breadcrumbs = ({\n breadcrumbs,\n onChangeFolder,\n currentFolderId,\n ...props\n}: BreadcrumbsProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <BaseBreadcrumbs {...props}>\n {breadcrumbs.map((crumb, index) => {\n if (Array.isArray(crumb)) {\n return (\n <CrumbSimpleMenuAsync\n parentsToOmit={[...breadcrumbs]\n .splice(index + 1, breadcrumbs.length - 1)\n .map((parent) => parent.id!)}\n key={`breadcrumb-${crumb?.id ?? 'menu'}`}\n currentFolderId={currentFolderId}\n onChangeFolder={onChangeFolder}\n />\n );\n }\n\n const isCurrentFolderMediaLibrary = crumb.id === null && currentFolderId === undefined;\n\n if (currentFolderId !== crumb.id && !isCurrentFolderMediaLibrary) {\n if (onChangeFolder) {\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n type=\"button\"\n onClick={() => onChangeFolder(crumb.id!, crumb.path)}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n to={crumb.href}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore - `tag` prop is not defined in the `BaseLinkProps` type\n tag={ReactRouterLink}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n\n return (\n <Crumb\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n isCurrent={index + 1 === breadcrumbs.length}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </Crumb>\n );\n })}\n </BaseBreadcrumbs>\n );\n};\n"],"names":["Breadcrumbs","breadcrumbs","onChangeFolder","currentFolderId","props","formatMessage","useIntl","_jsx","BaseBreadcrumbs","map","crumb","index","Array","isArray","CrumbSimpleMenuAsync","parentsToOmit","splice","length","parent","id","isCurrentFolderMediaLibrary","undefined","CrumbLink","type","onClick","path","label","to","href","tag","ReactRouterLink","Crumb","isCurrent"],"mappings":";;;;;;AAwBO,MAAMA,WAAc,GAAA,CAAC,EAC1BC,WAAW,EACXC,cAAc,EACdC,eAAe,EACf,GAAGC,KACc,EAAA,GAAA;IACjB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,GAACC,CAAAA,aAAAA,EAAAA;AAAiB,QAAA,GAAGJ,KAAK;kBACvBH,WAAYQ,CAAAA,GAAG,CAAC,CAACC,KAAOC,EAAAA,KAAAA,GAAAA;YACvB,IAAIC,KAAAA,CAAMC,OAAO,CAACH,KAAQ,CAAA,EAAA;AACxB,gBAAA,qBACEH,GAACO,CAAAA,oBAAAA,EAAAA;oBACCC,aAAe,EAAA;AAAId,wBAAAA,GAAAA;AAAY,qBAAA,CAC5Be,MAAM,CAACL,KAAQ,GAAA,CAAA,EAAGV,WAAYgB,CAAAA,MAAM,GAAG,CAAA,CAAA,CACvCR,GAAG,CAAC,CAACS,MAAAA,GAAWA,OAAOC,EAAE,CAAA;oBAE5BhB,eAAiBA,EAAAA,eAAAA;oBACjBD,cAAgBA,EAAAA;AAFX,iBAAA,EAAA,CAAC,WAAW,EAAEQ,KAAOS,EAAAA,EAAAA,IAAM,
|
|
1
|
+
{"version":3,"file":"Breadcrumbs.mjs","sources":["../../../../admin/src/components/Breadcrumbs/Breadcrumbs.tsx"],"sourcesContent":["import {\n Breadcrumbs as BaseBreadcrumbs,\n Crumb,\n CrumbLink,\n BreadcrumbsProps as BaseBreadcrumbsProps,\n} from '@strapi/design-system';\nimport { useIntl, MessageDescriptor } from 'react-intl';\nimport { Link as ReactRouterLink } from 'react-router-dom';\n\nimport { CrumbSimpleMenuAsync } from './CrumbSimpleMenuAsync';\n\nexport type CrumbDefinition = {\n id?: number | null;\n label?: MessageDescriptor | string;\n href?: string;\n path?: string;\n};\n\nexport interface BreadcrumbsProps extends BaseBreadcrumbsProps {\n breadcrumbs: Array<CrumbDefinition>;\n currentFolderId?: number;\n onChangeFolder?: (id: number, path?: string) => void;\n}\n\nexport const Breadcrumbs = ({\n breadcrumbs,\n onChangeFolder,\n currentFolderId,\n ...props\n}: BreadcrumbsProps) => {\n const { formatMessage } = useIntl();\n\n return (\n <BaseBreadcrumbs {...props}>\n {breadcrumbs.map((crumb, index) => {\n if (Array.isArray(crumb)) {\n return (\n <CrumbSimpleMenuAsync\n parentsToOmit={[...breadcrumbs]\n .splice(index + 1, breadcrumbs.length - 1)\n .map((parent) => parent.id!)}\n key={`breadcrumb-${crumb?.id ?? 'menu'}`}\n currentFolderId={currentFolderId}\n onChangeFolder={onChangeFolder}\n />\n );\n }\n\n const isCurrentFolderMediaLibrary = crumb.id === null && currentFolderId === undefined;\n\n if (currentFolderId !== crumb.id && !isCurrentFolderMediaLibrary) {\n if (onChangeFolder) {\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n type=\"button\"\n onClick={() => onChangeFolder(crumb.id!, crumb.path)}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n return (\n <CrumbLink\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n to={crumb.href}\n // eslint-disable-next-line @typescript-eslint/ban-ts-comment\n // @ts-ignore - `tag` prop is not defined in the `BaseLinkProps` type\n tag={ReactRouterLink}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </CrumbLink>\n );\n }\n\n return (\n <Crumb\n key={`breadcrumb-${crumb?.id ?? 'root'}`}\n isCurrent={index + 1 === breadcrumbs.length}\n >\n {typeof crumb.label !== 'string' && crumb.label?.id\n ? formatMessage(crumb.label)\n : (crumb.label as string)}\n </Crumb>\n );\n })}\n </BaseBreadcrumbs>\n );\n};\n"],"names":["Breadcrumbs","breadcrumbs","onChangeFolder","currentFolderId","props","formatMessage","useIntl","_jsx","BaseBreadcrumbs","map","crumb","index","Array","isArray","CrumbSimpleMenuAsync","parentsToOmit","splice","length","parent","id","isCurrentFolderMediaLibrary","undefined","CrumbLink","type","onClick","path","label","to","href","tag","ReactRouterLink","Crumb","isCurrent"],"mappings":";;;;;;AAwBO,MAAMA,WAAc,GAAA,CAAC,EAC1BC,WAAW,EACXC,cAAc,EACdC,eAAe,EACf,GAAGC,KACc,EAAA,GAAA;IACjB,MAAM,EAAEC,aAAa,EAAE,GAAGC,OAAAA,EAAAA;AAE1B,IAAA,qBACEC,GAACC,CAAAA,aAAAA,EAAAA;AAAiB,QAAA,GAAGJ,KAAK;kBACvBH,WAAYQ,CAAAA,GAAG,CAAC,CAACC,KAAOC,EAAAA,KAAAA,GAAAA;YACvB,IAAIC,KAAAA,CAAMC,OAAO,CAACH,KAAQ,CAAA,EAAA;AACxB,gBAAA,qBACEH,GAACO,CAAAA,oBAAAA,EAAAA;oBACCC,aAAe,EAAA;AAAId,wBAAAA,GAAAA;AAAY,qBAAA,CAC5Be,MAAM,CAACL,KAAQ,GAAA,CAAA,EAAGV,WAAYgB,CAAAA,MAAM,GAAG,CAAA,CAAA,CACvCR,GAAG,CAAC,CAACS,MAAAA,GAAWA,OAAOC,EAAE,CAAA;oBAE5BhB,eAAiBA,EAAAA,eAAAA;oBACjBD,cAAgBA,EAAAA;AAFX,iBAAA,EAAA,CAAC,WAAW,EAAEQ,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAK9C;AAEA,YAAA,MAAMC,2BAA8BV,GAAAA,KAAAA,CAAMS,EAAE,KAAK,QAAQhB,eAAoBkB,KAAAA,SAAAA;AAE7E,YAAA,IAAIlB,eAAoBO,KAAAA,KAAAA,CAAMS,EAAE,IAAI,CAACC,2BAA6B,EAAA;AAChE,gBAAA,IAAIlB,cAAgB,EAAA;AAClB,oBAAA,qBACEK,GAACe,CAAAA,SAAAA,EAAAA;wBAECC,IAAK,EAAA,QAAA;AACLC,wBAAAA,OAAAA,EAAS,IAAMtB,cAAeQ,CAAAA,KAAAA,CAAMS,EAAE,EAAGT,MAAMe,IAAI,CAAA;AAElD,wBAAA,QAAA,EAAA,OAAOf,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AANN,qBAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAS9C;AACA,gBAAA,qBACEZ,GAACe,CAAAA,SAAAA,EAAAA;AAECK,oBAAAA,EAAAA,EAAIjB,MAAMkB,IAAI;;;oBAGdC,GAAKC,EAAAA,IAAAA;AAEJ,oBAAA,QAAA,EAAA,OAAOpB,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AARN,iBAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAW9C;AAEA,YAAA,qBACEZ,GAACwB,CAAAA,KAAAA,EAAAA;gBAECC,SAAWrB,EAAAA,KAAAA,GAAQ,CAAMV,KAAAA,WAAAA,CAAYgB,MAAM;AAE1C,gBAAA,QAAA,EAAA,OAAOP,KAAMgB,CAAAA,KAAK,KAAK,QAAA,IAAYhB,KAAMgB,CAAAA,KAAK,EAAEP,EAAAA,GAC7Cd,aAAcK,CAAAA,KAAAA,CAAMgB,KAAK,CAAA,GACxBhB,MAAMgB;AALN,aAAA,EAAA,CAAC,WAAW,EAAEhB,KAAOS,EAAAA,EAAAA,IAAM,MAAQ,CAAA,CAAA,CAAA;AAQ9C,SAAA;;AAGN;;;;"}
|
|
@@ -12,7 +12,7 @@ require('date-fns');
|
|
|
12
12
|
var getTrad = require('../../utils/getTrad.js');
|
|
13
13
|
var getFolderURL = require('../../utils/getFolderURL.js');
|
|
14
14
|
var getFolderParents = require('../../utils/getFolderParents.js');
|
|
15
|
-
require('../../
|
|
15
|
+
require('../../utils/typeFromMime.js');
|
|
16
16
|
require('../../utils/urlYupSchema.js');
|
|
17
17
|
|
|
18
18
|
function _interopNamespaceDefault(e) {
|
|
@@ -10,7 +10,7 @@ import 'date-fns';
|
|
|
10
10
|
import { getTrad } from '../../utils/getTrad.mjs';
|
|
11
11
|
import { getFolderURL } from '../../utils/getFolderURL.mjs';
|
|
12
12
|
import { getFolderParents } from '../../utils/getFolderParents.mjs';
|
|
13
|
-
import '../../
|
|
13
|
+
import '../../utils/typeFromMime.mjs';
|
|
14
14
|
import '../../utils/urlYupSchema.mjs';
|
|
15
15
|
|
|
16
16
|
const CrumbSimpleMenuAsync = ({ parentsToOmit = [], currentFolderId, onChangeFolder })=>{
|
|
@@ -12,7 +12,7 @@ require('date-fns');
|
|
|
12
12
|
var normalizeAPIError = require('../../utils/normalizeAPIError.js');
|
|
13
13
|
var getTrad = require('../../utils/getTrad.js');
|
|
14
14
|
require('qs');
|
|
15
|
-
require('../../
|
|
15
|
+
require('../../utils/typeFromMime.js');
|
|
16
16
|
require('../../utils/urlYupSchema.js');
|
|
17
17
|
var SelectTree = require('../SelectTree/SelectTree.js');
|
|
18
18
|
|
|
@@ -10,7 +10,7 @@ import 'date-fns';
|
|
|
10
10
|
import { normalizeAPIError } from '../../utils/normalizeAPIError.mjs';
|
|
11
11
|
import { getTrad } from '../../utils/getTrad.mjs';
|
|
12
12
|
import 'qs';
|
|
13
|
-
import '../../
|
|
13
|
+
import '../../utils/typeFromMime.mjs';
|
|
14
14
|
import '../../utils/urlYupSchema.mjs';
|
|
15
15
|
import { SelectTree } from '../SelectTree/SelectTree.mjs';
|
|
16
16
|
|
|
@@ -9,7 +9,7 @@ require('byte-size');
|
|
|
9
9
|
require('date-fns');
|
|
10
10
|
var getTrad = require('../../utils/getTrad.js');
|
|
11
11
|
require('qs');
|
|
12
|
-
require('../../
|
|
12
|
+
require('../../utils/typeFromMime.js');
|
|
13
13
|
require('../../utils/urlYupSchema.js');
|
|
14
14
|
|
|
15
15
|
// TODO: find a better naming convention for the file that was an index file before
|
|
@@ -7,7 +7,7 @@ import 'byte-size';
|
|
|
7
7
|
import 'date-fns';
|
|
8
8
|
import { getTrad } from '../../utils/getTrad.mjs';
|
|
9
9
|
import 'qs';
|
|
10
|
-
import '../../
|
|
10
|
+
import '../../utils/typeFromMime.mjs';
|
|
11
11
|
import '../../utils/urlYupSchema.mjs';
|
|
12
12
|
|
|
13
13
|
// TODO: find a better naming convention for the file that was an index file before
|
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
|
|
3
3
|
var jsxRuntime = require('react/jsx-runtime');
|
|
4
4
|
var React = require('react');
|
|
5
|
-
var strapiAdmin = require('@strapi/admin/strapi-admin');
|
|
6
5
|
var designSystem = require('@strapi/design-system');
|
|
7
6
|
var formik = require('formik');
|
|
8
7
|
var isEqual = require('lodash/isEqual');
|
|
@@ -11,13 +10,14 @@ var styledComponents = require('styled-components');
|
|
|
11
10
|
var yup = require('yup');
|
|
12
11
|
var useEditAsset = require('../../hooks/useEditAsset.js');
|
|
13
12
|
var useFolderStructure = require('../../hooks/useFolderStructure.js');
|
|
13
|
+
var useTracking = require('../../hooks/useTracking.js');
|
|
14
14
|
var findRecursiveFolderByValue = require('../../utils/findRecursiveFolderByValue.js');
|
|
15
15
|
var formatBytes = require('../../utils/formatBytes.js');
|
|
16
16
|
require('date-fns');
|
|
17
17
|
var getTrad = require('../../utils/getTrad.js');
|
|
18
18
|
require('qs');
|
|
19
19
|
var getFileExtension = require('../../utils/getFileExtension.js');
|
|
20
|
-
require('../../
|
|
20
|
+
require('../../utils/typeFromMime.js');
|
|
21
21
|
require('../../utils/urlYupSchema.js');
|
|
22
22
|
var ContextInfo = require('../ContextInfo/ContextInfo.js');
|
|
23
23
|
var SelectTree = require('../SelectTree/SelectTree.js');
|
|
@@ -57,7 +57,7 @@ const fileInfoSchema = yup__namespace.object({
|
|
|
57
57
|
});
|
|
58
58
|
const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = false, canDownload = false, trackedLocation, omitFields = [], omitActions = [] })=>{
|
|
59
59
|
const { formatMessage, formatDate } = reactIntl.useIntl();
|
|
60
|
-
const { trackUsage } =
|
|
60
|
+
const { trackUsage } = useTracking.useTracking();
|
|
61
61
|
const submitButtonRef = React__namespace.useRef(null);
|
|
62
62
|
const [isCropping, setIsCropping] = React__namespace.useState(false);
|
|
63
63
|
const [replacementFile, setReplacementFile] = React__namespace.useState();
|
|
@@ -249,7 +249,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
249
249
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.TextInput, {
|
|
250
250
|
value: values.name,
|
|
251
251
|
onChange: handleChange,
|
|
252
|
-
disabled: formDisabled
|
|
252
|
+
disabled: formDisabled,
|
|
253
|
+
type: "text"
|
|
253
254
|
}),
|
|
254
255
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Error, {})
|
|
255
256
|
]
|
|
@@ -271,7 +272,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
271
272
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.TextInput, {
|
|
272
273
|
value: values.alternativeText,
|
|
273
274
|
onChange: handleChange,
|
|
274
|
-
disabled: formDisabled
|
|
275
|
+
disabled: formDisabled,
|
|
276
|
+
type: "text"
|
|
275
277
|
}),
|
|
276
278
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Hint, {}),
|
|
277
279
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Field.Error, {})
|
|
@@ -290,7 +292,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
290
292
|
/*#__PURE__*/ jsxRuntime.jsx(designSystem.TextInput, {
|
|
291
293
|
value: values.caption,
|
|
292
294
|
onChange: handleChange,
|
|
293
|
-
disabled: formDisabled
|
|
295
|
+
disabled: formDisabled,
|
|
296
|
+
type: "text"
|
|
294
297
|
})
|
|
295
298
|
]
|
|
296
299
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EditAssetContent.js","sources":["../../../../admin/src/components/EditAssetDialog/EditAssetContent.tsx"],"sourcesContent":["/**\n *\n * EditAssetDialog\n *\n */\nimport * as React from 'react';\n\nimport { useTracking } from '@strapi/admin/strapi-admin';\nimport {\n Button,\n Field,\n Flex,\n Grid,\n Loader,\n Modal,\n TextInput,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport { Form, Formik } from 'formik';\nimport isEqual from 'lodash/isEqual';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\n\nimport { useEditAsset } from '../../hooks/useEditAsset';\nimport { useFolderStructure } from '../../hooks/useFolderStructure';\nimport { findRecursiveFolderByValue, getTrad, getFileExtension, formatBytes } from '../../utils';\nimport { ContextInfo } from '../ContextInfo/ContextInfo';\nimport { SelectTree } from '../SelectTree/SelectTree';\n\nimport { DialogHeader } from './DialogHeader';\nimport { PreviewBox } from './PreviewBox/PreviewBox';\nimport { ReplaceMediaButton } from './ReplaceMediaButton';\n\nimport type { File as FileDefinition, RawFile } from '../../../../shared/contracts/files';\n\nconst LoadingBody = styled(Flex)`\n /* 80px are coming from the Tabs component that is not included in the ModalBody */\n min-height: ${() => `calc(60dvh + 8rem)`};\n`;\n\nconst fileInfoSchema = yup.object({\n name: yup.string().required(),\n alternativeText: yup.string(),\n caption: yup.string(),\n folder: yup.number(),\n});\n\nexport interface Asset extends Omit<FileDefinition, 'folder'> {\n isLocal?: boolean;\n rawFile?: RawFile;\n folder?: FileDefinition['folder'] & { id: number };\n}\n\ninterface EditAssetContentProps {\n asset?: Asset;\n canUpdate?: boolean;\n canCopyLink?: boolean;\n canDownload?: boolean;\n trackedLocation?: string;\n onClose: (arg?: Asset | null | boolean) => void;\n omitFields?: ('caption' | 'alternativeText')[];\n omitActions?: 'replace'[];\n}\n\ninterface FormInitialData {\n name?: string;\n alternativeText?: string;\n caption?: string;\n parent?: {\n value?: number;\n label: string;\n };\n}\n\nexport const EditAssetContent = ({\n onClose,\n asset,\n canUpdate = false,\n canCopyLink = false,\n canDownload = false,\n trackedLocation,\n omitFields = [],\n omitActions = [],\n}: EditAssetContentProps) => {\n const { formatMessage, formatDate } = useIntl();\n const { trackUsage } = useTracking();\n const submitButtonRef = React.useRef<HTMLButtonElement>(null);\n const [isCropping, setIsCropping] = React.useState(false);\n const [replacementFile, setReplacementFile] = React.useState<File | undefined>();\n const { editAsset, isLoading } = useEditAsset();\n\n const { data: folderStructure, isLoading: folderStructureIsLoading } = useFolderStructure({\n enabled: true,\n });\n\n const handleSubmit = async (values: FormInitialData) => {\n const nextAsset = { ...asset, ...values, folder: values.parent?.value } as Asset;\n\n if (asset?.isLocal) {\n onClose(nextAsset);\n } else {\n const editedAsset = (await editAsset(nextAsset, replacementFile!)) as Asset;\n\n const assetType = asset?.mime?.split('/')[0];\n // if the folder parent was the root of Media Library, its id is null\n // we know it changed location if the new parent value exists\n const didChangeLocation = asset?.folder?.id\n ? asset.folder.id !== values.parent?.value\n : asset?.folder === null && !!values.parent?.value;\n\n trackUsage('didEditMediaLibraryElements', {\n location: trackedLocation,\n type: assetType,\n changeLocation: didChangeLocation,\n });\n\n onClose(editedAsset);\n }\n };\n\n const handleStartCropping = () => {\n setIsCropping(true);\n };\n\n const handleCancelCropping = () => {\n setIsCropping(false);\n };\n\n const handleFinishCropping = () => {\n setIsCropping(false);\n onClose();\n };\n\n const formDisabled = !canUpdate || isCropping;\n\n const handleConfirmClose = () => {\n // eslint-disable-next-line no-alert\n const confirm = window.confirm(\n formatMessage({\n id: 'window.confirm.close-modal.file',\n defaultMessage: 'Are you sure? Your changes will be lost.',\n })\n );\n\n if (confirm) {\n onClose();\n }\n };\n\n const activeFolderId = asset?.folder?.id;\n const initialFormData = !folderStructureIsLoading && {\n name: asset?.name,\n alternativeText: asset?.alternativeText ?? undefined,\n caption: asset?.caption ?? undefined,\n parent: {\n value: activeFolderId ?? undefined,\n label:\n findRecursiveFolderByValue(folderStructure!, activeFolderId!)?.label ??\n folderStructure![0].label,\n },\n };\n\n const handleClose = (values?: { [key: string]: unknown }) => {\n if (!isEqual(initialFormData, values)) {\n handleConfirmClose();\n } else {\n onClose();\n }\n };\n\n if (folderStructureIsLoading) {\n return (\n <>\n <DialogHeader />\n <LoadingBody minHeight=\"60vh\" justifyContent=\"center\" paddingTop={4} paddingBottom={4}>\n <Loader>\n {formatMessage({\n id: getTrad('content.isLoading'),\n defaultMessage: 'Content is loading.',\n })}\n </Loader>\n </LoadingBody>\n <Modal.Footer>\n <Button onClick={() => handleClose()} variant=\"tertiary\">\n {formatMessage({ id: 'cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Modal.Footer>\n </>\n );\n }\n\n return (\n <Formik\n validationSchema={fileInfoSchema}\n validateOnChange={false}\n onSubmit={handleSubmit}\n initialValues={initialFormData}\n >\n {({ values, errors, handleChange, setFieldValue }) => (\n <>\n <DialogHeader />\n <Modal.Body>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <PreviewBox\n asset={asset!}\n canUpdate={canUpdate}\n canCopyLink={canCopyLink}\n canDownload={canDownload}\n onDelete={onClose}\n onCropFinish={handleFinishCropping}\n onCropStart={handleStartCropping}\n onCropCancel={handleCancelCropping}\n replacementFile={replacementFile}\n trackedLocation={trackedLocation}\n />\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Form noValidate>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <ContextInfo\n blocks={[\n {\n label: formatMessage({\n id: getTrad('modal.file-details.size'),\n defaultMessage: 'Size',\n }),\n value: formatBytes(asset?.size ? asset.size : 0),\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.dimensions'),\n defaultMessage: 'Dimensions',\n }),\n value:\n asset?.height && asset.width ? `${asset.width}✕${asset.height}` : null,\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.date'),\n defaultMessage: 'Date',\n }),\n value: formatDate(new Date(asset?.createdAt ? asset.createdAt : '')),\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.extension'),\n defaultMessage: 'Extension',\n }),\n value: getFileExtension(asset?.ext)!,\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.id'),\n defaultMessage: 'Asset ID',\n }),\n value: asset?.id ? asset.id : null,\n },\n ]}\n />\n <Field.Root name=\"name\" error={errors.name}>\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-name'),\n defaultMessage: 'File name',\n })}\n </Field.Label>\n <TextInput\n value={values.name}\n onChange={handleChange}\n disabled={formDisabled}\n />\n <Field.Error />\n </Field.Root>\n\n {!omitFields?.includes('alternativeText') && (\n <Field.Root\n name=\"alternativeText\"\n hint={formatMessage({\n id: getTrad('form.input.description.file-alt'),\n defaultMessage:\n 'This text will be displayed if the asset can’t be shown.',\n })}\n error={errors.alternativeText}\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-alt'),\n defaultMessage: 'Alternative text',\n })}\n </Field.Label>\n <TextInput\n value={values.alternativeText}\n onChange={handleChange}\n disabled={formDisabled}\n />\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n )}\n\n {!omitFields?.includes('caption') && (\n <Field.Root name=\"caption\" error={errors.caption}>\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-caption'),\n defaultMessage: 'Caption',\n })}\n </Field.Label>\n <TextInput\n value={values.caption}\n onChange={handleChange}\n disabled={formDisabled}\n />\n </Field.Root>\n )}\n\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Field.Root name=\"parent\" id=\"asset-folder\">\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-location'),\n defaultMessage: 'Location',\n })}\n </Field.Label>\n\n <SelectTree\n name=\"parent\"\n defaultValue={values.parent}\n options={folderStructure!}\n onChange={(value) => {\n setFieldValue('parent', value);\n }}\n menuPortalTarget={document.querySelector('body')}\n inputId=\"asset-folder\"\n isDisabled={formDisabled}\n error={errors?.parent}\n ariaErrorMessage=\"folder-parent-error\"\n />\n </Field.Root>\n </Flex>\n </Flex>\n\n <VisuallyHidden>\n <button\n type=\"submit\"\n tabIndex={-1}\n ref={submitButtonRef}\n disabled={formDisabled}\n >\n {formatMessage({ id: 'submit', defaultMessage: 'Submit' })}\n </button>\n </VisuallyHidden>\n </Form>\n </Grid.Item>\n </Grid.Root>\n </Modal.Body>\n <Modal.Footer>\n <Button onClick={() => handleClose({ ...values })} variant=\"tertiary\">\n {formatMessage({ id: 'global.cancel', defaultMessage: 'Cancel' })}\n </Button>\n <Flex gap={2}>\n {!omitActions?.includes('replace') && (\n <ReplaceMediaButton\n onSelectMedia={setReplacementFile}\n acceptedMime={asset?.mime ?? ''}\n disabled={formDisabled}\n trackedLocation={trackedLocation}\n />\n )}\n\n <Button\n onClick={() => submitButtonRef.current?.click()}\n loading={isLoading}\n disabled={formDisabled}\n >\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </Modal.Footer>\n </>\n )}\n </Formik>\n );\n};\n\ninterface EditAssetDialogProps {\n asset: Asset;\n canUpdate?: boolean;\n canCopyLink?: boolean;\n canDownload?: boolean;\n trackedLocation?: string;\n open: boolean;\n onClose: (arg?: Asset | null | boolean) => void;\n}\n\nexport const EditAssetDialog = ({\n open,\n onClose,\n canUpdate = false,\n canCopyLink = false,\n canDownload = false,\n ...restProps\n}: EditAssetDialogProps) => {\n return (\n <Modal.Root open={open} onOpenChange={onClose}>\n <Modal.Content>\n <EditAssetContent\n onClose={onClose}\n canUpdate={canUpdate}\n canCopyLink={canCopyLink}\n canDownload={canDownload}\n {...restProps}\n />\n </Modal.Content>\n </Modal.Root>\n );\n};\n"],"names":["LoadingBody","styled","Flex","fileInfoSchema","yup","object","name","string","required","alternativeText","caption","folder","number","EditAssetContent","onClose","asset","canUpdate","canCopyLink","canDownload","trackedLocation","omitFields","omitActions","formatMessage","formatDate","useIntl","trackUsage","useTracking","submitButtonRef","React","useRef","isCropping","setIsCropping","useState","replacementFile","setReplacementFile","editAsset","isLoading","useEditAsset","data","folderStructure","folderStructureIsLoading","useFolderStructure","enabled","handleSubmit","values","nextAsset","parent","value","isLocal","editedAsset","assetType","mime","split","didChangeLocation","id","location","type","changeLocation","handleStartCropping","handleCancelCropping","handleFinishCropping","formDisabled","handleConfirmClose","confirm","window","defaultMessage","activeFolderId","initialFormData","undefined","label","findRecursiveFolderByValue","handleClose","isEqual","_jsxs","_Fragment","_jsx","DialogHeader","minHeight","justifyContent","paddingTop","paddingBottom","Loader","getTrad","Modal","Footer","Button","onClick","variant","Formik","validationSchema","validateOnChange","onSubmit","initialValues","errors","handleChange","setFieldValue","Body","Grid","Root","gap","Item","xs","col","direction","alignItems","PreviewBox","onDelete","onCropFinish","onCropStart","onCropCancel","Form","noValidate","ContextInfo","blocks","formatBytes","size","height","width","Date","createdAt","getFileExtension","ext","Field","error","Label","TextInput","onChange","disabled","Error","includes","hint","Hint","SelectTree","defaultValue","options","menuPortalTarget","document","querySelector","inputId","isDisabled","ariaErrorMessage","VisuallyHidden","button","tabIndex","ref","ReplaceMediaButton","onSelectMedia","acceptedMime","current","click","loading","EditAssetDialog","open","restProps","onOpenChange","Content"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"EditAssetContent.js","sources":["../../../../admin/src/components/EditAssetDialog/EditAssetContent.tsx"],"sourcesContent":["/**\n *\n * EditAssetDialog\n *\n */\nimport * as React from 'react';\n\nimport {\n Button,\n Field,\n Flex,\n Grid,\n Loader,\n Modal,\n TextInput,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport { Form, Formik } from 'formik';\nimport isEqual from 'lodash/isEqual';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\nimport * as yup from 'yup';\n\nimport { useEditAsset } from '../../hooks/useEditAsset';\nimport { useFolderStructure } from '../../hooks/useFolderStructure';\nimport { useTracking } from '../../hooks/useTracking';\nimport { findRecursiveFolderByValue, getTrad, getFileExtension, formatBytes } from '../../utils';\nimport { ContextInfo } from '../ContextInfo/ContextInfo';\nimport { SelectTree } from '../SelectTree/SelectTree';\n\nimport { DialogHeader } from './DialogHeader';\nimport { PreviewBox } from './PreviewBox/PreviewBox';\nimport { ReplaceMediaButton } from './ReplaceMediaButton';\n\nimport type { File as FileDefinition, RawFile } from '../../../../shared/contracts/files';\n\nconst LoadingBody = styled(Flex)`\n /* 80px are coming from the Tabs component that is not included in the ModalBody */\n min-height: ${() => `calc(60dvh + 8rem)`};\n`;\n\nconst fileInfoSchema = yup.object({\n name: yup.string().required(),\n alternativeText: yup.string(),\n caption: yup.string(),\n folder: yup.number(),\n});\n\nexport interface Asset extends Omit<FileDefinition, 'folder'> {\n isLocal?: boolean;\n rawFile?: RawFile;\n folder?: FileDefinition['folder'] & { id: number };\n}\n\ninterface EditAssetContentProps {\n asset?: Asset;\n canUpdate?: boolean;\n canCopyLink?: boolean;\n canDownload?: boolean;\n trackedLocation?: string;\n onClose: (arg?: Asset | null | boolean) => void;\n omitFields?: ('caption' | 'alternativeText')[];\n omitActions?: 'replace'[];\n}\n\ninterface FormInitialData {\n name?: string;\n alternativeText?: string;\n caption?: string;\n parent?: {\n value?: number;\n label: string;\n };\n}\n\nexport const EditAssetContent = ({\n onClose,\n asset,\n canUpdate = false,\n canCopyLink = false,\n canDownload = false,\n trackedLocation,\n omitFields = [],\n omitActions = [],\n}: EditAssetContentProps) => {\n const { formatMessage, formatDate } = useIntl();\n const { trackUsage } = useTracking();\n const submitButtonRef = React.useRef<HTMLButtonElement>(null);\n const [isCropping, setIsCropping] = React.useState(false);\n const [replacementFile, setReplacementFile] = React.useState<File | undefined>();\n const { editAsset, isLoading } = useEditAsset();\n\n const { data: folderStructure, isLoading: folderStructureIsLoading } = useFolderStructure({\n enabled: true,\n });\n\n const handleSubmit = async (values: FormInitialData) => {\n const nextAsset = { ...asset, ...values, folder: values.parent?.value } as Asset;\n\n if (asset?.isLocal) {\n onClose(nextAsset);\n } else {\n const editedAsset = (await editAsset(nextAsset, replacementFile!)) as Asset;\n\n const assetType = asset?.mime?.split('/')[0];\n // if the folder parent was the root of Media Library, its id is null\n // we know it changed location if the new parent value exists\n const didChangeLocation = asset?.folder?.id\n ? asset.folder.id !== values.parent?.value\n : asset?.folder === null && !!values.parent?.value;\n\n trackUsage('didEditMediaLibraryElements', {\n location: trackedLocation,\n type: assetType,\n changeLocation: didChangeLocation,\n });\n\n onClose(editedAsset);\n }\n };\n\n const handleStartCropping = () => {\n setIsCropping(true);\n };\n\n const handleCancelCropping = () => {\n setIsCropping(false);\n };\n\n const handleFinishCropping = () => {\n setIsCropping(false);\n onClose();\n };\n\n const formDisabled = !canUpdate || isCropping;\n\n const handleConfirmClose = () => {\n // eslint-disable-next-line no-alert\n const confirm = window.confirm(\n formatMessage({\n id: 'window.confirm.close-modal.file',\n defaultMessage: 'Are you sure? Your changes will be lost.',\n })\n );\n\n if (confirm) {\n onClose();\n }\n };\n\n const activeFolderId = asset?.folder?.id;\n const initialFormData = !folderStructureIsLoading && {\n name: asset?.name,\n alternativeText: asset?.alternativeText ?? undefined,\n caption: asset?.caption ?? undefined,\n parent: {\n value: activeFolderId ?? undefined,\n label:\n findRecursiveFolderByValue(folderStructure!, activeFolderId!)?.label ??\n folderStructure![0].label,\n },\n };\n\n const handleClose = (values?: { [key: string]: unknown }) => {\n if (!isEqual(initialFormData, values)) {\n handleConfirmClose();\n } else {\n onClose();\n }\n };\n\n if (folderStructureIsLoading) {\n return (\n <>\n <DialogHeader />\n <LoadingBody minHeight=\"60vh\" justifyContent=\"center\" paddingTop={4} paddingBottom={4}>\n <Loader>\n {formatMessage({\n id: getTrad('content.isLoading'),\n defaultMessage: 'Content is loading.',\n })}\n </Loader>\n </LoadingBody>\n <Modal.Footer>\n <Button onClick={() => handleClose()} variant=\"tertiary\">\n {formatMessage({ id: 'cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Modal.Footer>\n </>\n );\n }\n\n return (\n <Formik\n validationSchema={fileInfoSchema}\n validateOnChange={false}\n onSubmit={handleSubmit}\n initialValues={initialFormData}\n >\n {({ values, errors, handleChange, setFieldValue }) => (\n <>\n <DialogHeader />\n <Modal.Body>\n <Grid.Root gap={4}>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <PreviewBox\n asset={asset!}\n canUpdate={canUpdate}\n canCopyLink={canCopyLink}\n canDownload={canDownload}\n onDelete={onClose}\n onCropFinish={handleFinishCropping}\n onCropStart={handleStartCropping}\n onCropCancel={handleCancelCropping}\n replacementFile={replacementFile}\n trackedLocation={trackedLocation}\n />\n </Grid.Item>\n <Grid.Item xs={12} col={6} direction=\"column\" alignItems=\"stretch\">\n <Form noValidate>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={3}>\n <ContextInfo\n blocks={[\n {\n label: formatMessage({\n id: getTrad('modal.file-details.size'),\n defaultMessage: 'Size',\n }),\n value: formatBytes(asset?.size ? asset.size : 0),\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.dimensions'),\n defaultMessage: 'Dimensions',\n }),\n value:\n asset?.height && asset.width ? `${asset.width}✕${asset.height}` : null,\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.date'),\n defaultMessage: 'Date',\n }),\n value: formatDate(new Date(asset?.createdAt ? asset.createdAt : '')),\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.extension'),\n defaultMessage: 'Extension',\n }),\n value: getFileExtension(asset?.ext)!,\n },\n\n {\n label: formatMessage({\n id: getTrad('modal.file-details.id'),\n defaultMessage: 'Asset ID',\n }),\n value: asset?.id ? asset.id : null,\n },\n ]}\n />\n <Field.Root name=\"name\" error={errors.name}>\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-name'),\n defaultMessage: 'File name',\n })}\n </Field.Label>\n <TextInput\n value={values.name}\n onChange={handleChange}\n disabled={formDisabled}\n type=\"text\"\n />\n <Field.Error />\n </Field.Root>\n\n {!omitFields?.includes('alternativeText') && (\n <Field.Root\n name=\"alternativeText\"\n hint={formatMessage({\n id: getTrad('form.input.description.file-alt'),\n defaultMessage:\n 'This text will be displayed if the asset can’t be shown.',\n })}\n error={errors.alternativeText}\n >\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-alt'),\n defaultMessage: 'Alternative text',\n })}\n </Field.Label>\n <TextInput\n value={values.alternativeText}\n onChange={handleChange}\n disabled={formDisabled}\n type=\"text\"\n />\n <Field.Hint />\n <Field.Error />\n </Field.Root>\n )}\n\n {!omitFields?.includes('caption') && (\n <Field.Root name=\"caption\" error={errors.caption}>\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-caption'),\n defaultMessage: 'Caption',\n })}\n </Field.Label>\n <TextInput\n value={values.caption}\n onChange={handleChange}\n disabled={formDisabled}\n type=\"text\"\n />\n </Field.Root>\n )}\n\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1}>\n <Field.Root name=\"parent\" id=\"asset-folder\">\n <Field.Label>\n {formatMessage({\n id: getTrad('form.input.label.file-location'),\n defaultMessage: 'Location',\n })}\n </Field.Label>\n\n <SelectTree\n name=\"parent\"\n defaultValue={values.parent}\n options={folderStructure!}\n onChange={(value) => {\n setFieldValue('parent', value);\n }}\n menuPortalTarget={document.querySelector('body')}\n inputId=\"asset-folder\"\n isDisabled={formDisabled}\n error={errors?.parent}\n ariaErrorMessage=\"folder-parent-error\"\n />\n </Field.Root>\n </Flex>\n </Flex>\n\n <VisuallyHidden>\n <button\n type=\"submit\"\n tabIndex={-1}\n ref={submitButtonRef}\n disabled={formDisabled}\n >\n {formatMessage({ id: 'submit', defaultMessage: 'Submit' })}\n </button>\n </VisuallyHidden>\n </Form>\n </Grid.Item>\n </Grid.Root>\n </Modal.Body>\n <Modal.Footer>\n <Button onClick={() => handleClose({ ...values })} variant=\"tertiary\">\n {formatMessage({ id: 'global.cancel', defaultMessage: 'Cancel' })}\n </Button>\n <Flex gap={2}>\n {!omitActions?.includes('replace') && (\n <ReplaceMediaButton\n onSelectMedia={setReplacementFile}\n acceptedMime={asset?.mime ?? ''}\n disabled={formDisabled}\n trackedLocation={trackedLocation}\n />\n )}\n\n <Button\n onClick={() => submitButtonRef.current?.click()}\n loading={isLoading}\n disabled={formDisabled}\n >\n {formatMessage({ id: 'global.finish', defaultMessage: 'Finish' })}\n </Button>\n </Flex>\n </Modal.Footer>\n </>\n )}\n </Formik>\n );\n};\n\ninterface EditAssetDialogProps {\n asset: Asset;\n canUpdate?: boolean;\n canCopyLink?: boolean;\n canDownload?: boolean;\n trackedLocation?: string;\n open: boolean;\n onClose: (arg?: Asset | null | boolean) => void;\n}\n\nexport const EditAssetDialog = ({\n open,\n onClose,\n canUpdate = false,\n canCopyLink = false,\n canDownload = false,\n ...restProps\n}: EditAssetDialogProps) => {\n return (\n <Modal.Root open={open} onOpenChange={onClose}>\n <Modal.Content>\n <EditAssetContent\n onClose={onClose}\n canUpdate={canUpdate}\n canCopyLink={canCopyLink}\n canDownload={canDownload}\n {...restProps}\n />\n </Modal.Content>\n </Modal.Root>\n );\n};\n"],"names":["LoadingBody","styled","Flex","fileInfoSchema","yup","object","name","string","required","alternativeText","caption","folder","number","EditAssetContent","onClose","asset","canUpdate","canCopyLink","canDownload","trackedLocation","omitFields","omitActions","formatMessage","formatDate","useIntl","trackUsage","useTracking","submitButtonRef","React","useRef","isCropping","setIsCropping","useState","replacementFile","setReplacementFile","editAsset","isLoading","useEditAsset","data","folderStructure","folderStructureIsLoading","useFolderStructure","enabled","handleSubmit","values","nextAsset","parent","value","isLocal","editedAsset","assetType","mime","split","didChangeLocation","id","location","type","changeLocation","handleStartCropping","handleCancelCropping","handleFinishCropping","formDisabled","handleConfirmClose","confirm","window","defaultMessage","activeFolderId","initialFormData","undefined","label","findRecursiveFolderByValue","handleClose","isEqual","_jsxs","_Fragment","_jsx","DialogHeader","minHeight","justifyContent","paddingTop","paddingBottom","Loader","getTrad","Modal","Footer","Button","onClick","variant","Formik","validationSchema","validateOnChange","onSubmit","initialValues","errors","handleChange","setFieldValue","Body","Grid","Root","gap","Item","xs","col","direction","alignItems","PreviewBox","onDelete","onCropFinish","onCropStart","onCropCancel","Form","noValidate","ContextInfo","blocks","formatBytes","size","height","width","Date","createdAt","getFileExtension","ext","Field","error","Label","TextInput","onChange","disabled","Error","includes","hint","Hint","SelectTree","defaultValue","options","menuPortalTarget","document","querySelector","inputId","isDisabled","ariaErrorMessage","VisuallyHidden","button","tabIndex","ref","ReplaceMediaButton","onSelectMedia","acceptedMime","current","click","loading","EditAssetDialog","open","restProps","onOpenChange","Content"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
2
2
|
import * as React from 'react';
|
|
3
|
-
import { useTracking } from '@strapi/admin/strapi-admin';
|
|
4
3
|
import { Flex, Modal, Loader, Button, Grid, Field, TextInput, VisuallyHidden } from '@strapi/design-system';
|
|
5
4
|
import { Formik, Form } from 'formik';
|
|
6
5
|
import isEqual from 'lodash/isEqual';
|
|
@@ -9,13 +8,14 @@ import { styled } from 'styled-components';
|
|
|
9
8
|
import * as yup from 'yup';
|
|
10
9
|
import { useEditAsset } from '../../hooks/useEditAsset.mjs';
|
|
11
10
|
import { useFolderStructure } from '../../hooks/useFolderStructure.mjs';
|
|
11
|
+
import { useTracking } from '../../hooks/useTracking.mjs';
|
|
12
12
|
import { findRecursiveFolderByValue } from '../../utils/findRecursiveFolderByValue.mjs';
|
|
13
13
|
import { formatBytes } from '../../utils/formatBytes.mjs';
|
|
14
14
|
import 'date-fns';
|
|
15
15
|
import { getTrad } from '../../utils/getTrad.mjs';
|
|
16
16
|
import 'qs';
|
|
17
17
|
import { getFileExtension } from '../../utils/getFileExtension.mjs';
|
|
18
|
-
import '../../
|
|
18
|
+
import '../../utils/typeFromMime.mjs';
|
|
19
19
|
import '../../utils/urlYupSchema.mjs';
|
|
20
20
|
import { ContextInfo } from '../ContextInfo/ContextInfo.mjs';
|
|
21
21
|
import { SelectTree } from '../SelectTree/SelectTree.mjs';
|
|
@@ -227,7 +227,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
227
227
|
/*#__PURE__*/ jsx(TextInput, {
|
|
228
228
|
value: values.name,
|
|
229
229
|
onChange: handleChange,
|
|
230
|
-
disabled: formDisabled
|
|
230
|
+
disabled: formDisabled,
|
|
231
|
+
type: "text"
|
|
231
232
|
}),
|
|
232
233
|
/*#__PURE__*/ jsx(Field.Error, {})
|
|
233
234
|
]
|
|
@@ -249,7 +250,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
249
250
|
/*#__PURE__*/ jsx(TextInput, {
|
|
250
251
|
value: values.alternativeText,
|
|
251
252
|
onChange: handleChange,
|
|
252
|
-
disabled: formDisabled
|
|
253
|
+
disabled: formDisabled,
|
|
254
|
+
type: "text"
|
|
253
255
|
}),
|
|
254
256
|
/*#__PURE__*/ jsx(Field.Hint, {}),
|
|
255
257
|
/*#__PURE__*/ jsx(Field.Error, {})
|
|
@@ -268,7 +270,8 @@ const EditAssetContent = ({ onClose, asset, canUpdate = false, canCopyLink = fal
|
|
|
268
270
|
/*#__PURE__*/ jsx(TextInput, {
|
|
269
271
|
value: values.caption,
|
|
270
272
|
onChange: handleChange,
|
|
271
|
-
disabled: formDisabled
|
|
273
|
+
disabled: formDisabled,
|
|
274
|
+
type: "text"
|
|
272
275
|
})
|
|
273
276
|
]
|
|
274
277
|
}),
|