@emailmaker/filemanager 0.10.12 → 0.10.14

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.
@@ -135,8 +135,6 @@ and limitations under the License.
135
135
 
136
136
  /**![check-circle](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTUxMiA2NEMyNjQuNiA2NCA2NCAyNjQuNiA2NCA1MTJzMjAwLjYgNDQ4IDQ0OCA0NDggNDQ4LTIwMC42IDQ0OC00NDhTNzU5LjQgNjQgNTEyIDY0em0xOTMuNSAzMDEuN2wtMjEwLjYgMjkyYTMxLjggMzEuOCAwIDAxLTUxLjcgMEwzMTguNSA0ODQuOWMtMy44LTUuMyAwLTEyLjcgNi41LTEyLjdoNDYuOWMxMC4yIDAgMTkuOSA0LjkgMjUuOSAxMy4zbDcxLjIgOTguOCAxNTcuMi0yMThjNi04LjMgMTUuNi0xMy4zIDI1LjktMTMuM0g2OTljNi41IDAgMTAuMyA3LjQgNi41IDEyLjd6IiAvPjwvc3ZnPg==) */
137
137
 
138
- /**![check-circle](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTY5OSAzNTNoLTQ2LjljLTEwLjIgMC0xOS45IDQuOS0yNS45IDEzLjNMNDY5IDU4NC4zbC03MS4yLTk4LjhjLTYtOC4zLTE1LjYtMTMuMy0yNS45LTEzLjNIMzI1Yy02LjUgMC0xMC4zIDcuNC02LjUgMTIuN2wxMjQuNiAxNzIuOGEzMS44IDMxLjggMCAwMDUxLjcgMGwyMTAuNi0yOTJjMy45LTUuMy4xLTEyLjctNi40LTEyLjd6IiAvPjxwYXRoIGQ9Ik01MTIgNjRDMjY0LjYgNjQgNjQgMjY0LjYgNjQgNTEyczIwMC42IDQ0OCA0NDggNDQ4IDQ0OC0yMDAuNiA0NDgtNDQ4Uzc1OS40IDY0IDUxMiA2NHptMCA4MjBjLTIwNS40IDAtMzcyLTE2Ni42LTM3Mi0zNzJzMTY2LjYtMzcyIDM3Mi0zNzIgMzcyIDE2Ni42IDM3MiAzNzItMTY2LjYgMzcyLTM3MiAzNzJ6IiAvPjwvc3ZnPg==) */
139
-
140
138
  /**![check](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTkxMiAxOTBoLTY5LjljLTkuOCAwLTE5LjEgNC41LTI1LjEgMTIuMkw0MDQuNyA3MjQuNSAyMDcgNDc0YTMyIDMyIDAgMDAtMjUuMS0xMi4ySDExMmMtNi43IDAtMTAuNCA3LjctNi4zIDEyLjlsMjczLjkgMzQ3YzEyLjggMTYuMiAzNy40IDE2LjIgNTAuMyAwbDQ4OC40LTYxOC45YzQuMS01LjEuNC0xMi44LTYuMy0xMi44eiIgLz48L3N2Zz4=) */
141
139
 
