@syncfusion/ej2-filemanager 20.1.47 → 20.1.52-10459

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 (203) hide show
  1. package/.eslintrc.json +20 -3
  2. package/README.md +54 -43
  3. package/dist/ej2-filemanager.min.js +1 -0
  4. package/dist/ej2-filemanager.umd.min.js +1 -10
  5. package/dist/ej2-filemanager.umd.min.js.map +1 -1
  6. package/dist/es6/ej2-filemanager.es2015.js +2353 -659
  7. package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
  8. package/dist/es6/ej2-filemanager.es5.js +2422 -709
  9. package/dist/es6/ej2-filemanager.es5.js.map +1 -1
  10. package/dist/global/ej2-filemanager.min.js +1 -10
  11. package/dist/global/ej2-filemanager.min.js.map +1 -1
  12. package/dist/global/index.d.ts +0 -9
  13. package/helpers/e2e/filemanagerHelper.js +183 -166
  14. package/package.json +71 -71
  15. package/src/file-manager/actions/breadcrumb-bar.js +1 -5
  16. package/src/file-manager/actions/index.d.ts +1 -0
  17. package/src/file-manager/actions/index.js +1 -0
  18. package/src/file-manager/actions/toolbar.d.ts +1 -0
  19. package/src/file-manager/actions/toolbar.js +129 -17
  20. package/src/file-manager/actions/virtualization.d.ts +93 -0
  21. package/src/file-manager/actions/virtualization.js +279 -0
  22. package/src/file-manager/base/file-manager-model.d.ts +154 -28
  23. package/src/file-manager/base/file-manager.d.ts +176 -27
  24. package/src/file-manager/base/file-manager.js +244 -28
  25. package/src/file-manager/base/interface.d.ts +329 -3
  26. package/src/file-manager/base/interface.js +0 -1
  27. package/src/file-manager/common/operations.d.ts +7 -0
  28. package/src/file-manager/common/operations.js +830 -185
  29. package/src/file-manager/common/utility.d.ts +46 -3
  30. package/src/file-manager/common/utility.js +249 -73
  31. package/src/file-manager/index.d.ts +1 -0
  32. package/src/file-manager/index.js +1 -0
  33. package/src/file-manager/layout/details-view.d.ts +10 -0
  34. package/src/file-manager/layout/details-view.js +203 -94
  35. package/src/file-manager/layout/large-icons-view.d.ts +4 -2
  36. package/src/file-manager/layout/large-icons-view.js +122 -73
  37. package/src/file-manager/layout/navigation-pane.d.ts +2 -0
  38. package/src/file-manager/layout/navigation-pane.js +97 -73
  39. package/src/file-manager/models/column-model.d.ts +23 -5
  40. package/src/file-manager/models/column.d.ts +21 -2
  41. package/src/file-manager/models/column.js +6 -0
  42. package/src/file-manager/models/default-locale.js +0 -1
  43. package/src/file-manager/models/details-view-settings-model.d.ts +1 -1
  44. package/src/file-manager/models/details-view-settings.js +8 -3
  45. package/src/file-manager/models/search-settings.d.ts +5 -0
  46. package/src/file-manager/models/toolbar-settings-model.d.ts +177 -2
  47. package/src/file-manager/models/toolbar-settings.d.ts +157 -2
  48. package/src/file-manager/models/toolbar-settings.js +64 -2
  49. package/src/file-manager/models/upload-settings-model.d.ts +13 -0
  50. package/src/file-manager/models/upload-settings.d.ts +12 -0
  51. package/src/file-manager/models/upload-settings.js +3 -0
  52. package/src/file-manager/pop-up/context-menu.d.ts +2 -1
  53. package/src/file-manager/pop-up/context-menu.js +111 -36
  54. package/src/file-manager/pop-up/dialog.d.ts +1 -2
  55. package/src/file-manager/pop-up/dialog.js +19 -40
  56. package/src/global.js +1 -1
  57. package/styles/bootstrap-dark-lite.css +1058 -0
  58. package/styles/bootstrap-dark-lite.scss +16 -0
  59. package/styles/bootstrap-dark.css +371 -665
  60. package/styles/bootstrap-dark.scss +17 -1
  61. package/styles/bootstrap-lite.css +1040 -0
  62. package/styles/bootstrap-lite.scss +16 -0
  63. package/styles/bootstrap.css +353 -644
  64. package/styles/bootstrap.scss +17 -1
  65. package/styles/bootstrap4-lite.css +1068 -0
  66. package/styles/bootstrap4-lite.scss +16 -0
  67. package/styles/bootstrap4.css +381 -680
  68. package/styles/bootstrap4.scss +17 -1
  69. package/styles/bootstrap5-dark-lite.css +1078 -0
  70. package/styles/bootstrap5-dark-lite.scss +16 -0
  71. package/styles/bootstrap5-dark.css +376 -694
  72. package/styles/bootstrap5-dark.scss +17 -1
  73. package/styles/bootstrap5-lite.css +1078 -0
  74. package/styles/bootstrap5-lite.scss +16 -0
  75. package/styles/bootstrap5.3-lite.css +1035 -0
  76. package/styles/bootstrap5.3-lite.scss +16 -0
  77. package/styles/bootstrap5.3.css +1603 -0
  78. package/styles/bootstrap5.3.scss +17 -0
  79. package/styles/bootstrap5.css +376 -694
  80. package/styles/bootstrap5.scss +17 -1
  81. package/styles/fabric-dark-lite.css +1039 -0
  82. package/styles/fabric-dark-lite.scss +16 -0
  83. package/styles/fabric-dark.css +358 -642
  84. package/styles/fabric-dark.scss +17 -1
  85. package/styles/fabric-lite.css +1039 -0
  86. package/styles/fabric-lite.scss +16 -0
  87. package/styles/fabric.css +357 -641
  88. package/styles/fabric.scss +17 -1
  89. package/styles/file-manager/_all.scss +1 -1
  90. package/styles/file-manager/_bds-definition.scss +236 -0
  91. package/styles/file-manager/_bigger.scss +758 -0
  92. package/styles/file-manager/_bootstrap-dark-definition.scss +6 -2
  93. package/styles/file-manager/_bootstrap-definition.scss +6 -2
  94. package/styles/file-manager/_bootstrap4-definition.scss +6 -2
  95. package/styles/file-manager/_bootstrap5-definition.scss +20 -15
  96. package/styles/file-manager/_bootstrap5.3-definition.scss +242 -0
  97. package/styles/file-manager/_fabric-dark-definition.scss +6 -2
  98. package/styles/file-manager/_fabric-definition.scss +6 -2
  99. package/styles/file-manager/_fluent-definition.scss +20 -16
  100. package/styles/file-manager/_fluent2-definition.scss +255 -0
  101. package/styles/file-manager/_fusionnew-definition.scss +241 -0
  102. package/styles/file-manager/_highcontrast-definition.scss +6 -2
  103. package/styles/file-manager/_highcontrast-light-definition.scss +6 -2
  104. package/styles/file-manager/_layout.scss +367 -921
  105. package/styles/file-manager/_material-dark-definition.scss +7 -2
  106. package/styles/file-manager/_material-definition.scss +7 -2
  107. package/styles/file-manager/_material3-dark-definition.scss +1 -0
  108. package/styles/file-manager/_material3-definition.scss +235 -0
  109. package/styles/file-manager/_tailwind-definition.scss +20 -16
  110. package/styles/file-manager/_theme.scss +126 -102
  111. package/styles/file-manager/bootstrap-dark.css +371 -665
  112. package/styles/file-manager/bootstrap-dark.scss +2 -1
  113. package/styles/file-manager/bootstrap.css +353 -644
  114. package/styles/file-manager/bootstrap.scss +2 -1
  115. package/styles/file-manager/bootstrap4.css +381 -680
  116. package/styles/file-manager/bootstrap4.scss +2 -1
  117. package/styles/file-manager/bootstrap5-dark.css +376 -694
  118. package/styles/file-manager/bootstrap5-dark.scss +2 -1
  119. package/styles/file-manager/bootstrap5.3.css +1603 -0
  120. package/styles/file-manager/bootstrap5.3.scss +17 -0
  121. package/styles/file-manager/bootstrap5.css +376 -694
  122. package/styles/file-manager/bootstrap5.scss +2 -1
  123. package/styles/file-manager/fabric-dark.css +358 -642
  124. package/styles/file-manager/fabric-dark.scss +2 -1
  125. package/styles/file-manager/fabric.css +357 -641
  126. package/styles/file-manager/fabric.scss +2 -1
  127. package/styles/file-manager/fluent-dark.css +359 -641
  128. package/styles/file-manager/fluent-dark.scss +2 -1
  129. package/styles/file-manager/fluent.css +358 -641
  130. package/styles/file-manager/fluent.scss +2 -1
  131. package/styles/file-manager/fluent2.css +1886 -0
  132. package/styles/file-manager/fluent2.scss +17 -0
  133. package/styles/file-manager/highcontrast-light.css +354 -644
  134. package/styles/file-manager/highcontrast-light.scss +2 -1
  135. package/styles/file-manager/highcontrast.css +377 -647
  136. package/styles/file-manager/highcontrast.scss +2 -1
  137. package/styles/file-manager/icons/_bds.scss +235 -0
  138. package/styles/file-manager/icons/_bootstrap.scss +0 -1
  139. package/styles/file-manager/icons/_bootstrap4.scss +0 -1
  140. package/styles/file-manager/icons/_bootstrap5.3.scss +235 -0
  141. package/styles/file-manager/icons/_fabric-dark.scss +0 -1
  142. package/styles/file-manager/icons/_fabric.scss +0 -1
  143. package/styles/file-manager/icons/_fluent2.scss +235 -0
  144. package/styles/file-manager/icons/_fusionnew.scss +235 -0
  145. package/styles/file-manager/icons/_material3-dark.scss +1 -0
  146. package/styles/file-manager/icons/_material3.scss +235 -0
  147. package/styles/file-manager/material-dark.css +392 -671
  148. package/styles/file-manager/material-dark.scss +2 -1
  149. package/styles/file-manager/material.css +391 -654
  150. package/styles/file-manager/material.scss +2 -1
  151. package/styles/file-manager/material3-dark.css +1633 -0
  152. package/styles/file-manager/material3-dark.scss +18 -0
  153. package/styles/file-manager/material3.css +1635 -0
  154. package/styles/file-manager/material3.scss +18 -0
  155. package/styles/file-manager/tailwind-dark.css +347 -664
  156. package/styles/file-manager/tailwind-dark.scss +2 -1
  157. package/styles/file-manager/tailwind.css +347 -664
  158. package/styles/file-manager/tailwind.scss +2 -1
  159. package/styles/fluent-dark-lite.css +1037 -0
  160. package/styles/fluent-dark-lite.scss +16 -0
  161. package/styles/fluent-dark.css +359 -641
  162. package/styles/fluent-dark.scss +17 -1
  163. package/styles/fluent-lite.css +1036 -0
  164. package/styles/fluent-lite.scss +16 -0
  165. package/styles/fluent.css +358 -641
  166. package/styles/fluent.scss +17 -1
  167. package/styles/fluent2-lite.css +1272 -0
  168. package/styles/fluent2-lite.scss +16 -0
  169. package/styles/fluent2.css +1886 -0
  170. package/styles/fluent2.scss +17 -0
  171. package/styles/highcontrast-light-lite.css +1039 -0
  172. package/styles/highcontrast-light-lite.scss +16 -0
  173. package/styles/highcontrast-light.css +354 -644
  174. package/styles/highcontrast-light.scss +17 -1
  175. package/styles/highcontrast-lite.css +1059 -0
  176. package/styles/highcontrast-lite.scss +16 -0
  177. package/styles/highcontrast.css +377 -647
  178. package/styles/highcontrast.scss +17 -1
  179. package/styles/material-dark-lite.css +1092 -0
  180. package/styles/material-dark-lite.scss +16 -0
  181. package/styles/material-dark.css +392 -671
  182. package/styles/material-dark.scss +17 -1
  183. package/styles/material-lite.css +1097 -0
  184. package/styles/material-lite.scss +16 -0
  185. package/styles/material.css +391 -654
  186. package/styles/material.scss +17 -1
  187. package/styles/material3-dark-lite.css +1090 -0
  188. package/styles/material3-dark-lite.scss +16 -0
  189. package/styles/material3-dark.css +1633 -0
  190. package/styles/material3-dark.scss +19 -0
  191. package/styles/material3-lite.css +1092 -0
  192. package/styles/material3-lite.scss +16 -0
  193. package/styles/material3.css +1635 -0
  194. package/styles/material3.scss +19 -0
  195. package/styles/tailwind-dark-lite.css +1060 -0
  196. package/styles/tailwind-dark-lite.scss +16 -0
  197. package/styles/tailwind-dark.css +347 -664
  198. package/styles/tailwind-dark.scss +17 -1
  199. package/styles/tailwind-lite.css +1060 -0
  200. package/styles/tailwind-lite.scss +16 -0
  201. package/styles/tailwind.css +347 -664
  202. package/styles/tailwind.scss +17 -1
  203. package/CHANGELOG.md +0 -404
