@strapi/upload 5.54.0 → 5.55.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/App.js +33 -0
- package/dist/admin/App.js.map +1 -0
- package/dist/admin/App.mjs +31 -0
- package/dist/admin/App.mjs.map +1 -0
- package/dist/admin/components/Drawer.js.map +1 -0
- package/dist/admin/components/Drawer.mjs.map +1 -0
- package/dist/admin/components/TruncatedText.js.map +1 -0
- package/dist/admin/components/TruncatedText.mjs.map +1 -0
- package/dist/admin/components/UploadProgressDialog.js.map +1 -0
- package/dist/admin/components/UploadProgressDialog.mjs.map +1 -0
- package/dist/admin/constants.js +7 -12
- package/dist/admin/constants.js.map +1 -1
- package/dist/admin/constants.mjs +7 -12
- package/dist/admin/constants.mjs.map +1 -1
- package/dist/admin/hooks/useAIMetadataEnabled.js +39 -0
- package/dist/admin/hooks/useAIMetadataEnabled.js.map +1 -0
- package/dist/admin/hooks/useAIMetadataEnabled.mjs +37 -0
- package/dist/admin/hooks/useAIMetadataEnabled.mjs.map +1 -0
- package/dist/admin/hooks/useApiErrorMessage.js.map +1 -0
- package/dist/admin/hooks/useApiErrorMessage.mjs.map +1 -0
- package/dist/admin/hooks/useMediaLibraryPermissions.js +24 -5
- package/dist/admin/hooks/useMediaLibraryPermissions.js.map +1 -1
- package/dist/admin/hooks/useMediaLibraryPermissions.mjs +24 -5
- package/dist/admin/hooks/useMediaLibraryPermissions.mjs.map +1 -1
- package/dist/admin/hooks/useTracking.js +39 -7
- package/dist/admin/hooks/useTracking.js.map +1 -1
- package/dist/admin/hooks/useTracking.mjs +38 -8
- package/dist/admin/hooks/useTracking.mjs.map +1 -1
- package/dist/admin/index.js +10 -15
- package/dist/admin/index.js.map +1 -1
- package/dist/admin/index.mjs +10 -15
- package/dist/admin/index.mjs.map +1 -1
- package/dist/admin/legacy/ai/components/AIAssetCard.js +621 -0
- package/dist/admin/legacy/ai/components/AIAssetCard.js.map +1 -0
- package/dist/admin/legacy/ai/components/AIAssetCard.mjs +598 -0
- package/dist/admin/legacy/ai/components/AIAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/ai/components/AIUploadModal.js.map +1 -0
- package/dist/admin/legacy/ai/components/AIUploadModal.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AssetCard.js +67 -0
- package/dist/admin/legacy/components/AssetCard/AssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AssetCard.mjs +65 -0
- package/dist/admin/legacy/components/AssetCard/AssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AssetCardBase.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AssetCardBase.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AudioAssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AudioAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AudioPreview.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/AudioPreview.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/DocAssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/DocAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/ImageAssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/ImageAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/UploadingAssetCard.js +154 -0
- package/dist/admin/legacy/components/AssetCard/UploadingAssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/UploadingAssetCard.mjs +132 -0
- package/dist/admin/legacy/components/AssetCard/UploadingAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/VideoAssetCard.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/VideoAssetCard.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetCard/VideoPreview.js.map +1 -0
- package/dist/admin/legacy/components/AssetCard/VideoPreview.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/AssetDialog.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/AssetDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/BrowseStep.js +320 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/BrowseStep.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/BrowseStep.mjs +318 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/BrowseStep.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/Filters.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/Filters.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PageSize.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PageSize.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PaginationFooter/Pagination.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PaginationFooter/Pagination.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/utils/isSelectable.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/BrowseStep/utils/isSelectable.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/DialogFooter.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/DialogFooter.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/SelectedStep/SelectedStep.js.map +1 -0
- package/dist/admin/legacy/components/AssetDialog/SelectedStep/SelectedStep.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetGridList/AssetGridList.js.map +1 -0
- package/dist/admin/legacy/components/AssetGridList/AssetGridList.mjs.map +1 -0
- package/dist/admin/legacy/components/AssetGridList/Draggable.js.map +1 -0
- package/dist/admin/legacy/components/AssetGridList/Draggable.mjs.map +1 -0
- package/dist/admin/legacy/components/Breadcrumbs/Breadcrumbs.js.map +1 -0
- package/dist/admin/legacy/components/Breadcrumbs/Breadcrumbs.mjs.map +1 -0
- package/dist/admin/legacy/components/Breadcrumbs/CrumbSimpleMenuAsync.js.map +1 -0
- package/dist/admin/legacy/components/Breadcrumbs/CrumbSimpleMenuAsync.mjs.map +1 -0
- package/dist/admin/legacy/components/BulkMoveDialog/BulkMoveDialog.js.map +1 -0
- package/dist/admin/legacy/components/BulkMoveDialog/BulkMoveDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/ContextInfo/ContextInfo.js.map +1 -0
- package/dist/admin/legacy/components/ContextInfo/ContextInfo.mjs.map +1 -0
- package/dist/admin/legacy/components/CopyLinkButton/CopyLinkButton.js.map +1 -0
- package/dist/admin/legacy/components/CopyLinkButton/CopyLinkButton.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/DialogHeader.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/DialogHeader.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/EditAssetContent.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/EditAssetContent.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/AssetPreview.js +114 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/AssetPreview.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/AssetPreview.mjs +89 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/AssetPreview.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/CroppingActions.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/CroppingActions.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/FocalPointActions.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/FocalPointActions.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewBox.js +362 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewBox.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewBox.mjs +337 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewBox.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewComponents.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/PreviewBox/PreviewComponents.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/RemoveAssetDialog.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/RemoveAssetDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/ReplaceMediaButton.js.map +1 -0
- package/dist/admin/legacy/components/EditAssetDialog/ReplaceMediaButton.mjs.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/EditFolderDialog.js.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/EditFolderDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/ModalHeader/ModalHeader.js.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/ModalHeader/ModalHeader.mjs.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/RemoveFolderDialog.js.map +1 -0
- package/dist/admin/legacy/components/EditFolderDialog/RemoveFolderDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/EmptyAssets/EmptyAssetGrid.js.map +1 -0
- package/dist/admin/legacy/components/EmptyAssets/EmptyAssetGrid.mjs.map +1 -0
- package/dist/admin/legacy/components/EmptyAssets/EmptyAssets.js.map +1 -0
- package/dist/admin/legacy/components/EmptyAssets/EmptyAssets.mjs.map +1 -0
- package/dist/admin/legacy/components/FilterList/FilterList.js.map +1 -0
- package/dist/admin/legacy/components/FilterList/FilterList.mjs.map +1 -0
- package/dist/admin/legacy/components/FilterList/FilterTag.js.map +1 -0
- package/dist/admin/legacy/components/FilterList/FilterTag.mjs.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/FilterPopover.js.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/FilterPopover.mjs.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/FilterValueInput.js.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/FilterValueInput.mjs.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/utils/getFilterList.js.map +1 -0
- package/dist/admin/legacy/components/FilterPopover/utils/getFilterList.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCard/FolderCard.js.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCard/FolderCard.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardBody/FolderCardBody.js.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardBody/FolderCardBody.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardBodyAction/FolderCardBodyAction.js.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardBodyAction/FolderCardBodyAction.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.js.map +1 -0
- package/dist/admin/legacy/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderCard/contexts/FolderCard.js.map +1 -0
- package/dist/admin/legacy/components/FolderCard/contexts/FolderCard.mjs.map +1 -0
- package/dist/admin/legacy/components/FolderGridList/FolderGridList.js.map +1 -0
- package/dist/admin/legacy/components/FolderGridList/FolderGridList.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryDialog/MediaLibraryDialog.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryDialog/MediaLibraryDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAsset.js +89 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAsset.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAsset.mjs +87 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAsset.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAssetActions.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAssetActions.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAssets.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/CarouselAssets.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/EmptyStateAsset.js +111 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/EmptyStateAsset.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs +89 -0
- package/dist/admin/legacy/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/MediaLibraryInput.js.map +1 -0
- package/dist/admin/legacy/components/MediaLibraryInput/MediaLibraryInput.mjs.map +1 -0
- package/dist/admin/legacy/components/SelectTree/Option.js.map +1 -0
- package/dist/admin/legacy/components/SelectTree/Option.mjs.map +1 -0
- package/dist/admin/legacy/components/SelectTree/SelectTree.js.map +1 -0
- package/dist/admin/legacy/components/SelectTree/SelectTree.mjs.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/flattenTree.js.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/flattenTree.mjs.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/getOpenValues.js.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/getOpenValues.mjs.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/getValuesToClose.js.map +1 -0
- package/dist/admin/legacy/components/SelectTree/utils/getValuesToClose.mjs.map +1 -0
- package/dist/admin/legacy/components/SortPicker/SortPicker.js +40 -0
- package/dist/admin/legacy/components/SortPicker/SortPicker.js.map +1 -0
- package/dist/admin/legacy/components/SortPicker/SortPicker.mjs +38 -0
- package/dist/admin/legacy/components/SortPicker/SortPicker.mjs.map +1 -0
- package/dist/admin/legacy/components/TableList/CellContent.js.map +1 -0
- package/dist/admin/legacy/components/TableList/CellContent.mjs.map +1 -0
- package/dist/admin/legacy/components/TableList/PreviewCell.js +116 -0
- package/dist/admin/legacy/components/TableList/PreviewCell.js.map +1 -0
- package/dist/admin/legacy/components/TableList/PreviewCell.mjs +114 -0
- package/dist/admin/legacy/components/TableList/PreviewCell.mjs.map +1 -0
- package/dist/admin/legacy/components/TableList/TableList.js +100 -0
- package/dist/admin/legacy/components/TableList/TableList.js.map +1 -0
- package/dist/admin/legacy/components/TableList/TableList.mjs +98 -0
- package/dist/admin/legacy/components/TableList/TableList.mjs.map +1 -0
- package/dist/admin/legacy/components/TableList/TableRows.js +105 -0
- package/dist/admin/legacy/components/TableList/TableRows.js.map +1 -0
- package/dist/admin/legacy/components/TableList/TableRows.mjs +103 -0
- package/dist/admin/legacy/components/TableList/TableRows.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/AddAssetStep.js.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/AddAssetStep.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js +177 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs +155 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromUrlForm.js.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/AddAssetStep/FromUrlForm.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.js.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/UploadAssetDialog.js.map +1 -0
- package/dist/admin/legacy/components/UploadAssetDialog/UploadAssetDialog.mjs.map +1 -0
- package/dist/admin/legacy/components/UploadProgress/UploadProgress.js.map +1 -0
- package/dist/admin/legacy/components/UploadProgress/UploadProgress.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useAiAvailability.js.map +1 -0
- package/dist/admin/legacy/hooks/useAiAvailability.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useAssets.js +127 -0
- package/dist/admin/legacy/hooks/useAssets.js.map +1 -0
- package/dist/admin/legacy/hooks/useAssets.mjs +105 -0
- package/dist/admin/legacy/hooks/useAssets.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useBulkEdit.js +65 -0
- package/dist/admin/legacy/hooks/useBulkEdit.js.map +1 -0
- package/dist/admin/legacy/hooks/useBulkEdit.mjs +63 -0
- package/dist/admin/legacy/hooks/useBulkEdit.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useBulkMove.js +78 -0
- package/dist/admin/legacy/hooks/useBulkMove.js.map +1 -0
- package/dist/admin/legacy/hooks/useBulkMove.mjs +76 -0
- package/dist/admin/legacy/hooks/useBulkMove.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useBulkRemove.js +83 -0
- package/dist/admin/legacy/hooks/useBulkRemove.js.map +1 -0
- package/dist/admin/legacy/hooks/useBulkRemove.mjs +81 -0
- package/dist/admin/legacy/hooks/useBulkRemove.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useConfig.js +58 -0
- package/dist/admin/legacy/hooks/useConfig.js.map +1 -0
- package/dist/admin/legacy/hooks/useConfig.mjs +56 -0
- package/dist/admin/legacy/hooks/useConfig.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useCropImg.js.map +1 -0
- package/dist/admin/legacy/hooks/useCropImg.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useEditAsset.js +115 -0
- package/dist/admin/legacy/hooks/useEditAsset.js.map +1 -0
- package/dist/admin/legacy/hooks/useEditAsset.mjs +93 -0
- package/dist/admin/legacy/hooks/useEditAsset.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useEditFolder.js +45 -0
- package/dist/admin/legacy/hooks/useEditFolder.js.map +1 -0
- package/dist/admin/legacy/hooks/useEditFolder.mjs +43 -0
- package/dist/admin/legacy/hooks/useEditFolder.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useFolder.js +57 -0
- package/dist/admin/legacy/hooks/useFolder.js.map +1 -0
- package/dist/admin/legacy/hooks/useFolder.mjs +55 -0
- package/dist/admin/legacy/hooks/useFolder.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useFolderStructure.js +52 -0
- package/dist/admin/legacy/hooks/useFolderStructure.js.map +1 -0
- package/dist/admin/legacy/hooks/useFolderStructure.mjs +50 -0
- package/dist/admin/legacy/hooks/useFolderStructure.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useFolders.js +108 -0
- package/dist/admin/legacy/hooks/useFolders.js.map +1 -0
- package/dist/admin/legacy/hooks/useFolders.mjs +86 -0
- package/dist/admin/legacy/hooks/useFolders.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useMediaLibraryPermissions.js +16 -0
- package/dist/admin/legacy/hooks/useMediaLibraryPermissions.js.map +1 -0
- package/dist/admin/legacy/hooks/useMediaLibraryPermissions.mjs +14 -0
- package/dist/admin/legacy/hooks/useMediaLibraryPermissions.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useModalQueryParams.js.map +1 -0
- package/dist/admin/legacy/hooks/useModalQueryParams.mjs.map +1 -0
- package/dist/admin/legacy/hooks/usePersistentState.js.map +1 -0
- package/dist/admin/legacy/hooks/usePersistentState.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useRemoveAsset.js +58 -0
- package/dist/admin/legacy/hooks/useRemoveAsset.js.map +1 -0
- package/dist/admin/legacy/hooks/useRemoveAsset.mjs +56 -0
- package/dist/admin/legacy/hooks/useRemoveAsset.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useSelectionState.js.map +1 -0
- package/dist/admin/legacy/hooks/useSelectionState.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useSettings.js.map +1 -0
- package/dist/admin/legacy/hooks/useSettings.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useTracking.js +25 -0
- package/dist/admin/legacy/hooks/useTracking.js.map +1 -0
- package/dist/admin/legacy/hooks/useTracking.mjs +23 -0
- package/dist/admin/legacy/hooks/useTracking.mjs.map +1 -0
- package/dist/admin/legacy/hooks/useUpload.js +109 -0
- package/dist/admin/legacy/hooks/useUpload.js.map +1 -0
- package/dist/admin/legacy/hooks/useUpload.mjs +87 -0
- package/dist/admin/legacy/hooks/useUpload.mjs.map +1 -0
- package/dist/admin/legacy/hooks/utils/renameKeys.js.map +1 -0
- package/dist/admin/legacy/hooks/utils/renameKeys.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/App.js.map +1 -0
- package/dist/admin/legacy/pages/App/App.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/ConfigureTheView.js +145 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/ConfigureTheView.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/ConfigureTheView.mjs +120 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/ConfigureTheView.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/components/Settings.js +109 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/components/Settings.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/components/Settings.mjs +107 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/components/Settings.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actionTypes.js +10 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actionTypes.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actionTypes.mjs +7 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actionTypes.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actions.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/actions.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/init.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/init.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/reducer.js.map +1 -0
- package/dist/admin/legacy/pages/App/ConfigureTheView/state/reducer.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/MediaLibrary.js +469 -0
- package/dist/admin/legacy/pages/App/MediaLibrary.js.map +1 -0
- package/dist/admin/legacy/pages/App/MediaLibrary.mjs +447 -0
- package/dist/admin/legacy/pages/App/MediaLibrary.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkActions.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkActions.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkDeleteButton.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkDeleteButton.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkMoveButton.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/BulkMoveButton.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/EmptyOrNoPermissions.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/EmptyOrNoPermissions.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/Filters.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/Filters.mjs.map +1 -0
- package/dist/admin/legacy/pages/App/components/Header.js.map +1 -0
- package/dist/admin/legacy/pages/App/components/Header.mjs.map +1 -0
- package/dist/admin/legacy/utils/appendSearchParamsToUrl.js.map +1 -0
- package/dist/admin/legacy/utils/appendSearchParamsToUrl.mjs.map +1 -0
- package/dist/admin/legacy/utils/containsAssetFilter.js.map +1 -0
- package/dist/admin/legacy/utils/containsAssetFilter.mjs.map +1 -0
- package/dist/admin/legacy/utils/createAssetUrl.js.map +1 -0
- package/dist/admin/legacy/utils/createAssetUrl.mjs.map +1 -0
- package/dist/admin/legacy/utils/displayedFilters.js.map +1 -0
- package/dist/admin/legacy/utils/displayedFilters.mjs.map +1 -0
- package/dist/admin/legacy/utils/downloadFile.js +13 -0
- package/dist/admin/legacy/utils/downloadFile.js.map +1 -0
- package/dist/admin/legacy/utils/downloadFile.mjs +11 -0
- package/dist/admin/legacy/utils/downloadFile.mjs.map +1 -0
- package/dist/admin/legacy/utils/findRecursiveFolderByValue.js.map +1 -0
- package/dist/admin/legacy/utils/findRecursiveFolderByValue.mjs.map +1 -0
- package/dist/admin/legacy/utils/formatBytes.js.map +1 -0
- package/dist/admin/legacy/utils/formatBytes.mjs.map +1 -0
- package/dist/admin/legacy/utils/formatDuration.js.map +1 -0
- package/dist/admin/legacy/utils/formatDuration.mjs.map +1 -0
- package/dist/admin/legacy/utils/getAPIInnerErrors.js.map +1 -0
- package/dist/admin/legacy/utils/getAPIInnerErrors.mjs.map +1 -0
- package/dist/admin/legacy/utils/getAllowedFiles.js.map +1 -0
- package/dist/admin/legacy/utils/getAllowedFiles.mjs.map +1 -0
- package/dist/admin/legacy/utils/getBreadcrumbDataCM.js.map +1 -0
- package/dist/admin/legacy/utils/getBreadcrumbDataCM.mjs.map +1 -0
- package/dist/admin/legacy/utils/getBreadcrumbDataML.js.map +1 -0
- package/dist/admin/legacy/utils/getBreadcrumbDataML.mjs.map +1 -0
- package/dist/admin/legacy/utils/getFileExtension.js.map +1 -0
- package/dist/admin/legacy/utils/getFileExtension.mjs.map +1 -0
- package/dist/admin/legacy/utils/getFolderParents.js.map +1 -0
- package/dist/admin/legacy/utils/getFolderParents.mjs.map +1 -0
- package/dist/admin/legacy/utils/getFolderURL.js.map +1 -0
- package/dist/admin/legacy/utils/getFolderURL.mjs.map +1 -0
- package/dist/admin/legacy/utils/getTrad.js +8 -0
- package/dist/admin/legacy/utils/getTrad.js.map +1 -0
- package/dist/admin/legacy/utils/getTrad.mjs +6 -0
- package/dist/admin/legacy/utils/getTrad.mjs.map +1 -0
- package/dist/admin/legacy/utils/icons.js +23 -0
- package/dist/admin/legacy/utils/icons.js.map +1 -0
- package/dist/admin/legacy/utils/icons.mjs +19 -0
- package/dist/admin/legacy/utils/icons.mjs.map +1 -0
- package/dist/admin/legacy/utils/moveElement.js.map +1 -0
- package/dist/admin/legacy/utils/moveElement.mjs.map +1 -0
- package/dist/admin/legacy/utils/normalizeAPIError.js.map +1 -0
- package/dist/admin/legacy/utils/normalizeAPIError.mjs.map +1 -0
- package/dist/admin/legacy/utils/prefixFileUrlWithBackendUrl.js.map +1 -0
- package/dist/admin/legacy/utils/prefixFileUrlWithBackendUrl.mjs.map +1 -0
- package/dist/admin/legacy/utils/prefixPluginTranslations.js.map +1 -0
- package/dist/admin/legacy/utils/prefixPluginTranslations.mjs.map +1 -0
- package/dist/admin/legacy/utils/rawFileToAsset.js +23 -0
- package/dist/admin/legacy/utils/rawFileToAsset.js.map +1 -0
- package/dist/admin/legacy/utils/rawFileToAsset.mjs +21 -0
- package/dist/admin/legacy/utils/rawFileToAsset.mjs.map +1 -0
- package/dist/admin/legacy/utils/resolveFileMime.js.map +1 -0
- package/dist/admin/legacy/utils/resolveFileMime.mjs.map +1 -0
- package/dist/admin/legacy/utils/toSingularTypes.js.map +1 -0
- package/dist/admin/legacy/utils/toSingularTypes.mjs.map +1 -0
- package/dist/admin/legacy/utils/urlYupSchema.js.map +1 -0
- package/dist/admin/legacy/utils/urlYupSchema.mjs.map +1 -0
- package/dist/admin/legacy/utils/urlsToAssets.js +42 -0
- package/dist/admin/legacy/utils/urlsToAssets.js.map +1 -0
- package/dist/admin/legacy/utils/urlsToAssets.mjs +40 -0
- package/dist/admin/legacy/utils/urlsToAssets.mjs.map +1 -0
- package/dist/admin/pages/Assets/AssetsPage.js +828 -0
- package/dist/admin/pages/Assets/AssetsPage.js.map +1 -0
- package/dist/admin/pages/Assets/AssetsPage.mjs +806 -0
- package/dist/admin/pages/Assets/AssetsPage.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/ActionsMenuContent.js.map +1 -0
- package/dist/admin/pages/Assets/components/ActionsMenuContent.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetActionsMenu.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetActionsMenu.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetCropEditor.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetCropEditor.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetDetailsDrawer.js +1202 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetDetailsDrawer.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetDetailsDrawer.mjs +1175 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetDetailsDrawer.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetPreview.js +261 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetPreview.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetPreview.mjs +239 -0
- package/dist/admin/pages/Assets/components/AssetDetails/AssetPreview.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/useCropImg.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetDetails/useCropImg.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsGrid.js +528 -0
- package/dist/admin/pages/Assets/components/AssetsGrid.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsGrid.mjs +526 -0
- package/dist/admin/pages/Assets/components/AssetsGrid.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsSearchInput.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsSearchInput.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsTable.js.map +1 -0
- package/dist/admin/pages/Assets/components/AssetsTable.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/BulkActionsBar.js +431 -0
- package/dist/admin/pages/Assets/components/BulkActionsBar.js.map +1 -0
- package/dist/admin/pages/Assets/components/BulkActionsBar.mjs +429 -0
- package/dist/admin/pages/Assets/components/BulkActionsBar.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/BulkMoveDialog.js.map +1 -0
- package/dist/admin/pages/Assets/components/BulkMoveDialog.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/BusyOverlay.js.map +1 -0
- package/dist/admin/pages/Assets/components/BusyOverlay.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/DateRangeCalendar.js.map +1 -0
- package/dist/admin/pages/Assets/components/DateRangeCalendar.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/DeleteItemsDialog.js.map +1 -0
- package/dist/admin/pages/Assets/components/DeleteItemsDialog.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/AssetsDndProvider.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/AssetsDndProvider.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/DragOverlayChip.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/DragOverlayChip.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/buildDragSet.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/buildDragSet.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/computeValidDropTargets.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/computeValidDropTargets.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/dndIds.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/dndIds.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/useAssetDnd.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/useAssetDnd.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/useFolderTreeDroppable.js.map +1 -0
- package/dist/admin/pages/Assets/components/Dnd/useFolderTreeDroppable.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/DropZone/UploadDropZone.js.map +1 -0
- package/dist/admin/pages/Assets/components/DropZone/UploadDropZone.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/DropZone/UploadDropZoneContext.js.map +1 -0
- package/dist/admin/pages/Assets/components/DropZone/UploadDropZoneContext.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/EmptyState.js.map +1 -0
- package/dist/admin/pages/Assets/components/EmptyState.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FilterBadges.js.map +1 -0
- package/dist/admin/pages/Assets/components/FilterBadges.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FilterMenu.js.map +1 -0
- package/dist/admin/pages/Assets/components/FilterMenu.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FolderActionsMenu.js.map +1 -0
- package/dist/admin/pages/Assets/components/FolderActionsMenu.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FolderFormDialog.js.map +1 -0
- package/dist/admin/pages/Assets/components/FolderFormDialog.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FolderTree/FolderTree.js.map +1 -0
- package/dist/admin/pages/Assets/components/FolderTree/FolderTree.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/FolderTree/useSpringLoadedExpand.js.map +1 -0
- package/dist/admin/pages/Assets/components/FolderTree/useSpringLoadedExpand.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/ImportFromUrlDialog.js.map +1 -0
- package/dist/admin/pages/Assets/components/ImportFromUrlDialog.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/MainAreaContextMenu.js.map +1 -0
- package/dist/admin/pages/Assets/components/MainAreaContextMenu.mjs.map +1 -0
- package/dist/admin/pages/Assets/components/SortMenu.js.map +1 -0
- package/dist/admin/pages/Assets/components/SortMenu.mjs.map +1 -0
- package/dist/admin/pages/Assets/constants.js.map +1 -0
- package/dist/admin/pages/Assets/constants.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useAssetSearch.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useAssetSearch.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useAssetSelection.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useAssetSelection.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useBusyAssets.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useBusyAssets.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useFolderInfo.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useFolderInfo.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useFolderNavigation.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useFolderNavigation.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useInfiniteAssets.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useInfiniteAssets.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useInfiniteScrollSentinel.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useInfiniteScrollSentinel.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useIsAssetDetailsOpen.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useIsAssetDetailsOpen.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListFilters.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListFilters.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListScrollRestoration.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListScrollRestoration.mjs.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListSort.js.map +1 -0
- package/dist/admin/pages/Assets/hooks/useListSort.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/buildAssetFilters.js.map +1 -0
- package/dist/admin/pages/Assets/utils/buildAssetFilters.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/listQueryKey.js.map +1 -0
- package/dist/admin/pages/Assets/utils/listQueryKey.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/mergeMixedList.js.map +1 -0
- package/dist/admin/pages/Assets/utils/mergeMixedList.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/mergeUploadedAssets.js.map +1 -0
- package/dist/admin/pages/Assets/utils/mergeUploadedAssets.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/renderedKeys.js.map +1 -0
- package/dist/admin/pages/Assets/utils/renderedKeys.mjs.map +1 -0
- package/dist/admin/pages/Assets/utils/selection.js.map +1 -0
- package/dist/admin/pages/Assets/utils/selection.mjs.map +1 -0
- package/dist/admin/pages/SettingsPage/SettingsPage.js +23 -28
- package/dist/admin/pages/SettingsPage/SettingsPage.js.map +1 -1
- package/dist/admin/pages/SettingsPage/SettingsPage.mjs +23 -28
- package/dist/admin/pages/SettingsPage/SettingsPage.mjs.map +1 -1
- package/dist/admin/pages/SettingsPage/useAIMetadataJob.js +110 -0
- package/dist/admin/pages/SettingsPage/useAIMetadataJob.js.map +1 -0
- package/dist/admin/pages/SettingsPage/useAIMetadataJob.mjs +88 -0
- package/dist/admin/pages/SettingsPage/useAIMetadataJob.mjs.map +1 -0
- package/dist/admin/services/api.js.map +1 -0
- package/dist/admin/services/api.mjs.map +1 -0
- package/dist/admin/services/assets.js.map +1 -0
- package/dist/admin/services/assets.mjs.map +1 -0
- package/dist/admin/services/folders.js.map +1 -0
- package/dist/admin/services/folders.mjs.map +1 -0
- package/dist/admin/services/settings.js.map +1 -0
- package/dist/admin/services/settings.mjs.map +1 -0
- package/dist/admin/services/uploadFileViaXHR.js.map +1 -0
- package/dist/admin/services/uploadFileViaXHR.mjs.map +1 -0
- package/dist/admin/src/hooks/useMediaLibraryPermissions.d.ts +19 -2
- package/dist/admin/src/hooks/useTracking.d.ts +26 -1
- package/dist/admin/src/legacy/ai/components/AIAssetCard.d.ts +13 -0
- package/dist/admin/src/legacy/ai/components/AIUploadModal.d.ts +55 -0
- package/dist/admin/src/legacy/components/AssetCard/AssetCard.d.ts +19 -0
- package/dist/admin/src/legacy/components/AssetCard/UploadingAssetCard.d.ts +17 -0
- package/dist/admin/src/legacy/components/AssetDialog/AssetDialog.d.ts +39 -0
- package/dist/admin/src/legacy/components/AssetDialog/BrowseStep/BrowseStep.d.ts +63 -0
- package/dist/admin/src/legacy/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.d.ts +7 -0
- package/dist/admin/src/legacy/components/AssetDialog/SelectedStep/SelectedStep.d.ts +8 -0
- package/dist/admin/src/legacy/components/AssetGridList/AssetGridList.d.ts +13 -0
- package/dist/admin/src/legacy/components/BulkMoveDialog/BulkMoveDialog.d.ts +15 -0
- package/dist/admin/src/legacy/components/EditAssetDialog/EditAssetContent.d.ts +31 -0
- package/dist/admin/src/legacy/components/EditAssetDialog/PreviewBox/AssetPreview.d.ts +8 -0
- package/dist/admin/src/legacy/components/EditAssetDialog/PreviewBox/PreviewBox.d.ts +26 -0
- package/dist/admin/src/legacy/components/EditAssetDialog/RemoveAssetDialog.d.ts +8 -0
- package/dist/admin/src/legacy/components/EditFolderDialog/EditFolderDialog.d.ts +12 -0
- package/dist/admin/src/legacy/components/MediaLibraryDialog/MediaLibraryDialog.d.ts +10 -0
- package/dist/admin/src/legacy/components/MediaLibraryInput/Carousel/CarouselAsset.d.ts +4 -0
- package/dist/admin/src/legacy/components/MediaLibraryInput/Carousel/CarouselAssetActions.d.ts +9 -0
- package/dist/admin/src/legacy/components/MediaLibraryInput/Carousel/CarouselAssets.d.ts +23 -0
- package/dist/admin/src/legacy/components/MediaLibraryInput/Carousel/EmptyStateAsset.d.ts +10 -0
- package/dist/admin/src/legacy/components/SelectTree/Option.d.ts +16 -0
- package/dist/admin/src/legacy/components/SortPicker/SortPicker.d.ts +7 -0
- package/dist/admin/src/legacy/components/TableList/CellContent.d.ts +8 -0
- package/dist/admin/src/legacy/components/TableList/PreviewCell.d.ts +7 -0
- package/dist/admin/src/legacy/components/TableList/TableList.d.ts +31 -0
- package/dist/admin/src/legacy/components/TableList/TableRows.d.ts +22 -0
- package/dist/admin/src/legacy/components/UploadAssetDialog/AddAssetStep/AddAssetStep.d.ts +13 -0
- package/dist/admin/src/legacy/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.d.ts +22 -0
- package/dist/admin/src/legacy/components/UploadAssetDialog/UploadAssetDialog.d.ts +21 -0
- package/dist/admin/src/legacy/components/UploadProgress/UploadProgress.d.ts +7 -0
- package/dist/admin/src/legacy/hooks/useAssets.d.ts +14 -0
- package/dist/admin/src/legacy/hooks/useBulkEdit.d.ts +91 -0
- package/dist/admin/src/legacy/hooks/useBulkMove.d.ts +209 -0
- package/dist/admin/src/legacy/hooks/useBulkRemove.d.ts +241 -0
- package/dist/admin/src/legacy/hooks/useConfig.d.ts +5 -0
- package/dist/admin/src/legacy/hooks/useEditAsset.d.ts +119 -0
- package/dist/admin/src/legacy/hooks/useEditFolder.d.ts +72 -0
- package/dist/admin/src/legacy/hooks/useFolder.d.ts +7 -0
- package/dist/admin/src/legacy/hooks/useFolderStructure.d.ts +18 -0
- package/dist/admin/src/legacy/hooks/useFolders.d.ts +11 -0
- package/dist/admin/src/legacy/hooks/useMediaLibraryPermissions.d.ts +4 -0
- package/dist/admin/src/legacy/hooks/useModalQueryParams.d.ts +20 -0
- package/dist/admin/src/legacy/hooks/useRemoveAsset.d.ts +8 -0
- package/dist/admin/src/legacy/hooks/useTracking.d.ts +4 -0
- package/dist/admin/src/legacy/hooks/useUpload.d.ts +15 -0
- package/dist/admin/src/legacy/pages/App/ConfigureTheView/ConfigureTheView.d.ts +6 -0
- package/dist/admin/src/legacy/pages/App/ConfigureTheView/components/Settings.d.ts +13 -0
- package/dist/admin/src/legacy/pages/App/ConfigureTheView/state/actions.d.ts +12 -0
- package/dist/admin/src/legacy/pages/App/ConfigureTheView/state/init.d.ts +8 -0
- package/dist/admin/src/legacy/pages/App/MediaLibrary.d.ts +1 -0
- package/dist/admin/src/legacy/pages/App/components/BulkActions.d.ts +15 -0
- package/dist/admin/src/legacy/pages/App/components/BulkDeleteButton.d.ts +7 -0
- package/dist/admin/src/legacy/pages/App/components/BulkMoveButton.d.ts +15 -0
- package/dist/admin/src/legacy/pages/App/components/Header.d.ts +22 -0
- package/dist/admin/src/legacy/utils/containsAssetFilter.d.ts +2 -0
- package/dist/admin/src/legacy/utils/createAssetUrl.d.ts +2 -0
- package/dist/admin/src/legacy/utils/downloadFile.d.ts +1 -0
- package/dist/admin/src/legacy/utils/findRecursiveFolderByValue.d.ts +11 -0
- package/dist/admin/src/legacy/utils/getAllowedFiles.d.ts +14 -0
- package/dist/admin/src/legacy/utils/getBreadcrumbDataCM.d.ts +19 -0
- package/dist/admin/src/legacy/utils/getBreadcrumbDataML.d.ts +18 -0
- package/dist/admin/src/legacy/utils/getFolderParents.d.ts +11 -0
- package/dist/admin/src/legacy/utils/getFolderURL.d.ts +5 -0
- package/dist/admin/src/legacy/utils/icons.d.ts +15 -0
- package/dist/admin/src/legacy/utils/index.d.ts +26 -0
- package/dist/admin/src/legacy/utils/rawFileToAsset.d.ts +14 -0
- package/dist/admin/src/pages/Assets/components/ActionsMenuContent.d.ts +33 -0
- package/dist/admin/src/pages/Assets/components/AssetActionsMenu.d.ts +26 -0
- package/dist/admin/src/pages/Assets/components/AssetDetails/AssetCropEditor.d.ts +16 -0
- package/dist/admin/src/pages/Assets/components/AssetDetails/AssetDetailsDrawer.d.ts +46 -0
- package/dist/admin/src/pages/Assets/components/AssetDetails/AssetPreview.d.ts +9 -0
- package/dist/admin/src/pages/Assets/components/AssetsGrid.d.ts +12 -0
- package/dist/admin/src/pages/Assets/components/AssetsTable.d.ts +18 -0
- package/dist/admin/src/pages/Assets/components/BulkActionsBar.d.ts +28 -0
- package/dist/admin/src/pages/Assets/components/Dnd/computeValidDropTargets.d.ts +7 -0
- package/dist/admin/src/pages/Assets/components/FolderActionsMenu.d.ts +21 -0
- package/dist/admin/src/pages/Assets/hooks/useFolderNavigation.d.ts +7 -0
- package/dist/admin/src/pages/Assets/hooks/useInfiniteAssets.d.ts +45 -0
- package/dist/admin/src/pages/Assets/utils/mergeMixedList.d.ts +40 -0
- package/dist/admin/src/pages/Assets/utils/mergeUploadedAssets.d.ts +35 -0
- package/dist/admin/src/pages/Assets/utils/renderedKeys.d.ts +19 -0
- package/dist/admin/src/pages/SettingsPage/useAIMetadataJob.d.ts +9 -0
- package/dist/admin/src/services/api.d.ts +99 -0
- package/dist/admin/src/services/assets.d.ts +33 -0
- package/dist/admin/src/services/folders.d.ts +37 -0
- package/dist/admin/src/services/settings.d.ts +2 -0
- package/dist/admin/src/services/uploadFileViaXHR.d.ts +23 -0
- package/dist/admin/src/store/uploadProgress.d.ts +201 -0
- package/dist/admin/src/utils/canDropItemOnFolder.d.ts +9 -0
- package/dist/admin/src/utils/downloadFile.d.ts +5 -0
- package/dist/admin/src/utils/flattenFolderStructure.d.ts +18 -0
- package/dist/admin/src/utils/getFolderLabel.d.ts +11 -0
- package/dist/admin/src/utils/itemLocations.d.ts +31 -0
- package/dist/admin/store/hooks.js.map +1 -0
- package/dist/admin/store/hooks.mjs.map +1 -0
- package/dist/admin/store/uploadProgress.js.map +1 -0
- package/dist/admin/store/uploadProgress.mjs.map +1 -0
- package/dist/admin/utils/buildBulkMovePayload.js.map +1 -0
- package/dist/admin/utils/buildBulkMovePayload.mjs.map +1 -0
- package/dist/admin/utils/buildDragSetFromSelection.js.map +1 -0
- package/dist/admin/utils/buildDragSetFromSelection.mjs.map +1 -0
- package/dist/admin/utils/canDropItemOnFolder.js.map +1 -0
- package/dist/admin/utils/canDropItemOnFolder.mjs.map +1 -0
- package/dist/admin/utils/createRafBatcher.js.map +1 -0
- package/dist/admin/utils/createRafBatcher.mjs.map +1 -0
- package/dist/admin/utils/downloadFile.js +13 -7
- package/dist/admin/utils/downloadFile.js.map +1 -1
- package/dist/admin/utils/downloadFile.mjs +13 -7
- package/dist/admin/utils/downloadFile.mjs.map +1 -1
- package/dist/admin/utils/files.js.map +1 -0
- package/dist/admin/utils/files.mjs.map +1 -0
- package/dist/admin/utils/flattenFolderStructure.js.map +1 -0
- package/dist/admin/utils/flattenFolderStructure.mjs.map +1 -0
- package/dist/admin/utils/formatMoveSuccessMessage.js.map +1 -0
- package/dist/admin/utils/formatMoveSuccessMessage.mjs.map +1 -0
- package/dist/admin/utils/getApiErrorMessage.js.map +1 -0
- package/dist/admin/utils/getApiErrorMessage.mjs.map +1 -0
- package/dist/admin/utils/getAssetIcon.js +28 -0
- package/dist/admin/utils/getAssetIcon.js.map +1 -0
- package/dist/admin/utils/getAssetIcon.mjs +26 -0
- package/dist/admin/utils/getAssetIcon.mjs.map +1 -0
- package/dist/admin/utils/getFolderLabel.js.map +1 -0
- package/dist/admin/utils/getFolderLabel.mjs.map +1 -0
- package/dist/admin/utils/getRelationId.js.map +1 -0
- package/dist/admin/utils/getRelationId.mjs.map +1 -0
- package/dist/admin/utils/isEventFromWithin.js.map +1 -0
- package/dist/admin/utils/isEventFromWithin.mjs.map +1 -0
- package/dist/admin/utils/itemLocations.js.map +1 -0
- package/dist/admin/utils/itemLocations.mjs.map +1 -0
- package/dist/admin/utils/itemSource.js.map +1 -0
- package/dist/admin/utils/itemSource.mjs.map +1 -0
- package/dist/admin/utils/searchQueryParam.js.map +1 -0
- package/dist/admin/utils/searchQueryParam.mjs.map +1 -0
- package/dist/admin/utils/translations.js +8 -0
- package/dist/admin/utils/translations.js.map +1 -0
- package/dist/admin/utils/translations.mjs +6 -0
- package/dist/admin/utils/translations.mjs.map +1 -0
- package/dist/server/controllers/admin-settings.js +1 -4
- package/dist/server/controllers/admin-settings.js.map +1 -1
- package/dist/server/controllers/admin-settings.mjs +1 -4
- package/dist/server/controllers/admin-settings.mjs.map +1 -1
- package/dist/server/migrations/unsign-richtext-and-blocks-urls.js +147 -0
- package/dist/server/migrations/unsign-richtext-and-blocks-urls.js.map +1 -0
- package/dist/server/migrations/unsign-richtext-and-blocks-urls.mjs +145 -0
- package/dist/server/migrations/unsign-richtext-and-blocks-urls.mjs.map +1 -0
- package/dist/server/register.js +3 -0
- package/dist/server/register.js.map +1 -1
- package/dist/server/register.mjs +3 -0
- package/dist/server/register.mjs.map +1 -1
- package/dist/server/routes/admin.js +4 -1
- package/dist/server/routes/admin.js.map +1 -1
- package/dist/server/routes/admin.mjs +4 -1
- package/dist/server/routes/admin.mjs.map +1 -1
- package/dist/server/services/ai-metadata.js +1 -1
- package/dist/server/services/ai-metadata.js.map +1 -1
- package/dist/server/services/ai-metadata.mjs +1 -1
- package/dist/server/services/ai-metadata.mjs.map +1 -1
- package/dist/server/services/extensions/index.js +17 -5
- package/dist/server/services/extensions/index.js.map +1 -1
- package/dist/server/services/extensions/index.mjs +16 -4
- package/dist/server/services/extensions/index.mjs.map +1 -1
- package/dist/server/services/extensions/utils.js +318 -19
- package/dist/server/services/extensions/utils.js.map +1 -1
- package/dist/server/services/extensions/utils.mjs +309 -20
- package/dist/server/services/extensions/utils.mjs.map +1 -1
- package/dist/server/services/metrics.js +4 -3
- package/dist/server/services/metrics.js.map +1 -1
- package/dist/server/services/metrics.mjs +4 -3
- package/dist/server/services/metrics.mjs.map +1 -1
- package/dist/server/src/controllers/admin-settings.d.ts +1 -1
- package/dist/server/src/controllers/admin-settings.d.ts.map +1 -1
- package/dist/server/src/controllers/index.d.ts +1 -1
- package/dist/server/src/index.d.ts +1 -1
- package/dist/server/src/migrations/unsign-richtext-and-blocks-urls.d.ts +18 -0
- package/dist/server/src/migrations/unsign-richtext-and-blocks-urls.d.ts.map +1 -0
- package/dist/server/src/register.d.ts.map +1 -1
- package/dist/server/src/routes/admin.d.ts.map +1 -1
- package/dist/server/src/services/extensions/index.d.ts.map +1 -1
- package/dist/server/src/services/extensions/utils.d.ts +52 -2
- package/dist/server/src/services/extensions/utils.d.ts.map +1 -1
- package/dist/server/src/services/metrics.d.ts.map +1 -1
- package/package.json +6 -6
- package/dist/admin/ai/components/AIAssetCard.js +0 -621
- package/dist/admin/ai/components/AIAssetCard.js.map +0 -1
- package/dist/admin/ai/components/AIAssetCard.mjs +0 -598
- package/dist/admin/ai/components/AIAssetCard.mjs.map +0 -1
- package/dist/admin/ai/components/AIUploadModal.js.map +0 -1
- package/dist/admin/ai/components/AIUploadModal.mjs.map +0 -1
- package/dist/admin/components/AssetCard/AssetCard.js +0 -67
- package/dist/admin/components/AssetCard/AssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/AssetCard.mjs +0 -65
- package/dist/admin/components/AssetCard/AssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/AssetCardBase.js.map +0 -1
- package/dist/admin/components/AssetCard/AssetCardBase.mjs.map +0 -1
- package/dist/admin/components/AssetCard/AudioAssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/AudioAssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/AudioPreview.js.map +0 -1
- package/dist/admin/components/AssetCard/AudioPreview.mjs.map +0 -1
- package/dist/admin/components/AssetCard/DocAssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/DocAssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/ImageAssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/UploadingAssetCard.js +0 -154
- package/dist/admin/components/AssetCard/UploadingAssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/UploadingAssetCard.mjs +0 -132
- package/dist/admin/components/AssetCard/UploadingAssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/VideoAssetCard.js.map +0 -1
- package/dist/admin/components/AssetCard/VideoAssetCard.mjs.map +0 -1
- package/dist/admin/components/AssetCard/VideoPreview.js.map +0 -1
- package/dist/admin/components/AssetCard/VideoPreview.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/AssetDialog.js.map +0 -1
- package/dist/admin/components/AssetDialog/AssetDialog.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.js +0 -320
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.mjs +0 -318
- package/dist/admin/components/AssetDialog/BrowseStep/BrowseStep.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/Filters.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/Filters.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PageSize.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PageSize.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PaginationFooter/Pagination.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PaginationFooter/Pagination.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/utils/isSelectable.js.map +0 -1
- package/dist/admin/components/AssetDialog/BrowseStep/utils/isSelectable.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/DialogFooter.js.map +0 -1
- package/dist/admin/components/AssetDialog/DialogFooter.mjs.map +0 -1
- package/dist/admin/components/AssetDialog/SelectedStep/SelectedStep.js.map +0 -1
- package/dist/admin/components/AssetDialog/SelectedStep/SelectedStep.mjs.map +0 -1
- package/dist/admin/components/AssetGridList/AssetGridList.js.map +0 -1
- package/dist/admin/components/AssetGridList/AssetGridList.mjs.map +0 -1
- package/dist/admin/components/AssetGridList/Draggable.js.map +0 -1
- package/dist/admin/components/AssetGridList/Draggable.mjs.map +0 -1
- package/dist/admin/components/Breadcrumbs/Breadcrumbs.js.map +0 -1
- package/dist/admin/components/Breadcrumbs/Breadcrumbs.mjs.map +0 -1
- package/dist/admin/components/Breadcrumbs/CrumbSimpleMenuAsync.js.map +0 -1
- package/dist/admin/components/Breadcrumbs/CrumbSimpleMenuAsync.mjs.map +0 -1
- package/dist/admin/components/BulkMoveDialog/BulkMoveDialog.js.map +0 -1
- package/dist/admin/components/BulkMoveDialog/BulkMoveDialog.mjs.map +0 -1
- package/dist/admin/components/ContextInfo/ContextInfo.js.map +0 -1
- package/dist/admin/components/ContextInfo/ContextInfo.mjs.map +0 -1
- package/dist/admin/components/CopyLinkButton/CopyLinkButton.js.map +0 -1
- package/dist/admin/components/CopyLinkButton/CopyLinkButton.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/DialogHeader.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/DialogHeader.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/EditAssetContent.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/EditAssetContent.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.js +0 -114
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.mjs +0 -89
- package/dist/admin/components/EditAssetDialog/PreviewBox/AssetPreview.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/CroppingActions.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/CroppingActions.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/FocalPointActions.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/FocalPointActions.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.js +0 -362
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.mjs +0 -337
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewBox.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewComponents.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/PreviewBox/PreviewComponents.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/RemoveAssetDialog.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/RemoveAssetDialog.mjs.map +0 -1
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.js.map +0 -1
- package/dist/admin/components/EditAssetDialog/ReplaceMediaButton.mjs.map +0 -1
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.js.map +0 -1
- package/dist/admin/components/EditFolderDialog/EditFolderDialog.mjs.map +0 -1
- package/dist/admin/components/EditFolderDialog/ModalHeader/ModalHeader.js.map +0 -1
- package/dist/admin/components/EditFolderDialog/ModalHeader/ModalHeader.mjs.map +0 -1
- package/dist/admin/components/EditFolderDialog/RemoveFolderDialog.js.map +0 -1
- package/dist/admin/components/EditFolderDialog/RemoveFolderDialog.mjs.map +0 -1
- package/dist/admin/components/EmptyAssets/EmptyAssetGrid.js.map +0 -1
- package/dist/admin/components/EmptyAssets/EmptyAssetGrid.mjs.map +0 -1
- package/dist/admin/components/EmptyAssets/EmptyAssets.js.map +0 -1
- package/dist/admin/components/EmptyAssets/EmptyAssets.mjs.map +0 -1
- package/dist/admin/components/FilterList/FilterList.js.map +0 -1
- package/dist/admin/components/FilterList/FilterList.mjs.map +0 -1
- package/dist/admin/components/FilterList/FilterTag.js.map +0 -1
- package/dist/admin/components/FilterList/FilterTag.mjs.map +0 -1
- package/dist/admin/components/FilterPopover/FilterPopover.js.map +0 -1
- package/dist/admin/components/FilterPopover/FilterPopover.mjs.map +0 -1
- package/dist/admin/components/FilterPopover/FilterValueInput.js.map +0 -1
- package/dist/admin/components/FilterPopover/FilterValueInput.mjs.map +0 -1
- package/dist/admin/components/FilterPopover/utils/getFilterList.js.map +0 -1
- package/dist/admin/components/FilterPopover/utils/getFilterList.mjs.map +0 -1
- package/dist/admin/components/FolderCard/FolderCard/FolderCard.js.map +0 -1
- package/dist/admin/components/FolderCard/FolderCard/FolderCard.mjs.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardBody/FolderCardBody.js.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardBody/FolderCardBody.mjs.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardBodyAction/FolderCardBodyAction.js.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardBodyAction/FolderCardBodyAction.mjs.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.js.map +0 -1
- package/dist/admin/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.mjs.map +0 -1
- package/dist/admin/components/FolderCard/contexts/FolderCard.js.map +0 -1
- package/dist/admin/components/FolderCard/contexts/FolderCard.mjs.map +0 -1
- package/dist/admin/components/FolderGridList/FolderGridList.js.map +0 -1
- package/dist/admin/components/FolderGridList/FolderGridList.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryDialog/MediaLibraryDialog.js.map +0 -1
- package/dist/admin/components/MediaLibraryDialog/MediaLibraryDialog.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.js +0 -89
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.js.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.mjs +0 -87
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAsset.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssetActions.js.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssetActions.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssets.js.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/CarouselAssets.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.js +0 -111
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.js.map +0 -1
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs +0 -89
- package/dist/admin/components/MediaLibraryInput/Carousel/EmptyStateAsset.mjs.map +0 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.js.map +0 -1
- package/dist/admin/components/MediaLibraryInput/MediaLibraryInput.mjs.map +0 -1
- package/dist/admin/components/SelectTree/Option.js.map +0 -1
- package/dist/admin/components/SelectTree/Option.mjs.map +0 -1
- package/dist/admin/components/SelectTree/SelectTree.js.map +0 -1
- package/dist/admin/components/SelectTree/SelectTree.mjs.map +0 -1
- package/dist/admin/components/SelectTree/utils/flattenTree.js.map +0 -1
- package/dist/admin/components/SelectTree/utils/flattenTree.mjs.map +0 -1
- package/dist/admin/components/SelectTree/utils/getOpenValues.js.map +0 -1
- package/dist/admin/components/SelectTree/utils/getOpenValues.mjs.map +0 -1
- package/dist/admin/components/SelectTree/utils/getValuesToClose.js.map +0 -1
- package/dist/admin/components/SelectTree/utils/getValuesToClose.mjs.map +0 -1
- package/dist/admin/components/SortPicker/SortPicker.js +0 -40
- package/dist/admin/components/SortPicker/SortPicker.js.map +0 -1
- package/dist/admin/components/SortPicker/SortPicker.mjs +0 -38
- package/dist/admin/components/SortPicker/SortPicker.mjs.map +0 -1
- package/dist/admin/components/TableList/CellContent.js.map +0 -1
- package/dist/admin/components/TableList/CellContent.mjs.map +0 -1
- package/dist/admin/components/TableList/PreviewCell.js +0 -116
- package/dist/admin/components/TableList/PreviewCell.js.map +0 -1
- package/dist/admin/components/TableList/PreviewCell.mjs +0 -114
- package/dist/admin/components/TableList/PreviewCell.mjs.map +0 -1
- package/dist/admin/components/TableList/TableList.js +0 -100
- package/dist/admin/components/TableList/TableList.js.map +0 -1
- package/dist/admin/components/TableList/TableList.mjs +0 -98
- package/dist/admin/components/TableList/TableList.mjs.map +0 -1
- package/dist/admin/components/TableList/TableRows.js +0 -105
- package/dist/admin/components/TableList/TableRows.js.map +0 -1
- package/dist/admin/components/TableList/TableRows.mjs +0 -103
- package/dist/admin/components/TableList/TableRows.mjs.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/AddAssetStep.js.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/AddAssetStep.mjs.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js +0 -177
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.js.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs +0 -155
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromComputerForm.mjs.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.js.map +0 -1
- package/dist/admin/components/UploadAssetDialog/AddAssetStep/FromUrlForm.mjs.map +0 -1
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.js.map +0 -1
- package/dist/admin/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.mjs.map +0 -1
- package/dist/admin/components/UploadAssetDialog/UploadAssetDialog.js.map +0 -1
- package/dist/admin/components/UploadAssetDialog/UploadAssetDialog.mjs.map +0 -1
- package/dist/admin/components/UploadProgress/UploadProgress.js.map +0 -1
- package/dist/admin/components/UploadProgress/UploadProgress.mjs.map +0 -1
- package/dist/admin/future/App.js +0 -33
- package/dist/admin/future/App.js.map +0 -1
- package/dist/admin/future/App.mjs +0 -31
- package/dist/admin/future/App.mjs.map +0 -1
- package/dist/admin/future/components/Drawer.js.map +0 -1
- package/dist/admin/future/components/Drawer.mjs.map +0 -1
- package/dist/admin/future/components/TruncatedText.js.map +0 -1
- package/dist/admin/future/components/TruncatedText.mjs.map +0 -1
- package/dist/admin/future/components/UploadProgressDialog.js.map +0 -1
- package/dist/admin/future/components/UploadProgressDialog.mjs.map +0 -1
- package/dist/admin/future/hooks/useAIMetadataEnabled.js +0 -39
- package/dist/admin/future/hooks/useAIMetadataEnabled.js.map +0 -1
- package/dist/admin/future/hooks/useAIMetadataEnabled.mjs +0 -37
- package/dist/admin/future/hooks/useAIMetadataEnabled.mjs.map +0 -1
- package/dist/admin/future/hooks/useApiErrorMessage.js.map +0 -1
- package/dist/admin/future/hooks/useApiErrorMessage.mjs.map +0 -1
- package/dist/admin/future/hooks/useMediaLibraryPermissions.js +0 -35
- package/dist/admin/future/hooks/useMediaLibraryPermissions.js.map +0 -1
- package/dist/admin/future/hooks/useMediaLibraryPermissions.mjs +0 -33
- package/dist/admin/future/hooks/useMediaLibraryPermissions.mjs.map +0 -1
- package/dist/admin/future/hooks/useTracking.js +0 -57
- package/dist/admin/future/hooks/useTracking.js.map +0 -1
- package/dist/admin/future/hooks/useTracking.mjs +0 -53
- package/dist/admin/future/hooks/useTracking.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/AssetsPage.js +0 -828
- package/dist/admin/future/pages/Assets/AssetsPage.js.map +0 -1
- package/dist/admin/future/pages/Assets/AssetsPage.mjs +0 -806
- package/dist/admin/future/pages/Assets/AssetsPage.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/ActionsMenuContent.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/ActionsMenuContent.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetActionsMenu.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetActionsMenu.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetCropEditor.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetCropEditor.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetDetailsDrawer.js +0 -1202
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetDetailsDrawer.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetDetailsDrawer.mjs +0 -1175
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetDetailsDrawer.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetPreview.js +0 -261
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetPreview.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetPreview.mjs +0 -239
- package/dist/admin/future/pages/Assets/components/AssetDetails/AssetPreview.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/useCropImg.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetDetails/useCropImg.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsGrid.js +0 -534
- package/dist/admin/future/pages/Assets/components/AssetsGrid.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsGrid.mjs +0 -532
- package/dist/admin/future/pages/Assets/components/AssetsGrid.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsSearchInput.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsSearchInput.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsTable.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/AssetsTable.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/BulkActionsBar.js +0 -431
- package/dist/admin/future/pages/Assets/components/BulkActionsBar.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/BulkActionsBar.mjs +0 -429
- package/dist/admin/future/pages/Assets/components/BulkActionsBar.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/BulkMoveDialog.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/BulkMoveDialog.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/BusyOverlay.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/BusyOverlay.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/DateRangeCalendar.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/DateRangeCalendar.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/DeleteItemsDialog.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/DeleteItemsDialog.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/AssetsDndProvider.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/AssetsDndProvider.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/DragOverlayChip.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/DragOverlayChip.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/buildDragSet.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/buildDragSet.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/computeValidDropTargets.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/computeValidDropTargets.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/dndIds.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/dndIds.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/useAssetDnd.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/useAssetDnd.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/useFolderTreeDroppable.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/Dnd/useFolderTreeDroppable.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/DropZone/UploadDropZone.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/DropZone/UploadDropZone.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/DropZone/UploadDropZoneContext.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/DropZone/UploadDropZoneContext.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/EmptyState.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/EmptyState.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FilterBadges.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FilterBadges.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FilterMenu.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FilterMenu.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderActionsMenu.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderActionsMenu.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderFormDialog.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderFormDialog.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderTree/FolderTree.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderTree/FolderTree.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderTree/useSpringLoadedExpand.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/FolderTree/useSpringLoadedExpand.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/ImportFromUrlDialog.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/ImportFromUrlDialog.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/MainAreaContextMenu.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/MainAreaContextMenu.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/components/SortMenu.js.map +0 -1
- package/dist/admin/future/pages/Assets/components/SortMenu.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/constants.js.map +0 -1
- package/dist/admin/future/pages/Assets/constants.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useAssetSearch.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useAssetSearch.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useAssetSelection.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useAssetSelection.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useBusyAssets.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useBusyAssets.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useFolderInfo.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useFolderInfo.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useFolderNavigation.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useFolderNavigation.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useInfiniteAssets.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useInfiniteAssets.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useInfiniteScrollSentinel.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useInfiniteScrollSentinel.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useIsAssetDetailsOpen.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useIsAssetDetailsOpen.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListFilters.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListFilters.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListScrollRestoration.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListScrollRestoration.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListSort.js.map +0 -1
- package/dist/admin/future/pages/Assets/hooks/useListSort.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/buildAssetFilters.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/buildAssetFilters.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/listQueryKey.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/listQueryKey.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/mergeMixedList.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/mergeMixedList.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/mergeUploadedAssets.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/mergeUploadedAssets.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/renderedKeys.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/renderedKeys.mjs.map +0 -1
- package/dist/admin/future/pages/Assets/utils/selection.js.map +0 -1
- package/dist/admin/future/pages/Assets/utils/selection.mjs.map +0 -1
- package/dist/admin/future/services/api.js.map +0 -1
- package/dist/admin/future/services/api.mjs.map +0 -1
- package/dist/admin/future/services/assets.js.map +0 -1
- package/dist/admin/future/services/assets.mjs.map +0 -1
- package/dist/admin/future/services/folders.js.map +0 -1
- package/dist/admin/future/services/folders.mjs.map +0 -1
- package/dist/admin/future/services/settings.js.map +0 -1
- package/dist/admin/future/services/settings.mjs.map +0 -1
- package/dist/admin/future/services/uploadFileViaXHR.js.map +0 -1
- package/dist/admin/future/services/uploadFileViaXHR.mjs.map +0 -1
- package/dist/admin/future/store/hooks.js.map +0 -1
- package/dist/admin/future/store/hooks.mjs.map +0 -1
- package/dist/admin/future/store/uploadProgress.js.map +0 -1
- package/dist/admin/future/store/uploadProgress.mjs.map +0 -1
- package/dist/admin/future/utils/buildBulkMovePayload.js.map +0 -1
- package/dist/admin/future/utils/buildBulkMovePayload.mjs.map +0 -1
- package/dist/admin/future/utils/buildDragSetFromSelection.js.map +0 -1
- package/dist/admin/future/utils/buildDragSetFromSelection.mjs.map +0 -1
- package/dist/admin/future/utils/canDropItemOnFolder.js.map +0 -1
- package/dist/admin/future/utils/canDropItemOnFolder.mjs.map +0 -1
- package/dist/admin/future/utils/createRafBatcher.js.map +0 -1
- package/dist/admin/future/utils/createRafBatcher.mjs.map +0 -1
- package/dist/admin/future/utils/downloadFile.js +0 -19
- package/dist/admin/future/utils/downloadFile.js.map +0 -1
- package/dist/admin/future/utils/downloadFile.mjs +0 -17
- package/dist/admin/future/utils/downloadFile.mjs.map +0 -1
- package/dist/admin/future/utils/files.js.map +0 -1
- package/dist/admin/future/utils/files.mjs.map +0 -1
- package/dist/admin/future/utils/flattenFolderStructure.js.map +0 -1
- package/dist/admin/future/utils/flattenFolderStructure.mjs.map +0 -1
- package/dist/admin/future/utils/formatMoveSuccessMessage.js.map +0 -1
- package/dist/admin/future/utils/formatMoveSuccessMessage.mjs.map +0 -1
- package/dist/admin/future/utils/getApiErrorMessage.js.map +0 -1
- package/dist/admin/future/utils/getApiErrorMessage.mjs.map +0 -1
- package/dist/admin/future/utils/getAssetIcon.js +0 -28
- package/dist/admin/future/utils/getAssetIcon.js.map +0 -1
- package/dist/admin/future/utils/getAssetIcon.mjs +0 -26
- package/dist/admin/future/utils/getAssetIcon.mjs.map +0 -1
- package/dist/admin/future/utils/getFolderLabel.js.map +0 -1
- package/dist/admin/future/utils/getFolderLabel.mjs.map +0 -1
- package/dist/admin/future/utils/getRelationId.js.map +0 -1
- package/dist/admin/future/utils/getRelationId.mjs.map +0 -1
- package/dist/admin/future/utils/isEventFromWithin.js.map +0 -1
- package/dist/admin/future/utils/isEventFromWithin.mjs.map +0 -1
- package/dist/admin/future/utils/itemLocations.js.map +0 -1
- package/dist/admin/future/utils/itemLocations.mjs.map +0 -1
- package/dist/admin/future/utils/itemSource.js.map +0 -1
- package/dist/admin/future/utils/itemSource.mjs.map +0 -1
- package/dist/admin/future/utils/searchQueryParam.js.map +0 -1
- package/dist/admin/future/utils/searchQueryParam.mjs.map +0 -1
- package/dist/admin/future/utils/translations.js +0 -8
- package/dist/admin/future/utils/translations.js.map +0 -1
- package/dist/admin/future/utils/translations.mjs +0 -6
- package/dist/admin/future/utils/translations.mjs.map +0 -1
- package/dist/admin/hooks/useAIMetadataJob.js +0 -114
- package/dist/admin/hooks/useAIMetadataJob.js.map +0 -1
- package/dist/admin/hooks/useAIMetadataJob.mjs +0 -92
- package/dist/admin/hooks/useAIMetadataJob.mjs.map +0 -1
- package/dist/admin/hooks/useAiAvailability.js.map +0 -1
- package/dist/admin/hooks/useAiAvailability.mjs.map +0 -1
- package/dist/admin/hooks/useAssets.js +0 -127
- package/dist/admin/hooks/useAssets.js.map +0 -1
- package/dist/admin/hooks/useAssets.mjs +0 -105
- package/dist/admin/hooks/useAssets.mjs.map +0 -1
- package/dist/admin/hooks/useBulkEdit.js +0 -65
- package/dist/admin/hooks/useBulkEdit.js.map +0 -1
- package/dist/admin/hooks/useBulkEdit.mjs +0 -63
- package/dist/admin/hooks/useBulkEdit.mjs.map +0 -1
- package/dist/admin/hooks/useBulkMove.js +0 -78
- package/dist/admin/hooks/useBulkMove.js.map +0 -1
- package/dist/admin/hooks/useBulkMove.mjs +0 -76
- package/dist/admin/hooks/useBulkMove.mjs.map +0 -1
- package/dist/admin/hooks/useBulkRemove.js +0 -83
- package/dist/admin/hooks/useBulkRemove.js.map +0 -1
- package/dist/admin/hooks/useBulkRemove.mjs +0 -81
- package/dist/admin/hooks/useBulkRemove.mjs.map +0 -1
- package/dist/admin/hooks/useConfig.js +0 -58
- package/dist/admin/hooks/useConfig.js.map +0 -1
- package/dist/admin/hooks/useConfig.mjs +0 -56
- package/dist/admin/hooks/useConfig.mjs.map +0 -1
- package/dist/admin/hooks/useCropImg.js.map +0 -1
- package/dist/admin/hooks/useCropImg.mjs.map +0 -1
- package/dist/admin/hooks/useEditAsset.js +0 -115
- package/dist/admin/hooks/useEditAsset.js.map +0 -1
- package/dist/admin/hooks/useEditAsset.mjs +0 -93
- package/dist/admin/hooks/useEditAsset.mjs.map +0 -1
- package/dist/admin/hooks/useEditFolder.js +0 -45
- package/dist/admin/hooks/useEditFolder.js.map +0 -1
- package/dist/admin/hooks/useEditFolder.mjs +0 -43
- package/dist/admin/hooks/useEditFolder.mjs.map +0 -1
- package/dist/admin/hooks/useFolder.js +0 -57
- package/dist/admin/hooks/useFolder.js.map +0 -1
- package/dist/admin/hooks/useFolder.mjs +0 -55
- package/dist/admin/hooks/useFolder.mjs.map +0 -1
- package/dist/admin/hooks/useFolderStructure.js +0 -52
- package/dist/admin/hooks/useFolderStructure.js.map +0 -1
- package/dist/admin/hooks/useFolderStructure.mjs +0 -50
- package/dist/admin/hooks/useFolderStructure.mjs.map +0 -1
- package/dist/admin/hooks/useFolders.js +0 -108
- package/dist/admin/hooks/useFolders.js.map +0 -1
- package/dist/admin/hooks/useFolders.mjs +0 -86
- package/dist/admin/hooks/useFolders.mjs.map +0 -1
- package/dist/admin/hooks/useModalQueryParams.js.map +0 -1
- package/dist/admin/hooks/useModalQueryParams.mjs.map +0 -1
- package/dist/admin/hooks/usePersistentState.js.map +0 -1
- package/dist/admin/hooks/usePersistentState.mjs.map +0 -1
- package/dist/admin/hooks/useRemoveAsset.js +0 -58
- package/dist/admin/hooks/useRemoveAsset.js.map +0 -1
- package/dist/admin/hooks/useRemoveAsset.mjs +0 -56
- package/dist/admin/hooks/useRemoveAsset.mjs.map +0 -1
- package/dist/admin/hooks/useSelectionState.js.map +0 -1
- package/dist/admin/hooks/useSelectionState.mjs.map +0 -1
- package/dist/admin/hooks/useSettings.js.map +0 -1
- package/dist/admin/hooks/useSettings.mjs.map +0 -1
- package/dist/admin/hooks/useUpload.js +0 -109
- package/dist/admin/hooks/useUpload.js.map +0 -1
- package/dist/admin/hooks/useUpload.mjs +0 -87
- package/dist/admin/hooks/useUpload.mjs.map +0 -1
- package/dist/admin/hooks/utils/renameKeys.js.map +0 -1
- package/dist/admin/hooks/utils/renameKeys.mjs.map +0 -1
- package/dist/admin/pages/App/App.js.map +0 -1
- package/dist/admin/pages/App/App.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.js +0 -145
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.mjs +0 -120
- package/dist/admin/pages/App/ConfigureTheView/ConfigureTheView.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.js +0 -109
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.mjs +0 -107
- package/dist/admin/pages/App/ConfigureTheView/components/Settings.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.js +0 -10
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.mjs +0 -7
- package/dist/admin/pages/App/ConfigureTheView/state/actionTypes.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actions.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/actions.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/init.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/init.mjs.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/reducer.js.map +0 -1
- package/dist/admin/pages/App/ConfigureTheView/state/reducer.mjs.map +0 -1
- package/dist/admin/pages/App/MediaLibrary.js +0 -469
- package/dist/admin/pages/App/MediaLibrary.js.map +0 -1
- package/dist/admin/pages/App/MediaLibrary.mjs +0 -447
- package/dist/admin/pages/App/MediaLibrary.mjs.map +0 -1
- package/dist/admin/pages/App/components/BulkActions.js.map +0 -1
- package/dist/admin/pages/App/components/BulkActions.mjs.map +0 -1
- package/dist/admin/pages/App/components/BulkDeleteButton.js.map +0 -1
- package/dist/admin/pages/App/components/BulkDeleteButton.mjs.map +0 -1
- package/dist/admin/pages/App/components/BulkMoveButton.js.map +0 -1
- package/dist/admin/pages/App/components/BulkMoveButton.mjs.map +0 -1
- package/dist/admin/pages/App/components/EmptyOrNoPermissions.js.map +0 -1
- package/dist/admin/pages/App/components/EmptyOrNoPermissions.mjs.map +0 -1
- package/dist/admin/pages/App/components/Filters.js.map +0 -1
- package/dist/admin/pages/App/components/Filters.mjs.map +0 -1
- package/dist/admin/pages/App/components/Header.js.map +0 -1
- package/dist/admin/pages/App/components/Header.mjs.map +0 -1
- package/dist/admin/src/ai/components/AIAssetCard.d.ts +0 -13
- package/dist/admin/src/ai/components/AIUploadModal.d.ts +0 -55
- package/dist/admin/src/components/AssetCard/AssetCard.d.ts +0 -19
- package/dist/admin/src/components/AssetCard/UploadingAssetCard.d.ts +0 -17
- package/dist/admin/src/components/AssetDialog/AssetDialog.d.ts +0 -39
- package/dist/admin/src/components/AssetDialog/BrowseStep/BrowseStep.d.ts +0 -63
- package/dist/admin/src/components/AssetDialog/BrowseStep/SearchAsset/SearchAsset.d.ts +0 -7
- package/dist/admin/src/components/AssetDialog/SelectedStep/SelectedStep.d.ts +0 -8
- package/dist/admin/src/components/AssetGridList/AssetGridList.d.ts +0 -13
- package/dist/admin/src/components/BulkMoveDialog/BulkMoveDialog.d.ts +0 -15
- package/dist/admin/src/components/EditAssetDialog/EditAssetContent.d.ts +0 -31
- package/dist/admin/src/components/EditAssetDialog/PreviewBox/AssetPreview.d.ts +0 -8
- package/dist/admin/src/components/EditAssetDialog/PreviewBox/PreviewBox.d.ts +0 -26
- package/dist/admin/src/components/EditAssetDialog/RemoveAssetDialog.d.ts +0 -8
- package/dist/admin/src/components/EditFolderDialog/EditFolderDialog.d.ts +0 -12
- package/dist/admin/src/components/MediaLibraryDialog/MediaLibraryDialog.d.ts +0 -10
- package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAsset.d.ts +0 -4
- package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAssetActions.d.ts +0 -9
- package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAssets.d.ts +0 -23
- package/dist/admin/src/components/MediaLibraryInput/Carousel/EmptyStateAsset.d.ts +0 -10
- package/dist/admin/src/components/SelectTree/Option.d.ts +0 -16
- package/dist/admin/src/components/SortPicker/SortPicker.d.ts +0 -7
- package/dist/admin/src/components/TableList/CellContent.d.ts +0 -8
- package/dist/admin/src/components/TableList/PreviewCell.d.ts +0 -7
- package/dist/admin/src/components/TableList/TableList.d.ts +0 -31
- package/dist/admin/src/components/TableList/TableRows.d.ts +0 -22
- package/dist/admin/src/components/UploadAssetDialog/AddAssetStep/AddAssetStep.d.ts +0 -13
- package/dist/admin/src/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.d.ts +0 -22
- package/dist/admin/src/components/UploadAssetDialog/UploadAssetDialog.d.ts +0 -21
- package/dist/admin/src/components/UploadProgress/UploadProgress.d.ts +0 -7
- package/dist/admin/src/future/App.d.ts +0 -1
- package/dist/admin/src/future/hooks/useMediaLibraryPermissions.d.ts +0 -21
- package/dist/admin/src/future/hooks/useTracking.d.ts +0 -29
- package/dist/admin/src/future/pages/Assets/components/ActionsMenuContent.d.ts +0 -33
- package/dist/admin/src/future/pages/Assets/components/AssetActionsMenu.d.ts +0 -26
- package/dist/admin/src/future/pages/Assets/components/AssetDetails/AssetCropEditor.d.ts +0 -16
- package/dist/admin/src/future/pages/Assets/components/AssetDetails/AssetDetailsDrawer.d.ts +0 -46
- package/dist/admin/src/future/pages/Assets/components/AssetDetails/AssetPreview.d.ts +0 -9
- package/dist/admin/src/future/pages/Assets/components/AssetsGrid.d.ts +0 -12
- package/dist/admin/src/future/pages/Assets/components/AssetsTable.d.ts +0 -18
- package/dist/admin/src/future/pages/Assets/components/BulkActionsBar.d.ts +0 -28
- package/dist/admin/src/future/pages/Assets/components/Dnd/computeValidDropTargets.d.ts +0 -7
- package/dist/admin/src/future/pages/Assets/components/FolderActionsMenu.d.ts +0 -21
- package/dist/admin/src/future/pages/Assets/hooks/useFolderNavigation.d.ts +0 -7
- package/dist/admin/src/future/pages/Assets/hooks/useInfiniteAssets.d.ts +0 -45
- package/dist/admin/src/future/pages/Assets/utils/mergeMixedList.d.ts +0 -40
- package/dist/admin/src/future/pages/Assets/utils/mergeUploadedAssets.d.ts +0 -35
- package/dist/admin/src/future/pages/Assets/utils/renderedKeys.d.ts +0 -19
- package/dist/admin/src/future/services/api.d.ts +0 -99
- package/dist/admin/src/future/services/assets.d.ts +0 -33
- package/dist/admin/src/future/services/folders.d.ts +0 -37
- package/dist/admin/src/future/services/settings.d.ts +0 -2
- package/dist/admin/src/future/services/uploadFileViaXHR.d.ts +0 -23
- package/dist/admin/src/future/store/uploadProgress.d.ts +0 -201
- package/dist/admin/src/future/utils/canDropItemOnFolder.d.ts +0 -9
- package/dist/admin/src/future/utils/downloadFile.d.ts +0 -6
- package/dist/admin/src/future/utils/flattenFolderStructure.d.ts +0 -18
- package/dist/admin/src/future/utils/getFolderLabel.d.ts +0 -11
- package/dist/admin/src/future/utils/itemLocations.d.ts +0 -31
- package/dist/admin/src/hooks/useAIMetadataJob.d.ts +0 -9
- package/dist/admin/src/hooks/useAssets.d.ts +0 -14
- package/dist/admin/src/hooks/useBulkEdit.d.ts +0 -91
- package/dist/admin/src/hooks/useBulkMove.d.ts +0 -209
- package/dist/admin/src/hooks/useBulkRemove.d.ts +0 -241
- package/dist/admin/src/hooks/useConfig.d.ts +0 -5
- package/dist/admin/src/hooks/useEditAsset.d.ts +0 -119
- package/dist/admin/src/hooks/useEditFolder.d.ts +0 -72
- package/dist/admin/src/hooks/useFolder.d.ts +0 -7
- package/dist/admin/src/hooks/useFolderStructure.d.ts +0 -18
- package/dist/admin/src/hooks/useFolders.d.ts +0 -11
- package/dist/admin/src/hooks/useModalQueryParams.d.ts +0 -20
- package/dist/admin/src/hooks/useRemoveAsset.d.ts +0 -8
- package/dist/admin/src/hooks/useUpload.d.ts +0 -15
- package/dist/admin/src/pages/App/ConfigureTheView/ConfigureTheView.d.ts +0 -6
- package/dist/admin/src/pages/App/ConfigureTheView/components/Settings.d.ts +0 -13
- package/dist/admin/src/pages/App/ConfigureTheView/state/actions.d.ts +0 -12
- package/dist/admin/src/pages/App/ConfigureTheView/state/init.d.ts +0 -8
- package/dist/admin/src/pages/App/components/BulkActions.d.ts +0 -15
- package/dist/admin/src/pages/App/components/BulkDeleteButton.d.ts +0 -7
- package/dist/admin/src/pages/App/components/BulkMoveButton.d.ts +0 -15
- package/dist/admin/src/pages/App/components/Header.d.ts +0 -22
- package/dist/admin/src/utils/containsAssetFilter.d.ts +0 -2
- package/dist/admin/src/utils/createAssetUrl.d.ts +0 -2
- package/dist/admin/src/utils/findRecursiveFolderByValue.d.ts +0 -11
- package/dist/admin/src/utils/getAllowedFiles.d.ts +0 -14
- package/dist/admin/src/utils/getBreadcrumbDataCM.d.ts +0 -19
- package/dist/admin/src/utils/getBreadcrumbDataML.d.ts +0 -18
- package/dist/admin/src/utils/getFolderParents.d.ts +0 -11
- package/dist/admin/src/utils/getFolderURL.d.ts +0 -5
- package/dist/admin/src/utils/icons.d.ts +0 -15
- package/dist/admin/src/utils/index.d.ts +0 -26
- package/dist/admin/src/utils/rawFileToAsset.d.ts +0 -14
- package/dist/admin/utils/appendSearchParamsToUrl.js.map +0 -1
- package/dist/admin/utils/appendSearchParamsToUrl.mjs.map +0 -1
- package/dist/admin/utils/containsAssetFilter.js.map +0 -1
- package/dist/admin/utils/containsAssetFilter.mjs.map +0 -1
- package/dist/admin/utils/createAssetUrl.js.map +0 -1
- package/dist/admin/utils/createAssetUrl.mjs.map +0 -1
- package/dist/admin/utils/displayedFilters.js.map +0 -1
- package/dist/admin/utils/displayedFilters.mjs.map +0 -1
- package/dist/admin/utils/findRecursiveFolderByValue.js.map +0 -1
- package/dist/admin/utils/findRecursiveFolderByValue.mjs.map +0 -1
- package/dist/admin/utils/formatBytes.js.map +0 -1
- package/dist/admin/utils/formatBytes.mjs.map +0 -1
- package/dist/admin/utils/formatDuration.js.map +0 -1
- package/dist/admin/utils/formatDuration.mjs.map +0 -1
- package/dist/admin/utils/getAPIInnerErrors.js.map +0 -1
- package/dist/admin/utils/getAPIInnerErrors.mjs.map +0 -1
- package/dist/admin/utils/getAllowedFiles.js.map +0 -1
- package/dist/admin/utils/getAllowedFiles.mjs.map +0 -1
- package/dist/admin/utils/getBreadcrumbDataCM.js.map +0 -1
- package/dist/admin/utils/getBreadcrumbDataCM.mjs.map +0 -1
- package/dist/admin/utils/getBreadcrumbDataML.js.map +0 -1
- package/dist/admin/utils/getBreadcrumbDataML.mjs.map +0 -1
- package/dist/admin/utils/getFileExtension.js.map +0 -1
- package/dist/admin/utils/getFileExtension.mjs.map +0 -1
- package/dist/admin/utils/getFolderParents.js.map +0 -1
- package/dist/admin/utils/getFolderParents.mjs.map +0 -1
- package/dist/admin/utils/getFolderURL.js.map +0 -1
- package/dist/admin/utils/getFolderURL.mjs.map +0 -1
- package/dist/admin/utils/getTrad.js +0 -8
- package/dist/admin/utils/getTrad.js.map +0 -1
- package/dist/admin/utils/getTrad.mjs +0 -6
- package/dist/admin/utils/getTrad.mjs.map +0 -1
- package/dist/admin/utils/icons.js +0 -23
- package/dist/admin/utils/icons.js.map +0 -1
- package/dist/admin/utils/icons.mjs +0 -19
- package/dist/admin/utils/icons.mjs.map +0 -1
- package/dist/admin/utils/moveElement.js.map +0 -1
- package/dist/admin/utils/moveElement.mjs.map +0 -1
- package/dist/admin/utils/normalizeAPIError.js.map +0 -1
- package/dist/admin/utils/normalizeAPIError.mjs.map +0 -1
- package/dist/admin/utils/prefixFileUrlWithBackendUrl.js.map +0 -1
- package/dist/admin/utils/prefixFileUrlWithBackendUrl.mjs.map +0 -1
- package/dist/admin/utils/prefixPluginTranslations.js.map +0 -1
- package/dist/admin/utils/prefixPluginTranslations.mjs.map +0 -1
- package/dist/admin/utils/rawFileToAsset.js +0 -23
- package/dist/admin/utils/rawFileToAsset.js.map +0 -1
- package/dist/admin/utils/rawFileToAsset.mjs +0 -21
- package/dist/admin/utils/rawFileToAsset.mjs.map +0 -1
- package/dist/admin/utils/resolveFileMime.js.map +0 -1
- package/dist/admin/utils/resolveFileMime.mjs.map +0 -1
- package/dist/admin/utils/toSingularTypes.js.map +0 -1
- package/dist/admin/utils/toSingularTypes.mjs.map +0 -1
- package/dist/admin/utils/urlYupSchema.js.map +0 -1
- package/dist/admin/utils/urlYupSchema.mjs.map +0 -1
- package/dist/admin/utils/urlsToAssets.js +0 -42
- package/dist/admin/utils/urlsToAssets.js.map +0 -1
- package/dist/admin/utils/urlsToAssets.mjs +0 -40
- package/dist/admin/utils/urlsToAssets.mjs.map +0 -1
- /package/dist/admin/{future/components → components}/Drawer.js +0 -0
- /package/dist/admin/{future/components → components}/Drawer.mjs +0 -0
- /package/dist/admin/{future/components → components}/TruncatedText.js +0 -0
- /package/dist/admin/{future/components → components}/TruncatedText.mjs +0 -0
- /package/dist/admin/{future/components → components}/UploadProgressDialog.js +0 -0
- /package/dist/admin/{future/components → components}/UploadProgressDialog.mjs +0 -0
- /package/dist/admin/{future/hooks → hooks}/useApiErrorMessage.js +0 -0
- /package/dist/admin/{future/hooks → hooks}/useApiErrorMessage.mjs +0 -0
- /package/dist/admin/{ai → legacy/ai}/components/AIUploadModal.js +0 -0
- /package/dist/admin/{ai → legacy/ai}/components/AIUploadModal.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AssetCardBase.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AssetCardBase.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AudioAssetCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AudioAssetCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AudioPreview.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/AudioPreview.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/DocAssetCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/DocAssetCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/ImageAssetCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/ImageAssetCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/VideoAssetCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/VideoAssetCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/VideoPreview.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetCard/VideoPreview.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/AssetDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/AssetDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/Filters.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/Filters.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PageSize.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PageSize.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/Pagination.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/Pagination.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/SearchAsset/SearchAsset.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/SearchAsset/SearchAsset.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/utils/isSelectable.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/BrowseStep/utils/isSelectable.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/DialogFooter.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/DialogFooter.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/SelectedStep/SelectedStep.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetDialog/SelectedStep/SelectedStep.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetGridList/AssetGridList.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetGridList/AssetGridList.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/AssetGridList/Draggable.js +0 -0
- /package/dist/admin/{components → legacy/components}/AssetGridList/Draggable.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/Breadcrumbs/Breadcrumbs.js +0 -0
- /package/dist/admin/{components → legacy/components}/Breadcrumbs/Breadcrumbs.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/Breadcrumbs/CrumbSimpleMenuAsync.js +0 -0
- /package/dist/admin/{components → legacy/components}/Breadcrumbs/CrumbSimpleMenuAsync.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/BulkMoveDialog/BulkMoveDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/BulkMoveDialog/BulkMoveDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/ContextInfo/ContextInfo.js +0 -0
- /package/dist/admin/{components → legacy/components}/ContextInfo/ContextInfo.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/CopyLinkButton/CopyLinkButton.js +0 -0
- /package/dist/admin/{components → legacy/components}/CopyLinkButton/CopyLinkButton.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/DialogHeader.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/DialogHeader.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/EditAssetContent.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/EditAssetContent.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/CroppingActions.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/CroppingActions.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/FocalPointActions.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/FocalPointActions.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/PreviewComponents.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/PreviewBox/PreviewComponents.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/RemoveAssetDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/RemoveAssetDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/ReplaceMediaButton.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditAssetDialog/ReplaceMediaButton.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/EditFolderDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/EditFolderDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/ModalHeader/ModalHeader.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/ModalHeader/ModalHeader.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/RemoveFolderDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/EditFolderDialog/RemoveFolderDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EmptyAssets/EmptyAssetGrid.js +0 -0
- /package/dist/admin/{components → legacy/components}/EmptyAssets/EmptyAssetGrid.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/EmptyAssets/EmptyAssets.js +0 -0
- /package/dist/admin/{components → legacy/components}/EmptyAssets/EmptyAssets.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FilterList/FilterList.js +0 -0
- /package/dist/admin/{components → legacy/components}/FilterList/FilterList.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FilterList/FilterTag.js +0 -0
- /package/dist/admin/{components → legacy/components}/FilterList/FilterTag.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/FilterPopover.js +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/FilterPopover.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/FilterValueInput.js +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/FilterValueInput.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/utils/getFilterList.js +0 -0
- /package/dist/admin/{components → legacy/components}/FilterPopover/utils/getFilterList.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCard/FolderCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCard/FolderCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardBody/FolderCardBody.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardBody/FolderCardBody.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardBodyAction/FolderCardBodyAction.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardBodyAction/FolderCardBodyAction.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardCheckbox/FolderCardCheckbox.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/FolderCardCheckbox/FolderCardCheckbox.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/contexts/FolderCard.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderCard/contexts/FolderCard.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/FolderGridList/FolderGridList.js +0 -0
- /package/dist/admin/{components → legacy/components}/FolderGridList/FolderGridList.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryDialog/MediaLibraryDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryDialog/MediaLibraryDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/Carousel/CarouselAssetActions.js +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/Carousel/CarouselAssetActions.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/Carousel/CarouselAssets.js +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/Carousel/CarouselAssets.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/MediaLibraryInput.js +0 -0
- /package/dist/admin/{components → legacy/components}/MediaLibraryInput/MediaLibraryInput.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/Option.js +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/Option.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/SelectTree.js +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/SelectTree.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/flattenTree.js +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/flattenTree.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/getOpenValues.js +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/getOpenValues.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/getValuesToClose.js +0 -0
- /package/dist/admin/{components → legacy/components}/SelectTree/utils/getValuesToClose.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/TableList/CellContent.js +0 -0
- /package/dist/admin/{components → legacy/components}/TableList/CellContent.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/AddAssetStep/AddAssetStep.js +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/AddAssetStep/AddAssetStep.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/AddAssetStep/FromUrlForm.js +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/AddAssetStep/FromUrlForm.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/PendingAssetStep/PendingAssetStep.js +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/PendingAssetStep/PendingAssetStep.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/UploadAssetDialog.js +0 -0
- /package/dist/admin/{components → legacy/components}/UploadAssetDialog/UploadAssetDialog.mjs +0 -0
- /package/dist/admin/{components → legacy/components}/UploadProgress/UploadProgress.js +0 -0
- /package/dist/admin/{components → legacy/components}/UploadProgress/UploadProgress.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useAiAvailability.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useAiAvailability.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useCropImg.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useCropImg.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useModalQueryParams.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useModalQueryParams.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/usePersistentState.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/usePersistentState.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useSelectionState.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useSelectionState.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useSettings.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/useSettings.mjs +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/utils/renameKeys.js +0 -0
- /package/dist/admin/{hooks → legacy/hooks}/utils/renameKeys.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/App.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/App.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/actions.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/actions.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/init.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/init.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/reducer.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/ConfigureTheView/state/reducer.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkActions.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkActions.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkDeleteButton.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkDeleteButton.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkMoveButton.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/BulkMoveButton.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/EmptyOrNoPermissions.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/EmptyOrNoPermissions.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/Filters.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/Filters.mjs +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/Header.js +0 -0
- /package/dist/admin/{pages → legacy/pages}/App/components/Header.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/appendSearchParamsToUrl.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/appendSearchParamsToUrl.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/containsAssetFilter.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/containsAssetFilter.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/createAssetUrl.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/createAssetUrl.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/displayedFilters.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/displayedFilters.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/findRecursiveFolderByValue.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/findRecursiveFolderByValue.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/formatBytes.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/formatBytes.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/formatDuration.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/formatDuration.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getAPIInnerErrors.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getAPIInnerErrors.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getAllowedFiles.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getAllowedFiles.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getBreadcrumbDataCM.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getBreadcrumbDataCM.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getBreadcrumbDataML.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getBreadcrumbDataML.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFileExtension.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFileExtension.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFolderParents.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFolderParents.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFolderURL.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/getFolderURL.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/moveElement.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/moveElement.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/normalizeAPIError.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/normalizeAPIError.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/prefixFileUrlWithBackendUrl.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/prefixFileUrlWithBackendUrl.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/prefixPluginTranslations.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/prefixPluginTranslations.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/resolveFileMime.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/resolveFileMime.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/toSingularTypes.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/toSingularTypes.mjs +0 -0
- /package/dist/admin/{utils → legacy/utils}/urlYupSchema.js +0 -0
- /package/dist/admin/{utils → legacy/utils}/urlYupSchema.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/ActionsMenuContent.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/ActionsMenuContent.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetActionsMenu.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetActionsMenu.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetDetails/AssetCropEditor.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetDetails/AssetCropEditor.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetDetails/useCropImg.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetDetails/useCropImg.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetsSearchInput.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetsSearchInput.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetsTable.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/AssetsTable.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/BulkMoveDialog.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/BulkMoveDialog.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/BusyOverlay.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/BusyOverlay.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DateRangeCalendar.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DateRangeCalendar.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DeleteItemsDialog.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DeleteItemsDialog.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/AssetsDndProvider.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/AssetsDndProvider.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/DragOverlayChip.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/DragOverlayChip.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/buildDragSet.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/buildDragSet.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/computeValidDropTargets.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/computeValidDropTargets.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/dndIds.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/dndIds.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/useAssetDnd.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/useAssetDnd.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/useFolderTreeDroppable.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/Dnd/useFolderTreeDroppable.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DropZone/UploadDropZone.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DropZone/UploadDropZone.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DropZone/UploadDropZoneContext.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/DropZone/UploadDropZoneContext.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/EmptyState.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/EmptyState.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FilterBadges.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FilterBadges.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FilterMenu.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FilterMenu.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderActionsMenu.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderActionsMenu.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderFormDialog.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderFormDialog.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderTree/FolderTree.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderTree/FolderTree.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderTree/useSpringLoadedExpand.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/FolderTree/useSpringLoadedExpand.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/ImportFromUrlDialog.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/ImportFromUrlDialog.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/MainAreaContextMenu.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/MainAreaContextMenu.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/SortMenu.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/components/SortMenu.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/constants.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/constants.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useAssetSearch.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useAssetSearch.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useAssetSelection.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useAssetSelection.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useBusyAssets.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useBusyAssets.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useFolderInfo.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useFolderInfo.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useFolderNavigation.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useFolderNavigation.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useInfiniteAssets.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useInfiniteAssets.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useInfiniteScrollSentinel.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useInfiniteScrollSentinel.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useIsAssetDetailsOpen.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useIsAssetDetailsOpen.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListFilters.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListFilters.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListScrollRestoration.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListScrollRestoration.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListSort.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/hooks/useListSort.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/buildAssetFilters.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/buildAssetFilters.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/listQueryKey.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/listQueryKey.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/mergeMixedList.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/mergeMixedList.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/mergeUploadedAssets.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/mergeUploadedAssets.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/renderedKeys.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/renderedKeys.mjs +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/selection.js +0 -0
- /package/dist/admin/{future/pages → pages}/Assets/utils/selection.mjs +0 -0
- /package/dist/admin/{future/services → services}/api.js +0 -0
- /package/dist/admin/{future/services → services}/api.mjs +0 -0
- /package/dist/admin/{future/services → services}/assets.js +0 -0
- /package/dist/admin/{future/services → services}/assets.mjs +0 -0
- /package/dist/admin/{future/services → services}/folders.js +0 -0
- /package/dist/admin/{future/services → services}/folders.mjs +0 -0
- /package/dist/admin/{future/services → services}/settings.js +0 -0
- /package/dist/admin/{future/services → services}/settings.mjs +0 -0
- /package/dist/admin/{future/services → services}/uploadFileViaXHR.js +0 -0
- /package/dist/admin/{future/services → services}/uploadFileViaXHR.mjs +0 -0
- /package/dist/admin/src/{pages/App/MediaLibrary.d.ts → App.d.ts} +0 -0
- /package/dist/admin/src/{future/components → components}/Drawer.d.ts +0 -0
- /package/dist/admin/src/{future/components → components}/TruncatedText.d.ts +0 -0
- /package/dist/admin/src/{future/components → components}/UploadProgressDialog.d.ts +0 -0
- /package/dist/admin/src/{future/hooks → hooks}/useAIMetadataEnabled.d.ts +0 -0
- /package/dist/admin/src/{future/hooks → hooks}/useApiErrorMessage.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/AssetCardBase.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/AudioAssetCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/AudioPreview.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/DocAssetCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/ImageAssetCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/VideoAssetCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetCard/VideoPreview.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/BrowseStep/Filters.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/BrowseStep/PageSize.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/Pagination.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/BrowseStep/PaginationFooter/PaginationFooter.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/BrowseStep/utils/isSelectable.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetDialog/DialogFooter.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/AssetGridList/Draggable.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/Breadcrumbs/Breadcrumbs.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/Breadcrumbs/CrumbSimpleMenuAsync.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/ContextInfo/ContextInfo.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/CopyLinkButton/CopyLinkButton.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditAssetDialog/DialogHeader.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditAssetDialog/PreviewBox/CroppingActions.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditAssetDialog/PreviewBox/FocalPointActions.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditAssetDialog/PreviewBox/PreviewComponents.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditAssetDialog/ReplaceMediaButton.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditFolderDialog/ModalHeader/ModalHeader.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EditFolderDialog/RemoveFolderDialog.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EmptyAssets/EmptyAssetGrid.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/EmptyAssets/EmptyAssets.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FilterList/FilterList.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FilterList/FilterTag.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FilterPopover/FilterPopover.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FilterPopover/FilterValueInput.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FilterPopover/utils/getFilterList.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderCard/FolderCard/FolderCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderCard/FolderCardBody/FolderCardBody.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderCard/FolderCardBodyAction/FolderCardBodyAction.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderCard/FolderCardCheckbox/FolderCardCheckbox.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderCard/contexts/FolderCard.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/FolderGridList/FolderGridList.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/MediaLibraryInput/MediaLibraryInput.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/SelectTree/SelectTree.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/SelectTree/utils/flattenTree.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/SelectTree/utils/getOpenValues.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/SelectTree/utils/getValuesToClose.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/UploadAssetDialog/AddAssetStep/FromComputerForm.d.ts +0 -0
- /package/dist/admin/src/{components → legacy/components}/UploadAssetDialog/AddAssetStep/FromUrlForm.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/useAiAvailability.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/useCropImg.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/usePersistentState.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/useSelectionState.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/useSettings.d.ts +0 -0
- /package/dist/admin/src/{hooks → legacy/hooks}/utils/renameKeys.d.ts +0 -0
- /package/dist/admin/src/{pages → legacy/pages}/App/App.d.ts +0 -0
- /package/dist/admin/src/{pages → legacy/pages}/App/ConfigureTheView/state/actionTypes.d.ts +0 -0
- /package/dist/admin/src/{pages → legacy/pages}/App/ConfigureTheView/state/reducer.d.ts +0 -0
- /package/dist/admin/src/{pages → legacy/pages}/App/components/EmptyOrNoPermissions.d.ts +0 -0
- /package/dist/admin/src/{pages → legacy/pages}/App/components/Filters.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/appendSearchParamsToUrl.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/displayedFilters.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/formatBytes.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/formatDuration.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/getAPIInnerErrors.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/getFileExtension.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/getTrad.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/moveElement.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/normalizeAPIError.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/prefixFileUrlWithBackendUrl.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/prefixPluginTranslations.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/resolveFileMime.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/toSingularTypes.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/urlYupSchema.d.ts +0 -0
- /package/dist/admin/src/{utils → legacy/utils}/urlsToAssets.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/AssetsPage.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/AssetDetails/useCropImg.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/AssetsSearchInput.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/BulkMoveDialog.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/BusyOverlay.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/DateRangeCalendar.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/DeleteItemsDialog.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/AssetsDndProvider.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/DragOverlayChip.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/buildDragSet.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/dndIds.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/useAssetDnd.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/Dnd/useFolderTreeDroppable.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/DropZone/UploadDropZone.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/DropZone/UploadDropZoneContext.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/EmptyState.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/FilterBadges.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/FilterMenu.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/FolderFormDialog.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/FolderTree/FolderTree.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/FolderTree/useSpringLoadedExpand.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/ImportFromUrlDialog.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/MainAreaContextMenu.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/components/SortMenu.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/constants.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useAssetSearch.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useAssetSelection.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useBusyAssets.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useFolderInfo.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useInfiniteScrollSentinel.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useIsAssetDetailsOpen.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useListFilters.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useListScrollRestoration.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/hooks/useListSort.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/utils/buildAssetFilters.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/utils/listQueryKey.d.ts +0 -0
- /package/dist/admin/src/{future/pages → pages}/Assets/utils/selection.d.ts +0 -0
- /package/dist/admin/src/{future/store → store}/hooks.d.ts +0 -0
- /package/dist/admin/src/{future/types → types}/dnd.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/buildBulkMovePayload.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/buildDragSetFromSelection.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/createRafBatcher.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/files.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/formatMoveSuccessMessage.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/getApiErrorMessage.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/getAssetIcon.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/getRelationId.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/isEventFromWithin.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/itemSource.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/searchQueryParam.d.ts +0 -0
- /package/dist/admin/src/{future/utils → utils}/translations.d.ts +0 -0
- /package/dist/admin/{future/store → store}/hooks.js +0 -0
- /package/dist/admin/{future/store → store}/hooks.mjs +0 -0
- /package/dist/admin/{future/store → store}/uploadProgress.js +0 -0
- /package/dist/admin/{future/store → store}/uploadProgress.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/buildBulkMovePayload.js +0 -0
- /package/dist/admin/{future/utils → utils}/buildBulkMovePayload.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/buildDragSetFromSelection.js +0 -0
- /package/dist/admin/{future/utils → utils}/buildDragSetFromSelection.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/canDropItemOnFolder.js +0 -0
- /package/dist/admin/{future/utils → utils}/canDropItemOnFolder.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/createRafBatcher.js +0 -0
- /package/dist/admin/{future/utils → utils}/createRafBatcher.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/files.js +0 -0
- /package/dist/admin/{future/utils → utils}/files.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/flattenFolderStructure.js +0 -0
- /package/dist/admin/{future/utils → utils}/flattenFolderStructure.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/formatMoveSuccessMessage.js +0 -0
- /package/dist/admin/{future/utils → utils}/formatMoveSuccessMessage.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/getApiErrorMessage.js +0 -0
- /package/dist/admin/{future/utils → utils}/getApiErrorMessage.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/getFolderLabel.js +0 -0
- /package/dist/admin/{future/utils → utils}/getFolderLabel.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/getRelationId.js +0 -0
- /package/dist/admin/{future/utils → utils}/getRelationId.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/isEventFromWithin.js +0 -0
- /package/dist/admin/{future/utils → utils}/isEventFromWithin.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/itemLocations.js +0 -0
- /package/dist/admin/{future/utils → utils}/itemLocations.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/itemSource.js +0 -0
- /package/dist/admin/{future/utils → utils}/itemSource.mjs +0 -0
- /package/dist/admin/{future/utils → utils}/searchQueryParam.js +0 -0
- /package/dist/admin/{future/utils → utils}/searchQueryParam.mjs +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssetDetailsDrawer.mjs","sources":["../../../../../../admin/src/pages/Assets/components/AssetDetails/AssetDetailsDrawer.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport {\n Blocker,\n Form,\n useClipboard,\n useField,\n useForm,\n useNotification,\n useQueryParams,\n withEncodedUserParams,\n getDisplayName,\n} from '@strapi/admin/strapi-admin';\nimport {\n Alert,\n Box,\n Button,\n Dialog,\n Field,\n Flex,\n IconButton,\n Loader,\n SingleSelect,\n SingleSelectOption,\n TextInput,\n Tooltip,\n Typography,\n VisuallyHidden,\n} from '@strapi/design-system';\nimport {\n ArrowLineRight,\n ArrowsCounterClockwise,\n Crop,\n Download,\n FileError,\n Link,\n Trash,\n WarningCircle,\n} from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { Drawer } from '../../../../components/Drawer';\nimport { ASSET_TYPES } from '../../../../enums';\nimport { useAIMetadataEnabled } from '../../../../hooks/useAIMetadataEnabled';\nimport { useApiErrorMessage } from '../../../../hooks/useApiErrorMessage';\nimport { useMediaLibraryPermissions } from '../../../../hooks/useMediaLibraryPermissions';\nimport { useTracking, MEDIA_LIBRARY_LOCATION } from '../../../../hooks/useTracking';\nimport { useUploadFileSilentlyMutation } from '../../../../services/api';\nimport {\n useDeleteAssetMutation,\n useGetAssetQuery,\n useReplaceAssetMutation,\n useUpdateAssetMutation,\n} from '../../../../services/assets';\nimport { useGetAllFoldersQuery } from '../../../../services/folders';\nimport { downloadFile } from '../../../../utils/downloadFile';\nimport {\n formatBytes,\n getFileExtension,\n prefixFileUrlWithBackendUrl,\n} from '../../../../utils/files';\nimport { getAssetIcon } from '../../../../utils/getAssetIcon';\nimport { getTranslationKey } from '../../../../utils/translations';\nimport { ASSET_DETAILS_TRIGGER_SELECTOR, ASSET_ITEM_CONTROL_SELECTOR } from '../../constants';\nimport { useFolderInfo } from '../../hooks/useFolderInfo';\nimport { ASSET_DETAILS_URL_PARAM, parseAssetDetailsId } from '../../hooks/useIsAssetDetailsOpen';\nimport { BusyOverlay } from '../BusyOverlay';\n\nimport { AssetCropEditor } from './AssetCropEditor';\nimport { AssetPreview } from './AssetPreview';\n\nimport type {\n AssetWithPopulatedCreatedBy,\n FocalPoint,\n} from '../../../../../../shared/contracts/files';\n\ninterface DrawerToast {\n type: 'success' | 'danger';\n message: string;\n}\n\n/* -------------------------------------------------------------------------------------------------\n * DrawerNotifyContext — exposes the in-drawer toast setter so deep descendants\n * (footer action buttons) can report success/error without prop drilling.\n * -----------------------------------------------------------------------------------------------*/\n\ntype DrawerNotify = (toast: DrawerToast) => void;\n\nexport const DrawerNotifyContext = React.createContext<DrawerNotify | null>(null);\n\nconst useDrawerNotify = () => {\n const ctx = React.useContext(DrawerNotifyContext);\n if (!ctx) {\n throw new Error('useDrawerNotify must be used within AssetDetails');\n }\n return ctx;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AssetOperationsContext — drawer-scoped mutations + their pending state, so\n * leaf buttons (Delete, Replace) consume them without prop drilling and the\n * full-drawer busy overlay reads a single flag.\n * -----------------------------------------------------------------------------------------------*/\n\ninterface AssetOperations {\n replaceAsset: (file: globalThis.File) => Promise<void>;\n deleteAsset: () => Promise<void>;\n isReplacing: boolean;\n isDeleting: boolean;\n}\n\nexport const AssetOperationsContext = React.createContext<AssetOperations | null>(null);\n\nconst useAssetOperation = () => {\n const ctx = React.useContext(AssetOperationsContext);\n if (!ctx) {\n throw new Error('useAssetOperation must be used within AssetDetails');\n }\n return ctx;\n};\n\n/* -------------------------------------------------------------------------------------------------\n * useAssetDetailsParam - sync drawer visibility with URL ?{ASSET_DETAILS_URL_PARAM}={id}\n * -----------------------------------------------------------------------------------------------*/\n\nexport const useAssetDetailsParam = () => {\n const [{ query }, setQuery] = useQueryParams<{\n [ASSET_DETAILS_URL_PARAM]?: string;\n _q?: string;\n }>();\n\n const assetId = parseAssetDetailsId(query?.[ASSET_DETAILS_URL_PARAM]);\n const hasValidId = assetId !== null;\n\n // Closing is driven by removing the URL param (a navigation), so navigation\n // guards like <Blocker> can intercept it. `isMounted` keeps the drawer in the\n // tree through the slide-out: it stays true once opened and only flips false\n // when the close animation actually ends (see onCloseAnimationEnd), so the\n // close duration lives entirely in CSS — no JS timer.\n const [isMounted, setIsMounted] = React.useState(hasValidId);\n const displayAssetId = React.useRef<number | null>(null);\n\n React.useEffect(() => {\n if (hasValidId) {\n displayAssetId.current = assetId;\n setIsMounted(true);\n }\n }, [hasValidId, assetId]);\n\n const onCloseAnimationEnd = React.useCallback(\n (event: React.AnimationEvent) => {\n // Ignore animations bubbling up from descendants, and the slide-in.\n if (event.target === event.currentTarget && !hasValidId) {\n setIsMounted(false);\n }\n },\n [hasValidId]\n );\n\n const openDetails = React.useCallback(\n (id: number) => {\n setQuery(\n withEncodedUserParams(query, { [ASSET_DETAILS_URL_PARAM]: String(id) }),\n 'push',\n true\n );\n },\n [query, setQuery]\n );\n\n const closeDetails = React.useCallback(() => {\n setQuery(withEncodedUserParams(query, { [ASSET_DETAILS_URL_PARAM]: undefined }), 'push', true);\n }, [query, setQuery]);\n\n return {\n assetId: hasValidId ? assetId : displayAssetId.current,\n isVisible: hasValidId,\n shouldRenderDrawer: isMounted,\n onCloseAnimationEnd,\n openDetails,\n closeDetails,\n };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DetailItem\n * -----------------------------------------------------------------------------------------------*/\n\ninterface DetailItemProps {\n label: string;\n value: React.ReactNode;\n}\n\nconst DetailItemContainer = styled(Flex)`\n flex: 0 0 calc(50% - ${({ theme }) => theme.spaces[2]});\n`;\n\nconst DetailItem = ({ label, value }: DetailItemProps) => (\n <DetailItemContainer\n direction=\"column\"\n justifyContent=\"flex-start\"\n alignItems=\"flex-start\"\n gap={1}\n >\n <Typography\n variant=\"sigma\"\n textColor=\"neutral600\"\n fontWeight=\"semiBold\"\n textTransform=\"uppercase\"\n >\n {label}\n </Typography>\n <Typography variant=\"pi\" textColor=\"neutral700\">\n {value ?? '-'}\n </Typography>\n </DetailItemContainer>\n);\n\n/* -------------------------------------------------------------------------------------------------\n * DetailField\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * Make the asset details Form behave as a flex column inside Drawer.Body so\n * the scrollable area can grow while the footer stays pinned at the bottom.\n * The Form component from `@strapi/admin/strapi-admin` only forwards `width`\n * + `height` to its Box, so we target the rendered `<form>` element via a\n * styled-components descendant rule.\n */\nconst FormShell = styled(Box)`\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n\n > form {\n display: flex;\n flex-direction: column;\n flex: 1;\n min-height: 0;\n position: relative;\n }\n`;\n\n/**\n * In-drawer toast container\n */\nconst DrawerToastSlot = styled(Box)`\n position: absolute;\n top: ${({ theme }) => theme.spaces[2]};\n left: 50%;\n transform: translateX(-50%);\n z-index: 10;\n width: calc(100% - ${({ theme }) => theme.spaces[2]});\n`;\n\n/**\n * Map the drawer-scoped mutation flags to a single i18n message for the busy\n * overlay loader. Returns `null` when nothing is in flight.\n *\n * Exported for the unit test: the branch order only matters when two flags are\n * true at once, which the UI makes hard to stage through the rendered drawer\n * (each trigger disables itself while its own mutation runs).\n */\nexport const getBusyMessage = (state: {\n isDeleting: boolean;\n isReplacing: boolean;\n isCropCopying: boolean;\n}): { id: string; defaultMessage: string } | null => {\n if (state.isDeleting) {\n return {\n id: getTranslationKey('asset-details.delete.loading'),\n defaultMessage: 'Deleting the file…',\n };\n }\n if (state.isCropCopying) {\n return {\n id: getTranslationKey('asset-details.crop.loading'),\n defaultMessage: 'Saving the cropped copy…',\n };\n }\n if (state.isReplacing) {\n return {\n id: getTranslationKey('asset-details.replace.loading'),\n defaultMessage: 'Replacing the file…',\n };\n }\n return null;\n};\n\nconst StyledWarning = styled(WarningCircle)`\n width: 1.6rem;\n height: 1.6rem;\n\n path {\n fill: ${({ theme }) => theme.colors.warning500};\n }\n`;\n\ninterface DetailFieldProps {\n name: string;\n label: string;\n required?: boolean;\n disabled?: boolean;\n}\n\nconst DetailField = ({ name, label, required, disabled }: DetailFieldProps) => {\n const { formatMessage } = useIntl();\n const field = useField<string>(name);\n const isSubmitting = useForm('DetailField', (state) => state.isSubmitting);\n\n // The form context (use-context-selector) echoes changes back\n // asynchronously — driving the input straight from `field.value` makes\n // React rewrite the DOM value after the keystroke, which throws the cursor\n // to the end of the field. The input is therefore controlled by local state\n // (synchronous, cursor-safe) and the form follows; the effect below only\n // matters for EXTERNAL value changes (discard/reset), where a cursor jump\n // is fine because the user isn't typing.\n const fieldValue = field.value ?? '';\n const [value, setValue] = React.useState(fieldValue);\n\n React.useEffect(() => {\n setValue(fieldValue);\n }, [fieldValue]);\n\n const emptyTooltipLabel = formatMessage(\n {\n id: getTranslationKey('asset-details.field.empty'),\n defaultMessage: '{label} is currently empty.',\n },\n { label }\n );\n\n return (\n <Field.Root name={name} required={required}>\n <Field.Label>{label}</Field.Label>\n <TextInput\n value={value}\n onChange={(event: React.ChangeEvent<HTMLInputElement>) => {\n setValue(event.target.value);\n field.onChange(name, event.target.value);\n }}\n endAction={\n !value ? (\n <Tooltip label={emptyTooltipLabel}>\n <StyledWarning aria-label={emptyTooltipLabel} role=\"img\" />\n </Tooltip>\n ) : undefined\n }\n type=\"text\"\n disabled={isSubmitting || disabled}\n />\n </Field.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * LocationField\n * -----------------------------------------------------------------------------------------------*/\n\ninterface LocationFieldProps {\n label: string;\n rootLabel: string;\n folders: Array<{ id: number; name: string }>;\n disabled?: boolean;\n}\n\nconst LocationField = ({ label, rootLabel, folders, disabled }: LocationFieldProps) => {\n const field = useField<number | null>('folder');\n const isSubmitting = useForm('LocationField', (state) => state.isSubmitting);\n\n return (\n <Field.Root name=\"folder\" required>\n <Field.Label>{label}</Field.Label>\n {/* `null` is the canonical \"root of the Media Library\" value everywhere\n in the upload domain. The DS `SingleSelectOption.value` prop is typed\n `string | number`, so we use the empty string as a DOM-only sentinel\n for the root option and map it back to `null` on change. */}\n <SingleSelect\n value={field.value == null ? '' : String(field.value)}\n onChange={(value) => {\n const next = value === '' ? null : Number(value);\n field.onChange('folder', next);\n }}\n disabled={isSubmitting || disabled}\n >\n <SingleSelectOption value=\"\">{rootLabel}</SingleSelectOption>\n {folders.map((folder) => (\n <SingleSelectOption key={folder.id} value={String(folder.id)}>\n {folder.name}\n </SingleSelectOption>\n ))}\n </SingleSelect>\n </Field.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DeleteAssetButton\n * -----------------------------------------------------------------------------------------------*/\n\nconst DeleteAssetButton = () => {\n const { formatMessage } = useIntl();\n const { deleteAsset, isDeleting } = useAssetOperation();\n const [isOpen, setIsOpen] = React.useState(false);\n\n const handleConfirm = async () => {\n await deleteAsset();\n setIsOpen(false);\n };\n\n const triggerLabel = formatMessage({\n id: getTranslationKey('asset-details.delete.trigger'),\n defaultMessage: 'Delete this file',\n });\n\n return (\n <Dialog.Root open={isOpen} onOpenChange={setIsOpen}>\n <Dialog.Trigger>\n <IconButton label={triggerLabel} variant=\"danger-light\">\n <Trash />\n </IconButton>\n </Dialog.Trigger>\n <Dialog.Content>\n <Dialog.Header>\n {formatMessage({\n id: getTranslationKey('asset-details.delete.title'),\n defaultMessage: 'Delete this media file?',\n })}\n </Dialog.Header>\n <Dialog.Body\n icon={<WarningCircle width=\"24px\" height=\"24px\" fill=\"danger600\" />}\n textAlign=\"center\"\n >\n {formatMessage({\n id: getTranslationKey('asset-details.delete.description'),\n defaultMessage:\n 'This file cannot be recovered once deleted. If it is currently in use, linked content will break and image containers will be empty.',\n })}\n </Dialog.Body>\n <Dialog.Footer>\n <Dialog.Cancel>\n <Button variant=\"tertiary\" disabled={isDeleting} fullWidth>\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Dialog.Cancel>\n <Dialog.Action>\n <Button variant=\"danger-light\" loading={isDeleting} onClick={handleConfirm} fullWidth>\n {formatMessage({ id: 'app.components.Button.confirm', defaultMessage: 'Confirm' })}\n </Button>\n </Dialog.Action>\n </Dialog.Footer>\n </Dialog.Content>\n </Dialog.Root>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * CopyLinkButton — write the absolute asset URL to the clipboard.\n * -----------------------------------------------------------------------------------------------*/\n\ninterface CopyLinkButtonProps {\n asset: AssetWithPopulatedCreatedBy;\n}\n\nconst CopyLinkButton = ({ asset }: CopyLinkButtonProps) => {\n const { formatMessage } = useIntl();\n const { copy } = useClipboard();\n const notify = useDrawerNotify();\n\n const handleCopy = async () => {\n const url = prefixFileUrlWithBackendUrl(asset.url);\n if (!url) return;\n const didCopy = await copy(url);\n notify({\n type: didCopy ? 'success' : 'danger',\n message: didCopy\n ? formatMessage({\n id: getTranslationKey('asset-details.copy-link.success'),\n defaultMessage: 'Link copied.',\n })\n : formatMessage({\n id: getTranslationKey('asset-details.copy-link.error'),\n defaultMessage: 'Failed to copy the link.',\n }),\n });\n };\n\n return (\n <IconButton\n label={formatMessage({\n id: getTranslationKey('asset-details.copy-link.trigger'),\n defaultMessage: 'Copy link',\n })}\n variant=\"tertiary\"\n onClick={handleCopy}\n >\n <Link />\n </IconButton>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DownloadAssetButton — fetch the file and trigger a browser download.\n * -----------------------------------------------------------------------------------------------*/\n\ninterface DownloadAssetButtonProps {\n asset: AssetWithPopulatedCreatedBy;\n}\n\nconst DownloadAssetButton = ({ asset }: DownloadAssetButtonProps) => {\n const { formatMessage } = useIntl();\n const notify = useDrawerNotify();\n const [isDownloading, setIsDownloading] = React.useState(false);\n\n const handleDownload = async () => {\n const url = prefixFileUrlWithBackendUrl(asset.url);\n if (!url) return;\n setIsDownloading(true);\n try {\n await downloadFile(url, asset.name);\n } catch {\n notify({\n type: 'danger',\n message: formatMessage({\n id: getTranslationKey('asset-details.download.error'),\n defaultMessage: 'Failed to download the file.',\n }),\n });\n } finally {\n setIsDownloading(false);\n }\n };\n\n return (\n <IconButton\n label={formatMessage({\n id: getTranslationKey('asset-details.download.trigger'),\n defaultMessage: 'Download',\n })}\n variant=\"tertiary\"\n onClick={handleDownload}\n disabled={isDownloading}\n >\n <Download />\n </IconButton>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * ReplaceAssetButton\n * -----------------------------------------------------------------------------------------------*/\n\ninterface ReplaceAssetButtonProps {\n /**\n * The asset's mime. Two jobs: the dialog only promises AI metadata when it\n * applies, and the file picker only offers files of the same type.\n */\n mime?: string | null;\n}\n\nconst ReplaceAssetButton = ({ mime }: ReplaceAssetButtonProps) => {\n const { formatMessage } = useIntl();\n const { replaceAsset, isReplacing } = useAssetOperation();\n const fileInputRef = React.useRef<HTMLInputElement>(null);\n const [isDialogOpen, setIsDialogOpen] = React.useState(false);\n const aiEnabled = useAIMetadataEnabled({ mime });\n\n const handleTriggerClick = () => {\n setIsDialogOpen(true);\n };\n\n const handleContinue = () => {\n // Confirm first, then open the native picker so the user only commits to\n // replacing after acknowledging the warning. The actual POST is delegated\n // to the parent (which owns the mutation + loading state).\n setIsDialogOpen(false);\n fileInputRef.current?.click();\n };\n\n const handleFileChange = async (event: React.ChangeEvent<HTMLInputElement>) => {\n const file = event.target.files?.[0];\n // Reset the native input so the same file can be picked again later.\n event.target.value = '';\n if (!file) {\n return;\n }\n await replaceAsset(file);\n };\n\n return (\n <>\n <VisuallyHidden>\n <input\n ref={fileInputRef}\n type=\"file\"\n accept={mime ?? ''}\n multiple={false}\n onChange={handleFileChange}\n aria-hidden\n tabIndex={-1}\n />\n </VisuallyHidden>\n <IconButton\n label={formatMessage({\n id: getTranslationKey('asset-details.replace.trigger'),\n defaultMessage: 'Replace this file',\n })}\n variant=\"tertiary\"\n onClick={handleTriggerClick}\n disabled={isReplacing}\n >\n <ArrowsCounterClockwise />\n </IconButton>\n <Dialog.Root open={isDialogOpen} onOpenChange={setIsDialogOpen}>\n <Dialog.Content>\n <Dialog.Header>\n {formatMessage({\n id: getTranslationKey('asset-details.replace.title'),\n defaultMessage: 'Replace this media file?',\n })}\n </Dialog.Header>\n <Dialog.Body textAlign=\"center\">\n <Flex direction=\"column\" textAlign=\"center\">\n <Typography variant=\"omega\">\n {formatMessage({\n id: getTranslationKey('asset-details.replace.description'),\n defaultMessage: 'Current content will be permanently replaced.',\n })}\n </Typography>\n {aiEnabled ? (\n <Typography variant=\"omega\">\n {formatMessage({\n id: getTranslationKey('asset-details.replace.description.ai'),\n defaultMessage: 'AI will generate new metadata after upload.',\n })}\n </Typography>\n ) : null}\n </Flex>\n </Dialog.Body>\n <Dialog.Footer>\n <Dialog.Cancel>\n <Button variant=\"tertiary\" fullWidth>\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n </Dialog.Cancel>\n <Dialog.Action>\n <Button variant=\"secondary\" onClick={handleContinue} fullWidth>\n {formatMessage({\n id: getTranslationKey('asset-details.replace.continue'),\n defaultMessage: 'Continue',\n })}\n </Button>\n </Dialog.Action>\n </Dialog.Footer>\n </Dialog.Content>\n </Dialog.Root>\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AssetImageActions - image-editing controls overlaid on the preview.\n *\n * Crop only. Replace used to sit here too, directly beneath it, which put a\n * file-level operation among the image-editing controls and read as if replacing\n * were a kind of editing. It now lives in the footer with its peers.\n * -----------------------------------------------------------------------------------------------*/\n\ninterface AssetImageActionsProps {\n onCrop?: () => void;\n}\n\nconst AssetImageActions = ({ onCrop }: AssetImageActionsProps) => {\n const { formatMessage } = useIntl();\n const isSubmitting = useForm('AssetImageActions', (state) => state.isSubmitting);\n\n return (\n <Flex direction=\"column\" gap={2}>\n <IconButton\n label={formatMessage({\n id: getTranslationKey('asset-details.crop.trigger'),\n defaultMessage: 'Crop',\n })}\n variant=\"tertiary\"\n onClick={onCrop}\n disabled={isSubmitting || !onCrop}\n >\n <Crop />\n </IconButton>\n </Flex>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AssetDetails\n * -----------------------------------------------------------------------------------------------*/\n\ninterface AssetDetailsProps {\n asset: AssetWithPopulatedCreatedBy;\n closeDetails: () => void;\n}\n\ninterface AssetFormState {\n name: string;\n caption: string;\n alternativeText: string;\n folder: number | null;\n}\n\nexport const AssetDetails = ({ asset, closeDetails }: AssetDetailsProps) => {\n const { formatMessage, formatDate } = useIntl();\n const getErrorMessage = useApiErrorMessage();\n const { canCreate, canUpdate, canDownload, canCopyLink } = useMediaLibraryPermissions();\n const { data: folders = [] } = useGetAllFoldersQuery();\n const { toggleNotification } = useNotification();\n const [updateAsset] = useUpdateAssetMutation();\n const { trackUsage } = useTracking();\n const [replaceMutation, { isLoading: isReplacing }] = useReplaceAssetMutation();\n const [deleteMutation, { isLoading: isDeleting }] = useDeleteAssetMutation();\n const [uploadCroppedCopy, { isLoading: isCropCopying }] = useUploadFileSilentlyMutation();\n\n const [isCropOpen, setIsCropOpen] = React.useState(false);\n\n // In-drawer toast slot\n const [drawerToast, setDrawerToast] = React.useState<DrawerToast | null>(null);\n React.useEffect(() => {\n if (!drawerToast) return;\n const timer = window.setTimeout(() => setDrawerToast(null), 5000);\n return () => window.clearTimeout(timer);\n }, [drawerToast]);\n\n // Local alias matching the DrawerNotifyContext signature, so the drawer's\n // own handlers (replace, update) read like the consumers do.\n const notify = React.useCallback<DrawerNotify>((toast) => setDrawerToast(toast), []);\n\n const isImage = asset.mime?.includes(ASSET_TYPES.Image);\n\n const initialValues: AssetFormState = {\n name: asset.name ?? '',\n caption: asset.caption ?? '',\n alternativeText: asset.alternativeText ?? '',\n folder:\n typeof asset.folder === 'object' && asset.folder !== null\n ? ((asset.folder as { id: number }).id ?? null)\n : ((asset.folder as number | null | undefined) ?? null),\n };\n\n const handleSubmit = async (values: AssetFormState) => {\n const fileInfo = {\n name: values.name,\n caption: values.caption,\n alternativeText: values.alternativeText,\n folder: values.folder,\n };\n\n const res = await updateAsset({ id: asset.id, fileInfo });\n\n if ('error' in res) {\n notify({\n type: 'danger',\n message: getErrorMessage(\n res.error,\n formatMessage({\n id: getTranslationKey('asset-details.update.error'),\n defaultMessage: 'Failed to update the file.',\n })\n ),\n });\n return;\n }\n\n trackUsage('didEditMediaLibraryElements', {\n location: MEDIA_LIBRARY_LOCATION,\n // Legacy sends the mime top-level type (image/video/audio/application…).\n type: asset.mime?.split('/')[0],\n changeLocation: values.folder !== initialValues.folder,\n });\n\n notify({\n type: 'success',\n message: formatMessage({\n id: getTranslationKey('asset-details.update.success'),\n defaultMessage: 'File updated',\n }),\n });\n };\n\n const { title: folderName } = useFolderInfo(\n typeof asset.folder === 'object' && asset.folder !== null\n ? ((asset.folder as { id: number }).id ?? null)\n : ((asset.folder as number | null | undefined) ?? null)\n );\n\n // Owns the replace upload so isReplacing can drive the busy overlay.\n const handleReplace = React.useCallback(\n async (file: globalThis.File) => {\n const res = await replaceMutation({ id: asset.id, file, fileInfo: { name: asset.name } });\n if ('error' in res) {\n notify({\n type: 'danger',\n message: getErrorMessage(\n res.error,\n formatMessage({\n id: getTranslationKey('asset-details.replace.error'),\n defaultMessage: 'Failed to replace the file.',\n })\n ),\n });\n return;\n }\n trackUsage('didReplaceMedia', { location: MEDIA_LIBRARY_LOCATION });\n notify({\n type: 'success',\n message: formatMessage({\n id: getTranslationKey('asset-details.replace.success'),\n defaultMessage: 'File replaced.',\n }),\n });\n },\n [asset.id, asset.name, formatMessage, getErrorMessage, notify, replaceMutation, trackUsage]\n );\n\n // Owns the delete: on error notify in-drawer (drawer stays), on success fire\n // a persistent global notification then close the drawer.\n const handleDelete = React.useCallback(async () => {\n const res = await deleteMutation(asset.id);\n if ('error' in res) {\n notify({\n type: 'danger',\n message: getErrorMessage(\n res.error,\n formatMessage({\n id: getTranslationKey('asset-details.delete.error'),\n defaultMessage: 'Failed to delete the asset.',\n })\n ),\n });\n return;\n }\n toggleNotification({\n type: 'success',\n message: formatMessage(\n {\n id: getTranslationKey('asset-details.delete.success'),\n defaultMessage: '1 element have been deleted from {folderName}',\n },\n { folderName }\n ),\n });\n closeDetails();\n }, [\n asset.id,\n closeDetails,\n deleteMutation,\n folderName,\n formatMessage,\n getErrorMessage,\n notify,\n toggleNotification,\n ]);\n\n const notifyCropError = (error?: unknown) => {\n notify({\n type: 'danger',\n message: getErrorMessage(\n error,\n formatMessage({\n id: getTranslationKey('asset-details.crop.error'),\n defaultMessage: 'Failed to crop the file.',\n })\n ),\n });\n };\n\n // Apply: replace the original binary with the cropped file + focal point.\n // Close the editor first so the drawer's busy overlay is visible while the\n // mutation runs (the editor renders in a Portal above the drawer).\n const handleCropApply = async (file: globalThis.File, focalPoint: FocalPoint) => {\n setIsCropOpen(false);\n const res = await replaceMutation({\n id: asset.id,\n file,\n fileInfo: { focalPoint },\n });\n if ('error' in res) {\n notifyCropError(res.error);\n return;\n }\n trackUsage('didCropFile', { location: MEDIA_LIBRARY_LOCATION, duplicatedFile: false });\n notify({\n type: 'success',\n message: formatMessage({\n id: getTranslationKey('asset-details.crop.success'),\n defaultMessage: 'File cropped.',\n }),\n });\n };\n\n // Save as copy: upload the cropped file as a new asset in the same folder.\n const handleCropSaveAsCopy = async (file: globalThis.File, focalPoint: FocalPoint) => {\n setIsCropOpen(false);\n // Silent single-file upload (no global progress dialog). Carry over the\n // source asset's caption/alt so the copy keeps its metadata.\n const res = await uploadCroppedCopy({\n file,\n fileInfo: {\n name: asset.name,\n caption: asset.caption ?? '',\n alternativeText: asset.alternativeText ?? '',\n folder: initialValues.folder,\n focalPoint,\n },\n });\n if ('error' in res) {\n notifyCropError(res.error);\n return;\n }\n trackUsage('didCropFile', { location: MEDIA_LIBRARY_LOCATION, duplicatedFile: true });\n notify({\n type: 'success',\n message: formatMessage({\n id: getTranslationKey('asset-details.crop.copy-success'),\n defaultMessage: 'Copy created.',\n }),\n });\n };\n\n const operations = React.useMemo<AssetOperations>(\n () => ({\n replaceAsset: handleReplace,\n deleteAsset: handleDelete,\n isReplacing,\n isDeleting,\n }),\n [handleReplace, handleDelete, isReplacing, isDeleting]\n );\n\n return (\n // `key={asset.id}` resets the form when the drawer switches to a different\n // asset so cached values from the previous asset don't bleed in.\n <DrawerNotifyContext.Provider value={notify}>\n <AssetOperationsContext.Provider value={operations}>\n <FormShell>\n <Form key={asset.id} method=\"POST\" initialValues={initialValues} onSubmit={handleSubmit}>\n {({ modified, isSubmitting, values, resetForm }) => {\n const nameIsEmpty = ((values as AssetFormState).name ?? '').trim() === '';\n const busyMessage = getBusyMessage({ isDeleting, isReplacing, isCropCopying });\n return (\n <>\n {/* Guards every close path (X button, ESC, route change, browser\n back) by intercepting the navigation when the form is dirty.\n `onProceed` resets the form so the held navigation can complete.\n Lives inside <Form> so it can read the form context. */}\n <Blocker onProceed={resetForm} />\n {isCropOpen && isImage ? (\n <AssetCropEditor\n asset={asset}\n onClose={() => setIsCropOpen(false)}\n onApply={handleCropApply}\n onSaveAsCopy={handleCropSaveAsCopy}\n canSaveAsCopy={canCreate}\n />\n ) : null}\n {busyMessage ? <BusyOverlay>{formatMessage(busyMessage)}</BusyOverlay> : null}\n {drawerToast ? (\n <DrawerToastSlot>\n <Alert\n variant={drawerToast.type === 'success' ? 'success' : 'danger'}\n closeLabel={formatMessage({ id: 'global.close', defaultMessage: 'Close' })}\n onClose={() => setDrawerToast(null)}\n >\n {drawerToast.message}\n </Alert>\n </DrawerToastSlot>\n ) : null}\n <Drawer.ScrollableContent>\n <AssetPreview\n asset={asset}\n actions={\n isImage && canUpdate ? (\n <AssetImageActions onCrop={() => setIsCropOpen(true)} />\n ) : null\n }\n />\n <Flex\n direction=\"column\"\n alignItems=\"stretch\"\n gap={4}\n paddingTop={4}\n paddingBottom={4}\n paddingLeft={5}\n paddingRight={5}\n >\n <Typography variant=\"beta\" fontWeight=\"semiBold\" tag=\"h3\">\n {formatMessage({\n id: getTranslationKey('asset-details.fileInfo'),\n defaultMessage: 'File info',\n })}\n </Typography>\n <Flex\n wrap=\"wrap\"\n gap={4}\n background=\"neutral100\"\n paddingTop={4}\n paddingBottom={4}\n paddingLeft={6}\n paddingRight={6}\n alignItems=\"flex-start\"\n >\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.creationDate'),\n defaultMessage: 'Creation date',\n })}\n value={\n asset.createdAt\n ? formatDate(new Date(asset.createdAt), {\n dateStyle: 'long',\n timeStyle: 'short',\n })\n : null\n }\n />\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.lastUpdated'),\n defaultMessage: 'Last updated',\n })}\n value={\n asset.updatedAt\n ? formatDate(new Date(asset.updatedAt), {\n dateStyle: 'long',\n timeStyle: 'short',\n })\n : null\n }\n />\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.createdBy'),\n defaultMessage: 'Created by',\n })}\n value={\n asset.createdBy\n ? (getDisplayName({\n firstname: asset.createdBy.firstname ?? undefined,\n lastname: asset.createdBy.lastname ?? undefined,\n username: asset.createdBy.username ?? undefined,\n email: asset.createdBy.email ?? undefined,\n }) ?? '-')\n : null\n }\n />\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.size'),\n defaultMessage: 'Size',\n })}\n value={asset.size ? formatBytes(asset.size, 1) : null}\n />\n {isImage && (asset.width != null || asset.height != null) && (\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.dimensions'),\n defaultMessage: 'Dimensions',\n })}\n value={\n asset.width != null && asset.height != null\n ? `${asset.width} × ${asset.height}`\n : null\n }\n />\n )}\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.extension'),\n defaultMessage: 'Extension',\n })}\n value={getFileExtension(asset.ext)}\n />\n <DetailItem\n label={formatMessage({\n id: getTranslationKey('asset-details.assetId'),\n defaultMessage: 'Asset ID',\n })}\n value={String(asset.id)}\n />\n </Flex>\n <DetailField\n name=\"name\"\n label={formatMessage({\n id: getTranslationKey('asset-details.fileName'),\n defaultMessage: 'File name',\n })}\n required\n disabled={!canUpdate}\n />\n <LocationField\n label={formatMessage({\n id: getTranslationKey('asset-details.location'),\n defaultMessage: 'Location',\n })}\n rootLabel={formatMessage({\n id: getTranslationKey('plugin.home'),\n defaultMessage: 'Home',\n })}\n folders={folders}\n disabled={!canUpdate}\n />\n {/* Caption and alternative text apply to every file type\n (matches the legacy Media Library), not images only. */}\n <DetailField\n name=\"caption\"\n label={formatMessage({\n id: getTranslationKey('asset-details.caption'),\n defaultMessage: 'Caption',\n })}\n disabled={!canUpdate}\n />\n <DetailField\n name=\"alternativeText\"\n label={formatMessage({\n id: getTranslationKey('asset-details.alternativeText'),\n defaultMessage: 'Alternative text',\n })}\n disabled={!canUpdate}\n />\n </Flex>\n </Drawer.ScrollableContent>\n {/* Every footer action is permission-gated — when none survive,\n drop the whole bar instead of showing an empty strip. */}\n {(canUpdate || canCopyLink || canDownload) && (\n <Flex\n justifyContent=\"space-between\"\n alignItems=\"center\"\n gap={2}\n padding={3}\n borderColor=\"neutral150\"\n borderStyle=\"solid\"\n borderWidth=\"1px 0 0 0\"\n background=\"neutral0\"\n >\n <Flex gap={2}>\n {canUpdate && <DeleteAssetButton />}\n {canCopyLink && <CopyLinkButton asset={asset} />}\n {canDownload && <DownloadAssetButton asset={asset} />}\n {canUpdate && <ReplaceAssetButton mime={asset.mime} />}\n </Flex>\n {canUpdate && (\n <Button\n type=\"submit\"\n variant=\"default\"\n loading={isSubmitting}\n // File name is required; block submit when it's empty or whitespace so the API can't 400 on a blank value.\n disabled={!modified || isSubmitting || nameIsEmpty}\n >\n {formatMessage({\n id: getTranslationKey('asset-details.save'),\n defaultMessage: 'Save changes',\n })}\n </Button>\n )}\n </Flex>\n )}\n </>\n );\n }}\n </Form>\n </FormShell>\n </AssetOperationsContext.Provider>\n </DrawerNotifyContext.Provider>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DrawerHeader\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * The icon's size lives in SVG attributes, which flex is free to override, so a\n * long asset name would squash it. Matches the grid and table rows, where the\n * file-type icon is shrink-proof and the name is what truncates.\n */\nconst HeaderIcon = styled(Flex)`\n flex-shrink: 0;\n`;\n\nconst HeaderTitle = styled(Typography)`\n min-width: 0;\n`;\n\ninterface DrawerHeaderProps {\n asset: AssetWithPopulatedCreatedBy;\n closeDetails: () => void;\n}\n\nconst DrawerHeader = ({ asset, closeDetails }: DrawerHeaderProps) => {\n const DocIcon = asset ? getAssetIcon(asset.mime, asset.ext) : FileError;\n return (\n <Flex\n gap={2}\n paddingLeft={5}\n paddingTop={3}\n paddingBottom={3}\n paddingRight={3}\n borderColor=\"neutral150\"\n borderStyle=\"solid\"\n borderWidth=\"0 0 1px 0\"\n >\n <HeaderIcon>\n <DocIcon width={20} height={20} />\n </HeaderIcon>\n <Drawer.Title asChild>\n <HeaderTitle variant=\"omega\" fontWeight=\"semiBold\" overflow=\"hidden\" ellipsis tag=\"h2\">\n {asset.name}\n </HeaderTitle>\n </Drawer.Title>\n <Box marginLeft=\"auto\">\n <Drawer.CloseButton onClose={closeDetails}>\n <ArrowLineRight />\n </Drawer.CloseButton>\n </Box>\n </Flex>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * DrawerContent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface DrawerContentProps {\n assetId: number;\n closeDetails: () => void;\n}\n\nconst DrawerContent = ({ assetId, closeDetails }: DrawerContentProps) => {\n const { formatMessage } = useIntl();\n const {\n data: asset,\n isLoading,\n error,\n } = useGetAssetQuery(assetId, {\n refetchOnMountOrArgChange: false,\n refetchOnReconnect: false,\n refetchOnFocus: false,\n });\n\n if (isLoading) {\n return (\n <Flex justifyContent=\"center\" padding={8}>\n <Loader>{formatMessage({ id: 'app.loading', defaultMessage: 'Loading...' })}</Loader>\n </Flex>\n );\n }\n\n if (error || !asset) {\n return (\n <Flex direction=\"column\" alignItems=\"stretch\" gap={4} padding={4}>\n <Alert\n variant=\"danger\"\n closeLabel={formatMessage({ id: 'global.close', defaultMessage: 'Close' })}\n onClose={closeDetails}\n >\n {formatMessage({\n id: getTranslationKey('asset-details.error'),\n defaultMessage: 'Failed to load file details.',\n })}\n </Alert>\n </Flex>\n );\n }\n\n return (\n <>\n <DrawerHeader asset={asset} closeDetails={closeDetails} />\n <AssetDetails asset={asset} closeDetails={closeDetails} />\n </>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AssetDetailsDrawer\n * -----------------------------------------------------------------------------------------------*/\n\n/**\n * Whether a pointer press outside the panel should leave the drawer open.\n *\n * Anywhere on the page behind dismisses it, controls included. Two exceptions,\n * neither of which is \"the user meant to stay\": the part of an asset's card or\n * row whose `click` switches the drawer rather than closing it — not its own\n * checkbox or actions menu, which act on the item; and a panel already closing,\n * which `forceMount` keeps listening through its animation, where dismissing\n * again would re-trigger the unsaved-changes guard for nothing.\n */\nconst shouldKeepDrawerOpen = (\n event: { target: EventTarget | null; detail: { originalEvent: { button: number } } },\n isVisible: boolean\n) => {\n if (!isVisible) {\n return true;\n }\n\n // Radix's dismisser fires on any `pointerdown`, secondary buttons included. A\n // right-click is contextual, and with the create menu on the background one\n // press would otherwise both close this and open that.\n if (event.detail.originalEvent.button !== 0) {\n return true;\n }\n\n if (!(event.target instanceof Element)) {\n return false;\n }\n\n // The card's own controls — its checkbox, its actions menu — act on the item\n // and stop the card's click, so no switch follows and the press dismisses.\n return (\n event.target.closest(ASSET_DETAILS_TRIGGER_SELECTOR) !== null &&\n event.target.closest(ASSET_ITEM_CONTROL_SELECTOR) === null\n );\n};\n\nexport const AssetDetailsDrawer = () => {\n const { formatMessage } = useIntl();\n const { assetId, isVisible, shouldRenderDrawer, onCloseAnimationEnd, closeDetails } =\n useAssetDetailsParam();\n\n if (!shouldRenderDrawer || assetId === null) {\n return null;\n }\n\n return (\n <Drawer.Root isVisible={isVisible} onClose={closeDetails}>\n {/* Wrapper div required: Dialog.Portal uses asChild and merges ref onto each child.\n VisuallyHidden does not forward refs, so we wrap it in a div that can receive the ref. */}\n <div>\n <VisuallyHidden>\n <Drawer.Title>\n {formatMessage({\n id: getTranslationKey('asset-details.title'),\n defaultMessage: 'File details',\n })}\n </Drawer.Title>\n <Drawer.Description>\n {formatMessage({\n id: getTranslationKey('asset-details.description'),\n defaultMessage: 'Displays file information and metadata',\n })}\n </Drawer.Description>\n </VisuallyHidden>\n </div>\n <Drawer.Body\n animationDirection=\"left\"\n width=\"41.6rem\"\n // dvh, not vh: the drawer is anchored to the bottom, so with 100vh on\n // mobile (where the URL bar shrinks the visual viewport below 100vh)\n // the top of the drawer — header, title, close button — is pushed\n // off-screen. dvh tracks the actual visible height.\n height=\"100dvh\"\n onAnimationEnd={onCloseAnimationEnd}\n // Opt in to dismiss-on-outside-click; `closeDetails` is the same path\n // as the header's close button, so unsaved edits are still guarded.\n onPointerDownOutside={(event) => {\n if (shouldKeepDrawerOpen(event, isVisible)) {\n event.preventDefault();\n }\n }}\n >\n <DrawerContent assetId={assetId} closeDetails={closeDetails} />\n </Drawer.Body>\n </Drawer.Root>\n );\n};\n"],"names":["DrawerNotifyContext","React","createContext","useDrawerNotify","ctx","useContext","Error","AssetOperationsContext","useAssetOperation","useAssetDetailsParam","query","setQuery","useQueryParams","assetId","parseAssetDetailsId","ASSET_DETAILS_URL_PARAM","hasValidId","isMounted","setIsMounted","useState","displayAssetId","useRef","useEffect","current","onCloseAnimationEnd","useCallback","event","target","currentTarget","openDetails","id","withEncodedUserParams","String","closeDetails","undefined","isVisible","shouldRenderDrawer","DetailItemContainer","styled","Flex","theme","spaces","DetailItem","label","value","_jsxs","direction","justifyContent","alignItems","gap","_jsx","Typography","variant","textColor","fontWeight","textTransform","FormShell","Box","DrawerToastSlot","getBusyMessage","state","isDeleting","getTranslationKey","defaultMessage","isCropCopying","isReplacing","StyledWarning","WarningCircle","colors","warning500","DetailField","name","required","disabled","formatMessage","useIntl","field","useField","isSubmitting","useForm","fieldValue","setValue","emptyTooltipLabel","Field","Root","Label","TextInput","onChange","endAction","Tooltip","aria-label","role","type","LocationField","rootLabel","folders","SingleSelect","next","Number","SingleSelectOption","map","folder","DeleteAssetButton","deleteAsset","isOpen","setIsOpen","handleConfirm","triggerLabel","Dialog","open","onOpenChange","Trigger","IconButton","Trash","Content","Header","Body","icon","width","height","fill","textAlign","Footer","Cancel","Button","fullWidth","Action","loading","onClick","CopyLinkButton","asset","copy","useClipboard","notify","handleCopy","url","prefixFileUrlWithBackendUrl","didCopy","message","Link","DownloadAssetButton","isDownloading","setIsDownloading","handleDownload","downloadFile","Download","ReplaceAssetButton","mime","replaceAsset","fileInputRef","isDialogOpen","setIsDialogOpen","aiEnabled","useAIMetadataEnabled","handleTriggerClick","handleContinue","click","handleFileChange","file","files","_Fragment","VisuallyHidden","input","ref","accept","multiple","aria-hidden","tabIndex","ArrowsCounterClockwise","AssetImageActions","onCrop","Crop","AssetDetails","formatDate","getErrorMessage","useApiErrorMessage","canCreate","canUpdate","canDownload","canCopyLink","useMediaLibraryPermissions","data","useGetAllFoldersQuery","toggleNotification","useNotification","updateAsset","useUpdateAssetMutation","trackUsage","useTracking","replaceMutation","isLoading","useReplaceAssetMutation","deleteMutation","useDeleteAssetMutation","uploadCroppedCopy","useUploadFileSilentlyMutation","isCropOpen","setIsCropOpen","drawerToast","setDrawerToast","timer","window","setTimeout","clearTimeout","toast","isImage","includes","ASSET_TYPES","Image","initialValues","caption","alternativeText","handleSubmit","values","fileInfo","res","error","location","MEDIA_LIBRARY_LOCATION","split","changeLocation","title","folderName","useFolderInfo","handleReplace","handleDelete","notifyCropError","handleCropApply","focalPoint","duplicatedFile","handleCropSaveAsCopy","operations","useMemo","Provider","Form","method","onSubmit","modified","resetForm","nameIsEmpty","trim","busyMessage","Blocker","onProceed","AssetCropEditor","onClose","onApply","onSaveAsCopy","canSaveAsCopy","BusyOverlay","Alert","closeLabel","Drawer","ScrollableContent","AssetPreview","actions","paddingTop","paddingBottom","paddingLeft","paddingRight","tag","wrap","background","createdAt","Date","dateStyle","timeStyle","updatedAt","createdBy","getDisplayName","firstname","lastname","username","email","size","formatBytes","getFileExtension","ext","padding","borderColor","borderStyle","borderWidth","HeaderIcon","HeaderTitle","DrawerHeader","DocIcon","getAssetIcon","FileError","Title","asChild","overflow","ellipsis","marginLeft","CloseButton","ArrowLineRight","DrawerContent","useGetAssetQuery","refetchOnMountOrArgChange","refetchOnReconnect","refetchOnFocus","Loader","shouldKeepDrawerOpen","detail","originalEvent","button","Element","closest","ASSET_DETAILS_TRIGGER_SELECTOR","ASSET_ITEM_CONTROL_SELECTOR","AssetDetailsDrawer","div","Description","animationDirection","onAnimationEnd","onPointerDownOutside","preventDefault"],"mappings":"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"}
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var jsxRuntime = require('react/jsx-runtime');
|
|
4
|
+
var React = require('react');
|
|
5
|
+
var designSystem = require('@strapi/design-system');
|
|
6
|
+
var reactIntl = require('react-intl');
|
|
7
|
+
var styledComponents = require('styled-components');
|
|
8
|
+
var enums = require('../../../../enums.js');
|
|
9
|
+
var files = require('../../../../utils/files.js');
|
|
10
|
+
var getAssetIcon = require('../../../../utils/getAssetIcon.js');
|
|
11
|
+
var translations = require('../../../../utils/translations.js');
|
|
12
|
+
|
|
13
|
+
function _interopNamespace(e) {
|
|
14
|
+
if (e && e.__esModule) return e;
|
|
15
|
+
var n = Object.create(null);
|
|
16
|
+
if (e) {
|
|
17
|
+
Object.keys(e).forEach(function (k) {
|
|
18
|
+
if (k !== 'default') {
|
|
19
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
20
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
21
|
+
enumerable: true,
|
|
22
|
+
get: function () { return e[k]; }
|
|
23
|
+
});
|
|
24
|
+
}
|
|
25
|
+
});
|
|
26
|
+
}
|
|
27
|
+
n.default = e;
|
|
28
|
+
return Object.freeze(n);
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
32
|
+
|
|
33
|
+
/* -------------------------------------------------------------------------------------------------
|
|
34
|
+
* Styled components
|
|
35
|
+
* -----------------------------------------------------------------------------------------------*/ const PreviewContainer = styledComponents.styled(designSystem.Box)`
|
|
36
|
+
position: relative;
|
|
37
|
+
width: 100%;
|
|
38
|
+
aspect-ratio: 16 / 9;
|
|
39
|
+
max-height: 24rem;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
border-radius: ${({ theme })=>theme.borderRadius};
|
|
42
|
+
padding: ${({ theme })=>theme.spaces[3]};
|
|
43
|
+
background: repeating-conic-gradient(
|
|
44
|
+
${({ theme })=>theme.colors.neutral100} 0% 25%,
|
|
45
|
+
transparent 0% 50%
|
|
46
|
+
)
|
|
47
|
+
50% / 20px 20px;
|
|
48
|
+
`;
|
|
49
|
+
const AssetContainer = styledComponents.styled(designSystem.Flex)`
|
|
50
|
+
justify-content: center;
|
|
51
|
+
position: relative;
|
|
52
|
+
z-index: 2;
|
|
53
|
+
width: 100%;
|
|
54
|
+
height: 100%;
|
|
55
|
+
`;
|
|
56
|
+
const StyledImage = styledComponents.styled.img`
|
|
57
|
+
max-width: 100%;
|
|
58
|
+
max-height: 100%;
|
|
59
|
+
object-fit: contain;
|
|
60
|
+
`;
|
|
61
|
+
/**
|
|
62
|
+
* Top-right overlay slot for image actions (crop). Sits above the
|
|
63
|
+
* image (z-index 3 > AssetContainer 2) so the buttons stay clickable.
|
|
64
|
+
*/ const ActionsOverlay = styledComponents.styled(designSystem.Flex)`
|
|
65
|
+
position: absolute;
|
|
66
|
+
top: ${({ theme })=>theme.spaces[3]};
|
|
67
|
+
right: ${({ theme })=>theme.spaces[3]};
|
|
68
|
+
z-index: 3;
|
|
69
|
+
`;
|
|
70
|
+
const StyledVideo = styledComponents.styled.video`
|
|
71
|
+
max-width: 100%;
|
|
72
|
+
max-height: 100%;
|
|
73
|
+
object-fit: contain;
|
|
74
|
+
`;
|
|
75
|
+
const StyledAudio = styledComponents.styled.audio`
|
|
76
|
+
width: 100%;
|
|
77
|
+
`;
|
|
78
|
+
const StyledPdfIframe = styledComponents.styled.iframe`
|
|
79
|
+
width: 100%;
|
|
80
|
+
height: 100%;
|
|
81
|
+
min-height: 200px;
|
|
82
|
+
border: none;
|
|
83
|
+
`;
|
|
84
|
+
const IconFallback = styledComponents.styled(designSystem.Flex)`
|
|
85
|
+
height: 100%;
|
|
86
|
+
aspect-ratio: 1;
|
|
87
|
+
width: auto;
|
|
88
|
+
max-width: 100%;
|
|
89
|
+
margin: 0 auto;
|
|
90
|
+
color: ${({ theme })=>theme.colors.neutral500};
|
|
91
|
+
background: ${({ theme })=>theme.colors.neutral150};
|
|
92
|
+
`;
|
|
93
|
+
const LoaderOverlay = styledComponents.styled(designSystem.Flex)`
|
|
94
|
+
position: absolute;
|
|
95
|
+
inset: 0;
|
|
96
|
+
z-index: 1;
|
|
97
|
+
`;
|
|
98
|
+
/* -------------------------------------------------------------------------------------------------
|
|
99
|
+
* AssetLoader
|
|
100
|
+
* -----------------------------------------------------------------------------------------------*/ const AssetLoader = ()=>{
|
|
101
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
102
|
+
return /*#__PURE__*/ jsxRuntime.jsx(LoaderOverlay, {
|
|
103
|
+
justifyContent: "center",
|
|
104
|
+
alignItems: "center",
|
|
105
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Loader, {
|
|
106
|
+
children: formatMessage({
|
|
107
|
+
id: 'app.loading',
|
|
108
|
+
defaultMessage: 'Loading...'
|
|
109
|
+
})
|
|
110
|
+
})
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
const AssetPreview = ({ asset, actions, isLoading = false })=>{
|
|
114
|
+
const { formatMessage } = reactIntl.useIntl();
|
|
115
|
+
const { alternativeText, ext, mime, url, updatedAt, isUrlSigned, isLocal } = asset;
|
|
116
|
+
// Append the asset's `updatedAt` as a cache-buster so a freshly replaced
|
|
117
|
+
// file (often served at the same URL) shows the new content instead of the
|
|
118
|
+
// browser-cached old version. Signed URLs are excluded: their query string
|
|
119
|
+
// is part of the SigV4 signature, so appending a param invalidates the
|
|
120
|
+
// signature and the request fails with 403. See #26581.
|
|
121
|
+
const cacheKey = updatedAt && !isUrlSigned ? new Date(updatedAt).getTime() : undefined;
|
|
122
|
+
const appendCacheBuster = (raw)=>{
|
|
123
|
+
if (!raw || cacheKey === undefined) return raw;
|
|
124
|
+
return raw.includes('?') ? `${raw}&v=${cacheKey}` : `${raw}?v=${cacheKey}`;
|
|
125
|
+
};
|
|
126
|
+
const mediaUrl = appendCacheBuster(files.prefixFileUrlWithBackendUrl(url));
|
|
127
|
+
const [isMediaLoaded, setIsMediaLoaded] = React__namespace.useState(false);
|
|
128
|
+
React__namespace.useEffect(()=>{
|
|
129
|
+
setIsMediaLoaded(false);
|
|
130
|
+
}, [
|
|
131
|
+
mediaUrl
|
|
132
|
+
]);
|
|
133
|
+
const imageRef = React__namespace.useRef(null);
|
|
134
|
+
React__namespace.useEffect(()=>{
|
|
135
|
+
const image = imageRef.current;
|
|
136
|
+
if (!image) return;
|
|
137
|
+
const recompute = ()=>{
|
|
138
|
+
const parent = image.parentElement;
|
|
139
|
+
if (!parent) return;
|
|
140
|
+
const c = parent.getBoundingClientRect();
|
|
141
|
+
// offsetWidth/Height = pre-transform layout box (transforms ignored).
|
|
142
|
+
const w = image.offsetWidth;
|
|
143
|
+
const h = image.offsetHeight;
|
|
144
|
+
if (!w || !h || !c.width || !c.height) return;
|
|
145
|
+
};
|
|
146
|
+
recompute();
|
|
147
|
+
const ro = new ResizeObserver(recompute);
|
|
148
|
+
ro.observe(image);
|
|
149
|
+
if (image.parentElement) ro.observe(image.parentElement);
|
|
150
|
+
return ()=>ro.disconnect();
|
|
151
|
+
}, [
|
|
152
|
+
isMediaLoaded
|
|
153
|
+
]);
|
|
154
|
+
if (mime?.includes(enums.ASSET_TYPES.Image)) {
|
|
155
|
+
const imageUrl = appendCacheBuster(files.prefixFileUrlWithBackendUrl(url));
|
|
156
|
+
if (imageUrl) {
|
|
157
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(PreviewContainer, {
|
|
158
|
+
children: [
|
|
159
|
+
(!isMediaLoaded || isLoading) && /*#__PURE__*/ jsxRuntime.jsx(AssetLoader, {}),
|
|
160
|
+
actions ? /*#__PURE__*/ jsxRuntime.jsx(ActionsOverlay, {
|
|
161
|
+
children: actions
|
|
162
|
+
}) : null,
|
|
163
|
+
/*#__PURE__*/ jsxRuntime.jsx(AssetContainer, {
|
|
164
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledImage, {
|
|
165
|
+
ref: imageRef,
|
|
166
|
+
src: imageUrl,
|
|
167
|
+
alt: alternativeText || asset.name || '',
|
|
168
|
+
crossOrigin: !isLocal && isUrlSigned ? 'anonymous' : undefined,
|
|
169
|
+
onLoad: ()=>setIsMediaLoaded(true),
|
|
170
|
+
onError: ()=>setIsMediaLoaded(true)
|
|
171
|
+
})
|
|
172
|
+
})
|
|
173
|
+
]
|
|
174
|
+
});
|
|
175
|
+
}
|
|
176
|
+
}
|
|
177
|
+
if (mime?.includes(enums.ASSET_TYPES.Video) && mediaUrl) {
|
|
178
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(PreviewContainer, {
|
|
179
|
+
children: [
|
|
180
|
+
!isMediaLoaded && /*#__PURE__*/ jsxRuntime.jsx(AssetLoader, {}),
|
|
181
|
+
/*#__PURE__*/ jsxRuntime.jsx(AssetContainer, {
|
|
182
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledVideo, {
|
|
183
|
+
src: mediaUrl,
|
|
184
|
+
controls: true,
|
|
185
|
+
title: asset.name,
|
|
186
|
+
onLoadedData: ()=>setIsMediaLoaded(true),
|
|
187
|
+
onError: ()=>setIsMediaLoaded(true),
|
|
188
|
+
children: formatMessage({
|
|
189
|
+
id: translations.getTranslationKey('asset-details.videoNotSupported'),
|
|
190
|
+
defaultMessage: 'Your browser does not support the video tag.'
|
|
191
|
+
})
|
|
192
|
+
})
|
|
193
|
+
})
|
|
194
|
+
]
|
|
195
|
+
});
|
|
196
|
+
}
|
|
197
|
+
if (mime?.includes(enums.ASSET_TYPES.Audio) && mediaUrl) {
|
|
198
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(PreviewContainer, {
|
|
199
|
+
children: [
|
|
200
|
+
!isMediaLoaded && /*#__PURE__*/ jsxRuntime.jsx(AssetLoader, {}),
|
|
201
|
+
/*#__PURE__*/ jsxRuntime.jsx(AssetContainer, {
|
|
202
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(designSystem.Flex, {
|
|
203
|
+
width: "100%",
|
|
204
|
+
padding: 4,
|
|
205
|
+
justifyContent: "center",
|
|
206
|
+
alignItems: "center",
|
|
207
|
+
height: "100%",
|
|
208
|
+
minHeight: "12rem",
|
|
209
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledAudio, {
|
|
210
|
+
src: mediaUrl,
|
|
211
|
+
controls: true,
|
|
212
|
+
onLoadedData: ()=>setIsMediaLoaded(true),
|
|
213
|
+
onError: ()=>setIsMediaLoaded(true)
|
|
214
|
+
})
|
|
215
|
+
})
|
|
216
|
+
})
|
|
217
|
+
]
|
|
218
|
+
});
|
|
219
|
+
}
|
|
220
|
+
const isPdf = ext?.toLowerCase() === 'pdf' || ext?.toLowerCase() === '.pdf' || mime === 'application/pdf';
|
|
221
|
+
if (isPdf && mediaUrl) {
|
|
222
|
+
return /*#__PURE__*/ jsxRuntime.jsxs(PreviewContainer, {
|
|
223
|
+
children: [
|
|
224
|
+
!isMediaLoaded && /*#__PURE__*/ jsxRuntime.jsx(AssetLoader, {}),
|
|
225
|
+
/*#__PURE__*/ jsxRuntime.jsx(AssetContainer, {
|
|
226
|
+
children: /*#__PURE__*/ jsxRuntime.jsx(StyledPdfIframe, {
|
|
227
|
+
src: `${mediaUrl}#toolbar=0`,
|
|
228
|
+
title: asset.name,
|
|
229
|
+
onLoad: ()=>setIsMediaLoaded(true)
|
|
230
|
+
})
|
|
231
|
+
})
|
|
232
|
+
]
|
|
233
|
+
});
|
|
234
|
+
}
|
|
235
|
+
const DocIcon = getAssetIcon.getAssetIcon(mime, ext);
|
|
236
|
+
return /*#__PURE__*/ jsxRuntime.jsx(PreviewContainer, {
|
|
237
|
+
children: /*#__PURE__*/ jsxRuntime.jsxs(IconFallback, {
|
|
238
|
+
justifyContent: "center",
|
|
239
|
+
alignItems: "center",
|
|
240
|
+
gap: 1,
|
|
241
|
+
direction: "column",
|
|
242
|
+
hasRadius: true,
|
|
243
|
+
children: [
|
|
244
|
+
/*#__PURE__*/ jsxRuntime.jsx(DocIcon, {
|
|
245
|
+
width: 24,
|
|
246
|
+
height: 24
|
|
247
|
+
}),
|
|
248
|
+
/*#__PURE__*/ jsxRuntime.jsx(designSystem.Typography, {
|
|
249
|
+
variant: "pi",
|
|
250
|
+
children: formatMessage({
|
|
251
|
+
id: translations.getTranslationKey('asset-details.noPreview'),
|
|
252
|
+
defaultMessage: 'No preview available'
|
|
253
|
+
})
|
|
254
|
+
})
|
|
255
|
+
]
|
|
256
|
+
})
|
|
257
|
+
});
|
|
258
|
+
};
|
|
259
|
+
|
|
260
|
+
exports.AssetPreview = AssetPreview;
|
|
261
|
+
//# sourceMappingURL=AssetPreview.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"AssetPreview.js","sources":["../../../../../../admin/src/pages/Assets/components/AssetDetails/AssetPreview.tsx"],"sourcesContent":["import * as React from 'react';\n\nimport { Box, Flex, Loader, Typography } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { ASSET_TYPES } from '../../../../enums';\nimport { prefixFileUrlWithBackendUrl } from '../../../../utils/files';\nimport { getAssetIcon } from '../../../../utils/getAssetIcon';\nimport { getTranslationKey } from '../../../../utils/translations';\n\nimport type { File, AssetWithPopulatedCreatedBy } from '../../../../../../shared/contracts/files';\n\n/* -------------------------------------------------------------------------------------------------\n * Styled components\n * -----------------------------------------------------------------------------------------------*/\n\nconst PreviewContainer = styled(Box)`\n position: relative;\n width: 100%;\n aspect-ratio: 16 / 9;\n max-height: 24rem;\n overflow: hidden;\n border-radius: ${({ theme }) => theme.borderRadius};\n padding: ${({ theme }) => theme.spaces[3]};\n background: repeating-conic-gradient(\n ${({ theme }) => theme.colors.neutral100} 0% 25%,\n transparent 0% 50%\n )\n 50% / 20px 20px;\n`;\n\nconst AssetContainer = styled(Flex)`\n justify-content: center;\n position: relative;\n z-index: 2;\n width: 100%;\n height: 100%;\n`;\n\nconst StyledImage = styled.img`\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n`;\n\n/**\n * Top-right overlay slot for image actions (crop). Sits above the\n * image (z-index 3 > AssetContainer 2) so the buttons stay clickable.\n */\nconst ActionsOverlay = styled(Flex)`\n position: absolute;\n top: ${({ theme }) => theme.spaces[3]};\n right: ${({ theme }) => theme.spaces[3]};\n z-index: 3;\n`;\n\nconst StyledVideo = styled.video`\n max-width: 100%;\n max-height: 100%;\n object-fit: contain;\n`;\n\nconst StyledAudio = styled.audio`\n width: 100%;\n`;\n\nconst StyledPdfIframe = styled.iframe`\n width: 100%;\n height: 100%;\n min-height: 200px;\n border: none;\n`;\n\nconst IconFallback = styled(Flex)`\n height: 100%;\n aspect-ratio: 1;\n width: auto;\n max-width: 100%;\n margin: 0 auto;\n color: ${({ theme }) => theme.colors.neutral500};\n background: ${({ theme }) => theme.colors.neutral150};\n`;\n\nconst LoaderOverlay = styled(Flex)`\n position: absolute;\n inset: 0;\n z-index: 1;\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * AssetLoader\n * -----------------------------------------------------------------------------------------------*/\n\nconst AssetLoader = () => {\n const { formatMessage } = useIntl();\n return (\n <LoaderOverlay justifyContent=\"center\" alignItems=\"center\">\n <Loader>{formatMessage({ id: 'app.loading', defaultMessage: 'Loading...' })}</Loader>\n </LoaderOverlay>\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * AssetPreviewContent\n * -----------------------------------------------------------------------------------------------*/\n\ninterface AssetPreviewProps {\n asset: File | AssetWithPopulatedCreatedBy;\n actions?: React.ReactNode;\n isLoading?: boolean;\n}\n\nexport const AssetPreview = ({ asset, actions, isLoading = false }: AssetPreviewProps) => {\n const { formatMessage } = useIntl();\n const { alternativeText, ext, mime, url, updatedAt, isUrlSigned, isLocal } = asset;\n // Append the asset's `updatedAt` as a cache-buster so a freshly replaced\n // file (often served at the same URL) shows the new content instead of the\n // browser-cached old version. Signed URLs are excluded: their query string\n // is part of the SigV4 signature, so appending a param invalidates the\n // signature and the request fails with 403. See #26581.\n const cacheKey = updatedAt && !isUrlSigned ? new Date(updatedAt).getTime() : undefined;\n const appendCacheBuster = (raw: string | undefined) => {\n if (!raw || cacheKey === undefined) return raw;\n return raw.includes('?') ? `${raw}&v=${cacheKey}` : `${raw}?v=${cacheKey}`;\n };\n const mediaUrl = appendCacheBuster(prefixFileUrlWithBackendUrl(url));\n\n const [isMediaLoaded, setIsMediaLoaded] = React.useState(false);\n React.useEffect(() => {\n setIsMediaLoaded(false);\n }, [mediaUrl]);\n\n const imageRef = React.useRef<HTMLImageElement>(null);\n React.useEffect(() => {\n const image = imageRef.current;\n if (!image) return;\n const recompute = () => {\n const parent = image.parentElement;\n if (!parent) return;\n const c = parent.getBoundingClientRect();\n // offsetWidth/Height = pre-transform layout box (transforms ignored).\n const w = image.offsetWidth;\n const h = image.offsetHeight;\n if (!w || !h || !c.width || !c.height) return;\n };\n recompute();\n const ro = new ResizeObserver(recompute);\n ro.observe(image);\n if (image.parentElement) ro.observe(image.parentElement);\n return () => ro.disconnect();\n }, [isMediaLoaded]);\n\n if (mime?.includes(ASSET_TYPES.Image)) {\n const imageUrl = appendCacheBuster(prefixFileUrlWithBackendUrl(url));\n\n if (imageUrl) {\n return (\n <PreviewContainer>\n {(!isMediaLoaded || isLoading) && <AssetLoader />}\n {actions ? <ActionsOverlay>{actions}</ActionsOverlay> : null}\n <AssetContainer>\n <StyledImage\n ref={imageRef}\n src={imageUrl}\n alt={alternativeText || asset.name || ''}\n crossOrigin={!isLocal && isUrlSigned ? 'anonymous' : undefined}\n onLoad={() => setIsMediaLoaded(true)}\n onError={() => setIsMediaLoaded(true)}\n />\n </AssetContainer>\n </PreviewContainer>\n );\n }\n }\n\n if (mime?.includes(ASSET_TYPES.Video) && mediaUrl) {\n return (\n <PreviewContainer>\n {!isMediaLoaded && <AssetLoader />}\n <AssetContainer>\n <StyledVideo\n src={mediaUrl}\n controls\n title={asset.name}\n onLoadedData={() => setIsMediaLoaded(true)}\n onError={() => setIsMediaLoaded(true)}\n >\n {formatMessage({\n id: getTranslationKey('asset-details.videoNotSupported'),\n defaultMessage: 'Your browser does not support the video tag.',\n })}\n </StyledVideo>\n </AssetContainer>\n </PreviewContainer>\n );\n }\n\n if (mime?.includes(ASSET_TYPES.Audio) && mediaUrl) {\n return (\n <PreviewContainer>\n {!isMediaLoaded && <AssetLoader />}\n <AssetContainer>\n <Flex\n width=\"100%\"\n padding={4}\n justifyContent=\"center\"\n alignItems=\"center\"\n height=\"100%\"\n minHeight=\"12rem\"\n >\n <StyledAudio\n src={mediaUrl}\n controls\n onLoadedData={() => setIsMediaLoaded(true)}\n onError={() => setIsMediaLoaded(true)}\n />\n </Flex>\n </AssetContainer>\n </PreviewContainer>\n );\n }\n\n const isPdf =\n ext?.toLowerCase() === 'pdf' || ext?.toLowerCase() === '.pdf' || mime === 'application/pdf';\n if (isPdf && mediaUrl) {\n return (\n <PreviewContainer>\n {!isMediaLoaded && <AssetLoader />}\n <AssetContainer>\n <StyledPdfIframe\n src={`${mediaUrl}#toolbar=0`}\n title={asset.name}\n onLoad={() => setIsMediaLoaded(true)}\n />\n </AssetContainer>\n </PreviewContainer>\n );\n }\n\n const DocIcon = getAssetIcon(mime, ext);\n return (\n <PreviewContainer>\n <IconFallback\n justifyContent=\"center\"\n alignItems=\"center\"\n gap={1}\n direction=\"column\"\n hasRadius\n >\n <DocIcon width={24} height={24} />\n <Typography variant=\"pi\">\n {formatMessage({\n id: getTranslationKey('asset-details.noPreview'),\n defaultMessage: 'No preview available',\n })}\n </Typography>\n </IconFallback>\n </PreviewContainer>\n );\n};\n"],"names":["PreviewContainer","styled","Box","theme","borderRadius","spaces","colors","neutral100","AssetContainer","Flex","StyledImage","img","ActionsOverlay","StyledVideo","video","StyledAudio","audio","StyledPdfIframe","iframe","IconFallback","neutral500","neutral150","LoaderOverlay","AssetLoader","formatMessage","useIntl","_jsx","justifyContent","alignItems","Loader","id","defaultMessage","AssetPreview","asset","actions","isLoading","alternativeText","ext","mime","url","updatedAt","isUrlSigned","isLocal","cacheKey","Date","getTime","undefined","appendCacheBuster","raw","includes","mediaUrl","prefixFileUrlWithBackendUrl","isMediaLoaded","setIsMediaLoaded","React","useState","useEffect","imageRef","useRef","image","current","recompute","parent","parentElement","c","getBoundingClientRect","w","offsetWidth","h","offsetHeight","width","height","ro","ResizeObserver","observe","disconnect","ASSET_TYPES","Image","imageUrl","_jsxs","ref","src","alt","name","crossOrigin","onLoad","onError","Video","controls","title","onLoadedData","getTranslationKey","Audio","padding","minHeight","isPdf","toLowerCase","DocIcon","getAssetIcon","gap","direction","hasRadius","Typography","variant"],"mappings":"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"}
|