@strapi/upload 5.54.0 → 5.55.0
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":"FilterBadges.js","sources":["../../../../../admin/src/pages/Assets/components/FilterBadges.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { Checkbox, Flex, Popover, Typography } from '@strapi/design-system';\nimport { Check, Cross } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { getTranslationKey } from '../../../utils/translations';\nimport {\n DATE_PRESETS,\n TYPE_VALUES,\n type DateFilter,\n type DatePreset,\n type ListFilter,\n type ListFilters,\n type PresetCondition,\n type RangeCondition,\n type TypeCondition,\n type TypeFilter,\n type TypeValue,\n} from '../hooks/useListFilters';\nimport { parseCalendarDate } from '../utils/buildAssetFilters';\n\nimport { DateRangeCalendar } from './DateRangeCalendar';\nimport { DATE_FIELD_LABELS, FILTER_PANEL_WIDTH, PRESET_LABELS, TYPE_LABELS } from './FilterMenu';\n\nimport type { MessageDescriptor } from 'react-intl';\n\n/**\n * Row of applied-filter badges under the toolbar. A badge has three segments —\n * field (static), condition (click → select popover), value (click → type\n * checkboxes / preset list / range calendar) — plus a remove button.\n */\n\nconst BadgePill = styled(Flex)`\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n border-radius: ${({ theme }) => theme.borderRadius};\n background: ${({ theme }) => theme.colors.neutral0};\n overflow: hidden;\n`;\n\nconst Segment = styled.button<{ $interactive?: boolean }>`\n border: none;\n background: transparent;\n font: inherit;\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[3]}`};\n cursor: ${({ $interactive }) => ($interactive ? 'pointer' : 'default')};\n border-right: 1px solid ${({ theme }) => theme.colors.neutral200};\n\n ${({ theme }) => theme.breakpoints.medium} {\n padding: ${({ theme }) => `${theme.spaces[1]} ${theme.spaces[2]}`};\n }\n ${({ $interactive, theme }) =>\n $interactive && `&:hover { background: ${theme.colors.primary100}; }`}\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\n// Non-interactive field segment (first pill cell).\nconst FieldSegment = styled.span`\n display: inline-flex;\n align-items: center;\n padding: ${({ theme }) => `${theme.spaces[1]} ${theme.spaces[2]}`};\n border-right: 1px solid ${({ theme }) => theme.colors.neutral200};\n`;\n\n// Badge popovers mirror the filter-menu panels: same fixed width, same font.\nconst PanelPopoverContent = styled(Popover.Content)`\n width: ${FILTER_PANEL_WIDTH};\n`;\n\n// Option row inside a segment popover — sized like a DS Menu.Item so the badge\n// dropdowns read as the same control family as the filter menu.\nconst OptionButton = styled.button`\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ${({ theme }) => theme.spaces[4]};\n width: 100%;\n border: none;\n background: transparent;\n font-size: ${({ theme }) => theme.fontSizes[2]};\n line-height: ${({ theme }) => theme.lineHeights[4]};\n font-family: inherit;\n text-align: left;\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[4]}`};\n border-radius: ${({ theme }) => theme.borderRadius};\n cursor: pointer;\n color: ${({ theme }) => theme.colors.neutral800};\n\n &:hover {\n background: ${({ theme }) => theme.colors.primary100};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\nconst RemoveButton = styled.button`\n border: none;\n background: transparent;\n display: inline-flex;\n align-items: center;\n padding: ${({ theme }) => `0 ${theme.spaces[2]}`};\n cursor: pointer;\n color: ${({ theme }) => theme.colors.neutral600};\n\n &:hover {\n color: ${({ theme }) => theme.colors.neutral800};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\nconst TYPE_CONDITION_LABELS: Record<TypeCondition, MessageDescriptor> = {\n is: { id: getTranslationKey('list.filters.condition.is'), defaultMessage: 'is' },\n isNot: { id: getTranslationKey('list.filters.condition.is-not'), defaultMessage: 'is not' },\n};\n\nconst PRESET_CONDITION_LABELS: Record<PresetCondition, MessageDescriptor> = {\n isExactly: {\n id: getTranslationKey('list.filters.condition.is-exactly'),\n defaultMessage: 'is exactly',\n },\n withinLast: {\n id: getTranslationKey('list.filters.condition.within-last'),\n defaultMessage: 'within the last',\n },\n notWithinLast: {\n id: getTranslationKey('list.filters.condition.not-within-last'),\n defaultMessage: 'not within the last',\n },\n};\n\nconst RANGE_CONDITION_LABELS: Record<RangeCondition, MessageDescriptor> = {\n is: { id: getTranslationKey('list.filters.condition.is'), defaultMessage: 'is' },\n isNot: { id: getTranslationKey('list.filters.condition.is-not'), defaultMessage: 'is not' },\n};\n\n/** A small single-choice popover listing options with a check on the active one. */\ninterface SegmentPopoverProps<T extends string> {\n label: string;\n options: T[];\n active: T;\n getOptionLabel: (option: T) => string;\n onPick: (option: T) => void;\n}\n\nconst SegmentPopover = <T extends string>({\n label,\n options,\n active,\n getOptionLabel,\n onPick,\n}: SegmentPopoverProps<T>) => {\n const [open, setOpen] = useState(false);\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n <Flex direction=\"column\" alignItems=\"stretch\" padding={1}>\n {options.map((option) => (\n <OptionButton\n key={option}\n type=\"button\"\n onClick={() => {\n onPick(option);\n setOpen(false);\n }}\n >\n {getOptionLabel(option)}\n {option === active && <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" />}\n </OptionButton>\n ))}\n </Flex>\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst TypeValuePopover = ({\n filter,\n onChange,\n}: {\n filter: TypeFilter;\n onChange: (next: TypeFilter) => void;\n}) => {\n const { formatMessage } = useIntl();\n const [open, setOpen] = useState(false);\n\n const label = filter.values.map((value) => formatMessage(TYPE_LABELS[value])).join(', ');\n\n const toggleValue = (value: TypeValue) => {\n const nextValues = filter.values.includes(value)\n ? filter.values.filter((v) => v !== value)\n : [...filter.values, value];\n\n // At least one value stays checked — an empty badge is removed via ×, not here.\n if (nextValues.length > 0) {\n onChange({ ...filter, values: nextValues });\n }\n };\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n <Flex direction=\"column\" alignItems=\"flex-start\" padding={3} gap={2}>\n {TYPE_VALUES.map((value) => (\n <Checkbox\n key={value}\n checked={filter.values.includes(value)}\n onCheckedChange={() => toggleValue(value)}\n >\n {formatMessage(TYPE_LABELS[value])}\n </Checkbox>\n ))}\n </Flex>\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst DateValuePopover = ({\n filter,\n onChange,\n}: {\n filter: DateFilter;\n onChange: (next: DateFilter) => void;\n}) => {\n const { formatMessage, formatDate } = useIntl();\n const [open, setOpen] = useState(false);\n\n // Parse as LOCAL calendar dates before formatting: react-intl would coerce\n // the raw `YYYY-MM-DD` strings via `new Date(value)` = UTC midnight, showing\n // the previous day in every timezone west of UTC while the query (also\n // local, see buildAssetFilters) filters the day the user actually picked.\n const label =\n filter.mode === 'preset'\n ? formatMessage(PRESET_LABELS[filter.preset])\n : `${formatDate(parseCalendarDate(filter.from), {\n day: '2-digit',\n month: 'short',\n })} - ${formatDate(parseCalendarDate(filter.to), {\n day: '2-digit',\n month: 'short',\n year: 'numeric',\n })}`;\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n {filter.mode === 'preset' ? (\n <Flex direction=\"column\" alignItems=\"stretch\" padding={1}>\n {DATE_PRESETS.map((preset: DatePreset) => (\n <OptionButton\n key={preset}\n type=\"button\"\n onClick={() => {\n onChange({ ...filter, preset });\n setOpen(false);\n }}\n >\n {formatMessage(PRESET_LABELS[preset])}\n {preset === filter.preset && <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" />}\n </OptionButton>\n ))}\n </Flex>\n ) : (\n <DateRangeCalendar\n from={filter.from}\n to={filter.to}\n onSelect={(from, to) => {\n onChange({ ...filter, from, to });\n setOpen(false);\n }}\n />\n )}\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst FilterBadge = ({\n filter,\n onChange,\n onRemove,\n}: {\n filter: ListFilter;\n onChange: (next: ListFilter) => void;\n onRemove: () => void;\n}) => {\n const { formatMessage } = useIntl();\n\n const fieldLabel =\n filter.kind === 'type'\n ? formatMessage({ id: getTranslationKey('list.filters.field.type'), defaultMessage: 'Type' })\n : formatMessage(DATE_FIELD_LABELS[filter.field]);\n\n return (\n <BadgePill alignItems=\"stretch\" data-testid=\"filter-badge\">\n <FieldSegment>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {fieldLabel}\n </Typography>\n </FieldSegment>\n\n {filter.kind === 'type' && (\n <>\n <SegmentPopover\n label={formatMessage(TYPE_CONDITION_LABELS[filter.condition])}\n options={['is', 'isNot'] as TypeCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(TYPE_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <TypeValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n {filter.kind === 'date' && filter.mode === 'preset' && (\n <>\n <SegmentPopover\n label={formatMessage(PRESET_CONDITION_LABELS[filter.condition])}\n options={['isExactly', 'withinLast', 'notWithinLast'] as PresetCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(PRESET_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <DateValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n {filter.kind === 'date' && filter.mode === 'range' && (\n <>\n <SegmentPopover\n label={formatMessage(RANGE_CONDITION_LABELS[filter.condition])}\n options={['is', 'isNot'] as RangeCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(RANGE_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <DateValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n <RemoveButton\n type=\"button\"\n onClick={onRemove}\n aria-label={formatMessage(\n {\n id: getTranslationKey('list.filters.remove'),\n defaultMessage: 'Remove {filter} filter',\n },\n { filter: fieldLabel }\n )}\n >\n <Cross width=\"1.2rem\" height=\"1.2rem\" aria-hidden />\n </RemoveButton>\n </BadgePill>\n );\n};\n\n// Tighten the gap above the badges when the sticky header is in its compact\n// (scrolled) state, matching the header's own shrink.\nconst BadgesRoot = styled(Flex)<{ $compact: boolean }>`\n padding-top: ${({ theme, $compact }) => ($compact ? theme.spaces[1] : theme.spaces[6])};\n transition: padding-top 0.2s ease;\n`;\n\ninterface FilterBadgesProps {\n listFilters: ListFilters;\n /** Sticky header is scrolled/compact — reduce the space above the badges. */\n compact?: boolean;\n}\n\nexport const FilterBadges = ({ listFilters, compact = false }: FilterBadgesProps) => {\n const { filters, updateFilter, removeFilter } = listFilters;\n\n if (filters.length === 0) {\n return null;\n }\n\n return (\n <BadgesRoot $compact={compact} gap={2} wrap=\"wrap\" data-testid=\"filter-badges\">\n {filters.map((filter, index) => (\n <FilterBadge\n // Position is identity: badges are edited/removed by index.\n key={index}\n filter={filter}\n onChange={(next) => updateFilter(index, next)}\n onRemove={() => removeFilter(index)}\n />\n ))}\n </BadgesRoot>\n );\n};\n"],"names":["BadgePill","styled","Flex","theme","colors","neutral200","borderRadius","neutral0","Segment","button","spaces","$interactive","breakpoints","medium","primary100","primary600","FieldSegment","span","PanelPopoverContent","Popover","Content","FILTER_PANEL_WIDTH","OptionButton","fontSizes","lineHeights","neutral800","RemoveButton","neutral600","TYPE_CONDITION_LABELS","is","id","getTranslationKey","defaultMessage","isNot","PRESET_CONDITION_LABELS","isExactly","withinLast","notWithinLast","RANGE_CONDITION_LABELS","SegmentPopover","label","options","active","getOptionLabel","onPick","open","setOpen","useState","_jsxs","Root","onOpenChange","_jsx","Trigger","type","Typography","variant","textColor","direction","alignItems","padding","map","option","onClick","Check","aria-hidden","width","height","TypeValuePopover","filter","onChange","formatMessage","useIntl","values","value","TYPE_LABELS","join","toggleValue","nextValues","includes","v","length","gap","TYPE_VALUES","Checkbox","checked","onCheckedChange","DateValuePopover","formatDate","mode","PRESET_LABELS","preset","parseCalendarDate","from","day","month","to","year","DATE_PRESETS","DateRangeCalendar","onSelect","FilterBadge","onRemove","fieldLabel","kind","DATE_FIELD_LABELS","field","data-testid","_Fragment","condition","aria-label","Cross","BadgesRoot","$compact","FilterBadges","listFilters","compact","filters","updateFilter","removeFilter","wrap","index","next"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterBadges.mjs","sources":["../../../../../admin/src/pages/Assets/components/FilterBadges.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { Checkbox, Flex, Popover, Typography } from '@strapi/design-system';\nimport { Check, Cross } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { getTranslationKey } from '../../../utils/translations';\nimport {\n DATE_PRESETS,\n TYPE_VALUES,\n type DateFilter,\n type DatePreset,\n type ListFilter,\n type ListFilters,\n type PresetCondition,\n type RangeCondition,\n type TypeCondition,\n type TypeFilter,\n type TypeValue,\n} from '../hooks/useListFilters';\nimport { parseCalendarDate } from '../utils/buildAssetFilters';\n\nimport { DateRangeCalendar } from './DateRangeCalendar';\nimport { DATE_FIELD_LABELS, FILTER_PANEL_WIDTH, PRESET_LABELS, TYPE_LABELS } from './FilterMenu';\n\nimport type { MessageDescriptor } from 'react-intl';\n\n/**\n * Row of applied-filter badges under the toolbar. A badge has three segments —\n * field (static), condition (click → select popover), value (click → type\n * checkboxes / preset list / range calendar) — plus a remove button.\n */\n\nconst BadgePill = styled(Flex)`\n border: 1px solid ${({ theme }) => theme.colors.neutral200};\n border-radius: ${({ theme }) => theme.borderRadius};\n background: ${({ theme }) => theme.colors.neutral0};\n overflow: hidden;\n`;\n\nconst Segment = styled.button<{ $interactive?: boolean }>`\n border: none;\n background: transparent;\n font: inherit;\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[3]}`};\n cursor: ${({ $interactive }) => ($interactive ? 'pointer' : 'default')};\n border-right: 1px solid ${({ theme }) => theme.colors.neutral200};\n\n ${({ theme }) => theme.breakpoints.medium} {\n padding: ${({ theme }) => `${theme.spaces[1]} ${theme.spaces[2]}`};\n }\n ${({ $interactive, theme }) =>\n $interactive && `&:hover { background: ${theme.colors.primary100}; }`}\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\n// Non-interactive field segment (first pill cell).\nconst FieldSegment = styled.span`\n display: inline-flex;\n align-items: center;\n padding: ${({ theme }) => `${theme.spaces[1]} ${theme.spaces[2]}`};\n border-right: 1px solid ${({ theme }) => theme.colors.neutral200};\n`;\n\n// Badge popovers mirror the filter-menu panels: same fixed width, same font.\nconst PanelPopoverContent = styled(Popover.Content)`\n width: ${FILTER_PANEL_WIDTH};\n`;\n\n// Option row inside a segment popover — sized like a DS Menu.Item so the badge\n// dropdowns read as the same control family as the filter menu.\nconst OptionButton = styled.button`\n display: flex;\n align-items: center;\n justify-content: space-between;\n gap: ${({ theme }) => theme.spaces[4]};\n width: 100%;\n border: none;\n background: transparent;\n font-size: ${({ theme }) => theme.fontSizes[2]};\n line-height: ${({ theme }) => theme.lineHeights[4]};\n font-family: inherit;\n text-align: left;\n padding: ${({ theme }) => `${theme.spaces[2]} ${theme.spaces[4]}`};\n border-radius: ${({ theme }) => theme.borderRadius};\n cursor: pointer;\n color: ${({ theme }) => theme.colors.neutral800};\n\n &:hover {\n background: ${({ theme }) => theme.colors.primary100};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\nconst RemoveButton = styled.button`\n border: none;\n background: transparent;\n display: inline-flex;\n align-items: center;\n padding: ${({ theme }) => `0 ${theme.spaces[2]}`};\n cursor: pointer;\n color: ${({ theme }) => theme.colors.neutral600};\n\n &:hover {\n color: ${({ theme }) => theme.colors.neutral800};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\nconst TYPE_CONDITION_LABELS: Record<TypeCondition, MessageDescriptor> = {\n is: { id: getTranslationKey('list.filters.condition.is'), defaultMessage: 'is' },\n isNot: { id: getTranslationKey('list.filters.condition.is-not'), defaultMessage: 'is not' },\n};\n\nconst PRESET_CONDITION_LABELS: Record<PresetCondition, MessageDescriptor> = {\n isExactly: {\n id: getTranslationKey('list.filters.condition.is-exactly'),\n defaultMessage: 'is exactly',\n },\n withinLast: {\n id: getTranslationKey('list.filters.condition.within-last'),\n defaultMessage: 'within the last',\n },\n notWithinLast: {\n id: getTranslationKey('list.filters.condition.not-within-last'),\n defaultMessage: 'not within the last',\n },\n};\n\nconst RANGE_CONDITION_LABELS: Record<RangeCondition, MessageDescriptor> = {\n is: { id: getTranslationKey('list.filters.condition.is'), defaultMessage: 'is' },\n isNot: { id: getTranslationKey('list.filters.condition.is-not'), defaultMessage: 'is not' },\n};\n\n/** A small single-choice popover listing options with a check on the active one. */\ninterface SegmentPopoverProps<T extends string> {\n label: string;\n options: T[];\n active: T;\n getOptionLabel: (option: T) => string;\n onPick: (option: T) => void;\n}\n\nconst SegmentPopover = <T extends string>({\n label,\n options,\n active,\n getOptionLabel,\n onPick,\n}: SegmentPopoverProps<T>) => {\n const [open, setOpen] = useState(false);\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n <Flex direction=\"column\" alignItems=\"stretch\" padding={1}>\n {options.map((option) => (\n <OptionButton\n key={option}\n type=\"button\"\n onClick={() => {\n onPick(option);\n setOpen(false);\n }}\n >\n {getOptionLabel(option)}\n {option === active && <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" />}\n </OptionButton>\n ))}\n </Flex>\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst TypeValuePopover = ({\n filter,\n onChange,\n}: {\n filter: TypeFilter;\n onChange: (next: TypeFilter) => void;\n}) => {\n const { formatMessage } = useIntl();\n const [open, setOpen] = useState(false);\n\n const label = filter.values.map((value) => formatMessage(TYPE_LABELS[value])).join(', ');\n\n const toggleValue = (value: TypeValue) => {\n const nextValues = filter.values.includes(value)\n ? filter.values.filter((v) => v !== value)\n : [...filter.values, value];\n\n // At least one value stays checked — an empty badge is removed via ×, not here.\n if (nextValues.length > 0) {\n onChange({ ...filter, values: nextValues });\n }\n };\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n <Flex direction=\"column\" alignItems=\"flex-start\" padding={3} gap={2}>\n {TYPE_VALUES.map((value) => (\n <Checkbox\n key={value}\n checked={filter.values.includes(value)}\n onCheckedChange={() => toggleValue(value)}\n >\n {formatMessage(TYPE_LABELS[value])}\n </Checkbox>\n ))}\n </Flex>\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst DateValuePopover = ({\n filter,\n onChange,\n}: {\n filter: DateFilter;\n onChange: (next: DateFilter) => void;\n}) => {\n const { formatMessage, formatDate } = useIntl();\n const [open, setOpen] = useState(false);\n\n // Parse as LOCAL calendar dates before formatting: react-intl would coerce\n // the raw `YYYY-MM-DD` strings via `new Date(value)` = UTC midnight, showing\n // the previous day in every timezone west of UTC while the query (also\n // local, see buildAssetFilters) filters the day the user actually picked.\n const label =\n filter.mode === 'preset'\n ? formatMessage(PRESET_LABELS[filter.preset])\n : `${formatDate(parseCalendarDate(filter.from), {\n day: '2-digit',\n month: 'short',\n })} - ${formatDate(parseCalendarDate(filter.to), {\n day: '2-digit',\n month: 'short',\n year: 'numeric',\n })}`;\n\n return (\n <Popover.Root open={open} onOpenChange={setOpen}>\n <Popover.Trigger>\n <Segment type=\"button\" $interactive>\n <Typography variant=\"pi\" textColor=\"neutral800\">\n {label}\n </Typography>\n </Segment>\n </Popover.Trigger>\n <PanelPopoverContent>\n {filter.mode === 'preset' ? (\n <Flex direction=\"column\" alignItems=\"stretch\" padding={1}>\n {DATE_PRESETS.map((preset: DatePreset) => (\n <OptionButton\n key={preset}\n type=\"button\"\n onClick={() => {\n onChange({ ...filter, preset });\n setOpen(false);\n }}\n >\n {formatMessage(PRESET_LABELS[preset])}\n {preset === filter.preset && <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" />}\n </OptionButton>\n ))}\n </Flex>\n ) : (\n <DateRangeCalendar\n from={filter.from}\n to={filter.to}\n onSelect={(from, to) => {\n onChange({ ...filter, from, to });\n setOpen(false);\n }}\n />\n )}\n </PanelPopoverContent>\n </Popover.Root>\n );\n};\n\nconst FilterBadge = ({\n filter,\n onChange,\n onRemove,\n}: {\n filter: ListFilter;\n onChange: (next: ListFilter) => void;\n onRemove: () => void;\n}) => {\n const { formatMessage } = useIntl();\n\n const fieldLabel =\n filter.kind === 'type'\n ? formatMessage({ id: getTranslationKey('list.filters.field.type'), defaultMessage: 'Type' })\n : formatMessage(DATE_FIELD_LABELS[filter.field]);\n\n return (\n <BadgePill alignItems=\"stretch\" data-testid=\"filter-badge\">\n <FieldSegment>\n <Typography variant=\"pi\" textColor=\"neutral600\">\n {fieldLabel}\n </Typography>\n </FieldSegment>\n\n {filter.kind === 'type' && (\n <>\n <SegmentPopover\n label={formatMessage(TYPE_CONDITION_LABELS[filter.condition])}\n options={['is', 'isNot'] as TypeCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(TYPE_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <TypeValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n {filter.kind === 'date' && filter.mode === 'preset' && (\n <>\n <SegmentPopover\n label={formatMessage(PRESET_CONDITION_LABELS[filter.condition])}\n options={['isExactly', 'withinLast', 'notWithinLast'] as PresetCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(PRESET_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <DateValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n {filter.kind === 'date' && filter.mode === 'range' && (\n <>\n <SegmentPopover\n label={formatMessage(RANGE_CONDITION_LABELS[filter.condition])}\n options={['is', 'isNot'] as RangeCondition[]}\n active={filter.condition}\n getOptionLabel={(option) => formatMessage(RANGE_CONDITION_LABELS[option])}\n onPick={(condition) => onChange({ ...filter, condition })}\n />\n <DateValuePopover filter={filter} onChange={onChange} />\n </>\n )}\n\n <RemoveButton\n type=\"button\"\n onClick={onRemove}\n aria-label={formatMessage(\n {\n id: getTranslationKey('list.filters.remove'),\n defaultMessage: 'Remove {filter} filter',\n },\n { filter: fieldLabel }\n )}\n >\n <Cross width=\"1.2rem\" height=\"1.2rem\" aria-hidden />\n </RemoveButton>\n </BadgePill>\n );\n};\n\n// Tighten the gap above the badges when the sticky header is in its compact\n// (scrolled) state, matching the header's own shrink.\nconst BadgesRoot = styled(Flex)<{ $compact: boolean }>`\n padding-top: ${({ theme, $compact }) => ($compact ? theme.spaces[1] : theme.spaces[6])};\n transition: padding-top 0.2s ease;\n`;\n\ninterface FilterBadgesProps {\n listFilters: ListFilters;\n /** Sticky header is scrolled/compact — reduce the space above the badges. */\n compact?: boolean;\n}\n\nexport const FilterBadges = ({ listFilters, compact = false }: FilterBadgesProps) => {\n const { filters, updateFilter, removeFilter } = listFilters;\n\n if (filters.length === 0) {\n return null;\n }\n\n return (\n <BadgesRoot $compact={compact} gap={2} wrap=\"wrap\" data-testid=\"filter-badges\">\n {filters.map((filter, index) => (\n <FilterBadge\n // Position is identity: badges are edited/removed by index.\n key={index}\n filter={filter}\n onChange={(next) => updateFilter(index, next)}\n onRemove={() => removeFilter(index)}\n />\n ))}\n </BadgesRoot>\n );\n};\n"],"names":["BadgePill","styled","Flex","theme","colors","neutral200","borderRadius","neutral0","Segment","button","spaces","$interactive","breakpoints","medium","primary100","primary600","FieldSegment","span","PanelPopoverContent","Popover","Content","FILTER_PANEL_WIDTH","OptionButton","fontSizes","lineHeights","neutral800","RemoveButton","neutral600","TYPE_CONDITION_LABELS","is","id","getTranslationKey","defaultMessage","isNot","PRESET_CONDITION_LABELS","isExactly","withinLast","notWithinLast","RANGE_CONDITION_LABELS","SegmentPopover","label","options","active","getOptionLabel","onPick","open","setOpen","useState","_jsxs","Root","onOpenChange","_jsx","Trigger","type","Typography","variant","textColor","direction","alignItems","padding","map","option","onClick","Check","aria-hidden","width","height","TypeValuePopover","filter","onChange","formatMessage","useIntl","values","value","TYPE_LABELS","join","toggleValue","nextValues","includes","v","length","gap","TYPE_VALUES","Checkbox","checked","onCheckedChange","DateValuePopover","formatDate","mode","PRESET_LABELS","preset","parseCalendarDate","from","day","month","to","year","DATE_PRESETS","DateRangeCalendar","onSelect","FilterBadge","onRemove","fieldLabel","kind","DATE_FIELD_LABELS","field","data-testid","_Fragment","condition","aria-label","Cross","BadgesRoot","$compact","FilterBadges","listFilters","compact","filters","updateFilter","removeFilter","wrap","index","next"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterMenu.js","sources":["../../../../../admin/src/pages/Assets/components/FilterMenu.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { useIsMobile } from '@strapi/admin/strapi-admin';\nimport { Badge, Box, Checkbox, Flex, Menu } from '@strapi/design-system';\nimport { Check, ChevronDown, Filter as FilterIcon } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useTracking, MEDIA_LIBRARY_LOCATION } from '../../../hooks/useTracking';\nimport { getTranslationKey } from '../../../utils/translations';\nimport {\n DATE_PRESETS,\n TYPE_VALUES,\n type DateField,\n type DatePreset,\n type ListFilters,\n type TypeValue,\n} from '../hooks/useListFilters';\n\nimport { DateRangeCalendar } from './DateRangeCalendar';\n\nimport type { MessageDescriptor } from 'react-intl';\n\nexport const TYPE_LABELS: Record<TypeValue, MessageDescriptor> = {\n folder: { id: getTranslationKey('list.filters.type.folder'), defaultMessage: 'Folder' },\n picture: { id: getTranslationKey('list.filters.type.picture'), defaultMessage: 'Picture' },\n audio: { id: getTranslationKey('list.filters.type.audio'), defaultMessage: 'Audio' },\n video: { id: getTranslationKey('list.filters.type.video'), defaultMessage: 'Video' },\n document: { id: getTranslationKey('list.filters.type.document'), defaultMessage: 'Document' },\n};\n\nexport const PRESET_LABELS: Record<DatePreset, MessageDescriptor> = {\n '1day': { id: getTranslationKey('list.filters.preset.1day'), defaultMessage: '1 day ago' },\n '3days': { id: getTranslationKey('list.filters.preset.3days'), defaultMessage: '3 days ago' },\n '1week': { id: getTranslationKey('list.filters.preset.1week'), defaultMessage: '1 week ago' },\n '1month': { id: getTranslationKey('list.filters.preset.1month'), defaultMessage: '1 month ago' },\n '3months': {\n id: getTranslationKey('list.filters.preset.3months'),\n defaultMessage: '3 months ago',\n },\n '6months': {\n id: getTranslationKey('list.filters.preset.6months'),\n defaultMessage: '6 months ago',\n },\n '1year': { id: getTranslationKey('list.filters.preset.1year'), defaultMessage: '1 year ago' },\n};\n\nexport const DATE_FIELD_LABELS: Record<DateField, MessageDescriptor> = {\n createdAt: {\n id: getTranslationKey('list.filters.field.created'),\n defaultMessage: 'Creation date',\n },\n updatedAt: {\n id: getTranslationKey('list.filters.field.updated'),\n defaultMessage: 'Last modified',\n },\n};\n\n// The DS SubTrigger renders its chevron inline right after the label — push it\n// to the far edge so every field row reads label · · · ›, like the mock.\nconst FieldSubTrigger = styled(Menu.SubTrigger)`\n width: 100%;\n justify-content: space-between;\n`;\n\n/** Every panel of the filter tree shares this fixed width (design). */\nexport const FILTER_PANEL_WIDTH = '24.2rem';\n\n// dvh, not vh: on a phone `vh` ignores the browser chrome, so a 70vh panel can\n// extend past the visual viewport and leave its lower rows (the last field, and\n// anything under the date-range calendar) stranded under the URL bar with no way\n// to scroll to them. Same reason the drawer caps on dvh.\nconst PANEL_MAX_HEIGHT = '70dvh';\n\n// Mobile uses one flat panel (accordion), so it never needs room for a side\n// flyout — cap it to the viewport so it can't overflow a narrow screen.\nconst MOBILE_PANEL_WIDTH = `min(${FILTER_PANEL_WIDTH}, calc(100dvw - 2rem))`;\n\n// Mobile accordion: the field row is a plain menu item that expands its options\n// inline below it (Radix sub-menus can only fly out sideways, off a phone).\nconst FieldToggle = styled(Menu.Item)`\n width: 100%;\n`;\n\n// The options revealed under a field row.\n//\n// `width: 100%` is load-bearing: Menu.Content is a column flex with\n// `align-items: flex-start`, so a child shrink-wraps to its content unless it\n// sets a width explicitly. Without it the group collapsed to the widest option\n// label and the rows' own `width: 100%` resolved against that, so a selected row\n// highlighted only part of the panel.\n//\n// The indent then lives on each row's padding rather than on this wrapper —\n// padding here would inset the rows, and the highlight with them.\nconst OptionGroup = styled(Box)`\n width: 100%;\n\n > * {\n width: 100%;\n }\n\n /* menuitem, menuitemradio and menuitemcheckbox — every option row, plus the\n \"Select date range\" toggle, which sits at the same level. */\n > [role^='menuitem'] {\n padding-left: ${({ theme }) => theme.spaces[6]};\n }\n`;\n\n// Rotates the chevron when its section is open.\nconst Chevron = styled(ChevronDown)<{ $open: boolean }>`\n transition: transform 0.2s ease;\n transform: rotate(${({ $open }) => ($open ? '180deg' : '0deg')});\n`;\n\n// Sub panels: fixed width, no 15rem clamp (the DS default folds the calendar),\n// and a negative top margin cancelling the parent panel's padding + border so\n// the sub panel's top edge lines up with the parent panel, not the item.\nconst SubPanel = styled(Menu.SubContent)`\n margin-top: calc(-1 * (${({ theme }) => theme.spaces[1]} + 1px));\n`;\n\nconst CountBadge = styled(Badge)`\n height: 1.6rem;\n min-width: auto;\n padding: 0 0.4rem;\n`;\n\ninterface FilterMenuProps {\n listFilters: ListFilters;\n}\n\n/**\n * Toolbar \"Filter\" dropdown. Picking anything ADDS a badge (editing happens on\n * the badge itself, see FilterBadges):\n *\n * - Type → keep-open checkbox list; the badge is created/updated live with the\n * checked set (`is` by default, condition editable on the badge).\n * - Creation date / Last modified → preset list (single pick, `within the\n * last` by default) + \"Select date range\" (creation date only) opening the\n * range calendar; a completed range adds an `is` range badge.\n *\n * Closing behaviour follows how many values a field can hold: a date is one\n * value, so picking a preset (or committing a range) closes the menu; Type is a\n * set, so it stays open until dismissed.\n */\nexport const FilterMenu = ({ listFilters }: FilterMenuProps) => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = useState(false);\n const { filters, addFilter, updateFilter, removeFilter } = listFilters;\n\n // Fired whenever a filter facet is turned on (not on removal). `filter` names\n // the facet, mirroring the legacy field-key payload.\n const trackFilter = (filter: string) =>\n trackUsage('didFilterMediaLibraryElements', { location: MEDIA_LIBRARY_LOCATION, filter });\n\n // The Type submenu edits the LAST type badge in place while the menu stays\n // open (checking values accumulates into one badge, per design).\n let lastTypeIndex = -1;\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n if (filters[i].kind === 'type') {\n lastTypeIndex = i;\n break;\n }\n }\n const lastTypeFilter = lastTypeIndex >= 0 ? filters[lastTypeIndex] : null;\n const checkedValues =\n lastTypeFilter && lastTypeFilter.kind === 'type' ? lastTypeFilter.values : [];\n\n const toggleTypeValue = (value: TypeValue) => {\n const isAdding = !checkedValues.includes(value);\n const nextValues = isAdding\n ? [...checkedValues, value]\n : checkedValues.filter((v) => v !== value);\n\n if (isAdding) {\n trackFilter('type');\n }\n\n if (lastTypeFilter && lastTypeFilter.kind === 'type') {\n if (nextValues.length === 0) {\n // Unchecking the final value removes the badge outright — a type\n // filter with no values is not a state (it would serialize to a\n // malformed `type:is:` the parser drops anyway).\n removeFilter(lastTypeIndex);\n } else {\n updateFilter(lastTypeIndex, { ...lastTypeFilter, values: nextValues });\n }\n } else if (nextValues.length > 0) {\n addFilter({ kind: 'type', condition: 'is', values: nextValues });\n }\n };\n\n // Creation date / Last modified are single-select (per design): selecting a\n // preset replaces the field's existing preset badge in place (keeping its\n // condition) rather than adding another pill; a badge is created only when the\n // field has none yet.\n const addPreset = (field: DateField, preset: DatePreset) => {\n // Fired before the replace path returns: swapping a field's preset is still\n // the user filtering, same as adding the badge in the first place.\n trackFilter(field);\n\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n const f = filters[i];\n if (f.kind === 'date' && f.mode === 'preset' && f.field === field) {\n updateFilter(i, { ...f, preset });\n return;\n }\n }\n\n addFilter({ kind: 'date', field, mode: 'preset', condition: 'withinLast', preset });\n };\n\n const addRange = (from: string, to: string) => {\n trackFilter('createdAt');\n addFilter({ kind: 'date', field: 'createdAt', mode: 'range', condition: 'is', from, to });\n // The calendar is not a Menu.Item — close the menu explicitly on commit.\n setIsOpen(false);\n };\n\n const isMobile = useIsMobile();\n // Mobile accordion state: which field is expanded, and whether its date-range\n // calendar is open. Both reset when the whole menu closes.\n const [openField, setOpenField] = useState<'type' | 'createdAt' | 'updatedAt' | null>(null);\n const [rangeOpen, setRangeOpen] = useState(false);\n\n const handleOpenChange = (next: boolean) => {\n setIsOpen(next);\n if (!next) {\n setOpenField(null);\n setRangeOpen(false);\n }\n };\n\n const toggleField = (field: 'type' | 'createdAt' | 'updatedAt') => {\n setOpenField((current) => (current === field ? null : field));\n setRangeOpen(false);\n };\n\n // Option lists, shared by the desktop flyouts and the mobile accordion.\n // Multi-select semantics: menuitemcheckbox + aria-checked carry the state for\n // assistive tech; the Checkbox is purely decorative (aria-hidden, unfocusable)\n // — the Menu.Item is the control.\n const typeItems = TYPE_VALUES.map((value) => (\n <Menu.Item\n key={value}\n role=\"menuitemcheckbox\"\n aria-checked={checkedValues.includes(value)}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleTypeValue(value);\n }}\n startIcon={<Checkbox checked={checkedValues.includes(value)} tabIndex={-1} aria-hidden />}\n >\n {formatMessage(TYPE_LABELS[value])}\n </Menu.Item>\n ));\n\n // The field's currently-selected preset (single-select), so the menu can mark\n // it with a check.\n const selectedPresetForField = (field: DateField): DatePreset | null => {\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n const f = filters[i];\n if (f.kind === 'date' && f.mode === 'preset' && f.field === field) {\n return f.preset;\n }\n }\n return null;\n };\n\n const presetItems = (field: DateField) => {\n const selected = selectedPresetForField(field);\n\n return DATE_PRESETS.map((preset) => (\n <Menu.Item\n key={preset}\n role=\"menuitemradio\"\n aria-checked={selected === preset}\n onSelect={() => {\n // No preventDefault, unlike Type: a date field holds exactly one\n // value, so the pick is complete and the menu closes on it. Type stays\n // open because the user may still be building up a multi-value set.\n addPreset(field, preset);\n }}\n endIcon={\n selected === preset ? (\n <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" fill=\"primary600\" />\n ) : null\n }\n >\n {formatMessage(PRESET_LABELS[preset])}\n </Menu.Item>\n ));\n };\n\n const typeLabel = formatMessage({\n id: getTranslationKey('list.filters.field.type'),\n defaultMessage: 'Type',\n });\n const selectDateRangeLabel = formatMessage({\n id: getTranslationKey('list.filters.select-date-range'),\n defaultMessage: 'Select date range',\n });\n\n return (\n <Menu.Root open={isOpen} onOpenChange={handleOpenChange}>\n {/* endIcon={null} drops the DS default chevron — the mock has none. */}\n <Menu.Trigger variant=\"tertiary\" startIcon={<FilterIcon aria-hidden />} endIcon={null}>\n <Flex gap={2} alignItems=\"center\" tag=\"span\">\n {formatMessage({\n id: getTranslationKey('list.filters.trigger'),\n defaultMessage: 'Filter',\n })}\n {filters.length > 0 && <CountBadge>{filters.length}</CountBadge>}\n </Flex>\n </Menu.Trigger>\n <Menu.Content\n popoverPlacement=\"bottom-start\"\n zIndex={2}\n maxHeight={PANEL_MAX_HEIGHT}\n width={isMobile ? MOBILE_PANEL_WIDTH : FILTER_PANEL_WIDTH}\n >\n {isMobile ? (\n // Mobile: one flat panel. Each field expands its options inline below\n // itself — Radix sub-menus can only fly out sideways, off a phone.\n <>\n <FieldToggle\n aria-expanded={openField === 'type'}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleField('type');\n }}\n endIcon={<Chevron $open={openField === 'type'} aria-hidden />}\n >\n {typeLabel}\n </FieldToggle>\n {openField === 'type' && <OptionGroup>{typeItems}</OptionGroup>}\n\n {(['createdAt', 'updatedAt'] as const).map((field) => (\n <Box key={field} width=\"100%\">\n <FieldToggle\n aria-expanded={openField === field}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleField(field);\n }}\n endIcon={<Chevron $open={openField === field} aria-hidden />}\n >\n {formatMessage(DATE_FIELD_LABELS[field])}\n </FieldToggle>\n {openField === field && (\n <OptionGroup>\n {presetItems(field)}\n {/* Only Creation date offers a range from the UI (design). */}\n {field === 'createdAt' && (\n <>\n <FieldToggle\n aria-expanded={rangeOpen}\n onSelect={(e: Event) => {\n e.preventDefault();\n setRangeOpen((open) => !open);\n }}\n endIcon={<Chevron $open={rangeOpen} aria-hidden />}\n >\n {selectDateRangeLabel}\n </FieldToggle>\n {rangeOpen && (\n <Box paddingLeft={2}>\n <DateRangeCalendar onSelect={addRange} />\n </Box>\n )}\n </>\n )}\n </OptionGroup>\n )}\n </Box>\n ))}\n </>\n ) : (\n <>\n <Menu.SubRoot>\n <FieldSubTrigger>{typeLabel}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight={PANEL_MAX_HEIGHT} width={FILTER_PANEL_WIDTH}>\n {typeItems}\n </SubPanel>\n </Menu.SubRoot>\n\n {(['createdAt', 'updatedAt'] as const).map((field) => (\n <Menu.SubRoot key={field}>\n <FieldSubTrigger>{formatMessage(DATE_FIELD_LABELS[field])}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight={PANEL_MAX_HEIGHT} width={FILTER_PANEL_WIDTH}>\n {presetItems(field)}\n {/* Design constraint: only Creation date offers a range from the\n UI. The URL codec and the badges support ranges on both date\n fields (`updated:rangeis:…` works when hand-crafted) so this\n stays a one-line change if design extends it later. */}\n {field === 'createdAt' && (\n <Menu.SubRoot>\n <FieldSubTrigger>{selectDateRangeLabel}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight=\"none\" width={FILTER_PANEL_WIDTH}>\n <DateRangeCalendar onSelect={addRange} />\n </SubPanel>\n </Menu.SubRoot>\n )}\n </SubPanel>\n </Menu.SubRoot>\n ))}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n"],"names":["TYPE_LABELS","folder","id","getTranslationKey","defaultMessage","picture","audio","video","document","PRESET_LABELS","DATE_FIELD_LABELS","createdAt","updatedAt","FieldSubTrigger","styled","Menu","SubTrigger","FILTER_PANEL_WIDTH","PANEL_MAX_HEIGHT","MOBILE_PANEL_WIDTH","FieldToggle","Item","OptionGroup","Box","theme","spaces","Chevron","ChevronDown","$open","SubPanel","SubContent","CountBadge","Badge","FilterMenu","listFilters","formatMessage","useIntl","trackUsage","useTracking","isOpen","setIsOpen","useState","filters","addFilter","updateFilter","removeFilter","trackFilter","filter","location","MEDIA_LIBRARY_LOCATION","lastTypeIndex","i","length","kind","lastTypeFilter","checkedValues","values","toggleTypeValue","value","isAdding","includes","nextValues","v","condition","addPreset","field","preset","f","mode","addRange","from","to","isMobile","useIsMobile","openField","setOpenField","rangeOpen","setRangeOpen","handleOpenChange","next","toggleField","current","typeItems","TYPE_VALUES","map","_jsx","role","aria-checked","onSelect","e","preventDefault","startIcon","Checkbox","checked","tabIndex","aria-hidden","selectedPresetForField","presetItems","selected","DATE_PRESETS","endIcon","Check","width","height","fill","typeLabel","selectDateRangeLabel","_jsxs","Root","open","onOpenChange","Trigger","variant","FilterIcon","Flex","gap","alignItems","tag","Content","popoverPlacement","zIndex","maxHeight","_Fragment","aria-expanded","paddingLeft","DateRangeCalendar","SubRoot"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FilterMenu.mjs","sources":["../../../../../admin/src/pages/Assets/components/FilterMenu.tsx"],"sourcesContent":["import { useState } from 'react';\n\nimport { useIsMobile } from '@strapi/admin/strapi-admin';\nimport { Badge, Box, Checkbox, Flex, Menu } from '@strapi/design-system';\nimport { Check, ChevronDown, Filter as FilterIcon } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useTracking, MEDIA_LIBRARY_LOCATION } from '../../../hooks/useTracking';\nimport { getTranslationKey } from '../../../utils/translations';\nimport {\n DATE_PRESETS,\n TYPE_VALUES,\n type DateField,\n type DatePreset,\n type ListFilters,\n type TypeValue,\n} from '../hooks/useListFilters';\n\nimport { DateRangeCalendar } from './DateRangeCalendar';\n\nimport type { MessageDescriptor } from 'react-intl';\n\nexport const TYPE_LABELS: Record<TypeValue, MessageDescriptor> = {\n folder: { id: getTranslationKey('list.filters.type.folder'), defaultMessage: 'Folder' },\n picture: { id: getTranslationKey('list.filters.type.picture'), defaultMessage: 'Picture' },\n audio: { id: getTranslationKey('list.filters.type.audio'), defaultMessage: 'Audio' },\n video: { id: getTranslationKey('list.filters.type.video'), defaultMessage: 'Video' },\n document: { id: getTranslationKey('list.filters.type.document'), defaultMessage: 'Document' },\n};\n\nexport const PRESET_LABELS: Record<DatePreset, MessageDescriptor> = {\n '1day': { id: getTranslationKey('list.filters.preset.1day'), defaultMessage: '1 day ago' },\n '3days': { id: getTranslationKey('list.filters.preset.3days'), defaultMessage: '3 days ago' },\n '1week': { id: getTranslationKey('list.filters.preset.1week'), defaultMessage: '1 week ago' },\n '1month': { id: getTranslationKey('list.filters.preset.1month'), defaultMessage: '1 month ago' },\n '3months': {\n id: getTranslationKey('list.filters.preset.3months'),\n defaultMessage: '3 months ago',\n },\n '6months': {\n id: getTranslationKey('list.filters.preset.6months'),\n defaultMessage: '6 months ago',\n },\n '1year': { id: getTranslationKey('list.filters.preset.1year'), defaultMessage: '1 year ago' },\n};\n\nexport const DATE_FIELD_LABELS: Record<DateField, MessageDescriptor> = {\n createdAt: {\n id: getTranslationKey('list.filters.field.created'),\n defaultMessage: 'Creation date',\n },\n updatedAt: {\n id: getTranslationKey('list.filters.field.updated'),\n defaultMessage: 'Last modified',\n },\n};\n\n// The DS SubTrigger renders its chevron inline right after the label — push it\n// to the far edge so every field row reads label · · · ›, like the mock.\nconst FieldSubTrigger = styled(Menu.SubTrigger)`\n width: 100%;\n justify-content: space-between;\n`;\n\n/** Every panel of the filter tree shares this fixed width (design). */\nexport const FILTER_PANEL_WIDTH = '24.2rem';\n\n// dvh, not vh: on a phone `vh` ignores the browser chrome, so a 70vh panel can\n// extend past the visual viewport and leave its lower rows (the last field, and\n// anything under the date-range calendar) stranded under the URL bar with no way\n// to scroll to them. Same reason the drawer caps on dvh.\nconst PANEL_MAX_HEIGHT = '70dvh';\n\n// Mobile uses one flat panel (accordion), so it never needs room for a side\n// flyout — cap it to the viewport so it can't overflow a narrow screen.\nconst MOBILE_PANEL_WIDTH = `min(${FILTER_PANEL_WIDTH}, calc(100dvw - 2rem))`;\n\n// Mobile accordion: the field row is a plain menu item that expands its options\n// inline below it (Radix sub-menus can only fly out sideways, off a phone).\nconst FieldToggle = styled(Menu.Item)`\n width: 100%;\n`;\n\n// The options revealed under a field row.\n//\n// `width: 100%` is load-bearing: Menu.Content is a column flex with\n// `align-items: flex-start`, so a child shrink-wraps to its content unless it\n// sets a width explicitly. Without it the group collapsed to the widest option\n// label and the rows' own `width: 100%` resolved against that, so a selected row\n// highlighted only part of the panel.\n//\n// The indent then lives on each row's padding rather than on this wrapper —\n// padding here would inset the rows, and the highlight with them.\nconst OptionGroup = styled(Box)`\n width: 100%;\n\n > * {\n width: 100%;\n }\n\n /* menuitem, menuitemradio and menuitemcheckbox — every option row, plus the\n \"Select date range\" toggle, which sits at the same level. */\n > [role^='menuitem'] {\n padding-left: ${({ theme }) => theme.spaces[6]};\n }\n`;\n\n// Rotates the chevron when its section is open.\nconst Chevron = styled(ChevronDown)<{ $open: boolean }>`\n transition: transform 0.2s ease;\n transform: rotate(${({ $open }) => ($open ? '180deg' : '0deg')});\n`;\n\n// Sub panels: fixed width, no 15rem clamp (the DS default folds the calendar),\n// and a negative top margin cancelling the parent panel's padding + border so\n// the sub panel's top edge lines up with the parent panel, not the item.\nconst SubPanel = styled(Menu.SubContent)`\n margin-top: calc(-1 * (${({ theme }) => theme.spaces[1]} + 1px));\n`;\n\nconst CountBadge = styled(Badge)`\n height: 1.6rem;\n min-width: auto;\n padding: 0 0.4rem;\n`;\n\ninterface FilterMenuProps {\n listFilters: ListFilters;\n}\n\n/**\n * Toolbar \"Filter\" dropdown. Picking anything ADDS a badge (editing happens on\n * the badge itself, see FilterBadges):\n *\n * - Type → keep-open checkbox list; the badge is created/updated live with the\n * checked set (`is` by default, condition editable on the badge).\n * - Creation date / Last modified → preset list (single pick, `within the\n * last` by default) + \"Select date range\" (creation date only) opening the\n * range calendar; a completed range adds an `is` range badge.\n *\n * Closing behaviour follows how many values a field can hold: a date is one\n * value, so picking a preset (or committing a range) closes the menu; Type is a\n * set, so it stays open until dismissed.\n */\nexport const FilterMenu = ({ listFilters }: FilterMenuProps) => {\n const { formatMessage } = useIntl();\n const { trackUsage } = useTracking();\n const [isOpen, setIsOpen] = useState(false);\n const { filters, addFilter, updateFilter, removeFilter } = listFilters;\n\n // Fired whenever a filter facet is turned on (not on removal). `filter` names\n // the facet, mirroring the legacy field-key payload.\n const trackFilter = (filter: string) =>\n trackUsage('didFilterMediaLibraryElements', { location: MEDIA_LIBRARY_LOCATION, filter });\n\n // The Type submenu edits the LAST type badge in place while the menu stays\n // open (checking values accumulates into one badge, per design).\n let lastTypeIndex = -1;\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n if (filters[i].kind === 'type') {\n lastTypeIndex = i;\n break;\n }\n }\n const lastTypeFilter = lastTypeIndex >= 0 ? filters[lastTypeIndex] : null;\n const checkedValues =\n lastTypeFilter && lastTypeFilter.kind === 'type' ? lastTypeFilter.values : [];\n\n const toggleTypeValue = (value: TypeValue) => {\n const isAdding = !checkedValues.includes(value);\n const nextValues = isAdding\n ? [...checkedValues, value]\n : checkedValues.filter((v) => v !== value);\n\n if (isAdding) {\n trackFilter('type');\n }\n\n if (lastTypeFilter && lastTypeFilter.kind === 'type') {\n if (nextValues.length === 0) {\n // Unchecking the final value removes the badge outright — a type\n // filter with no values is not a state (it would serialize to a\n // malformed `type:is:` the parser drops anyway).\n removeFilter(lastTypeIndex);\n } else {\n updateFilter(lastTypeIndex, { ...lastTypeFilter, values: nextValues });\n }\n } else if (nextValues.length > 0) {\n addFilter({ kind: 'type', condition: 'is', values: nextValues });\n }\n };\n\n // Creation date / Last modified are single-select (per design): selecting a\n // preset replaces the field's existing preset badge in place (keeping its\n // condition) rather than adding another pill; a badge is created only when the\n // field has none yet.\n const addPreset = (field: DateField, preset: DatePreset) => {\n // Fired before the replace path returns: swapping a field's preset is still\n // the user filtering, same as adding the badge in the first place.\n trackFilter(field);\n\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n const f = filters[i];\n if (f.kind === 'date' && f.mode === 'preset' && f.field === field) {\n updateFilter(i, { ...f, preset });\n return;\n }\n }\n\n addFilter({ kind: 'date', field, mode: 'preset', condition: 'withinLast', preset });\n };\n\n const addRange = (from: string, to: string) => {\n trackFilter('createdAt');\n addFilter({ kind: 'date', field: 'createdAt', mode: 'range', condition: 'is', from, to });\n // The calendar is not a Menu.Item — close the menu explicitly on commit.\n setIsOpen(false);\n };\n\n const isMobile = useIsMobile();\n // Mobile accordion state: which field is expanded, and whether its date-range\n // calendar is open. Both reset when the whole menu closes.\n const [openField, setOpenField] = useState<'type' | 'createdAt' | 'updatedAt' | null>(null);\n const [rangeOpen, setRangeOpen] = useState(false);\n\n const handleOpenChange = (next: boolean) => {\n setIsOpen(next);\n if (!next) {\n setOpenField(null);\n setRangeOpen(false);\n }\n };\n\n const toggleField = (field: 'type' | 'createdAt' | 'updatedAt') => {\n setOpenField((current) => (current === field ? null : field));\n setRangeOpen(false);\n };\n\n // Option lists, shared by the desktop flyouts and the mobile accordion.\n // Multi-select semantics: menuitemcheckbox + aria-checked carry the state for\n // assistive tech; the Checkbox is purely decorative (aria-hidden, unfocusable)\n // — the Menu.Item is the control.\n const typeItems = TYPE_VALUES.map((value) => (\n <Menu.Item\n key={value}\n role=\"menuitemcheckbox\"\n aria-checked={checkedValues.includes(value)}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleTypeValue(value);\n }}\n startIcon={<Checkbox checked={checkedValues.includes(value)} tabIndex={-1} aria-hidden />}\n >\n {formatMessage(TYPE_LABELS[value])}\n </Menu.Item>\n ));\n\n // The field's currently-selected preset (single-select), so the menu can mark\n // it with a check.\n const selectedPresetForField = (field: DateField): DatePreset | null => {\n for (let i = filters.length - 1; i >= 0; i -= 1) {\n const f = filters[i];\n if (f.kind === 'date' && f.mode === 'preset' && f.field === field) {\n return f.preset;\n }\n }\n return null;\n };\n\n const presetItems = (field: DateField) => {\n const selected = selectedPresetForField(field);\n\n return DATE_PRESETS.map((preset) => (\n <Menu.Item\n key={preset}\n role=\"menuitemradio\"\n aria-checked={selected === preset}\n onSelect={() => {\n // No preventDefault, unlike Type: a date field holds exactly one\n // value, so the pick is complete and the menu closes on it. Type stays\n // open because the user may still be building up a multi-value set.\n addPreset(field, preset);\n }}\n endIcon={\n selected === preset ? (\n <Check aria-hidden width=\"1.6rem\" height=\"1.6rem\" fill=\"primary600\" />\n ) : null\n }\n >\n {formatMessage(PRESET_LABELS[preset])}\n </Menu.Item>\n ));\n };\n\n const typeLabel = formatMessage({\n id: getTranslationKey('list.filters.field.type'),\n defaultMessage: 'Type',\n });\n const selectDateRangeLabel = formatMessage({\n id: getTranslationKey('list.filters.select-date-range'),\n defaultMessage: 'Select date range',\n });\n\n return (\n <Menu.Root open={isOpen} onOpenChange={handleOpenChange}>\n {/* endIcon={null} drops the DS default chevron — the mock has none. */}\n <Menu.Trigger variant=\"tertiary\" startIcon={<FilterIcon aria-hidden />} endIcon={null}>\n <Flex gap={2} alignItems=\"center\" tag=\"span\">\n {formatMessage({\n id: getTranslationKey('list.filters.trigger'),\n defaultMessage: 'Filter',\n })}\n {filters.length > 0 && <CountBadge>{filters.length}</CountBadge>}\n </Flex>\n </Menu.Trigger>\n <Menu.Content\n popoverPlacement=\"bottom-start\"\n zIndex={2}\n maxHeight={PANEL_MAX_HEIGHT}\n width={isMobile ? MOBILE_PANEL_WIDTH : FILTER_PANEL_WIDTH}\n >\n {isMobile ? (\n // Mobile: one flat panel. Each field expands its options inline below\n // itself — Radix sub-menus can only fly out sideways, off a phone.\n <>\n <FieldToggle\n aria-expanded={openField === 'type'}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleField('type');\n }}\n endIcon={<Chevron $open={openField === 'type'} aria-hidden />}\n >\n {typeLabel}\n </FieldToggle>\n {openField === 'type' && <OptionGroup>{typeItems}</OptionGroup>}\n\n {(['createdAt', 'updatedAt'] as const).map((field) => (\n <Box key={field} width=\"100%\">\n <FieldToggle\n aria-expanded={openField === field}\n onSelect={(e: Event) => {\n e.preventDefault();\n toggleField(field);\n }}\n endIcon={<Chevron $open={openField === field} aria-hidden />}\n >\n {formatMessage(DATE_FIELD_LABELS[field])}\n </FieldToggle>\n {openField === field && (\n <OptionGroup>\n {presetItems(field)}\n {/* Only Creation date offers a range from the UI (design). */}\n {field === 'createdAt' && (\n <>\n <FieldToggle\n aria-expanded={rangeOpen}\n onSelect={(e: Event) => {\n e.preventDefault();\n setRangeOpen((open) => !open);\n }}\n endIcon={<Chevron $open={rangeOpen} aria-hidden />}\n >\n {selectDateRangeLabel}\n </FieldToggle>\n {rangeOpen && (\n <Box paddingLeft={2}>\n <DateRangeCalendar onSelect={addRange} />\n </Box>\n )}\n </>\n )}\n </OptionGroup>\n )}\n </Box>\n ))}\n </>\n ) : (\n <>\n <Menu.SubRoot>\n <FieldSubTrigger>{typeLabel}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight={PANEL_MAX_HEIGHT} width={FILTER_PANEL_WIDTH}>\n {typeItems}\n </SubPanel>\n </Menu.SubRoot>\n\n {(['createdAt', 'updatedAt'] as const).map((field) => (\n <Menu.SubRoot key={field}>\n <FieldSubTrigger>{formatMessage(DATE_FIELD_LABELS[field])}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight={PANEL_MAX_HEIGHT} width={FILTER_PANEL_WIDTH}>\n {presetItems(field)}\n {/* Design constraint: only Creation date offers a range from the\n UI. The URL codec and the badges support ranges on both date\n fields (`updated:rangeis:…` works when hand-crafted) so this\n stays a one-line change if design extends it later. */}\n {field === 'createdAt' && (\n <Menu.SubRoot>\n <FieldSubTrigger>{selectDateRangeLabel}</FieldSubTrigger>\n <SubPanel zIndex={2} maxHeight=\"none\" width={FILTER_PANEL_WIDTH}>\n <DateRangeCalendar onSelect={addRange} />\n </SubPanel>\n </Menu.SubRoot>\n )}\n </SubPanel>\n </Menu.SubRoot>\n ))}\n </>\n )}\n </Menu.Content>\n </Menu.Root>\n );\n};\n"],"names":["TYPE_LABELS","folder","id","getTranslationKey","defaultMessage","picture","audio","video","document","PRESET_LABELS","DATE_FIELD_LABELS","createdAt","updatedAt","FieldSubTrigger","styled","Menu","SubTrigger","FILTER_PANEL_WIDTH","PANEL_MAX_HEIGHT","MOBILE_PANEL_WIDTH","FieldToggle","Item","OptionGroup","Box","theme","spaces","Chevron","ChevronDown","$open","SubPanel","SubContent","CountBadge","Badge","FilterMenu","listFilters","formatMessage","useIntl","trackUsage","useTracking","isOpen","setIsOpen","useState","filters","addFilter","updateFilter","removeFilter","trackFilter","filter","location","MEDIA_LIBRARY_LOCATION","lastTypeIndex","i","length","kind","lastTypeFilter","checkedValues","values","toggleTypeValue","value","isAdding","includes","nextValues","v","condition","addPreset","field","preset","f","mode","addRange","from","to","isMobile","useIsMobile","openField","setOpenField","rangeOpen","setRangeOpen","handleOpenChange","next","toggleField","current","typeItems","TYPE_VALUES","map","_jsx","role","aria-checked","onSelect","e","preventDefault","startIcon","Checkbox","checked","tabIndex","aria-hidden","selectedPresetForField","presetItems","selected","DATE_PRESETS","endIcon","Check","width","height","fill","typeLabel","selectDateRangeLabel","_jsxs","Root","open","onOpenChange","Trigger","variant","FilterIcon","Flex","gap","alignItems","tag","Content","popoverPlacement","zIndex","maxHeight","_Fragment","aria-expanded","paddingLeft","DateRangeCalendar","SubRoot"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FolderActionsMenu.js","sources":["../../../../../admin/src/pages/Assets/components/FolderActionsMenu.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\n\nimport { useClipboard, useNotification } from '@strapi/admin/strapi-admin';\nimport { IconButton, Menu } from '@strapi/design-system';\nimport { ArrowRight, Link, More, Pencil, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { getTranslationKey } from '../../../utils/translations';\nimport { useAssetSelection } from '../hooks/useAssetSelection';\nimport { folderKey } from '../utils/selection';\n\nimport { ActionsMenuContent } from './ActionsMenuContent';\nimport { BulkMoveDialog } from './BulkMoveDialog';\nimport { DeleteItemsDialog } from './DeleteItemsDialog';\nimport { FolderFormDialog } from './FolderFormDialog';\n\nimport type { Folder } from '../../../../../shared/contracts/folders';\nimport type { DragFolderData } from '../../../types/dnd';\n\ninterface FolderActionsMenuProps {\n folder: Folder;\n /** Drag data for this folder, so the move dialog validates against its real parent. */\n dragData: DragFolderData;\n}\n\n/**\n * The \"...\" menu on a folder row/card. Always acts on that one folder, whatever\n * the current multi-selection is (the bulk actions bar is the selection-scoped\n * affordance). It reuses the shared move and delete dialogs, which mount only\n * while open.\n *\n * A successful move or delete deselects this one folder and leaves the rest of\n * the selection intact: they only invalidate RTK tags, so without it a\n * `folder:<id>` key for a folder that no longer lives where the selection thinks\n * it does would linger. A rename leaves the id valid and the folder in place, so\n * it touches the selection not at all.\n */\nexport const FolderActionsMenu = ({ folder, dragData }: FolderActionsMenuProps) => {\n const { formatMessage } = useIntl();\n const { copy } = useClipboard();\n const { toggleNotification } = useNotification();\n const { deselect } = useAssetSelection();\n const [isRenameOpen, setIsRenameOpen] = useState(false);\n const [isMoveOpen, setIsMoveOpen] = useState(false);\n const [isDeleteOpen, setIsDeleteOpen] = useState(false);\n\n // Stable identity: the move dialog memoizes its destination walk on it.\n const moveItems = useMemo(() => [dragData], [dragData]);\n\n // Built from window.location so the link inherits whatever path the library is\n // mounted at. Every other query param (search, sort, open drawer) is dropped —\n // this is a clean deep-link to the folder.\n const handleCopyLink = async () => {\n const url = `${window.location.origin}${window.location.pathname}?folder=${folder.id}`;\n const didCopy = await copy(url);\n\n toggleNotification({\n type: didCopy ? 'success' : 'danger',\n message: formatMessage(\n didCopy\n ? {\n id: getTranslationKey('list.folder.actions.copy-link.success'),\n defaultMessage: 'Folder link copied.',\n }\n : {\n id: getTranslationKey('list.folder.actions.copy-link.error'),\n defaultMessage: 'Failed to copy the folder link.',\n }\n ),\n });\n };\n\n return (\n <>\n {/* See AssetActionsMenu: non-modal so clicking another row's trigger\n closes this menu and opens that one in a single click. */}\n <Menu.Root modal={false}>\n <Menu.Trigger\n tag={IconButton}\n icon={<More />}\n variant=\"ghost\"\n label={formatMessage({\n id: getTranslationKey('control-card.more-actions'),\n defaultMessage: 'More actions',\n })}\n />\n {/* See ActionsMenuContent: the design system's 15rem default clamps the\n menu against a hidden scrollbar, so items can be silently cut off\n near the viewport edge. This one is shorter, but kept in sync. */}\n <ActionsMenuContent popoverPlacement=\"bottom-end\" zIndex={2} minWidth=\"22rem\">\n <Menu.Item startIcon={<Link />} onSelect={handleCopyLink}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.copy-link'),\n defaultMessage: 'Copy link to folder',\n })}\n </Menu.Item>\n <Menu.Separator />\n {/* TODO: gate Rename, Move and Delete on `assets.canUpdate` CMS-387 */}\n <Menu.Item startIcon={<Pencil />} onSelect={() => setIsRenameOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.rename'),\n defaultMessage: 'Rename folder',\n })}\n </Menu.Item>\n <Menu.Item startIcon={<ArrowRight />} onSelect={() => setIsMoveOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.move'),\n defaultMessage: 'Move to folder',\n })}\n </Menu.Item>\n <Menu.Item startIcon={<Trash />} variant=\"danger\" onSelect={() => setIsDeleteOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.delete'),\n defaultMessage: 'Delete folder',\n })}\n </Menu.Item>\n </ActionsMenuContent>\n </Menu.Root>\n {/* These dialogs live inside the row, so a background refetch that drops\n the row would take an open dialog with it. Nothing invalidates until\n the mutation resolves, and the dialog closes in the same tick, so the\n flows themselves can't trigger it. */}\n {isRenameOpen && (\n <FolderFormDialog\n open\n mode=\"rename\"\n folderId={folder.id}\n initialName={folder.name}\n parentFolderId={dragData.parentId}\n onClose={() => setIsRenameOpen(false)}\n />\n )}\n {isMoveOpen && (\n <BulkMoveDialog\n open\n onClose={() => setIsMoveOpen(false)}\n items={moveItems}\n onSuccess={() => deselect(folderKey(folder.id))}\n />\n )}\n {isDeleteOpen && (\n <DeleteItemsDialog\n open\n onClose={() => setIsDeleteOpen(false)}\n target={{ fileIds: [], folderIds: [folder.id] }}\n onSuccess={() => deselect(folderKey(folder.id))}\n />\n )}\n </>\n );\n};\n"],"names":["FolderActionsMenu","folder","dragData","formatMessage","useIntl","copy","useClipboard","toggleNotification","useNotification","deselect","useAssetSelection","isRenameOpen","setIsRenameOpen","useState","isMoveOpen","setIsMoveOpen","isDeleteOpen","setIsDeleteOpen","moveItems","useMemo","handleCopyLink","url","window","location","origin","pathname","id","didCopy","type","message","getTranslationKey","defaultMessage","_jsxs","_Fragment","Menu","Root","modal","_jsx","Trigger","tag","IconButton","icon","More","variant","label","ActionsMenuContent","popoverPlacement","zIndex","minWidth","Item","startIcon","Link","onSelect","Separator","Pencil","ArrowRight","Trash","FolderFormDialog","open","mode","folderId","initialName","name","parentFolderId","parentId","onClose","BulkMoveDialog","items","onSuccess","folderKey","DeleteItemsDialog","target","fileIds","folderIds"],"mappings":";;;;;;;;;;;;;;;;AAyBA;;;;;;;;;;;UAYaA,iBAAAA,GAAoB,CAAC,EAAEC,MAAM,EAAEC,QAAQ,EAA0B,GAAA;IAC5E,MAAM,EAAEC,aAAa,EAAE,GAAGC,iBAAAA,EAAAA;IAC1B,MAAM,EAAEC,IAAI,EAAE,GAAGC,wBAAAA,EAAAA;IACjB,MAAM,EAAEC,kBAAkB,EAAE,GAAGC,2BAAAA,EAAAA;IAC/B,MAAM,EAAEC,QAAQ,EAAE,GAAGC,mCAAAA,EAAAA;AACrB,IAAA,MAAM,CAACC,YAAAA,EAAcC,eAAAA,CAAgB,GAAGC,cAAAA,CAAS,KAAA,CAAA;AACjD,IAAA,MAAM,CAACC,UAAAA,EAAYC,aAAAA,CAAc,GAAGF,cAAAA,CAAS,KAAA,CAAA;AAC7C,IAAA,MAAM,CAACG,YAAAA,EAAcC,eAAAA,CAAgB,GAAGJ,cAAAA,CAAS,KAAA,CAAA;;IAGjD,MAAMK,SAAAA,GAAYC,cAAQ,IAAM;AAACjB,YAAAA;SAAS,EAAE;AAACA,QAAAA;AAAS,KAAA,CAAA;;;;AAKtD,IAAA,MAAMkB,cAAAA,GAAiB,UAAA;AACrB,QAAA,MAAMC,MAAM,CAAA,EAAGC,MAAAA,CAAOC,QAAQ,CAACC,MAAM,CAAA,EAAGF,MAAAA,CAAOC,QAAQ,CAACE,QAAQ,CAAC,QAAQ,EAAExB,MAAAA,CAAOyB,EAAE,CAAA,CAAE;QACtF,MAAMC,OAAAA,GAAU,MAAMtB,IAAAA,CAAKgB,GAAAA,CAAAA;QAE3Bd,kBAAAA,CAAmB;AACjBqB,YAAAA,IAAAA,EAAMD,UAAU,SAAA,GAAY,QAAA;AAC5BE,YAAAA,OAAAA,EAAS1B,cACPwB,OAAAA,GACI;AACED,gBAAAA,EAAAA,EAAII,8BAAAA,CAAkB,uCAAA,CAAA;gBACtBC,cAAAA,EAAgB;aAClB,GACA;AACEL,gBAAAA,EAAAA,EAAII,8BAAAA,CAAkB,qCAAA,CAAA;gBACtBC,cAAAA,EAAgB;AAClB,aAAA;AAER,SAAA,CAAA;AACF,IAAA,CAAA;IAEA,qBACEC,eAAA,CAAAC,mBAAA,EAAA;;AAGE,0BAAAD,eAAA,CAACE,kBAAKC,IAAI,EAAA;gBAACC,KAAAA,EAAO,KAAA;;AAChB,kCAAAC,cAAA,CAACH,kBAAKI,OAAO,EAAA;wBACXC,GAAAA,EAAKC,uBAAAA;AACLC,wBAAAA,IAAAA,gBAAMJ,cAAA,CAACK,UAAAA,EAAAA,EAAAA,CAAAA;wBACPC,OAAAA,EAAQ,OAAA;AACRC,wBAAAA,KAAAA,EAAOzC,aAAAA,CAAc;AACnBuB,4BAAAA,EAAAA,EAAII,8BAAAA,CAAkB,2BAAA,CAAA;4BACtBC,cAAAA,EAAgB;AAClB,yBAAA;;kCAKFC,eAAA,CAACa,qCAAAA,EAAAA;wBAAmBC,gBAAAA,EAAiB,YAAA;wBAAaC,MAAAA,EAAQ,CAAA;wBAAGC,QAAAA,EAAS,OAAA;;AACpE,0CAAAX,cAAA,CAACH,kBAAKe,IAAI,EAAA;AAACC,gCAAAA,SAAAA,gBAAWb,cAAA,CAACc,UAAAA,EAAAA,EAAAA,CAAAA;gCAASC,QAAAA,EAAUhC,cAAAA;0CACvCjB,aAAAA,CAAc;AACbuB,oCAAAA,EAAAA,EAAII,8BAAAA,CAAkB,+BAAA,CAAA;oCACtBC,cAAAA,EAAgB;AAClB,iCAAA;;AAEF,0CAAAM,cAAA,CAACH,kBAAKmB,SAAS,EAAA,EAAA,CAAA;AAEf,0CAAAhB,cAAA,CAACH,kBAAKe,IAAI,EAAA;AAACC,gCAAAA,SAAAA,gBAAWb,cAAA,CAACiB,YAAAA,EAAAA,EAAAA,CAAAA;AAAWF,gCAAAA,QAAAA,EAAU,IAAMxC,eAAAA,CAAgB,IAAA,CAAA;0CAC/DT,aAAAA,CAAc;AACbuB,oCAAAA,EAAAA,EAAII,8BAAAA,CAAkB,4BAAA,CAAA;oCACtBC,cAAAA,EAAgB;AAClB,iCAAA;;AAEF,0CAAAM,cAAA,CAACH,kBAAKe,IAAI,EAAA;AAACC,gCAAAA,SAAAA,gBAAWb,cAAA,CAACkB,gBAAAA,EAAAA,EAAAA,CAAAA;AAAeH,gCAAAA,QAAAA,EAAU,IAAMrC,aAAAA,CAAc,IAAA,CAAA;0CACjEZ,aAAAA,CAAc;AACbuB,oCAAAA,EAAAA,EAAII,8BAAAA,CAAkB,0BAAA,CAAA;oCACtBC,cAAAA,EAAgB;AAClB,iCAAA;;AAEF,0CAAAM,cAAA,CAACH,kBAAKe,IAAI,EAAA;AAACC,gCAAAA,SAAAA,gBAAWb,cAAA,CAACmB,WAAAA,EAAAA,EAAAA,CAAAA;gCAAUb,OAAAA,EAAQ,QAAA;AAASS,gCAAAA,QAAAA,EAAU,IAAMnC,eAAAA,CAAgB,IAAA,CAAA;0CAC/Ed,aAAAA,CAAc;AACbuB,oCAAAA,EAAAA,EAAII,8BAAAA,CAAkB,4BAAA,CAAA;oCACtBC,cAAAA,EAAgB;AAClB,iCAAA;;;;;;AAQLpB,YAAAA,YAAAA,kBACC0B,cAAA,CAACoB,iCAAAA,EAAAA;gBACCC,IAAI,EAAA,IAAA;gBACJC,IAAAA,EAAK,QAAA;AACLC,gBAAAA,QAAAA,EAAU3D,OAAOyB,EAAE;AACnBmC,gBAAAA,WAAAA,EAAa5D,OAAO6D,IAAI;AACxBC,gBAAAA,cAAAA,EAAgB7D,SAAS8D,QAAQ;AACjCC,gBAAAA,OAAAA,EAAS,IAAMrD,eAAAA,CAAgB,KAAA;;AAGlCE,YAAAA,UAAAA,kBACCuB,cAAA,CAAC6B,6BAAAA,EAAAA;gBACCR,IAAI,EAAA,IAAA;AACJO,gBAAAA,OAAAA,EAAS,IAAMlD,aAAAA,CAAc,KAAA,CAAA;gBAC7BoD,KAAAA,EAAOjD,SAAAA;AACPkD,gBAAAA,SAAAA,EAAW,IAAM3D,QAAAA,CAAS4D,mBAAAA,CAAUpE,MAAAA,CAAOyB,EAAE,CAAA;;AAGhDV,YAAAA,YAAAA,kBACCqB,cAAA,CAACiC,mCAAAA,EAAAA;gBACCZ,IAAI,EAAA,IAAA;AACJO,gBAAAA,OAAAA,EAAS,IAAMhD,eAAAA,CAAgB,KAAA,CAAA;gBAC/BsD,MAAAA,EAAQ;AAAEC,oBAAAA,OAAAA,EAAS,EAAE;oBAAEC,SAAAA,EAAW;AAACxE,wBAAAA,MAAAA,CAAOyB;AAAG;AAAC,iBAAA;AAC9C0C,gBAAAA,SAAAA,EAAW,IAAM3D,QAAAA,CAAS4D,mBAAAA,CAAUpE,MAAAA,CAAOyB,EAAE,CAAA;;;;AAKvD;;;;"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FolderActionsMenu.mjs","sources":["../../../../../admin/src/pages/Assets/components/FolderActionsMenu.tsx"],"sourcesContent":["import { useMemo, useState } from 'react';\n\nimport { useClipboard, useNotification } from '@strapi/admin/strapi-admin';\nimport { IconButton, Menu } from '@strapi/design-system';\nimport { ArrowRight, Link, More, Pencil, Trash } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\n\nimport { getTranslationKey } from '../../../utils/translations';\nimport { useAssetSelection } from '../hooks/useAssetSelection';\nimport { folderKey } from '../utils/selection';\n\nimport { ActionsMenuContent } from './ActionsMenuContent';\nimport { BulkMoveDialog } from './BulkMoveDialog';\nimport { DeleteItemsDialog } from './DeleteItemsDialog';\nimport { FolderFormDialog } from './FolderFormDialog';\n\nimport type { Folder } from '../../../../../shared/contracts/folders';\nimport type { DragFolderData } from '../../../types/dnd';\n\ninterface FolderActionsMenuProps {\n folder: Folder;\n /** Drag data for this folder, so the move dialog validates against its real parent. */\n dragData: DragFolderData;\n}\n\n/**\n * The \"...\" menu on a folder row/card. Always acts on that one folder, whatever\n * the current multi-selection is (the bulk actions bar is the selection-scoped\n * affordance). It reuses the shared move and delete dialogs, which mount only\n * while open.\n *\n * A successful move or delete deselects this one folder and leaves the rest of\n * the selection intact: they only invalidate RTK tags, so without it a\n * `folder:<id>` key for a folder that no longer lives where the selection thinks\n * it does would linger. A rename leaves the id valid and the folder in place, so\n * it touches the selection not at all.\n */\nexport const FolderActionsMenu = ({ folder, dragData }: FolderActionsMenuProps) => {\n const { formatMessage } = useIntl();\n const { copy } = useClipboard();\n const { toggleNotification } = useNotification();\n const { deselect } = useAssetSelection();\n const [isRenameOpen, setIsRenameOpen] = useState(false);\n const [isMoveOpen, setIsMoveOpen] = useState(false);\n const [isDeleteOpen, setIsDeleteOpen] = useState(false);\n\n // Stable identity: the move dialog memoizes its destination walk on it.\n const moveItems = useMemo(() => [dragData], [dragData]);\n\n // Built from window.location so the link inherits whatever path the library is\n // mounted at. Every other query param (search, sort, open drawer) is dropped —\n // this is a clean deep-link to the folder.\n const handleCopyLink = async () => {\n const url = `${window.location.origin}${window.location.pathname}?folder=${folder.id}`;\n const didCopy = await copy(url);\n\n toggleNotification({\n type: didCopy ? 'success' : 'danger',\n message: formatMessage(\n didCopy\n ? {\n id: getTranslationKey('list.folder.actions.copy-link.success'),\n defaultMessage: 'Folder link copied.',\n }\n : {\n id: getTranslationKey('list.folder.actions.copy-link.error'),\n defaultMessage: 'Failed to copy the folder link.',\n }\n ),\n });\n };\n\n return (\n <>\n {/* See AssetActionsMenu: non-modal so clicking another row's trigger\n closes this menu and opens that one in a single click. */}\n <Menu.Root modal={false}>\n <Menu.Trigger\n tag={IconButton}\n icon={<More />}\n variant=\"ghost\"\n label={formatMessage({\n id: getTranslationKey('control-card.more-actions'),\n defaultMessage: 'More actions',\n })}\n />\n {/* See ActionsMenuContent: the design system's 15rem default clamps the\n menu against a hidden scrollbar, so items can be silently cut off\n near the viewport edge. This one is shorter, but kept in sync. */}\n <ActionsMenuContent popoverPlacement=\"bottom-end\" zIndex={2} minWidth=\"22rem\">\n <Menu.Item startIcon={<Link />} onSelect={handleCopyLink}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.copy-link'),\n defaultMessage: 'Copy link to folder',\n })}\n </Menu.Item>\n <Menu.Separator />\n {/* TODO: gate Rename, Move and Delete on `assets.canUpdate` CMS-387 */}\n <Menu.Item startIcon={<Pencil />} onSelect={() => setIsRenameOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.rename'),\n defaultMessage: 'Rename folder',\n })}\n </Menu.Item>\n <Menu.Item startIcon={<ArrowRight />} onSelect={() => setIsMoveOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.move'),\n defaultMessage: 'Move to folder',\n })}\n </Menu.Item>\n <Menu.Item startIcon={<Trash />} variant=\"danger\" onSelect={() => setIsDeleteOpen(true)}>\n {formatMessage({\n id: getTranslationKey('list.folder.actions.delete'),\n defaultMessage: 'Delete folder',\n })}\n </Menu.Item>\n </ActionsMenuContent>\n </Menu.Root>\n {/* These dialogs live inside the row, so a background refetch that drops\n the row would take an open dialog with it. Nothing invalidates until\n the mutation resolves, and the dialog closes in the same tick, so the\n flows themselves can't trigger it. */}\n {isRenameOpen && (\n <FolderFormDialog\n open\n mode=\"rename\"\n folderId={folder.id}\n initialName={folder.name}\n parentFolderId={dragData.parentId}\n onClose={() => setIsRenameOpen(false)}\n />\n )}\n {isMoveOpen && (\n <BulkMoveDialog\n open\n onClose={() => setIsMoveOpen(false)}\n items={moveItems}\n onSuccess={() => deselect(folderKey(folder.id))}\n />\n )}\n {isDeleteOpen && (\n <DeleteItemsDialog\n open\n onClose={() => setIsDeleteOpen(false)}\n target={{ fileIds: [], folderIds: [folder.id] }}\n onSuccess={() => deselect(folderKey(folder.id))}\n />\n )}\n </>\n );\n};\n"],"names":["FolderActionsMenu","folder","dragData","formatMessage","useIntl","copy","useClipboard","toggleNotification","useNotification","deselect","useAssetSelection","isRenameOpen","setIsRenameOpen","useState","isMoveOpen","setIsMoveOpen","isDeleteOpen","setIsDeleteOpen","moveItems","useMemo","handleCopyLink","url","window","location","origin","pathname","id","didCopy","type","message","getTranslationKey","defaultMessage","_jsxs","_Fragment","Menu","Root","modal","_jsx","Trigger","tag","IconButton","icon","More","variant","label","ActionsMenuContent","popoverPlacement","zIndex","minWidth","Item","startIcon","Link","onSelect","Separator","Pencil","ArrowRight","Trash","FolderFormDialog","open","mode","folderId","initialName","name","parentFolderId","parentId","onClose","BulkMoveDialog","items","onSuccess","folderKey","DeleteItemsDialog","target","fileIds","folderIds"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FolderFormDialog.js","sources":["../../../../../admin/src/pages/Assets/components/FolderFormDialog.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { useNotification } from '@strapi/admin/strapi-admin';\nimport { Button, Field, Flex, Modal, TextInput } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useTracking, MEDIA_LIBRARY_LOCATION } from '../../../hooks/useTracking';\nimport { useCreateFolderMutation, useUpdateFolderMutation } from '../../../services/folders';\nimport { getTranslationKey } from '../../../utils/translations';\n\ninterface FolderFormDialogBaseProps {\n open: boolean;\n onClose: () => void;\n /** Sent as `parent`. Create: the folder being created in. Rename: the folder's existing parent. */\n parentFolderId: number | null;\n}\n\ntype FolderFormDialogProps = FolderFormDialogBaseProps &\n (\n | { mode: 'create'; parentFolderName: string }\n | { mode: 'rename'; folderId: number; initialName: string }\n );\n\nconst StyledModalContent = styled(Modal.Content)`\n max-width: 51.6rem;\n`;\n\nexport const FolderFormDialog = (props: FolderFormDialogProps) => {\n const { open, parentFolderId, onClose, mode } = props;\n const initialName = props.mode === 'rename' ? props.initialName : '';\n\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { trackUsage } = useTracking();\n const [name, setName] = useState(initialName);\n const [fieldError, setFieldError] = useState<string | undefined>();\n const inputRef = useRef<HTMLInputElement>(null);\n const [createFolder, { isLoading: isCreating }] = useCreateFolderMutation();\n const [updateFolder, { isLoading: isUpdating }] = useUpdateFolderMutation();\n\n const isLoading = mode === 'rename' ? isUpdating : isCreating;\n\n useEffect(() => {\n if (open) {\n setName(initialName);\n setFieldError(undefined);\n\n // Renaming starts from the current name, so select it: typing replaces\n // the whole thing, as in Finder / VS Code / GitHub.\n if (mode === 'rename') {\n inputRef.current?.select();\n }\n }\n }, [open, initialName, mode]);\n\n const handleSubmit = async (e: React.FormEvent) => {\n e.preventDefault();\n\n const trimmedName = name.trim();\n\n if (!trimmedName) {\n setFieldError(\n formatMessage({\n id: getTranslationKey('folder.create.form.error.name-required'),\n defaultMessage: 'Name is required',\n })\n );\n return;\n }\n\n try {\n if (props.mode === 'rename') {\n await updateFolder({\n id: props.folderId,\n name: trimmedName,\n parent: parentFolderId,\n }).unwrap();\n // Matches the legacy folder-edit payload. This dialog only renames\n // (parent is fixed), so the location never changes here.\n trackUsage('didEditMediaLibraryElements', {\n location: MEDIA_LIBRARY_LOCATION,\n type: 'folder',\n changeLocation: false,\n });\n } else {\n await createFolder({ name: trimmedName, parent: parentFolderId }).unwrap();\n trackUsage('didAddMediaLibraryFolders', { location: MEDIA_LIBRARY_LOCATION });\n }\n\n toggleNotification({\n type: 'success',\n message:\n mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.success'),\n defaultMessage: 'Folder has been renamed',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.success'),\n defaultMessage: 'Folder has been created',\n }),\n });\n\n onClose();\n } catch (err) {\n const apiError = err as { message?: string };\n\n if (apiError?.message) {\n setFieldError(apiError.message);\n } else {\n toggleNotification({\n type: 'danger',\n message:\n mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.form.error.unknown'),\n defaultMessage: 'An error occurred while renaming the folder',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.form.error.unknown'),\n defaultMessage: 'An error occurred while creating the folder',\n }),\n });\n }\n }\n };\n\n return (\n <Modal.Root open={open} onOpenChange={onClose}>\n <StyledModalContent>\n <Modal.Header>\n <Modal.Title>\n {props.mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.title'),\n defaultMessage: 'Rename folder',\n })\n : formatMessage(\n {\n id: getTranslationKey('folder.create.title-in'),\n defaultMessage: 'New folder in {folderName}',\n },\n { folderName: props.parentFolderName }\n )}\n </Modal.Title>\n </Modal.Header>\n <form onSubmit={handleSubmit}>\n <Modal.Body>\n <Field.Root error={fieldError} name=\"name\" required>\n <Field.Label>\n {formatMessage({\n id: getTranslationKey('folder.form.name.label'),\n defaultMessage: 'Folder name',\n })}\n </Field.Label>\n <TextInput\n ref={inputRef}\n value={name}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => {\n setName(e.target.value);\n setFieldError(undefined);\n }}\n autoFocus\n />\n <Field.Error />\n </Field.Root>\n </Modal.Body>\n <Modal.Footer>\n <Flex gap={2} justifyContent=\"space-between\" width=\"100%\">\n <Button variant=\"tertiary\" onClick={onClose} type=\"button\">\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n <Button\n type=\"submit\"\n loading={isLoading}\n disabled={mode === 'rename' && name.trim() === initialName.trim()}\n >\n {mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.submit'),\n defaultMessage: 'Save',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.submit'),\n defaultMessage: 'Create folder',\n })}\n </Button>\n </Flex>\n </Modal.Footer>\n </form>\n </StyledModalContent>\n </Modal.Root>\n );\n};\n"],"names":["StyledModalContent","styled","Modal","Content","FolderFormDialog","props","open","parentFolderId","onClose","mode","initialName","formatMessage","useIntl","toggleNotification","useNotification","trackUsage","useTracking","name","setName","useState","fieldError","setFieldError","inputRef","useRef","createFolder","isLoading","isCreating","useCreateFolderMutation","updateFolder","isUpdating","useUpdateFolderMutation","useEffect","undefined","current","select","handleSubmit","e","preventDefault","trimmedName","trim","id","getTranslationKey","defaultMessage","folderId","parent","unwrap","location","MEDIA_LIBRARY_LOCATION","type","changeLocation","message","err","apiError","_jsx","Root","onOpenChange","_jsxs","Header","Title","folderName","parentFolderName","form","onSubmit","Body","Field","error","required","Label","TextInput","ref","value","onChange","target","autoFocus","Error","Footer","Flex","gap","justifyContent","width","Button","variant","onClick","loading","disabled"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FolderFormDialog.mjs","sources":["../../../../../admin/src/pages/Assets/components/FolderFormDialog.tsx"],"sourcesContent":["import { useEffect, useRef, useState } from 'react';\n\nimport { useNotification } from '@strapi/admin/strapi-admin';\nimport { Button, Field, Flex, Modal, TextInput } from '@strapi/design-system';\nimport { useIntl } from 'react-intl';\nimport { styled } from 'styled-components';\n\nimport { useTracking, MEDIA_LIBRARY_LOCATION } from '../../../hooks/useTracking';\nimport { useCreateFolderMutation, useUpdateFolderMutation } from '../../../services/folders';\nimport { getTranslationKey } from '../../../utils/translations';\n\ninterface FolderFormDialogBaseProps {\n open: boolean;\n onClose: () => void;\n /** Sent as `parent`. Create: the folder being created in. Rename: the folder's existing parent. */\n parentFolderId: number | null;\n}\n\ntype FolderFormDialogProps = FolderFormDialogBaseProps &\n (\n | { mode: 'create'; parentFolderName: string }\n | { mode: 'rename'; folderId: number; initialName: string }\n );\n\nconst StyledModalContent = styled(Modal.Content)`\n max-width: 51.6rem;\n`;\n\nexport const FolderFormDialog = (props: FolderFormDialogProps) => {\n const { open, parentFolderId, onClose, mode } = props;\n const initialName = props.mode === 'rename' ? props.initialName : '';\n\n const { formatMessage } = useIntl();\n const { toggleNotification } = useNotification();\n const { trackUsage } = useTracking();\n const [name, setName] = useState(initialName);\n const [fieldError, setFieldError] = useState<string | undefined>();\n const inputRef = useRef<HTMLInputElement>(null);\n const [createFolder, { isLoading: isCreating }] = useCreateFolderMutation();\n const [updateFolder, { isLoading: isUpdating }] = useUpdateFolderMutation();\n\n const isLoading = mode === 'rename' ? isUpdating : isCreating;\n\n useEffect(() => {\n if (open) {\n setName(initialName);\n setFieldError(undefined);\n\n // Renaming starts from the current name, so select it: typing replaces\n // the whole thing, as in Finder / VS Code / GitHub.\n if (mode === 'rename') {\n inputRef.current?.select();\n }\n }\n }, [open, initialName, mode]);\n\n const handleSubmit = async (e: React.FormEvent) => {\n e.preventDefault();\n\n const trimmedName = name.trim();\n\n if (!trimmedName) {\n setFieldError(\n formatMessage({\n id: getTranslationKey('folder.create.form.error.name-required'),\n defaultMessage: 'Name is required',\n })\n );\n return;\n }\n\n try {\n if (props.mode === 'rename') {\n await updateFolder({\n id: props.folderId,\n name: trimmedName,\n parent: parentFolderId,\n }).unwrap();\n // Matches the legacy folder-edit payload. This dialog only renames\n // (parent is fixed), so the location never changes here.\n trackUsage('didEditMediaLibraryElements', {\n location: MEDIA_LIBRARY_LOCATION,\n type: 'folder',\n changeLocation: false,\n });\n } else {\n await createFolder({ name: trimmedName, parent: parentFolderId }).unwrap();\n trackUsage('didAddMediaLibraryFolders', { location: MEDIA_LIBRARY_LOCATION });\n }\n\n toggleNotification({\n type: 'success',\n message:\n mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.success'),\n defaultMessage: 'Folder has been renamed',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.success'),\n defaultMessage: 'Folder has been created',\n }),\n });\n\n onClose();\n } catch (err) {\n const apiError = err as { message?: string };\n\n if (apiError?.message) {\n setFieldError(apiError.message);\n } else {\n toggleNotification({\n type: 'danger',\n message:\n mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.form.error.unknown'),\n defaultMessage: 'An error occurred while renaming the folder',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.form.error.unknown'),\n defaultMessage: 'An error occurred while creating the folder',\n }),\n });\n }\n }\n };\n\n return (\n <Modal.Root open={open} onOpenChange={onClose}>\n <StyledModalContent>\n <Modal.Header>\n <Modal.Title>\n {props.mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.title'),\n defaultMessage: 'Rename folder',\n })\n : formatMessage(\n {\n id: getTranslationKey('folder.create.title-in'),\n defaultMessage: 'New folder in {folderName}',\n },\n { folderName: props.parentFolderName }\n )}\n </Modal.Title>\n </Modal.Header>\n <form onSubmit={handleSubmit}>\n <Modal.Body>\n <Field.Root error={fieldError} name=\"name\" required>\n <Field.Label>\n {formatMessage({\n id: getTranslationKey('folder.form.name.label'),\n defaultMessage: 'Folder name',\n })}\n </Field.Label>\n <TextInput\n ref={inputRef}\n value={name}\n onChange={(e: React.ChangeEvent<HTMLInputElement>) => {\n setName(e.target.value);\n setFieldError(undefined);\n }}\n autoFocus\n />\n <Field.Error />\n </Field.Root>\n </Modal.Body>\n <Modal.Footer>\n <Flex gap={2} justifyContent=\"space-between\" width=\"100%\">\n <Button variant=\"tertiary\" onClick={onClose} type=\"button\">\n {formatMessage({ id: 'app.components.Button.cancel', defaultMessage: 'Cancel' })}\n </Button>\n <Button\n type=\"submit\"\n loading={isLoading}\n disabled={mode === 'rename' && name.trim() === initialName.trim()}\n >\n {mode === 'rename'\n ? formatMessage({\n id: getTranslationKey('folder.rename.submit'),\n defaultMessage: 'Save',\n })\n : formatMessage({\n id: getTranslationKey('folder.create.submit'),\n defaultMessage: 'Create folder',\n })}\n </Button>\n </Flex>\n </Modal.Footer>\n </form>\n </StyledModalContent>\n </Modal.Root>\n );\n};\n"],"names":["StyledModalContent","styled","Modal","Content","FolderFormDialog","props","open","parentFolderId","onClose","mode","initialName","formatMessage","useIntl","toggleNotification","useNotification","trackUsage","useTracking","name","setName","useState","fieldError","setFieldError","inputRef","useRef","createFolder","isLoading","isCreating","useCreateFolderMutation","updateFolder","isUpdating","useUpdateFolderMutation","useEffect","undefined","current","select","handleSubmit","e","preventDefault","trimmedName","trim","id","getTranslationKey","defaultMessage","folderId","parent","unwrap","location","MEDIA_LIBRARY_LOCATION","type","changeLocation","message","err","apiError","_jsx","Root","onOpenChange","_jsxs","Header","Title","folderName","parentFolderName","form","onSubmit","Body","Field","error","required","Label","TextInput","ref","value","onChange","target","autoFocus","Error","Footer","Flex","gap","justifyContent","width","Button","variant","onClick","loading","disabled"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FolderTree.js","sources":["../../../../../../admin/src/pages/Assets/components/FolderTree/FolderTree.tsx"],"sourcesContent":["import { useCallback, useEffect, useState } from 'react';\n\nimport { SubNav } from '@strapi/admin/strapi-admin';\nimport { Box, Flex, IconButton, Loader, Typography } from '@strapi/design-system';\nimport { ChevronDown, Folder as FolderIcon, House } from '@strapi/icons';\nimport { useIntl } from 'react-intl';\nimport { css, styled } from 'styled-components';\n\nimport { TruncatedText } from '../../../../components/TruncatedText';\nimport { useGetFolderStructureQuery } from '../../../../services/folders';\nimport { getTranslationKey } from '../../../../utils/translations';\nimport { useAssetsDndOptional } from '../Dnd/AssetsDndProvider';\nimport { useFolderTreeDroppable } from '../Dnd/useFolderTreeDroppable';\n\nimport { useSpringLoadedExpand } from './useSpringLoadedExpand';\n\nimport type { FolderNode } from '../../../../../../shared/contracts/folders';\n\n/* -------------------------------------------------------------------------------------------------\n * RowButton — shared row styling aligned with admin SubNav.Link\n * -----------------------------------------------------------------------------------------------*/\n\nconst RowButton = styled.button<{\n $isActive: boolean;\n $isValidDropTarget?: boolean;\n $isInvalidDropCursor?: boolean;\n $isMovePending?: boolean;\n}>`\n display: flex;\n align-items: center;\n gap: ${({ theme }) => theme.spaces[2]};\n width: 100%;\n min-height: 3.2rem;\n padding: ${({ theme }) => `${theme.spaces[1]} ${theme.spaces[2]}`};\n border: 0;\n background: ${({ $isActive, $isValidDropTarget, theme }) => {\n if ($isValidDropTarget) {\n return theme.colors.primary100;\n }\n\n return $isActive ? theme.colors.primary100 : 'transparent';\n }};\n color: ${({ $isActive, theme }) =>\n $isActive ? theme.colors.primary700 : theme.colors.neutral800};\n border-radius: ${({ theme }) => theme.borderRadius};\n cursor: ${({ $isMovePending, $isInvalidDropCursor }) => {\n if ($isMovePending) {\n return 'wait';\n }\n\n return $isInvalidDropCursor ? 'not-allowed' : 'pointer';\n }};\n text-align: left;\n font: inherit;\n pointer-events: ${({ $isMovePending }) => ($isMovePending ? 'none' : 'auto')};\n\n ${({ $isValidDropTarget, theme }) =>\n $isValidDropTarget &&\n css`\n outline: 1px dashed ${theme.colors.primary600};\n outline-offset: -1px;\n `}\n\n &:hover {\n background: ${({ $isActive, $isValidDropTarget, theme }) => {\n if ($isValidDropTarget) {\n return theme.colors.primary100;\n }\n\n return $isActive ? theme.colors.primary100 : theme.colors.neutral100;\n }};\n }\n\n &:focus-visible {\n outline: 2px solid ${({ theme }) => theme.colors.primary600};\n outline-offset: -2px;\n }\n`;\n\nconst TreeRow = styled(Flex)<{\n $isValidDropTarget?: boolean;\n $isInvalidDropCursor?: boolean;\n $isMovePending?: boolean;\n}>`\n cursor: ${({ $isMovePending, $isInvalidDropCursor }) => {\n if ($isMovePending) {\n return 'wait';\n }\n\n return $isInvalidDropCursor ? 'not-allowed' : 'default';\n }};\n pointer-events: ${({ $isMovePending }) => ($isMovePending ? 'none' : 'auto')};\n border-radius: ${({ theme }) => theme.borderRadius};\n\n ${({ $isValidDropTarget, theme }) =>\n $isValidDropTarget &&\n css`\n background: ${theme.colors.primary100};\n outline: 1px dashed ${theme.colors.primary600};\n outline-offset: -1px;\n `}\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * useExpandedFolders — local expand/collapse state\n * -----------------------------------------------------------------------------------------------*/\n\nconst findAncestorIds = (\n nodes: FolderNode[],\n targetId: number,\n trail: number[] = []\n): number[] | null => {\n for (const node of nodes) {\n if (node.id === targetId) {\n return trail;\n }\n\n if (node.children?.length) {\n const nextTrail = node.id != null ? [...trail, node.id] : trail;\n const found = findAncestorIds(node.children, targetId, nextTrail);\n if (found !== null) {\n return found;\n }\n }\n }\n\n return null;\n};\n\nconst useExpandedFolders = (folderStructure: FolderNode[], currentFolderId: number | null) => {\n const [expandedIds, setExpandedIds] = useState<Set<number>>(() => new Set());\n\n useEffect(() => {\n if (currentFolderId == null) {\n return;\n }\n\n const ancestors = findAncestorIds(folderStructure, currentFolderId);\n if (!ancestors || ancestors.length === 0) {\n return;\n }\n\n setExpandedIds((prev) => {\n const next = new Set(prev);\n let changed = false;\n for (const id of ancestors) {\n if (!next.has(id)) {\n next.add(id);\n changed = true;\n }\n }\n return changed ? next : prev;\n });\n }, [folderStructure, currentFolderId]);\n\n const toggleExpanded = useCallback((id: number) => {\n setExpandedIds((prev) => {\n const next = new Set(prev);\n if (next.has(id)) {\n next.delete(id);\n } else {\n next.add(id);\n }\n return next;\n });\n }, []);\n\n const expandFolder = useCallback((id: number) => {\n setExpandedIds((prev) => {\n if (prev.has(id)) {\n return prev;\n }\n\n const next = new Set(prev);\n next.add(id);\n return next;\n });\n }, []);\n\n const isExpanded = useCallback((id: number) => expandedIds.has(id), [expandedIds]);\n\n return { isExpanded, toggleExpanded, expandFolder };\n};\n\n/* -------------------------------------------------------------------------------------------------\n * NavList — unstyled list for tree rows\n * -----------------------------------------------------------------------------------------------*/\n\nconst NavList = styled.ul`\n list-style: none;\n margin: 0;\n padding: 0;\n\n /* Grid rather than block, and load-bearing despite rendering a single column:\n a minmax(0, 1fr) track contributes a minimum of 0, which is what stops each\n row propagating the min-content width of its own label.\n\n Folder names ellipsize, and text-overflow needs white-space: nowrap — so a\n label's min-content width is the entire name, and no box lays out narrower\n than its min-content. In block flow that floor travels up to the SubNav\n ScrollArea, which widens the rail and shows a horizontal scrollbar instead of\n truncating the name. Nesting makes it worse: the indent is spent before the\n label is measured, so shorter names trigger it the deeper you go.\n\n Measured in Chromium — dropping either declaration brings the scrollbar\n back, and neither min-width nor overflow on the row is a substitute. */\n display: grid;\n grid-template-columns: minmax(0, 1fr);\n`;\n\n/* -------------------------------------------------------------------------------------------------\n * FolderTreeItem — single tree row (internal)\n * -----------------------------------------------------------------------------------------------*/\n\nconst INDENT_PER_LEVEL_REM = 1.6;\n\n/**\n * A leaf's chevron is present only to keep the folder names aligned, so it\n * should read as absent. The design system's disabled state is built for real\n * controls — a filled, bordered pill — which draws more attention than the\n * enabled chevron next to it. Doubled selector to outrank that rule.\n */\nconst ChevronButton = styled(IconButton)`\n &&[aria-disabled='true'] {\n background: transparent;\n border-color: transparent;\n opacity: 0.3;\n }\n`;\n\nconst RotatingChevron = styled(ChevronDown)<{ $expanded: boolean }>`\n transform: rotate(${({ $expanded }) => ($expanded ? '0deg' : '-90deg')});\n transition: transform 0.2s ease;\n`;\n\ninterface FolderTreeItemProps {\n node: FolderNode;\n level: number;\n currentFolderId: number | null;\n showActiveFolder: boolean;\n isExpanded: (id: number) => boolean;\n onToggle: (id: number) => void;\n onExpand: (id: number) => void;\n onSelect: (folderId: number) => void;\n isMovePending: boolean;\n}\n\ninterface FolderTreeItemInnerProps extends Omit<FolderTreeItemProps, 'node'> {\n id: number;\n name: string;\n folderChildren: FolderNode[];\n}\n\nconst FolderTreeItemInner = ({\n id,\n name,\n folderChildren,\n level,\n currentFolderId,\n showActiveFolder,\n isExpanded,\n onToggle,\n onExpand,\n onSelect,\n isMovePending,\n}: FolderTreeItemInnerProps) => {\n const { formatMessage } = useIntl();\n const hasChildren = folderChildren.length > 0;\n const isFolderExpanded = isExpanded(id);\n const isActive = showActiveFolder && currentFolderId === id;\n\n const {\n droppable: { setNodeRef },\n isOver,\n showValidDropHighlight,\n showInvalidDropCursor,\n } = useFolderTreeDroppable({ id, name });\n\n const handleExpand = useCallback(() => onExpand(id), [id, onExpand]);\n\n useSpringLoadedExpand({\n isOver,\n canExpand: hasChildren && !isFolderExpanded,\n onExpand: handleExpand,\n });\n\n // TODO: full `role=\"tree\"` + arrow-key treeview navigation before revamp GA\n // if an accessibility audit requires it (v1 is button rows only).\n return (\n <li>\n <TreeRow\n ref={setNodeRef}\n alignItems=\"center\"\n paddingLeft={`${level * INDENT_PER_LEVEL_REM}rem`}\n gap={1}\n $isValidDropTarget={showValidDropHighlight}\n $isInvalidDropCursor={showInvalidDropCursor}\n $isMovePending={isMovePending}\n >\n <ChevronButton\n label={\n hasChildren\n ? formatMessage(\n {\n id: getTranslationKey(\n isFolderExpanded ? 'sidebar.tree.collapse' : 'sidebar.tree.expand'\n ),\n defaultMessage: isFolderExpanded ? 'Collapse {name}' : 'Expand {name}',\n },\n { name }\n )\n : formatMessage(\n {\n id: getTranslationKey('sidebar.tree.no-subfolders'),\n defaultMessage: 'The folder {name} has no subfolders',\n },\n { name }\n )\n }\n disabled={!hasChildren}\n onClick={(event: React.MouseEvent) => {\n event.stopPropagation();\n onToggle(id);\n }}\n variant=\"ghost\"\n withTooltip={false}\n aria-expanded={hasChildren ? isFolderExpanded : undefined}\n >\n <RotatingChevron $expanded={isFolderExpanded} fill=\"neutral500\" />\n </ChevronButton>\n\n <Box flex=\"1\" minWidth={0}>\n <RowButton\n type=\"button\"\n $isActive={isActive}\n $isValidDropTarget={showValidDropHighlight}\n $isInvalidDropCursor={showInvalidDropCursor}\n $isMovePending={isMovePending}\n aria-current={isActive ? 'page' : undefined}\n onClick={() => onSelect(id)}\n data-testid={`folder-tree-node-${id}`}\n data-folder-id={id}\n >\n <TruncatedText variant=\"omega\" fontWeight={isActive ? 'semiBold' : 'regular'}>\n {name}\n </TruncatedText>\n </RowButton>\n </Box>\n </TreeRow>\n\n {hasChildren && isFolderExpanded && (\n <NavList>\n {folderChildren.map((child) => (\n <FolderTreeItem\n key={child.id ?? child.name}\n node={child}\n level={level + 1}\n currentFolderId={currentFolderId}\n showActiveFolder={showActiveFolder}\n isExpanded={isExpanded}\n onToggle={onToggle}\n onExpand={onExpand}\n onSelect={onSelect}\n isMovePending={isMovePending}\n />\n ))}\n </NavList>\n )}\n </li>\n );\n};\n\nconst FolderTreeItem = ({ node, ...props }: FolderTreeItemProps) => {\n if (node.id == null) {\n return null;\n }\n\n return (\n <FolderTreeItemInner\n {...props}\n id={node.id}\n name={node.name ?? ''}\n folderChildren={node.children ?? []}\n />\n );\n};\n\n/* -------------------------------------------------------------------------------------------------\n * FolderTree — public sidebar component\n * -----------------------------------------------------------------------------------------------*/\n\ninterface FolderTreeProps {\n currentFolderId: number | null;\n /**\n * Set to `false` while a global asset search is active: the results span the\n * whole library, so highlighting one folder would misrepresent them.\n * */\n showActiveFolder?: boolean;\n onSelectFolder: (folderId: number | null) => void;\n}\n\n/**\n * Left-rail navigation for the Media Library. Fetches folder structure internally\n * and renders:\n *\n * 1. A \"Media library\" title\n * 2. A filter input that prunes the tree to matching destinations\n * 3. A \"Home\" entry that clears the folder query param\n * 4. A \"FOLDERS\" section header\n * 5. The folder tree itself\n *\n * The filter is purely local: it never touches the URL and never affects the\n * asset list, which has its own independent search in the content toolbar.\n *\n * Presentational with respect to routing — navigation is delegated to the parent\n * via `onSelectFolder` so the URL stays the single source of truth (see\n * `useFolderNavigation`).\n */\nexport const FolderTree = ({\n currentFolderId,\n showActiveFolder = true,\n onSelectFolder,\n}: FolderTreeProps) => {\n const { formatMessage } = useIntl();\n const { data: folderStructure = [], isLoading, isError } = useGetFolderStructureQuery();\n const { isExpanded, toggleExpanded, expandFolder } = useExpandedFolders(\n folderStructure,\n currentFolderId\n );\n const { isMovePending } = useAssetsDndOptional() ?? { isMovePending: false };\n\n const isHomeActive = showActiveFolder && currentFolderId == null;\n const homeLabel = formatMessage({\n id: getTranslationKey('sidebar.home'),\n defaultMessage: 'Home',\n });\n\n const {\n droppable: { setNodeRef: setHomeDropRef },\n showValidDropHighlight: showHomeValidDropHighlight,\n showInvalidDropCursor: showHomeInvalidDropCursor,\n } = useFolderTreeDroppable({ id: null, name: homeLabel });\n\n return (\n <SubNav.Main\n aria-label={formatMessage({\n id: getTranslationKey('sidebar.tree.aria-label'),\n defaultMessage: 'Media library folders',\n })}\n >\n <SubNav.Header\n label={formatMessage({\n id: getTranslationKey('sidebar.title'),\n defaultMessage: 'Media library',\n })}\n />\n\n <SubNav.Content>\n <Flex direction=\"column\" alignItems=\"stretch\" gap={1} padding={3}>\n <RowButton\n ref={setHomeDropRef}\n type=\"button\"\n $isActive={isHomeActive}\n $isValidDropTarget={showHomeValidDropHighlight}\n $isInvalidDropCursor={showHomeInvalidDropCursor}\n $isMovePending={isMovePending}\n aria-current={isHomeActive ? 'page' : undefined}\n onClick={() => onSelectFolder(null)}\n data-testid=\"folder-tree-home\"\n >\n <House aria-hidden width=\"1.6rem\" height=\"1.6rem\" />\n <Typography variant=\"omega\" fontWeight={isHomeActive ? 'semiBold' : 'regular'}>\n {homeLabel}\n </Typography>\n </RowButton>\n\n <Box marginTop={4}>\n <Flex\n alignItems=\"center\"\n gap={1}\n paddingTop={1}\n paddingBottom={1}\n paddingLeft={2}\n paddingRight={2}\n marginBottom={2}\n >\n <FolderIcon aria-hidden width=\"1.6rem\" height=\"1.6rem\" fill=\"neutral500\" />\n <Typography\n variant=\"sigma\"\n textColor=\"neutral600\"\n style={{ textTransform: 'uppercase' }}\n >\n {formatMessage({\n id: getTranslationKey('sidebar.folders'),\n defaultMessage: 'Folders',\n })}\n </Typography>\n </Flex>\n\n {isLoading ? (\n // TODO: revisit loading state before revamp GA\n <Flex justifyContent=\"center\" padding={1} paddingTop={2}>\n <Loader>\n {formatMessage({\n id: getTranslationKey('sidebar.tree.loading'),\n defaultMessage: 'Loading folders...',\n })}\n </Loader>\n </Flex>\n ) : isError ? (\n // TODO: revisit error state before revamp GA\n <Box padding={1} paddingTop={2}>\n <Typography variant=\"pi\" textColor=\"danger600\">\n {formatMessage({\n id: getTranslationKey('sidebar.tree.error'),\n defaultMessage: 'Could not load folders.',\n })}\n </Typography>\n </Box>\n ) : folderStructure.length === 0 ? (\n // TODO: revisit empty state before revamp GA\n <Box padding={1} paddingTop={2}>\n <Typography variant=\"pi\" textColor=\"neutral500\">\n {formatMessage({\n id: getTranslationKey('sidebar.tree.empty'),\n defaultMessage: 'No folders yet',\n })}\n </Typography>\n </Box>\n ) : (\n <NavList>\n {folderStructure.map((node) => (\n <FolderTreeItem\n key={node.id ?? node.name}\n node={node}\n level={0}\n currentFolderId={currentFolderId}\n showActiveFolder={showActiveFolder}\n isExpanded={isExpanded}\n onToggle={toggleExpanded}\n onExpand={expandFolder}\n onSelect={onSelectFolder}\n isMovePending={isMovePending}\n />\n ))}\n </NavList>\n )}\n </Box>\n </Flex>\n </SubNav.Content>\n </SubNav.Main>\n );\n};\n"],"names":["RowButton","styled","button","theme","spaces","$isActive","$isValidDropTarget","colors","primary100","primary700","neutral800","borderRadius","$isMovePending","$isInvalidDropCursor","css","primary600","neutral100","TreeRow","Flex","findAncestorIds","nodes","targetId","trail","node","id","children","length","nextTrail","found","useExpandedFolders","folderStructure","currentFolderId","expandedIds","setExpandedIds","useState","Set","useEffect","ancestors","prev","next","changed","has","add","toggleExpanded","useCallback","delete","expandFolder","isExpanded","NavList","ul","INDENT_PER_LEVEL_REM","ChevronButton","IconButton","RotatingChevron","ChevronDown","$expanded","FolderTreeItemInner","name","folderChildren","level","showActiveFolder","onToggle","onExpand","onSelect","isMovePending","formatMessage","useIntl","hasChildren","isFolderExpanded","isActive","droppable","setNodeRef","isOver","showValidDropHighlight","showInvalidDropCursor","useFolderTreeDroppable","handleExpand","useSpringLoadedExpand","canExpand","_jsxs","li","ref","alignItems","paddingLeft","gap","_jsx","label","getTranslationKey","defaultMessage","disabled","onClick","event","stopPropagation","variant","withTooltip","aria-expanded","undefined","fill","Box","flex","minWidth","type","aria-current","data-testid","data-folder-id","TruncatedText","fontWeight","map","child","FolderTreeItem","props","FolderTree","onSelectFolder","data","isLoading","isError","useGetFolderStructureQuery","useAssetsDndOptional","isHomeActive","homeLabel","setHomeDropRef","showHomeValidDropHighlight","showHomeInvalidDropCursor","SubNav","Main","aria-label","Header","Content","direction","padding","House","aria-hidden","width","height","Typography","marginTop","paddingTop","paddingBottom","paddingRight","marginBottom","FolderIcon","textColor","style","textTransform","justifyContent","Loader"],"mappings":"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"}
|