@@ -3,6 +3,7 @@ import { INotifyPropertyChanged } from '@syncfusion/ej2-base';
3
3
  import { Splitter } from '@syncfusion/ej2-layouts';
4
4
  import { Dialog } from '@syncfusion/ej2-popups';
5
5
  import { ToolbarSettingsModel } from '../models/index';
6
+ import { ToolbarItemModel } from '../models/index';
6
7
  import { NavigationPaneSettingsModel, DetailsViewSettingsModel } from '../models/index';
7
8
  import { AjaxSettingsModel, SearchSettingsModel } from '../models/index';
8
9
  import { Toolbar } from '../actions/toolbar';
@@ -12,14 +13,16 @@ import { Uploader, FileInfo } from '@syncfusion/ej2-inputs';
12
13
  import { UploadSettingsModel } from '../models/upload-settings-model';
13
14
  import { FileManagerModel } from './file-manager-model';
14
15
  import { ITreeView, IContextMenu, ViewType, SortOrder, FileDragEventArgs, RetryArgs, FileSelectionEventArgs } from './interface';
15
- import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs } from './interface';
16
- import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs } from './interface';
16
+ import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs, FolderCreateEventArgs, DeleteEventArgs, RenameEventArgs, MoveEventArgs, SearchEventArgs } from './interface';
17
+ import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs, MenuCloseEventArgs } from './interface';
17
18
  import { ToolbarClickEventArgs, ToolbarCreateEventArgs, UploadListCreateArgs } from './interface';
