@strapi/upload 5.2.0 → 5.3.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.
Files changed (125) hide show
  1. package/dist/_chunks/{index-l4hbqJYu.js → index-BM9Ayh_r.js} +2 -2
  2. package/dist/_chunks/{index-l4hbqJYu.js.map → index-BM9Ayh_r.js.map} +1 -1
  3. package/dist/_chunks/{index-GpFGwMho.mjs → index-BWIqjWzC.mjs} +2 -2
  4. package/dist/_chunks/{index-GpFGwMho.mjs.map → index-BWIqjWzC.mjs.map} +1 -1
  5. package/dist/_chunks/{index-DlRn6eNH.js → index-Bl2-6oC8.js} +21 -22
  6. package/dist/_chunks/index-Bl2-6oC8.js.map +1 -0
  7. package/dist/_chunks/{index-BjvAmZvH.mjs → index-BwEfHu6y.mjs} +1079 -1595
  8. package/dist/_chunks/index-BwEfHu6y.mjs.map +1 -0
  9. package/dist/_chunks/{index-D7YMYvKK.js → index-C1MSWEyZ.js} +2 -2
  10. package/dist/_chunks/{index-D7YMYvKK.js.map → index-C1MSWEyZ.js.map} +1 -1
  11. package/dist/_chunks/{index-KSVkjErL.mjs → index-C_cWV2yS.mjs} +2 -2
  12. package/dist/_chunks/{index-KSVkjErL.mjs.map → index-C_cWV2yS.mjs.map} +1 -1
  13. package/dist/_chunks/{index-Bi33Km2i.mjs → index-DCAQ4hHN.mjs} +21 -22
  14. package/dist/_chunks/index-DCAQ4hHN.mjs.map +1 -0
  15. package/dist/_chunks/{index-BHcSb0I3.js → index-YwynuEzj.js} +1077 -1593
  16. package/dist/_chunks/index-YwynuEzj.js.map +1 -0
  17. package/dist/admin/index.js +1 -1
  18. package/dist/admin/index.mjs +1 -1
  19. package/dist/admin/src/components/AssetCard/AssetCard.d.ts +18 -0
  20. package/dist/admin/src/components/AssetCard/AssetCardBase.d.ts +14 -0
  21. package/dist/admin/src/components/AssetCard/AudioAssetCard.d.ts +7 -0
  22. package/dist/admin/src/components/AssetCard/AudioPreview.d.ts +6 -0
  23. package/dist/admin/src/components/AssetCard/DocAssetCard.d.ts +7 -0
  24. package/dist/admin/src/components/AssetCard/ImageAssetCard.d.ts +12 -0
  25. package/dist/admin/src/components/AssetCard/UploadingAssetCard.d.ts +17 -0
  26. package/dist/admin/src/components/AssetCard/VideoAssetCard.d.ts +8 -0
  27. package/dist/admin/src/components/AssetCard/VideoPreview.d.ts +9 -0
  28. package/dist/admin/src/components/AssetDialog/BrowseStep/Filters.d.ts +23 -0
  29. package/dist/admin/src/components/AssetDialog/BrowseStep/PageSize.d.ts +6 -0
  30. package/dist/admin/src/components/AssetDialog/BrowseStep/PaginationFooter/Pagination.d.ts +9 -0
  31. package/dist/admin/src/components/AssetDialog/BrowseStep/PaginationFooter/PaginationContext.d.ts +9 -0
  32. package/dist/admin/src/components/AssetDialog/BrowseStep/PaginationFooter/components.d.ts +15 -0
  33. package/dist/admin/src/components/AssetDialog/BrowseStep/PaginationFooter/index.d.ts +9 -0
  34. package/dist/admin/src/components/AssetDialog/BrowseStep/SearchAsset/index.d.ts +7 -0
  35. package/dist/admin/src/components/AssetDialog/BrowseStep/index.d.ts +63 -0
  36. package/dist/admin/src/components/AssetDialog/BrowseStep/utils/isSelectable.d.ts +1 -0
  37. package/dist/admin/src/components/AssetDialog/DialogFooter.d.ts +6 -0
  38. package/dist/admin/src/components/AssetDialog/SelectedStep/index.d.ts +8 -0
  39. package/dist/admin/src/components/AssetDialog/index.d.ts +39 -0
  40. package/dist/admin/src/components/AssetGridList/Draggable.d.ts +9 -0
  41. package/dist/admin/src/components/AssetGridList/index.d.ts +14 -0
  42. package/dist/admin/src/components/Breadcrumbs/Breadcrumbs.d.ts +15 -0
  43. package/dist/admin/src/components/Breadcrumbs/CrumbSimpleMenuAsync.d.ts +7 -0
  44. package/dist/admin/src/components/Breadcrumbs/index.d.ts +1 -0
  45. package/dist/admin/src/components/BulkMoveDialog/BulkMoveDialog.d.ts +15 -0
  46. package/dist/admin/src/components/BulkMoveDialog/index.d.ts +1 -0
  47. package/dist/admin/src/components/ContextInfo/ContextInfo.d.ts +8 -0
  48. package/dist/admin/src/components/ContextInfo/index.d.ts +1 -0
  49. package/dist/admin/src/components/CopyLinkButton/index.d.ts +3 -0
  50. package/dist/admin/src/components/EditAssetDialog/DialogHeader.d.ts +1 -0
  51. package/dist/admin/src/components/EditAssetDialog/PreviewBox/AssetPreview.d.ts +9 -0
  52. package/dist/admin/src/components/EditAssetDialog/PreviewBox/CroppingActions.d.ts +7 -0
  53. package/dist/admin/src/components/EditAssetDialog/PreviewBox/components.d.ts +17 -0
  54. package/dist/admin/src/components/EditAssetDialog/PreviewBox/index.d.ts +23 -0
  55. package/dist/admin/src/components/EditAssetDialog/RemoveAssetDialog.d.ts +8 -0
  56. package/dist/admin/src/components/EditAssetDialog/ReplaceMediaButton.d.ts +8 -0
  57. package/dist/admin/src/components/EditAssetDialog/index.d.ts +28 -0
  58. package/dist/admin/src/components/EditFolderDialog/EditFolderDialog.d.ts +10 -0
  59. package/dist/admin/src/components/EditFolderDialog/ModalHeader/ModalHeader.d.ts +5 -0
  60. package/dist/admin/src/components/EditFolderDialog/ModalHeader/index.d.ts +2 -0
  61. package/dist/admin/src/components/EditFolderDialog/RemoveFolderDialog.d.ts +7 -0
  62. package/dist/admin/src/components/EditFolderDialog/index.d.ts +1 -0
  63. package/dist/admin/src/components/EmptyAssets/EmptyAssetGrid.d.ts +6 -0
  64. package/dist/admin/src/components/EmptyAssets/index.d.ts +10 -0
  65. package/dist/admin/src/components/FilterList/FilterTag.d.ts +23 -0
  66. package/dist/admin/src/components/FilterList/index.d.ts +33 -0
  67. package/dist/admin/src/components/FilterPopover/FilterValueInput.d.ts +12 -0
  68. package/dist/admin/src/components/FilterPopover/index.d.ts +31 -0
  69. package/dist/admin/src/components/FilterPopover/utils/getFilterList.d.ts +21 -0
  70. package/dist/admin/src/components/FolderCard/FolderCard/FolderCard.d.ts +13 -0
  71. package/dist/admin/src/components/FolderCard/FolderCard/index.d.ts +1 -0
  72. package/dist/admin/src/components/FolderCard/FolderCardBody/FolderCardBody.d.ts +2 -0
  73. package/dist/admin/src/components/FolderCard/FolderCardBody/index.d.ts +1 -0
  74. package/dist/admin/src/components/FolderCard/FolderCardBodyAction/index.d.ts +7 -0
  75. package/dist/admin/src/components/FolderCard/FolderCardCheckbox/FolderCardCheckbox.d.ts +2 -0
  76. package/dist/admin/src/components/FolderCard/FolderCardCheckbox/index.d.ts +1 -0
  77. package/dist/admin/src/components/FolderCard/contexts/FolderCard.d.ts +7 -0
  78. package/dist/admin/src/components/FolderCard/index.d.ts +4 -0
  79. package/dist/admin/src/components/FolderGridList/FolderGridList.d.ts +7 -0
  80. package/dist/admin/src/components/FolderGridList/index.d.ts +1 -0
  81. package/dist/admin/src/components/MediaLibraryDialog/index.d.ts +9 -0
  82. package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAsset.d.ts +4 -0
  83. package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAssetActions.d.ts +9 -0
  84. package/dist/admin/src/components/MediaLibraryInput/Carousel/CarouselAssets.d.ts +22 -0
  85. package/dist/admin/src/components/MediaLibraryInput/Carousel/EmptyStateAsset.d.ts +10 -0
  86. package/dist/admin/src/components/MediaLibraryInput/index.d.ts +17 -0
  87. package/dist/admin/src/components/SelectTree/Option.d.ts +16 -0
  88. package/dist/admin/src/components/SelectTree/SelectTree.d.ts +23 -0
  89. package/dist/admin/src/components/SelectTree/index.d.ts +2 -0
  90. package/dist/admin/src/components/SelectTree/utils/getOpenValues.d.ts +9 -0
  91. package/dist/admin/src/components/SelectTree/utils/getValuesToClose.d.ts +6 -0
  92. package/dist/admin/src/components/SortPicker/index.d.ts +7 -0
  93. package/dist/admin/src/components/TableList/CellContent.d.ts +8 -0
  94. package/dist/admin/src/components/TableList/PreviewCell.d.ts +7 -0
  95. package/dist/admin/src/components/TableList/TableRows.d.ts +22 -0
  96. package/dist/admin/src/components/TableList/index.d.ts +31 -0
  97. package/dist/admin/src/components/UploadAssetDialog/AddAssetStep/AddAssetStep.d.ts +13 -0
  98. package/dist/admin/src/components/UploadAssetDialog/AddAssetStep/FromComputerForm.d.ts +8 -0
  99. package/dist/admin/src/components/UploadAssetDialog/AddAssetStep/FromUrlForm.d.ts +8 -0
  100. package/dist/admin/src/components/UploadAssetDialog/PendingAssetStep/PendingAssetStep.d.ts +22 -0
  101. package/dist/admin/src/components/UploadAssetDialog/UploadAssetDialog.d.ts +21 -0
  102. package/dist/admin/src/components/UploadProgress/index.d.ts +7 -0
  103. package/dist/admin/src/hooks/useBulkMove.d.ts +5 -5
  104. package/dist/admin/src/hooks/useBulkRemove.d.ts +17 -20
  105. package/dist/admin/src/hooks/useEditAsset.d.ts +4 -4
  106. package/dist/admin/src/hooks/useEditFolder.d.ts +4 -4
  107. package/dist/admin/src/hooks/useFolder.d.ts +1 -1
  108. package/dist/admin/src/hooks/useFolderStructure.d.ts +7 -1
  109. package/dist/admin/src/hooks/useMediaLibraryPermissions.d.ts +5 -1
  110. package/dist/admin/src/hooks/useModalQueryParams.d.ts +1 -1
  111. package/dist/admin/src/hooks/useUpload.d.ts +7 -4
  112. package/dist/admin/src/newConstants.d.ts +24 -0
  113. package/dist/admin/src/utils/findRecursiveFolderByValue.d.ts +3 -2
  114. package/dist/admin/src/utils/getAllowedFiles.d.ts +1 -2
  115. package/dist/admin/src/utils/getBreadcrumbDataCM.d.ts +1 -1
  116. package/dist/admin/src/utils/getFolderParents.d.ts +4 -3
  117. package/dist/admin/src/utils/moveElement.d.ts +1 -1
  118. package/dist/admin/src/utils/urlsToAssets.d.ts +1 -1
  119. package/dist/shared/contracts/files.d.ts +10 -6
  120. package/dist/shared/contracts/folders.d.ts +23 -2
  121. package/package.json +8 -8
  122. package/dist/_chunks/index-BHcSb0I3.js.map +0 -1
  123. package/dist/_chunks/index-Bi33Km2i.mjs.map +0 -1
  124. package/dist/_chunks/index-BjvAmZvH.mjs.map +0 -1
  125. package/dist/_chunks/index-DlRn6eNH.js.map +0 -1