142
140
  /**![close-circle](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIGZpbGwtcnVsZT0iZXZlbm9kZCIgdmlld0JveD0iNjQgNjQgODk2IDg5NiIgZm9jdXNhYmxlPSJmYWxzZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48cGF0aCBkPSJNNTEyIDY0YzI0Ny40IDAgNDQ4IDIwMC42IDQ0OCA0NDhTNzU5LjQgOTYwIDUxMiA5NjAgNjQgNzU5LjQgNjQgNTEyIDI2NC42IDY0IDUxMiA2NHptMTI3Ljk4IDI3NC44MmgtLjA0bC0uMDguMDZMNTEyIDQ2Ni43NSAzODQuMTQgMzM4Ljg4Yy0uMDQtLjA1LS4wNi0uMDYtLjA4LS4wNmEuMTIuMTIgMCAwMC0uMDcgMGMtLjAzIDAtLjA1LjAxLS4wOS4wNWwtNDUuMDIgNDUuMDJhLjIuMiAwIDAwLS4wNS4wOS4xMi4xMiAwIDAwMCAuMDd2LjAyYS4yNy4yNyAwIDAwLjA2LjA2TDQ2Ni43NSA1MTIgMzM4Ljg4IDYzOS44NmMtLjA1LjA0LS4wNi4wNi0uMDYuMDhhLjEyLjEyIDAgMDAwIC4wN2MwIC4wMy4wMS4wNS4wNS4wOWw0NS4wMiA0NS4wMmEuMi4yIDAgMDAuMDkuMDUuMTIuMTIgMCAwMC4wNyAwYy4wMiAwIC4wNC0uMDEuMDgtLjA1TDUxMiA1NTcuMjVsMTI3Ljg2IDEyNy44N2MuMDQuMDQuMDYuMDUuMDguMDVhLjEyLjEyIDAgMDAuMDcgMGMuMDMgMCAuMDUtLjAxLjA5LS4wNWw0NS4wMi00NS4wMmEuMi4yIDAgMDAuMDUtLjA5LjEyLjEyIDAgMDAwLS4wN3YtLjAyYS4yNy4yNyAwIDAwLS4wNS0uMDZMNTU3LjI1IDUxMmwxMjcuODctMTI3Ljg2Yy4wNC0uMDQuMDUtLjA2LjA1LS4wOGEuMTIuMTIgMCAwMDAtLjA3YzAtLjAzLS4wMS0uMDUtLjA1LS4wOWwtNDUuMDItNDUuMDJhLjIuMiAwIDAwLS4wOS0uMDUuMTIuMTIgMCAwMC0uMDcgMHoiIC8+PC9zdmc+) */
@@ -147,12 +145,8 @@ and limitations under the License.
147
145
 
148
146
  /**![exclamation-circle](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTUxMiA2NEMyNjQuNiA2NCA2NCAyNjQuNiA2NCA1MTJzMjAwLjYgNDQ4IDQ0OCA0NDggNDQ4LTIwMC42IDQ0OC00NDhTNzU5LjQgNjQgNTEyIDY0em0tMzIgMjMyYzAtNC40IDMuNi04IDgtOGg0OGM0LjQgMCA4IDMuNiA4IDh2MjcyYzAgNC40LTMuNiA4LTggOGgtNDhjLTQuNCAwLTgtMy42LTgtOFYyOTZ6bTMyIDQ0MGE0OC4wMSA0OC4wMSAwIDAxMC05NiA0OC4wMSA0OC4wMSAwIDAxMCA5NnoiIC8+PC9zdmc+) */
149
147
 
150
- /**![exclamation-circle](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTUxMiA2NEMyNjQuNiA2NCA2NCAyNjQuNiA2NCA1MTJzMjAwLjYgNDQ4IDQ0OCA0NDggNDQ4LTIwMC42IDQ0OC00NDhTNzU5LjQgNjQgNTEyIDY0em0wIDgyMGMtMjA1LjQgMC0zNzItMTY2LjYtMzcyLTM3MnMxNjYuNi0zNzIgMzcyLTM3MiAzNzIgMTY2LjYgMzcyIDM3Mi0xNjYuNiAzNzItMzcyIDM3MnoiIC8+PHBhdGggZD0iTTQ2NCA2ODhhNDggNDggMCAxMDk2IDAgNDggNDggMCAxMC05NiAwem0yNC0xMTJoNDhjNC40IDAgOC0zLjYgOC04VjI5NmMwLTQuNC0zLjYtOC04LThoLTQ4Yy00LjQgMC04IDMuNi04IDh2MjcyYzAgNC40IDMuNiA4IDggOHoiIC8+PC9zdmc+) */
151
-
152
148
  /**![eye](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTk0Mi4yIDQ4Ni4yQzg0Ny40IDI4Ni41IDcwNC4xIDE4NiA1MTIgMTg2Yy0xOTIuMiAwLTMzNS40IDEwMC41LTQzMC4yIDMwMC4zYTYwLjMgNjAuMyAwIDAwMCA1MS41QzE3Ni42IDczNy41IDMxOS45IDgzOCA1MTIgODM4YzE5Mi4yIDAgMzM1LjQtMTAwLjUgNDMwLjItMzAwLjMgNy43LTE2LjIgNy43LTM1IDAtNTEuNXpNNTEyIDc2NmMtMTYxLjMgMC0yNzkuNC04MS44LTM2Mi43LTI1NEMyMzIuNiAzMzkuOCAzNTAuNyAyNTggNTEyIDI1OGMxNjEuMyAwIDI3OS40IDgxLjggMzYyLjcgMjU0Qzc5MS41IDY4NC4yIDY3My40IDc2NiA1MTIgNzY2em0tNC00MzBjLTk3LjIgMC0xNzYgNzguOC0xNzYgMTc2czc4LjggMTc2IDE3NiAxNzYgMTc2LTc4LjggMTc2LTE3Ni03OC44LTE3Ni0xNzYtMTc2em0wIDI4OGMtNjEuOSAwLTExMi01MC4xLTExMi0xMTJzNTAuMS0xMTIgMTEyLTExMiAxMTIgNTAuMSAxMTIgMTEyLTUwLjEgMTEyLTExMiAxMTJ6IiAvPjwvc3ZnPg==) */