18
19
  import { PopupOpenCloseEventArgs, BeforePopupOpenCloseEventArgs, BeforeDownloadEventArgs, BeforeImageLoadEventArgs } from './interface';
19
20
  import { TreeView as BaseTreeView } from '@syncfusion/ej2-navigations';
20
21
  import { ContextMenuSettingsModel } from '../models/contextMenu-settings-model';
21
22
  import { BreadCrumbBar } from '../actions/breadcrumb-bar';
22
23
  import { PositionModel } from '@syncfusion/ej2-base/src/draggable-model';
24
+ import { Virtualization } from '../actions/virtualization';
25
+ import { SortComparer } from './interface';
23
26
  /**
24
27
  * The FileManager component allows users to access and manage the file system through the web browser. It can performs the
25
28
  * functionalities like add, rename, search, sort, upload and delete files or folders. And also it
@@ -45,6 +48,8 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
45
48
  contextmenuModule: IContextMenu;
46
49
  /** @hidden */
47
50
  breadcrumbbarModule: BreadCrumbBar;
51
+ /** @hidden */
52
+ virtualizationModule: Virtualization;
48
53
  private keyboardModule;
49
54
  private keyConfigs;
50
55
  filterData: Object;
@@ -76,6 +81,10 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
76
81
  nextPath: string[];