@@ -1,5 +1,5 @@
1
1
  "use strict";
2
- const index = require("../_chunks/index-BHcSb0I3.js");
2
+ const index = require("../_chunks/index-YwynuEzj.js");
3
3
  require("@strapi/icons");
4
4
  require("byte-size");
5
5
  require("date-fns");
@@ -1,4 +1,4 @@
1
- import { J } from "../_chunks/index-BjvAmZvH.mjs";
1
+ import { J } from "../_chunks/index-BwEfHu6y.mjs";
2
2
  import "@strapi/icons";
3
3
  import "byte-size";
4
4
  import "date-fns";
@@ -0,0 +1,18 @@
1
+ import type { File } from '../../../../shared/contracts/files';
2
+ type FileSelectable = File & {
3
+ isSelectable?: boolean;
4
+ };
5
+ export type AllowedTypes = 'files' | 'images' | 'videos' | 'audios';
6
+ interface AssetCardProps {
7
+ asset: FileSelectable;
8
+ local?: boolean;
9
+ onSelect?: (asset: FileSelectable) => void;
10
+ onEdit?: (asset: FileSelectable) => void;
11
+ onRemove?: (asset: FileSelectable) => void;
12
+ isSelected?: boolean;
13
+ size?: 'S' | 'M';
14
+ allowedTypes?: AllowedTypes[];
15
+ alt?: string;
16
+ }
17
+ export declare const AssetCard: ({ asset, isSelected, onSelect, onEdit, onRemove, size, local, }: AssetCardProps) => import("react/jsx-runtime").JSX.Element;
18
+ export {};
@@ -0,0 +1,14 @@
1
+ import React from 'react';
2
+ export interface AssetCardBaseProps {
3
+ children?: React.ReactNode;
4
+ extension: string;
5
+ isSelectable?: boolean;
6
+ name: string;
7
+ onSelect?: () => void;
8
+ onRemove?: () => void;
9
+ onEdit?: (event: React.MouseEvent<HTMLButtonElement, MouseEvent> | React.MouseEvent<HTMLDivElement, MouseEvent>) => void;
10
+ selected?: boolean;
11
+ subtitle?: string;
12
+ variant: 'Image' | 'Video' | 'Audio' | 'Doc';
13
+ }
14
+ export declare const AssetCardBase: ({ children, extension, isSelectable, name, onSelect, onRemove, onEdit, selected, subtitle, variant, }: AssetCardBaseProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,7 @@
1
+ import { AssetCardBaseProps } from './AssetCardBase';
2
+ interface AudioAssetCardProps extends Omit<AssetCardBaseProps, 'variant' | 'children'> {
3
+ size?: 'S' | 'M';
4
+ url: string;
5
+ }
6
+ export declare const AudioAssetCard: ({ name, url, size, selected, ...restProps }: AudioAssetCardProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,6 @@
1
+ interface AudioPreviewProps {
2
+ alt: string;
3
+ url: string;
4
+ }
5
+ export declare const AudioPreview: ({ url, alt }: AudioPreviewProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,7 @@
1
+ import { AssetCardBaseProps } from './AssetCardBase';
2
+ interface DocAssetCardProps extends Omit<AssetCardBaseProps, 'variant' | 'children'> {
3
+ size?: 'S' | 'M';
4
+ extension: string;
5
+ }
6
+ export declare const DocAssetCard: ({ name, extension, size, selected, ...restProps }: DocAssetCardProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,12 @@
1
+ import { AssetCardBaseProps } from './AssetCardBase';
2
+ interface ImageAssetCardProps extends Omit<AssetCardBaseProps, 'variant' | 'children'> {
3
+ height?: number;
4
+ width?: number;
5
+ size?: 'S' | 'M';
6
+ thumbnail: string;
7
+ alt: string;
8
+ updatedAt?: string;
9
+ isUrlSigned: boolean;
10
+ }
11
+ export declare const ImageAssetCard: ({ height, width, thumbnail, size, alt, isUrlSigned, selected, ...props }: ImageAssetCardProps) => import("react/jsx-runtime").JSX.Element;
12
+ export {};
@@ -0,0 +1,17 @@
1
+ import { AssetType } from '../../newConstants';
2
+ import type { RawFile, File } from '../../../../shared/contracts/files';
3
+ interface UploadingAssetCardProps {
4
+ onCancel: (rawFile: RawFile) => void;
5
+ onStatusChange: (status: string) => void;
6
+ addUploadedFiles: (files: File[]) => void;
7
+ folderId?: string | number | null;
8
+ asset: Asset;
9
+ id?: string;
10
+ size?: 'S' | 'M';
11
+ }
12
+ interface Asset extends File {
13
+ rawFile?: RawFile;
14
+ type?: AssetType;
15
+ }
16
+ export declare const UploadingAssetCard: ({ asset, onCancel, onStatusChange, addUploadedFiles, folderId, }: UploadingAssetCardProps) => import("react/jsx-runtime").JSX.Element;
17
+ export {};
@@ -0,0 +1,8 @@
1
+ import { AssetCardBaseProps } from './AssetCardBase';
2
+ interface VideoAssetCardProps extends Omit<AssetCardBaseProps, 'variant' | 'children'> {
3
+ mime: string;
4
+ url: string;
5
+ size?: 'S' | 'M';
6
+ }
7
+ export declare const VideoAssetCard: ({ name, url, mime, size, selected, ...props }: VideoAssetCardProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,9 @@
1
+ interface VideoPreviewProps {
2
+ alt: string;
3
+ url: string;
4
+ mime: string;
5
+ onLoadDuration?: (duration?: number) => void;
6
+ size?: 'S' | 'M';
7
+ }
8
+ export declare const VideoPreview: ({ url, mime, onLoadDuration, alt, size, ...props }: VideoPreviewProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,23 @@
1
+ type NumberKeyedObject = Record<number, string>;
2
+ type StringFilter = {
3
+ [key: string]: string;
4
+ };
5
+ type MimeFilter = {
6
+ [key: string]: string | NumberKeyedObject | Record<string, string | NumberKeyedObject> | undefined;
7
+ };
8
+ export type FilterStructure = {
9
+ [key: string]: MimeFilter | StringFilter | undefined;
10
+ };
11
+ export type Filter = {
12
+ [key in 'mime' | 'createdAt' | 'updatedAt']?: {
13
+ [key in '$contains' | '$notContains' | '$eq' | '$not']?: string[] | string | {
14
+ $contains: string[];
15
+ };
16
+ } | undefined;
17
+ };
18
+ interface FiltersProps {
19
+ appliedFilters: FilterStructure[];
20
+ onChangeFilters: (filters: Filter[]) => void;
21
+ }
22
+ export declare const Filters: ({ appliedFilters, onChangeFilters }: FiltersProps) => import("react/jsx-runtime").JSX.Element;
23
+ export {};
@@ -0,0 +1,6 @@
1
+ interface PageSizeProps {
2
+ onChangePageSize: (value: number) => void;
3
+ pageSize: number;
4
+ }
5
+ declare const PageSize: ({ onChangePageSize, pageSize }: PageSizeProps) => import("react/jsx-runtime").JSX.Element;
6
+ export default PageSize;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ interface PaginationProps {
3
+ activePage: number;
4
+ children: React.ReactNode;
5
+ label?: string;
6
+ pageCount: number;
7
+ }
8
+ export declare const Pagination: ({ children, activePage, pageCount, label, }: PaginationProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ export declare const PaginationContext: React.Context<{
3
+ activePage: number;
4
+ pageCount: number;
5
+ }>;
6
+ export declare const usePagination: () => {
7
+ activePage: number;
8
+ pageCount: number;
9
+ };
@@ -0,0 +1,15 @@
1
+ /// <reference types="react" />
2
+ interface PaginationLinkProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
3
+ children: React.ReactNode;
4
+ }
5
+ interface PageLinkProps extends PaginationLinkProps {
6
+ number: number;
7
+ }
8
+ export declare const PreviousLink: ({ children, ...props }: PaginationLinkProps) => import("react/jsx-runtime").JSX.Element;
9
+ export declare const NextLink: ({ children, ...props }: PaginationLinkProps) => import("react/jsx-runtime").JSX.Element;
10
+ export declare const PageLink: ({ number, children, ...props }: PageLinkProps) => import("react/jsx-runtime").JSX.Element;
11
+ interface DotsProps extends React.HTMLAttributes<HTMLDivElement> {
12
+ children: React.ReactNode;
13
+ }
14
+ export declare const Dots: ({ children, ...props }: DotsProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,9 @@
1
+ interface PaginationFooterProps {
2
+ activePage: number;
3
+ onChangePage: (page: number) => void;
4
+ pagination: {
5
+ pageCount: number;
6
+ };
7
+ }
8
+ declare const PaginationFooter: ({ activePage, onChangePage, pagination: { pageCount }, }: PaginationFooterProps) => import("react/jsx-runtime").JSX.Element;
9
+ export default PaginationFooter;
@@ -0,0 +1,7 @@
1
+ import type { Query } from '../../../../../../shared/contracts/files';
2
+ interface SearchAssetProps {
3
+ onChangeSearch: (_q: Query['_q'] | null) => void;
4
+ queryValue?: Query['_q'] | null;
5
+ }
6
+ declare const SearchAsset: ({ onChangeSearch, queryValue }: SearchAssetProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default SearchAsset;
@@ -0,0 +1,63 @@
1
+ import { FolderRow, FileRow } from '../../TableList';
2
+ import type { File, Query, FilterCondition } from '../../../../../shared/contracts/files';
3
+ import type { Folder } from '../../../../../shared/contracts/folders';
4
+ import type { AllowedTypes } from '../../AssetCard/AssetCard';
5
+ type NumberKeyedObject = Record<number, string>;
6
+ type StringFilter = {
7
+ [key: string]: string;
8
+ };
9
+ type MimeFilter = {
10
+ [key: string]: string | NumberKeyedObject | Record<string, string | NumberKeyedObject> | undefined;
11
+ };
12
+ export type FilterStructure = {
13
+ [key: string]: MimeFilter | StringFilter | undefined;
14
+ };
15
+ export type Filter = {
16
+ [key in 'mime' | 'createdAt' | 'updatedAt']?: {
17
+ [key in '$contains' | '$notContains' | '$eq' | '$not']?: string[] | string | {
18
+ $contains: string[];
19
+ };
20
+ } | undefined;
21
+ };
22
+ export interface FolderWithType extends Omit<Folder, 'children' | 'files'> {
23
+ folderURL?: string;
24
+ isSelectable?: boolean;
25
+ type?: string;
26
+ children?: Folder['children'] & {
27
+ count: number;
28
+ };
29
+ files?: Folder['files'] & {
30
+ count: number;
31
+ };
32
+ }
33
+ export interface FileWithType extends File {
34
+ folderURL?: string;
35
+ isSelectable?: boolean;
36
+ type?: string;
37
+ }
38
+ export interface BrowseStepProps {
39
+ allowedTypes?: AllowedTypes[];
40
+ assets: File[];
41
+ canCreate: boolean;
42
+ canRead: boolean;
43
+ folders?: FolderWithType[];
44
+ multiple?: boolean;
45
+ onAddAsset: () => void;
46
+ onChangeFilters: (filters: FilterCondition<string>[] | Filter[]) => void;
47
+ onChangeFolder: (id: number, path?: string) => void;
48
+ onChangePage: (page: number) => void;
49
+ onChangePageSize: (value: number) => void;
50
+ onChangeSort: (value: Query['sort'] | string) => void;
51
+ onChangeSearch: (_q?: Query['_q'] | null) => void;
52
+ onEditAsset: ((asset: FileWithType) => void) | null;
53
+ onEditFolder: ((folder: FolderRow) => void) | null;
54
+ onSelectAsset: (element: FileRow | FolderRow) => void;
55
+ onSelectAllAsset?: (checked: boolean | string, rows?: FolderRow[] | FileRow[]) => void;
56
+ queryObject: Query;
57
+ pagination: {
58
+ pageCount: number;
59
+ };
60
+ selectedAssets: FileWithType[] | FolderWithType[];
61
+ }
62
+ export declare const BrowseStep: ({ allowedTypes, assets: rawAssets, canCreate, canRead, folders, multiple, onAddAsset, onChangeFilters, onChangePage, onChangePageSize, onChangeSearch, onChangeSort, onChangeFolder, onEditAsset, onEditFolder, onSelectAllAsset, onSelectAsset, pagination, queryObject, selectedAssets, }: BrowseStepProps) => import("react/jsx-runtime").JSX.Element;
63
+ export {};
@@ -0,0 +1 @@
1
+ export declare const isSelectable: (allowedTypes: string[], mime?: string) => boolean;
@@ -0,0 +1,6 @@
1
+ interface DialogFooterProps {
2
+ onClose: () => void;
3
+ onValidate?: () => void;
4
+ }
5
+ export declare const DialogFooter: ({ onClose, onValidate }: DialogFooterProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { File } from '../../../../../shared/contracts/files';
2
+ interface SelectedStepProps {
3
+ onSelectAsset: (asset: File) => void;
4
+ selectedAssets: File[];
5
+ onReorderAsset?: (fromIndex: number, toIndex: number) => void;
6
+ }
7
+ export declare const SelectedStep: ({ selectedAssets, onSelectAsset, onReorderAsset, }: SelectedStepProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,39 @@
1
+ import type { File as Asset } from '../../../../shared/contracts/files';
2
+ import type { Folder } from '../../../../shared/contracts/folders';
3
+ import type { AllowedTypes } from '../AssetCard/AssetCard';
4
+ export interface FileRow extends Asset {
5
+ folderURL?: string;
6
+ isSelectable?: boolean;
7
+ type?: string;
8
+ }
9
+ export interface FolderRow extends Folder {
10
+ folderURL?: string;
11
+ isSelectable?: boolean;
12
+ type?: string;
13
+ }
14
+ interface AssetContentProps {
15
+ allowedTypes?: AllowedTypes[];
16
+ folderId?: number | null;
17
+ onClose: () => void;
18
+ onAddAsset: (arg?: {
19
+ folderId: number | {
20
+ id: number;
21
+ } | null | undefined;
22
+ }) => void;
23
+ onAddFolder: ({ folderId }: {
24
+ folderId: number | {
25
+ id: number;
26
+ } | null | undefined;
27
+ }) => void;
28
+ onChangeFolder: (folderId: number | null) => void;
29
+ onValidate: (selectedAssets: Asset[]) => void;
30
+ multiple?: boolean;
31
+ trackedLocation?: string;
32
+ initiallySelectedAssets?: Asset[];
33
+ }
34
+ export declare const AssetContent: ({ allowedTypes, folderId, onClose, onAddAsset, onAddFolder, onChangeFolder, onValidate, multiple, initiallySelectedAssets, trackedLocation, }: AssetContentProps) => import("react/jsx-runtime").JSX.Element;
35
+ interface AssetDialogProps extends AssetContentProps {
36
+ open?: boolean;
37
+ }
38
+ export declare const AssetDialog: ({ open, onClose, ...restProps }: AssetDialogProps) => import("react/jsx-runtime").JSX.Element;
39
+ export {};
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ interface DraggableProps {
3
+ id: string | number;
4
+ index: number;
5
+ children: React.ReactNode;
6
+ moveItem: (fromIndex: number, toIndex: number) => void;
7
+ }
8
+ export declare const Draggable: ({ children, id, index, moveItem }: DraggableProps) => import("react/jsx-runtime").JSX.Element;
9
+ export {};
@@ -0,0 +1,14 @@
1
+ import type { File } from '../../../../shared/contracts/files';
2
+ import type { AllowedTypes } from '../AssetCard/AssetCard';
3
+ interface AssetGridListProps {
4
+ allowedTypes?: AllowedTypes[];
5
+ assets: File[];
6
+ onEditAsset?: (asset: File) => void;
7
+ onSelectAsset: (asset: File) => void;
8
+ selectedAssets: File[];
9
+ size?: 'S' | 'M';
10
+ onReorderAsset?: (fromIndex: number, toIndex: number) => void;
11
+ title?: string | null;
12
+ }
13
+ export declare const AssetGridList: ({ allowedTypes, assets, onEditAsset, onSelectAsset, selectedAssets, size, onReorderAsset, title, }: AssetGridListProps) => import("react/jsx-runtime").JSX.Element;
14
+ export {};
@@ -0,0 +1,15 @@
1
+ import { BreadcrumbsProps as BaseBreadcrumbsProps } from '@strapi/design-system';
2
+ import { MessageDescriptor } from 'react-intl';
3
+ type CrumbDefinition = {
4
+ id?: number | null;
5
+ label?: MessageDescriptor | string;
6
+ href?: string;
7
+ path?: string;
8
+ };
9
+ export interface BreadcrumbsProps extends BaseBreadcrumbsProps {
10
+ breadcrumbs: Array<CrumbDefinition>;
11
+ currentFolderId?: number;
12
+ onChangeFolder?: (id: number, path?: string) => void;
13
+ }
14
+ export declare const Breadcrumbs: ({ breadcrumbs, onChangeFolder, currentFolderId, ...props }: BreadcrumbsProps) => import("react/jsx-runtime").JSX.Element;
15
+ export {};
@@ -0,0 +1,7 @@
1
+ interface CrumbSimpleMenuAsyncProps {
2
+ parentsToOmit?: number[];
3
+ currentFolderId?: number;
4
+ onChangeFolder?: (id: number, path?: string) => void;
5
+ }
6
+ export declare const CrumbSimpleMenuAsync: ({ parentsToOmit, currentFolderId, onChangeFolder, }: CrumbSimpleMenuAsyncProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1 @@
1
+ export { Breadcrumbs } from './Breadcrumbs';
@@ -0,0 +1,15 @@
1
+ import { File } from '../../../../shared/contracts/files';
2
+ import type { Folder } from '../../../../shared/contracts/folders';
3
+ interface FolderWithType extends Folder {
4
+ type: string;
5
+ }
6
+ interface FileWithType extends File {
7
+ type: string;
8
+ }
9
+ export interface BulkMoveDialogProps {
10
+ onClose: () => void;
11
+ selected?: Array<FolderWithType | FileWithType>;
12
+ currentFolder?: FolderWithType;
13
+ }
14
+ export declare const BulkMoveDialog: ({ onClose, selected, currentFolder }: BulkMoveDialogProps) => import("react/jsx-runtime").JSX.Element | null;
15
+ export {};
@@ -0,0 +1 @@
1
+ export * from './BulkMoveDialog';
@@ -0,0 +1,8 @@
1
+ interface ContextInfoProps {
2
+ blocks: {
3
+ label: string;
4
+ value: string | number | null;
5
+ }[];
6
+ }
7
+ export declare const ContextInfo: ({ blocks }: ContextInfoProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1 @@
1
+ export { ContextInfo } from './ContextInfo';
@@ -0,0 +1,3 @@
1
+ export declare const CopyLinkButton: ({ url }: {
2
+ url: string;
3
+ }) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1 @@
1
+ export declare const DialogHeader: () => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,9 @@
1
+ import * as React from 'react';
2
+ interface AssetPreviewProps {
3
+ mime: string;
4
+ name: string;
5
+ url: string;
6
+ onLoad?: () => void;
7
+ }
8
+ export declare const AssetPreview: React.ForwardRefExoticComponent<AssetPreviewProps & React.RefAttributes<HTMLAudioElement | HTMLVideoElement | HTMLImageElement>>;
9
+ export {};
@@ -0,0 +1,7 @@
1
+ interface CroppingActionsProps {
2
+ onCancel: () => void;
3
+ onValidate: () => void;
4
+ onDuplicate?: () => void;
5
+ }
6
+ export declare const CroppingActions: ({ onCancel, onValidate, onDuplicate }: CroppingActionsProps) => import("react/jsx-runtime").JSX.Element;
7
+ export {};
@@ -0,0 +1,17 @@
1
+ /// <reference types="react" />
2
+ export declare const RelativeBox: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<Omit<import("@strapi/design-system").TransientBoxProps & {
3
+ children?: import("react").ReactNode;
4
+ } & import("@strapi/design-system/dist/types").AsProp<import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements>> & Omit<Omit<any, "ref">, "children" | keyof import("@strapi/design-system/dist/types").AsProp<C> | keyof import("@strapi/design-system").TransientBoxProps> & {
5
+ ref?: any;
6
+ }, "ref"> & {
7
+ ref?: any;
8
+ }, never>> & Omit<import("@strapi/design-system").BoxComponent<"div">, keyof import("react").Component<any, {}, any>>;
9
+ export declare const Wrapper: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
10
+ export declare const ActionRow: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<Omit<Omit<import("@strapi/design-system").FlexProps<import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements>>, "ref"> & import("react").RefAttributes<unknown>, "ref"> & {
11
+ ref?: ((instance: unknown) => void) | import("react").RefObject<unknown> | null | undefined;
12
+ }, never>> & Omit<(<C extends import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> = "div">(props: import("react").PropsWithoutRef<import("@strapi/design-system").FlexProps<C>> & import("react").RefAttributes<unknown>) => import("react").ReactNode), keyof import("react").Component<any, {}, any>>;
13
+ export declare const CroppingActionRow: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<Omit<Omit<import("@strapi/design-system").FlexProps<import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements>>, "ref"> & import("react").RefAttributes<unknown>, "ref"> & {
14
+ ref?: ((instance: unknown) => void) | import("react").RefObject<unknown> | null | undefined;
15
+ }, never>> & Omit<(<C extends import("react").ElementType<any, keyof import("react").JSX.IntrinsicElements> = "div">(props: import("react").PropsWithoutRef<import("@strapi/design-system").FlexProps<C>> & import("react").RefAttributes<unknown>) => import("react").ReactNode), keyof import("react").Component<any, {}, any>>;
16
+ export declare const BadgeOverride: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("@strapi/design-system").BadgeProps, never>> & Omit<({ active, size, textColor, backgroundColor, children, minWidth, ...props }: import("@strapi/design-system").BadgeProps) => import("react/jsx-runtime").JSX.Element, keyof import("react").Component<any, {}, any>>;
17
+ export declare const UploadProgressWrapper: import("styled-components").IStyledComponent<"web", import("styled-components/dist/types").FastOmit<import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, never>>;
@@ -0,0 +1,23 @@
1
+ import type { File as FileDefinition, RawFile } from '../../../../../shared/contracts/files';
2
+ import 'cropperjs/dist/cropper.css';
3
+ interface Asset extends Omit<FileDefinition, 'folder'> {
4
+ isLocal?: boolean;
5
+ rawFile?: RawFile;
6
+ folder?: FileDefinition['folder'] & {
7
+ id: number;
8
+ };
9
+ }
10
+ interface PreviewBoxProps {
11
+ asset: Asset;
12
+ canUpdate: boolean;
13
+ canCopyLink: boolean;
14
+ canDownload: boolean;
15
+ replacementFile?: File;
16
+ onDelete: (asset?: Asset | null) => void;
17
+ onCropFinish: () => void;
18
+ onCropStart: () => void;
19
+ onCropCancel: () => void;
20
+ trackedLocation?: string;
21
+ }
22
+ export declare const PreviewBox: ({ asset, canUpdate, canCopyLink, canDownload, onDelete, onCropFinish, onCropStart, onCropCancel, replacementFile, trackedLocation, }: PreviewBoxProps) => import("react/jsx-runtime").JSX.Element;
23
+ export {};
@@ -0,0 +1,8 @@
1
+ import type { File } from '../../../../shared/contracts/files';
2
+ interface RemoveAssetDialogProps {
3
+ open: boolean;
4
+ onClose: (open: boolean | null) => void;
5
+ asset: File;
6
+ }
7
+ export declare const RemoveAssetDialog: ({ open, onClose, asset }: RemoveAssetDialogProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,8 @@
1
+ import { ButtonProps } from '@strapi/design-system';
2
+ interface ReplaceMediaButtonProps extends ButtonProps {
3
+ acceptedMime: string;
4
+ onSelectMedia: (file?: File) => void;
5
+ trackedLocation?: string;
6
+ }
7
+ export declare const ReplaceMediaButton: ({ onSelectMedia, acceptedMime, trackedLocation, ...props }: ReplaceMediaButtonProps) => import("react/jsx-runtime").JSX.Element;
8
+ export {};
@@ -0,0 +1,28 @@
1
+ import type { File as FileDefinition, RawFile } from '../../../../shared/contracts/files';
2
+ export interface Asset extends Omit<FileDefinition, 'folder'> {
3
+ isLocal?: boolean;
4
+ rawFile?: RawFile;
5
+ folder?: FileDefinition['folder'] & {
6
+ id: number;
7
+ };
8
+ }
9
+ interface EditAssetContentProps {
10
+ asset?: Asset;
11
+ canUpdate?: boolean;
12
+ canCopyLink?: boolean;
13
+ canDownload?: boolean;
14
+ trackedLocation?: string;
15
+ onClose: (arg?: Asset | null | boolean) => void;
16
+ }
17
+ export declare const EditAssetContent: ({ onClose, asset, canUpdate, canCopyLink, canDownload, trackedLocation, }: EditAssetContentProps) => import("react/jsx-runtime").JSX.Element;
18
+ interface EditAssetDialogProps {
19
+ asset: Asset;
20
+ canUpdate?: boolean;
21
+ canCopyLink?: boolean;
22
+ canDownload?: boolean;
23
+ trackedLocation?: string;
24
+ open: boolean;
25
+ onClose: (arg?: Asset | null | boolean) => void;
26
+ }
27
+ export declare const EditAssetDialog: ({ open, onClose, canUpdate, canCopyLink, canDownload, ...restProps }: EditAssetDialogProps) => import("react/jsx-runtime").JSX.Element;
28
+ export {};
@@ -0,0 +1,10 @@
1
+ import type { FolderDefinition } from '../../../../shared/contracts/folders';
2
+ export interface EditFolderDialogProps {
3
+ parentFolderId?: string | number | null;
4
+ location?: string;
5
+ folder?: FolderDefinition;
6
+ open?: boolean;
7
+ onClose: (arg?: any) => void;
8
+ }
9
+ export declare const EditFolderContent: ({ onClose, folder, location, parentFolderId, }: EditFolderDialogProps) => import("react/jsx-runtime").JSX.Element;
10
+ export declare const EditFolderDialog: ({ open, onClose, ...restProps }: EditFolderDialogProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,5 @@
1
+ interface EditFolderModalHeaderProps {
2
+ isEditing?: boolean;
3
+ }
4
+ export declare const EditFolderModalHeader: ({ isEditing }: EditFolderModalHeaderProps) => import("react/jsx-runtime").JSX.Element;
5
+ export {};
@@ -0,0 +1,2 @@
1
+ import { EditFolderModalHeader } from './ModalHeader';
2
+ export { EditFolderModalHeader };
@@ -0,0 +1,7 @@
1
+ interface RemoveFolderDialogProps {
2
+ onClose: () => void;
3
+ onConfirm: () => void;
4
+ open: boolean;
5
+ }
6
+ export declare const RemoveFolderDialog: ({ onClose, onConfirm, open }: RemoveFolderDialogProps) => import("react/jsx-runtime").JSX.Element;
7
+ export default RemoveFolderDialog;
@@ -0,0 +1 @@
1
+ export * from './EditFolderDialog';
@@ -0,0 +1,6 @@
1
+ interface EmptyAssetGridProps {
2
+ count: number;
3
+ size: 'S' | 'M';
4
+ }
5
+ export declare const EmptyAssetGrid: ({ count, size }: EmptyAssetGridProps) => import("react/jsx-runtime").JSX.Element;
6
+ export {};
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ interface EmptyAssetsProps {
3
+ action?: React.ReactNode;
4
+ icon?: React.ElementType;
5
+ content: string;
6
+ size?: 'S' | 'M';
7
+ count?: number;
8
+ }
9
+ export declare const EmptyAssets: ({ icon: Icon, content, action, size, count, }: EmptyAssetsProps) => import("react/jsx-runtime").JSX.Element;
10
+ export {};