153
149
 
154
- /**![file-image](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTU1My4xIDUwOS4xbC03Ny44IDk5LjItNDEuMS01Mi40YTggOCAwIDAwLTEyLjYgMGwtOTkuOCAxMjcuMmE3Ljk4IDcuOTggMCAwMDYuMyAxMi45SDY5NmM2LjcgMCAxMC40LTcuNyA2LjMtMTIuOWwtMTM2LjUtMTc0YTguMSA4LjEgMCAwMC0xMi43IDB6TTM2MCA0NDJhNDAgNDAgMCAxMDgwIDAgNDAgNDAgMCAxMC04MCAwem00OTQuNi0xNTMuNEw2MzkuNCA3My40Yy02LTYtMTQuMS05LjQtMjIuNi05LjRIMTkyYy0xNy43IDAtMzIgMTQuMy0zMiAzMnY4MzJjMCAxNy43IDE0LjMgMzIgMzIgMzJoNjQwYzE3LjcgMCAzMi0xNC4zIDMyLTMyVjMxMS4zYzAtOC41LTMuNC0xNi43LTkuNC0yMi43ek03OTAuMiAzMjZINjAyVjEzNy44TDc5MC4yIDMyNnptMS44IDU2MkgyMzJWMTM2aDMwMnYyMTZhNDIgNDIgMCAwMDQyIDQyaDIxNnY0OTR6IiAvPjwvc3ZnPg==) */
155
-
156
150
  /**![file](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTg1NC42IDI4OC42TDYzOS40IDczLjRjLTYtNi0xNC4xLTkuNC0yMi42LTkuNEgxOTJjLTE3LjcgMC0zMiAxNC4zLTMyIDMydjgzMmMwIDE3LjcgMTQuMyAzMiAzMiAzMmg2NDBjMTcuNyAwIDMyLTE0LjMgMzItMzJWMzExLjNjMC04LjUtMy40LTE2LjctOS40LTIyLjd6TTc5MC4yIDMyNkg2MDJWMTM3LjhMNzkwLjIgMzI2em0xLjggNTYySDIzMlYxMzZoMzAydjIxNmE0MiA0MiAwIDAwNDIgNDJoMjE2djQ5NHoiIC8+PC9zdmc+) */
157
151
 