77
82
  fileAction: string;
78
83
  pasteNodes: string[];
84
+ responseData: {
85
+ [key: string]: Object;
86
+ };
87
+ existingFileCount: number;
79
88
  isLayoutChange: boolean;
80
89
  replaceItems: string[];
81
90
  createdItem: {
@@ -141,6 +150,14 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
141
150
  destinationPath: string;
142
151
  uploadingCount: number;
143
152
  uploadedCount: number;
153
+ isMac: boolean;
154
+ oldView: string;
155
+ oldPath: string;
156
+ private viewElem;
157
+ private dragSelectElement;
158
+ private dragX;
159
+ private dragY;
160
+ private dragSelectedItems;
144
161
  /**
145
162
  * Specifies the AJAX settings of the file manager.
146
163
  *
@@ -152,6 +169,16 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
152
169
  * }
153
170
  */
154
171
  ajaxSettings: AjaxSettingsModel;
172
+ /**
173
+ * Specifies the array of data to populate folders/files in the File Manager.
174
+ * The mandatory fields to be included in the JSON data are defined in fileData interface.
175
+ * This interface can be extended to add additional fields as required.
176
+ *
177
+ * @default []
178
+ */
179
+ fileSystemData: {
180
+ [key: string]: Object;
181
+ }[];
155
182
  /**
156
183
  * Enables or disables drag-and-drop of files.
157
184
  *
@@ -164,6 +191,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
164
191
  * @default true
165
192
  */
166
193
  allowMultiSelection: boolean;
194
+ /**
195
+ * Gets or sets a boolean value that determines whether to display checkboxes in the file manager. If enabled, checkboxes are shown for files or folders on hover.
196
+ *
197
+ * @default true
198
+ */
199
+ showItemCheckBoxes: boolean;
167
200
  /**
168
201
  * Specifies the context menu settings of the file manager.
169
202
  *
@@ -209,6 +242,14 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
209
242
  * @default false
210
243
  */
211
244
  enablePersistence: boolean;
245
+ /**
246
+ * Gets or sets a value that enables/disables the virtualization feature of the File Manager.
247
+ * When enabled, the File Manager will only load a subset of files and folders based on the size of the view port, with the rest being loaded dynamically as the user scrolls vertically through the list.
248
+ * This can improve performance when dealing with a large number of files and folders, as it reduces the initial load time and memory usage.
249
+ *
250
+ * @default false
251
+ */
252
+ enableVirtualization: boolean;
212
253
  /**
213
254
  * Specifies the height of the file manager.
214
255
  *
@@ -304,6 +345,24 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
304
345
  * @default 'name'
305
346
  */
306
347
  sortBy: string;
348
+ /**
349
+ * Defines the custom sorting function.
350
+ * The sort comparer function has the same functionality like
351
+ * [`Array.sort`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) sort comparer.
352
+ * This can be used to customize the default sorting functionalities with required comparison values.
353
+ *
354
+ * @default null
355
+ * @aspType string
356
+ */
357
+ sortComparer: SortComparer | string;
358
+ /**
359
+ * Gets or sets a value that indicates whether the File Manager allows multiple items selection with mouse dragging.
360
+ * Set this property to true to allow users to select multiple items with mouse drag as like file explorer. Hover over
361
+ * the files or folders and drag the mouse to select the required items.
362
+ *
363
+ * @default false
364
+ */
365
+ enableRangeSelection: boolean;
307
366
  /**
308
367
  * Specifies the group of items aligned horizontally in the toolbar.
309
368
  *
@@ -314,6 +373,16 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
314
373
  * }
315
374
  */
316
375
  toolbarSettings: ToolbarSettingsModel;
376
+ /**
377
+ * An array of items that are used to configure File Manager toolbar items.
378
+ *
379
+ * @remarks
380
+ * Use this property if you want to include custom toolbar items along with existing toolbar items. If both `toolbarSettings` and `toolbarItems` are defined, then items will be rendered based on toolbarItems.
381
+ *
382
+ * @default []
383
+ *
384
+ */
385
+ toolbarItems: ToolbarItemModel[];
317
386
  /**
318
387
  * Specifies the upload settings for the file manager.
319
388
  *
@@ -322,7 +391,8 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
322
391
  * minFileSize: 0,
323
392
  * maxFileSize: 30000000,
324
393
  * allowedExtensions: '',
325
- * autoClose: false
394
+ * autoClose: false,
395
+ * directoryUpload: false
326
396
  * }
327
397
  */
328
398
  uploadSettings: UploadSettingsModel;
@@ -335,144 +405,205 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
335
405
  /**
336
406
  * Triggers before the file/folder is rendered.
337
407
  *
338
- * @event
408
+ * @event fileLoad
339
409
  */
340
410
  fileLoad: EmitType<FileLoadEventArgs>;
341
411
  /**
342
412
  * Triggers before the file/folder is opened.
343
413
  *
344
- * @event
414
+ * @event fileOpen
345
415
  */
346
416
  fileOpen: EmitType<FileOpenEventArgs>;
347
417
  /**
348
418
  * Triggers before sending the download request to the server.
349
419
  *
350
- * @event
420
+ * @event beforeDownload
351
421
  */
352
422
  beforeDownload: EmitType<BeforeDownloadEventArgs>;
353
423
  /**
354
424
  * Triggers before sending the getImage request to the server.
355
425
  *
356
- * @event
426
+ * @event beforeImageLoad
357
427
  */
358
428
  beforeImageLoad: EmitType<BeforeImageLoadEventArgs>;
359
429
  /**
360
430
  * Triggers before the dialog is closed.
361
431
  *
362
- * @event
432
+ * @event beforePopupClose
363
433
  */
364
434
  beforePopupClose: EmitType<BeforePopupOpenCloseEventArgs>;
365
435
  /**
366
436
  * Triggers before the dialog is opened.
367
437
  *
368
- * @event
438
+ * @event beforePopupOpen
369
439
  */
370
440
  beforePopupOpen: EmitType<BeforePopupOpenCloseEventArgs>;
371
441
  /**
372
442
  * Triggers before sending the AJAX request to the server.
373
443
  *
374
- * @event
444
+ * @event beforeSend
375
445
  */
376
446
  beforeSend: EmitType<BeforeSendEventArgs>;
377
447
  /**
378
448
  * Triggers when the file manager component is created.
379
449
  *
380
- * @event
450
+ * @event created
381
451
  */
382
452
  created: EmitType<Object>;
453
+ /**
454
+ * This event is triggered before a folder is created. It allows for the restriction of folder creation based on the application's use case.
455
+ *
456
+ * @event beforeFolderCreate
457
+ */
458
+ beforeFolderCreate: EmitType<FolderCreateEventArgs>;
459
+ /**
460
+ * This event is triggered when a folder is successfully created. It provides an opportunity to retrieve details about the newly created folder.
461
+ *
462
+ * @event folderCreate
463
+ */
464
+ folderCreate: EmitType<FolderCreateEventArgs>;
383
465
  /**
384
466
  * Triggers when the file manager component is destroyed.
385
467
  *
386
- * @event
468
+ * @event destroyed
387
469
  */
388
470
  destroyed: EmitType<Object>;
471
+ /**
472
+ * This event is triggered before the deletion of a file or folder occurs. It can be utilized to prevent the deletion of specific files or folders. Any actions, such as displaying a spinner for deletion, can be implemented here.
473
+ *
474
+ * @event beforeDelete
475
+ */
476
+ beforeDelete: EmitType<DeleteEventArgs>;
477
+ /**
478
+ * This event is triggered after the file or folder is deleted successfully. The deleted file or folder details can be retrieved here. Additionally, custom elements' visibility can be managed here based on the application's use case.
479
+ *
480
+ * @event delete
481
+ */
482
+ delete: EmitType<DeleteEventArgs>;
483
+ /**
484
+ * This event is triggered when a file or folder is about to be renamed. It allows for the restriction of the rename action for specific folders or files by utilizing the cancel option.
485
+ *
486
+ * @event beforeRename
487
+ */
488
+ beforeRename: EmitType<RenameEventArgs>;
489
+ /**
490
+ * This event is triggered when a file or folder is successfully renamed. It provides an opportunity to fetch details about the renamed file.
491
+ *
492
+ * @event rename
493
+ */
494
+ rename: EmitType<RenameEventArgs>;
495
+ /**
496
+ * This event is triggered when a file or folder begins to move from its current path through a copy/cut and paste action.
497
+ *
498
+ * @event beforeMove
499
+ */
500
+ beforeMove: EmitType<MoveEventArgs>;
501
+ /**
502
+ * This event is triggered when a file or folder is pasted into the destination path.
503
+ *
504
+ * @event move
505
+ */
506
+ move: EmitType<MoveEventArgs>;
507
+ /**
508
+ * This event is triggered when a search action occurs in the search bar of the File Manager component. It triggers each character entered in the input during the search process.
509
+ *
510
+ * @event search
511
+ */
512
+ search: EmitType<SearchEventArgs>;
389
513
  /**
390
514
  * Triggers when the file/folder dragging is started.
391
515
  *
392
- * @event
516
+ * @event fileDragStart
393
517
  */
394
518
  fileDragStart: EmitType<FileDragEventArgs>;
395
519
  /**
396
520
  * Triggers while dragging the file/folder.
397
521
  *
398
- * @event
522
+ * @event fileDragging
399
523
  */
400
524
  fileDragging: EmitType<FileDragEventArgs>;
401
525
  /**
402
526
  * Triggers when the file/folder is about to be dropped at the target.
403
527
  *
404
- * @event
528
+ * @event fileDragStop
405
529
  */
406
530
  fileDragStop: EmitType<FileDragEventArgs>;
407
531
  /**
408
532
  * Triggers when the file/folder is dropped.
409
533
  *
410
- * @event
534
+ * @event fileDropped
411
535
  */
412
536
  fileDropped: EmitType<FileDragEventArgs>;
413
537
  /**
414
538
  * Triggers before the file/folder is selected.
415
539
  *
416
- * @event
540
+ * @event fileSelection
417
541
  */
418
542
  fileSelection: EmitType<FileSelectionEventArgs>;
419
543
  /**
420
544
  * Triggers when the file/folder is selected/unselected.
421
545
  *
422
- * @event
546
+ * @event fileSelect
423
547
  */
424
548
  fileSelect: EmitType<FileSelectEventArgs>;
425
549
  /**
426
550
  * Triggers when the context menu item is clicked.
427
551
  *
428
- * @event
552
+ * @event menuClick
429
553
  */
430
554
  menuClick: EmitType<MenuClickEventArgs>;
431
555
  /**
432
556
  * Triggers before the context menu is opened.
433
557
  *
434
- * @event
558
+ * @event menuOpen
435
559
  */
436
560
  menuOpen: EmitType<MenuOpenEventArgs>;
561
+ /**
562
+ * Triggers before the context menu is closed.
563
+ *
564
+ * @event menuClose
565
+ */
566
+ menuClose: EmitType<MenuCloseEventArgs>;
437
567
  /**
438
568
  * Triggers when the AJAX request is failed.
439
569
  *
440
- * @event
570
+ * @event failure
441
571
  */
442
572
  failure: EmitType<FailureEventArgs>;
443
573
  /**
444
574
  * Triggers when the dialog is closed.
445
575
  *
446
- * @event
576
+ * @event popupClose
447
577
  */
448
578
  popupClose: EmitType<PopupOpenCloseEventArgs>;
449
579
  /**
450
580
  * Triggers when the dialog is opened.
451
581
  *
452
- * @event
582
+ * @event popupOpen
453
583
  */
454
584
  popupOpen: EmitType<PopupOpenCloseEventArgs>;
455
585
  /**
456
586
  * Triggers when the AJAX request is success.
457
- * @event
587
+ *
588
+ * @event success
458
589
  */
459
590
  success: EmitType<SuccessEventArgs>;
460
591
  /**
461
592
  * Triggers when the toolbar item is clicked.
462
593
  *
463
- * @event
594
+ * @event toolbarClick
464
595
  */
465
596
  toolbarClick: EmitType<ToolbarClickEventArgs>;
466
597
  /**
467
598
  * Triggers before creating the toolbar.
468
599
  *
469
- * @event
600
+ * @event toolbarCreate
470
601
  */
471
602
  toolbarCreate: EmitType<ToolbarCreateEventArgs>;
472
603
  /**
473
604
  * Triggers before rendering each file item in upload dialog box.
474
605
  *
475
- * @event
606
+ * @event uploadListCreate
476
607
  */
477
608
  uploadListCreate: EmitType<UploadListCreateArgs>;
478
609
  constructor(options?: FileManagerModel, element?: string | HTMLElement);
@@ -543,8 +674,14 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
543
674
  private onDetailsInit;
544
675
  private resizeHandler;
545
676
  private keyActionHandler;
677
+ private wireSelectOnDragEvent;
546
678
  private wireEvents;
547
679
  private unWireEvents;
680
+ private onDragStart;
681
+ private onDrag;
682
+ private onDragStop;
683
+ private selectItems;
684
+ private onLayoutChange;
548
685
  private setPath;
549
686
  /**
550
687
  * Called internally if any of the property value changed.
@@ -671,6 +808,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
671
808
  * @returns {void}
672
809
  */
673
810
  selectAll(): void;
811
+ /**
812
+ * Specifies the method that must be invoked to traverse the path backwards in the file manager.
813
+ *
814
+ * @returns {void}
815
+ */
816
+ traverseBackward(): void;
674
817
  /**
675
818
  * Deselects the currently selected folders and files in current path.
676
819
  *
@@ -697,6 +840,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
697
840
  * @returns {void}
698
841
  */
699
842
  uploadFiles(): void;
843
+ /**
844
+ * Specifies the method which must be invoked to programmatically close the dialog popup in the file manager.
845
+ *
846
+ * @returns {void}
847
+ */
848
+ closeDialog(): void;
700
849
  /**
701
850
  * Specifies the direction of FileManager
702
851
  *