158
152
  /**![folder-add](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQ4NCA0NDMuMVY1MjhoLTg0LjVjLTQuMSAwLTcuNSAzLjEtNy41IDd2NDJjMCAzLjggMy40IDcgNy41IDdINDg0djg0LjljMCAzLjkgMy4yIDcuMSA3IDcuMWg0MmMzLjkgMCA3LTMuMiA3LTcuMVY1ODRoODQuNWM0LjEgMCA3LjUtMy4yIDcuNS03di00MmMwLTMuOS0zLjQtNy03LjUtN0g1NDB2LTg0LjljMC0zLjktMy4xLTcuMS03LTcuMWgtNDJjLTMuOCAwLTcgMy4yLTcgNy4xem0zOTYtMTQ0LjdINTIxTDQwMy43IDE4Ni4yYTguMTUgOC4xNSAwIDAwLTUuNS0yLjJIMTQ0Yy0xNy43IDAtMzIgMTQuMy0zMiAzMnY1OTJjMCAxNy43IDE0LjMgMzIgMzIgMzJoNzM2YzE3LjcgMCAzMi0xNC4zIDMyLTMyVjMzMC40YzAtMTcuNy0xNC4zLTMyLTMyLTMyek04NDAgNzY4SDE4NFYyNTZoMTg4LjVsMTE5LjYgMTE0LjRIODQwVjc2OHoiIC8+PC9zdmc+) */
@@ -167,8 +161,6 @@ and limitations under the License.
167
161
 
168
162
  /**![loading](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjAgMCAxMDI0IDEwMjQiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTk4OCA1NDhjLTE5LjkgMC0zNi0xNi4xLTM2LTM2IDAtNTkuNC0xMS42LTExNy0zNC42LTE3MS4zYTQ0MC40NSA0NDAuNDUgMCAwMC05NC4zLTEzOS45IDQzNy43MSA0MzcuNzEgMCAwMC0xMzkuOS05NC4zQzYyOSA4My42IDU3MS40IDcyIDUxMiA3MmMtMTkuOSAwLTM2LTE2LjEtMzYtMzZzMTYuMS0zNiAzNi0zNmM2OS4xIDAgMTM2LjIgMTMuNSAxOTkuMyA0MC4zQzc3Mi4zIDY2IDgyNyAxMDMgODc0IDE1MGM0NyA0NyA4My45IDEwMS44IDEwOS43IDE2Mi43IDI2LjcgNjMuMSA0MC4yIDEzMC4yIDQwLjIgMTk5LjMuMSAxOS45LTE2IDM2LTM1LjkgMzZ6IiAvPjwvc3ZnPg==) */
169
163
 
170
- /**![minus](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTg3MiA0NzRIMTUyYy00LjQgMC04IDMuNi04IDh2NjBjMCA0LjQgMy42IDggOCA4aDcyMGM0LjQgMCA4LTMuNiA4LTh2LTYwYzAtNC40LTMuNi04LTgtOHoiIC8+PC9zdmc+) */
171
-
172
164
  /**![right](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTc2NS43IDQ4Ni44TDMxNC45IDEzNC43QTcuOTcgNy45NyAwIDAwMzAyIDE0MXY3Ny4zYzAgNC45IDIuMyA5LjYgNi4xIDEyLjZsMzYwIDI4MS4xLTM2MCAyODEuMWMtMy45IDMtNi4xIDcuNy02LjEgMTIuNlY4ODNjMCA2LjcgNy43IDEwLjQgMTIuOSA2LjNsNDUwLjgtMzUyLjFhMzEuOTYgMzEuOTYgMCAwMDAtNTAuNHoiIC8+PC9zdmc+) */
173
165
 
174
166
  /**![upload](data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNTAiIGhlaWdodD0iNTAiIGZpbGw9IiNjYWNhY2EiIHZpZXdCb3g9IjY0IDY0IDg5NiA4OTYiIGZvY3VzYWJsZT0iZmFsc2UiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PHBhdGggZD0iTTQwMCAzMTcuN2g3My45VjY1NmMwIDQuNCAzLjYgOCA4IDhoNjBjNC40IDAgOC0zLjYgOC04VjMxNy43SDYyNGM2LjcgMCAxMC40LTcuNyA2LjMtMTIuOUw1MTguMyAxNjNhOCA4IDAgMDAtMTIuNiAwbC0xMTIgMTQxLjdjLTQuMSA1LjMtLjQgMTMgNi4zIDEzek04NzggNjI2aC02MGMtNC40IDAtOCAzLjYtOCA4djE1NEgyMTRWNjM0YzAtNC40LTMuNi04LTgtOGgtNjBjLTQuNCAwLTggMy42LTggOHYxOThjMCAxNy43IDE0LjMgMzIgMzIgMzJoNjg0YzE3LjcgMCAzMi0xNC4zIDMyLTMyVjYzNGMwLTQuNC0zLjYtOC04LTh6IiAvPjwvc3ZnPg==) */
@@ -4,7 +4,8 @@ export interface UseFilesAPIActions {
4
4
  handleDeleteFile: (fileId: string) => Promise<void>;
5
5
  handleDeleteFolder: (folderId: string) => Promise<void>;
6
6
  handleAddFile: (progressCallbacks?: {
7
- onStart: (file: globalThis.File) => void;
7
+ onStart?: (file: globalThis.File) => void;
8
+ onStartBatch?: (files: globalThis.File[]) => void;
8
9
  onProgress: (fileName: string, progress: number) => void;
9
10
  onComplete: (fileName: string) => void;
10
11
  onError: (fileName: string, error: string) => void;
@@ -12,6 +13,6 @@ export interface UseFilesAPIActions {
12
13
  handleAddFileByUrl: (url?: string | null, noFolder?: boolean) => Promise<AppFile | void>;
13
14
  handleDroppedFiles: (droppedFiles: globalThis.File[]) => Promise<void>;
14
15
  getFileData: (file: AppFile) => Promise<Blob | undefined>;
15
- uploadFileWithProvider: (file: globalThis.File) => Promise<void>;
16
+ uploadFileWithProvider: (file: globalThis.File, targetFolderId?: string) => Promise<void>;
16
17
  }
17
18
  export declare const useFilesAPI: () => UseFilesAPIActions;
@@ -9,10 +9,10 @@ export interface UseFilesModalsActions {
9
9
  handleRenameOk: () => Promise<void>;
10
10
  showMoveModal: () => void;
11
11
  handleMoveCancel: () => void;
12
- handleMoveOk: () => Promise<void>;
12
+ handleMoveOk: (targetFolder?: string) => Promise<void>;
13
13
  showCopyModal: () => void;
14
14
  handleCopyCancel: () => void;
15
- handleCopyOk: () => Promise<void>;
15
+ handleCopyOk: (targetFolder?: string) => Promise<void>;
16
16
  showDeleteConfirm: () => void;
17
17
  handleDeleteConfirmCancel: () => void;
18
18
  handleDeleteConfirmOk: () => Promise<void>;
@@ -2,7 +2,11 @@ export interface UseFilesSelectionState {
2
2
  selectedFiles: Set<string>;
3
3
  }
4
4
  export interface UseFilesSelectionActions {
5
- toggleFileSelection: (fileId: string) => void;
5
+ toggleFileSelection: (fileId: string, opts?: {
6
+ metaKey?: boolean;
7
+ ctrlKey?: boolean;
8
+ shiftKey?: boolean;
9
+ }) => void;
6
10
  }
7
11
  export declare const useFilesSelection: () => {
8
12
  state: UseFilesSelectionState;
@@ -38,6 +38,10 @@ export interface FileManagerState {
38
38
  activeLibraryItem: string;
39
39
  folderToRename: string | null;
40
40
  multiSelect: boolean;
41
+ undoDeletion?: {
42
+ itemIds: string[];
43
+ sourceFolderId: string | null;
44
+ } | null;
41
45
  }
42
46
  export interface FileManagerActions {
43
47
  setFolders: (folders: Folder[]) => void;
@@ -62,10 +66,14 @@ export interface FileManagerActions {
62
66
  setFileToRename: (fileId: string | null) => void;
63
67
  setActiveLibraryItem: (item: LibraryMenuKey) => void;
64
68
  setFolderToRename: (folderId: string | null) => void;
69
+ setUndoDeletion: (payload: {
70
+ itemIds: string[];
71
+ sourceFolderId: string | null;
72
+ } | null) => void;
65
73
  updatePathHistoryOnFolderRename: (folderId: string, newName: string) => void;
66
74
  fetchFolders: () => Promise<void>;
67
75
  handleCreateFolder: () => void;
68
- handleModalOk: () => Promise<void>;
76
+ handleModalOk: (currentForm?: FormInstance) => Promise<Folder | undefined>;
69
77
  handleModalCancel: () => void;
70
78
  generateMenuItems: () => MenuItem[];
71
79
  fetchFiles: (params?: FilesQueryParams) => Promise<void>;
@@ -13,23 +13,28 @@ export interface UseFilesActions {
13
13
  handleDeleteFile: (fileId: string) => Promise<void>;
14
14
  handleDeleteFolder: (folderId: string) => Promise<void>;
15
15
  handleAddFile: (progressCallbacks?: {
16
- onStart: (file: globalThis.File) => void;
16
+ onStart?: (file: globalThis.File) => void;
17
+ onStartBatch?: (files: globalThis.File[]) => void;
17
18
  onProgress: (fileName: string, progress: number) => void;
18
19
  onComplete: (fileName: string) => void;
19
20
  onError: (fileName: string, error: string) => void;
20
21
  }) => Promise<void>;
21
22
  handleAddFileByUrl: (url?: string | null, noFolder?: boolean) => Promise<AppFile | void>;
22
- toggleFileSelection: (fileId: string) => void;
23
+ toggleFileSelection: (fileId: string, opts?: {
24
+ metaKey?: boolean;
25
+ ctrlKey?: boolean;
26
+ shiftKey?: boolean;
27
+ }) => void;
23
28
  showRenameModal: (fileId: string) => void;
24
29
  handleRenameCancel: () => void;
25
30
  handleRenameOk: () => Promise<void>;
26
31
  handleDroppedFiles: (droppedFiles: globalThis.File[]) => Promise<void>;
27
32
  showMoveModal: () => void;
28
33
  handleMoveCancel: () => void;
29
- handleMoveOk: () => Promise<void>;
34
+ handleMoveOk: (targetFolder?: string) => Promise<void>;
30
35
  showCopyModal: () => void;
31
36
  handleCopyCancel: () => void;
32
- handleCopyOk: () => Promise<void>;
37
+ handleCopyOk: (targetFolder?: string) => Promise<void>;
33
38
  uploadFileWithProvider: (file: globalThis.File) => Promise<AppFile | void>;
34
39
  showDeleteConfirm: () => void;
35
40
  handleDeleteConfirmCancel: () => void;
@@ -1,5 +1,6 @@
1
1
  import { Folder, MenuItem } from '../../types';
2
2
  import { FileManagerHookBase } from './types';
3
+ import type { FormInstance } from 'antd/es/form';
3
4
  export interface UseFoldersState {
4
5
  folders: Folder[];
5
6
  isCreatingFolder: boolean;
@@ -9,7 +10,7 @@ export interface UseFoldersActions {
9
10
  fetchFolders: () => Promise<void>;
10
11
  fetchChildFolders: (parentId: string | null) => Promise<Folder[]>;
11
12
  handleCreateFolder: () => void;
12
- handleModalOk: () => Promise<void>;
13
+ handleModalOk: (currentForm?: FormInstance) => Promise<Folder | undefined>;
13
14
  handleModalCancel: () => void;
14
15
  generateMenuItems: () => MenuItem[];
15
16
  renameFolder: (folderId: string, newName: string) => Promise<void>;
@@ -19,5 +19,7 @@ export declare const useCustomIcons: () => {
19
19
  DropZoneFileIcon: (props?: IconProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
20
20
  BigStockIcon: (props?: IconProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
21
21
  BigAIIcon: (props?: IconProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
22
+ GifPlayIcon: (props?: IconProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
23
+ StockBigIcon: (props?: IconProps) => React.ReactElement<any, string | React.JSXElementConstructor<any>>;
22
24
  getCustomIcon: (iconName: keyof NonNullable<import("../types").CustomIcons | undefined>, defaultIcon: React.ComponentType<any>, props?: IconProps) => React.ReactElement;
23
25
  };
@@ -1,8 +1,8 @@
1
1
  export declare const useNotifications: () => {
2
+ open: (args: import("antd").NotificationArgsProps) => void;
2
3
  success: (args: import("antd").NotificationArgsProps) => void;
3
4
  error: (args: import("antd").NotificationArgsProps) => void;
4
5
  info: (args: import("antd").NotificationArgsProps) => void;
5
6
  warning: (args: import("antd").NotificationArgsProps) => void;
6
- open: (args: import("antd").NotificationArgsProps) => void;
7
7
  destroy(key?: React.Key): void;
8
8
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@emailmaker/filemanager",
3
- "version": "0.10.12",
3
+ "version": "0.10.14",
4
4
  "main": "./file-manager.js",
5
5
  "module": "./file-manager.esm.js",
6
6
  "types": "./index.d.ts",
package/types.d.ts CHANGED
@@ -18,8 +18,8 @@ export interface File {
18
18
  id: string;
19
19
  name: string;
20
20
  size?: number;
21
- date?: string;
22
21
  folderId: string;
22
+ date?: string;
23
23
  type?: string;
24
24
  url?: string;
25
25
  thumbnail?: string;
@@ -185,20 +185,22 @@ export interface FileManagerDataProviders {
185
185
  noFolder?: boolean;
186
186
  }) => Promise<File>;
187
187
  deleteFile: (fileId: string) => Promise<boolean>;
188
- deleteItems?: (items: string[]) => Promise<BatchResult<{}>>;
188
+ deleteItems?: (items: string[], options?: {
189
+ permanent?: boolean;
190
+ }) => Promise<BatchResult<{}>>;
189
191
  renameFile?: (fileId: string, newName: string) => Promise<File>;
190
192
  moveItem?: (options: {
191
193
  itemId: string;
192
194
  targetFolderId: string;
193
195
  isFolder: boolean;
194
196
  }) => Promise<boolean>;
195
- moveItems?: (targetFolderId: string, files: string[]) => Promise<BatchResult<{}>>;
197
+ moveItems?: (targetFolderId: string, files: string[]) => Promise<BatchResult<unknown>>;
196
198
  copyItem?: (options: {
197
199
  itemId: string;
198
200
  targetFolderId: string;
199
201
  isFolder: boolean;
200
202
  }) => Promise<boolean>;
201
- copyItems?: (targetFolderId: string, files: string[]) => Promise<BatchResult<{}>>;
203
+ copyItems?: (targetFolderId: string, files: string[]) => Promise<BatchResult<unknown>>;
202
204
  updateFile?: (fileId: string, updates: {
203
205
  name?: string;
204
206
  type?: string;
@@ -233,7 +235,7 @@ export interface FileManagerHookReturn {
233
235
  fetchFolders: () => Promise<void>;
234
236
  fetchFiles: (folderId?: string) => Promise<void>;
235
237
  handleCreateFolder: () => void;
236
- handleModalOk: () => Promise<void>;
238
+ handleModalOk: (currentForm?: FormInstance) => Promise<Folder | undefined>;
237
239
  handleModalCancel: () => void;
238
240
  handleDeleteFile: (fileId: string) => Promise<void>;
239
241
  handleAddFile: () => void;
@@ -286,6 +288,8 @@ export interface Config {
286
288
  enableRenameFolder?: boolean;
287
289
  enableRenameFile?: boolean;
288
290
  enableUpdateFile?: boolean;
291
+ /** Разрешить выбор директорий в диалоге загрузки (webkitdirectory) */
292
+ enableDirectoryUpload?: boolean;
289
293
  /** Включить кнопку/пункт редактирования файла */
290
294
  enableEdit?: boolean;
291
295
  /** Включить перемещение */
@@ -14,6 +14,6 @@ export declare class ErrorBoundary extends Component<ErrorBoundaryProps, ErrorBo
14
14
  error: Error;
15
15
  };
16
16
  componentDidCatch(error: Error, errorInfo: React.ErrorInfo): void;
17
- render(): string | number | boolean | Iterable<React.ReactNode> | import("react/jsx-runtime").JSX.Element | null | undefined;
17
+ render(): string | number | boolean | import("react/jsx-runtime").JSX.Element | Iterable<React.ReactNode> | null | undefined;
18
18
  }
19
19
  export {};