@syncfusion/ej2-filemanager 20.1.52-10459 → 20.1.52-10460

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 +3 -20
  2. package/CHANGELOG.md +410 -0
  3. package/README.md +43 -54
  4. package/dist/ej2-filemanager.umd.min.js +10 -1
  5. package/dist/ej2-filemanager.umd.min.js.map +1 -1
  6. package/dist/es6/ej2-filemanager.es2015.js +659 -2353
  7. package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
  8. package/dist/es6/ej2-filemanager.es5.js +708 -2421
  9. package/dist/es6/ej2-filemanager.es5.js.map +1 -1
  10. package/dist/global/ej2-filemanager.min.js +10 -1
  11. package/dist/global/ej2-filemanager.min.js.map +1 -1
  12. package/dist/global/index.d.ts +9 -0
  13. package/helpers/e2e/filemanagerHelper.js +166 -183
  14. package/package.json +71 -71
  15. package/src/file-manager/actions/breadcrumb-bar.js +5 -1
  16. package/src/file-manager/actions/index.d.ts +0 -1
  17. package/src/file-manager/actions/index.js +0 -1
  18. package/src/file-manager/actions/toolbar.d.ts +0 -1
  19. package/src/file-manager/actions/toolbar.js +17 -129
  20. package/src/file-manager/base/file-manager-model.d.ts +28 -154
  21. package/src/file-manager/base/file-manager.d.ts +27 -176
  22. package/src/file-manager/base/file-manager.js +28 -244
  23. package/src/file-manager/base/interface.d.ts +3 -329
  24. package/src/file-manager/base/interface.js +1 -0
  25. package/src/file-manager/common/operations.d.ts +0 -7
  26. package/src/file-manager/common/operations.js +185 -830
  27. package/src/file-manager/common/utility.d.ts +3 -46
  28. package/src/file-manager/common/utility.js +73 -249
  29. package/src/file-manager/index.d.ts +0 -1
  30. package/src/file-manager/index.js +0 -1
  31. package/src/file-manager/layout/details-view.d.ts +0 -10
  32. package/src/file-manager/layout/details-view.js +94 -203
  33. package/src/file-manager/layout/large-icons-view.d.ts +2 -4
  34. package/src/file-manager/layout/large-icons-view.js +72 -121
  35. package/src/file-manager/layout/navigation-pane.d.ts +0 -2
  36. package/src/file-manager/layout/navigation-pane.js +73 -97
  37. package/src/file-manager/models/column-model.d.ts +5 -23
  38. package/src/file-manager/models/column.d.ts +2 -21
  39. package/src/file-manager/models/column.js +0 -6
  40. package/src/file-manager/models/default-locale.js +1 -0
  41. package/src/file-manager/models/details-view-settings-model.d.ts +1 -1
  42. package/src/file-manager/models/details-view-settings.js +3 -8
  43. package/src/file-manager/models/search-settings.d.ts +0 -5
  44. package/src/file-manager/models/toolbar-settings-model.d.ts +2 -177
  45. package/src/file-manager/models/toolbar-settings.d.ts +2 -157
  46. package/src/file-manager/models/toolbar-settings.js +2 -64
  47. package/src/file-manager/models/upload-settings-model.d.ts +0 -13
  48. package/src/file-manager/models/upload-settings.d.ts +0 -12
  49. package/src/file-manager/models/upload-settings.js +0 -3
  50. package/src/file-manager/pop-up/context-menu.d.ts +1 -2
  51. package/src/file-manager/pop-up/context-menu.js +36 -111
  52. package/src/file-manager/pop-up/dialog.d.ts +2 -1
  53. package/src/file-manager/pop-up/dialog.js +40 -19
  54. package/src/global.js +1 -1
  55. package/styles/bootstrap-dark.css +665 -371
  56. package/styles/bootstrap-dark.scss +1 -17
  57. package/styles/bootstrap.css +644 -353
  58. package/styles/bootstrap.scss +1 -17
  59. package/styles/bootstrap4.css +680 -381
  60. package/styles/bootstrap4.scss +1 -17
  61. package/styles/bootstrap5-dark.css +694 -376
  62. package/styles/bootstrap5-dark.scss +1 -17
  63. package/styles/bootstrap5.css +695 -377
  64. package/styles/bootstrap5.scss +1 -17
  65. package/styles/fabric-dark.css +642 -358
  66. package/styles/fabric-dark.scss +1 -17
  67. package/styles/fabric.css +641 -357
  68. package/styles/fabric.scss +1 -17
  69. package/styles/file-manager/_all.scss +1 -1
  70. package/styles/file-manager/_bootstrap-dark-definition.scss +2 -6
  71. package/styles/file-manager/_bootstrap-definition.scss +2 -6
  72. package/styles/file-manager/_bootstrap4-definition.scss +2 -6
  73. package/styles/file-manager/_bootstrap5-definition.scss +15 -20
  74. package/styles/file-manager/_fabric-dark-definition.scss +2 -6
  75. package/styles/file-manager/_fabric-definition.scss +2 -6
  76. package/styles/file-manager/_fluent-definition.scss +15 -18
  77. package/styles/file-manager/_highcontrast-definition.scss +2 -6
  78. package/styles/file-manager/_highcontrast-light-definition.scss +2 -6
  79. package/styles/file-manager/_layout.scss +932 -369
  80. package/styles/file-manager/_material-dark-definition.scss +2 -7
  81. package/styles/file-manager/_material-definition.scss +2 -7
  82. package/styles/file-manager/_tailwind-definition.scss +16 -20
  83. package/styles/file-manager/_theme.scss +102 -123
  84. package/styles/file-manager/bootstrap-dark.css +665 -371
  85. package/styles/file-manager/bootstrap-dark.scss +1 -2
  86. package/styles/file-manager/bootstrap.css +644 -353
  87. package/styles/file-manager/bootstrap.scss +1 -2
  88. package/styles/file-manager/bootstrap4.css +680 -381
  89. package/styles/file-manager/bootstrap4.scss +1 -2
  90. package/styles/file-manager/bootstrap5-dark.css +694 -376
  91. package/styles/file-manager/bootstrap5-dark.scss +1 -2
  92. package/styles/file-manager/bootstrap5.css +695 -377
  93. package/styles/file-manager/bootstrap5.scss +1 -2
  94. package/styles/file-manager/fabric-dark.css +642 -358
  95. package/styles/file-manager/fabric-dark.scss +1 -2
  96. package/styles/file-manager/fabric.css +641 -357
  97. package/styles/file-manager/fabric.scss +1 -2
  98. package/styles/file-manager/fluent-dark.css +641 -356
  99. package/styles/file-manager/fluent-dark.scss +1 -2
  100. package/styles/file-manager/fluent.css +640 -355
  101. package/styles/file-manager/fluent.scss +1 -2
  102. package/styles/file-manager/highcontrast-light.css +644 -354
  103. package/styles/file-manager/highcontrast-light.scss +1 -2
  104. package/styles/file-manager/highcontrast.css +647 -377
  105. package/styles/file-manager/highcontrast.scss +1 -2
  106. package/styles/file-manager/icons/_bootstrap.scss +1 -0
  107. package/styles/file-manager/icons/_bootstrap4.scss +1 -0
  108. package/styles/file-manager/icons/_fabric-dark.scss +1 -0
  109. package/styles/file-manager/icons/_fabric.scss +1 -0
  110. package/styles/file-manager/material-dark.css +671 -392
  111. package/styles/file-manager/material-dark.scss +1 -2
  112. package/styles/file-manager/material.css +654 -391
  113. package/styles/file-manager/material.scss +1 -2
  114. package/styles/file-manager/tailwind-dark.css +667 -350
  115. package/styles/file-manager/tailwind-dark.scss +1 -2
  116. package/styles/file-manager/tailwind.css +667 -350
  117. package/styles/file-manager/tailwind.scss +1 -2
  118. package/styles/fluent-dark.css +641 -356
  119. package/styles/fluent-dark.scss +1 -17
  120. package/styles/fluent.css +640 -355
  121. package/styles/fluent.scss +1 -17
  122. package/styles/highcontrast-light.css +644 -354
  123. package/styles/highcontrast-light.scss +1 -17
  124. package/styles/highcontrast.css +647 -377
  125. package/styles/highcontrast.scss +1 -17
  126. package/styles/material-dark.css +671 -392
  127. package/styles/material-dark.scss +1 -17
  128. package/styles/material.css +654 -391
  129. package/styles/material.scss +1 -17
  130. package/styles/tailwind-dark.css +667 -350
  131. package/styles/tailwind-dark.scss +1 -17
  132. package/styles/tailwind.css +667 -350
  133. package/styles/tailwind.scss +1 -17
  134. package/dist/ej2-filemanager.min.js +0 -1
  135. package/src/file-manager/actions/virtualization.d.ts +0 -93
  136. package/src/file-manager/actions/virtualization.js +0 -279
  137. package/styles/bootstrap-dark-lite.css +0 -1058
  138. package/styles/bootstrap-dark-lite.scss +0 -16
  139. package/styles/bootstrap-lite.css +0 -1040
  140. package/styles/bootstrap-lite.scss +0 -16
  141. package/styles/bootstrap4-lite.css +0 -1068
  142. package/styles/bootstrap4-lite.scss +0 -16
  143. package/styles/bootstrap5-dark-lite.css +0 -1078
  144. package/styles/bootstrap5-dark-lite.scss +0 -16
  145. package/styles/bootstrap5-lite.css +0 -1078
  146. package/styles/bootstrap5-lite.scss +0 -16
  147. package/styles/bootstrap5.3-lite.css +0 -1035
  148. package/styles/bootstrap5.3-lite.scss +0 -16
  149. package/styles/bootstrap5.3.css +0 -1603
  150. package/styles/bootstrap5.3.scss +0 -17
  151. package/styles/fabric-dark-lite.css +0 -1039
  152. package/styles/fabric-dark-lite.scss +0 -16
  153. package/styles/fabric-lite.css +0 -1039
  154. package/styles/fabric-lite.scss +0 -16
  155. package/styles/file-manager/_bds-definition.scss +0 -236
  156. package/styles/file-manager/_bigger.scss +0 -758
  157. package/styles/file-manager/_bootstrap5.3-definition.scss +0 -242
  158. package/styles/file-manager/_fluent2-definition.scss +0 -255
  159. package/styles/file-manager/_fusionnew-definition.scss +0 -241
  160. package/styles/file-manager/_material3-dark-definition.scss +0 -1
  161. package/styles/file-manager/_material3-definition.scss +0 -235
  162. package/styles/file-manager/bootstrap5.3.css +0 -1603
  163. package/styles/file-manager/bootstrap5.3.scss +0 -17
  164. package/styles/file-manager/fluent2.css +0 -1886
  165. package/styles/file-manager/fluent2.scss +0 -17
  166. package/styles/file-manager/icons/_bds.scss +0 -235
  167. package/styles/file-manager/icons/_bootstrap5.3.scss +0 -235
  168. package/styles/file-manager/icons/_fluent2.scss +0 -235
  169. package/styles/file-manager/icons/_fusionnew.scss +0 -235
  170. package/styles/file-manager/icons/_material3-dark.scss +0 -1
  171. package/styles/file-manager/icons/_material3.scss +0 -235
  172. package/styles/file-manager/material3-dark.css +0 -1633
  173. package/styles/file-manager/material3-dark.scss +0 -18
  174. package/styles/file-manager/material3.css +0 -1635
  175. package/styles/file-manager/material3.scss +0 -18
  176. package/styles/fluent-dark-lite.css +0 -1037
  177. package/styles/fluent-dark-lite.scss +0 -16
  178. package/styles/fluent-lite.css +0 -1036
  179. package/styles/fluent-lite.scss +0 -16
  180. package/styles/fluent2-lite.css +0 -1272
  181. package/styles/fluent2-lite.scss +0 -16
  182. package/styles/fluent2.css +0 -1886
  183. package/styles/fluent2.scss +0 -17
  184. package/styles/highcontrast-light-lite.css +0 -1039
  185. package/styles/highcontrast-light-lite.scss +0 -16
  186. package/styles/highcontrast-lite.css +0 -1059
  187. package/styles/highcontrast-lite.scss +0 -16
  188. package/styles/material-dark-lite.css +0 -1092
  189. package/styles/material-dark-lite.scss +0 -16
  190. package/styles/material-lite.css +0 -1097
  191. package/styles/material-lite.scss +0 -16
  192. package/styles/material3-dark-lite.css +0 -1090
  193. package/styles/material3-dark-lite.scss +0 -16
  194. package/styles/material3-dark.css +0 -1633
  195. package/styles/material3-dark.scss +0 -19
  196. package/styles/material3-lite.css +0 -1092
  197. package/styles/material3-lite.scss +0 -16
  198. package/styles/material3.css +0 -1635
  199. package/styles/material3.scss +0 -19
  200. package/styles/tailwind-dark-lite.css +0 -1060
  201. package/styles/tailwind-dark-lite.scss +0 -16
  202. package/styles/tailwind-lite.css +0 -1060
  203. package/styles/tailwind-lite.scss +0 -16
@@ -1,4 +1,3 @@
1
- /* eslint-disable @typescript-eslint/no-explicit-any */
2
1
  import { Toolbar as BaseToolbar } from '@syncfusion/ej2-navigations';
3
2
  import { select, isNullOrUndefined as isNOU, closest, selectAll } from '@syncfusion/ej2-base';
4
3
  import { createDialog } from '../pop-up/dialog';
@@ -45,7 +44,6 @@ var Toolbar = /** @class */ (function () {
45
44
  enableRtl: _this.parent.enableRtl
46
45
  });
47
46
  _this.toolbarObj.isStringTemplate = true;
48
- _this.toolbarObj.root = _this.parent.root ? _this.parent.root : _this.parent;
49
47
  _this.toolbarObj.appendTo('#' + _this.parent.element.id + CLS.TOOLBAR_ID);
50
48
  });
51
49
  };
@@ -63,9 +61,6 @@ var Toolbar = /** @class */ (function () {
63
61
  if (this.parent.isDevice && this.parent.allowMultiSelection) {
64
62
  currItems.push('SelectAll');
65
63
  }
66
- if (this.parent.toolbarItems.length > 0) {
67
- currItems = this.parent.toolbarItems.map(function (item) { return item.name; });
68
- }
69
64
  return currItems;
70
65
  };
71
66
  /* istanbul ignore next */
@@ -75,6 +70,7 @@ var Toolbar = /** @class */ (function () {
75
70
  return;
76
71
  }
77
72
  var tool = args.item.id.substr((this.parent.element.id + '_tb_').length);
73
+ // eslint-disable-next-line
78
74
  var details;
79
75
  if (tool === 'refresh' || tool === 'newfolder' || tool === 'upload') {
80
76
  details = [getPathObject(this.parent)];
@@ -155,7 +151,6 @@ var Toolbar = /** @class */ (function () {
155
151
  });
156
152
  };
157
153
  Toolbar.prototype.toolbarCreateHandler = function () {
158
- var _this = this;
159
154
  if (!isNOU(select('#' + this.getId('SortBy'), this.parent.element))) {
160
155
  var items = [
161
156
  { id: this.getPupupId('name'), text: getLocaleText(this.parent, 'Name'),
@@ -182,15 +177,15 @@ var Toolbar = /** @class */ (function () {
182
177
  this.buttonObj.appendTo('#' + this.getId('SortBy'));
183
178
  }
184
179
  if (!isNOU(select('#' + this.getId('View'), this.parent.element))) {
185
- var gridSpan_1 = '<span class="' + CLS.ICON_GRID + ' ' + CLS.MENU_ICON + '"></span>';
186
- var largeIconSpan_1 = '<span class="' + CLS.ICON_LARGE + ' ' + CLS.MENU_ICON + '"></span>';
180
+ var gridSpan = '<span class="' + CLS.ICON_GRID + ' ' + CLS.MENU_ICON + '"></span>';
181
+ var largeIconSpan = '<span class="' + CLS.ICON_LARGE + ' ' + CLS.MENU_ICON + '"></span>';
187
182
  var layoutItems = [
188
183
  {
189
- id: this.getPupupId('large'), text: getLocaleText(this.parent, 'View-LargeIcons'),
184
+ id: this.getPupupId('large'), text: largeIconSpan + getLocaleText(this.parent, 'View-LargeIcons'),
190
185
  iconCss: this.parent.view === 'Details' ? '' : CLS.TB_OPTION_TICK
191
186
  },
192
187
  {
193
- id: this.getPupupId('details'), text: getLocaleText(this.parent, 'View-Details'),
188
+ id: this.getPupupId('details'), text: gridSpan + getLocaleText(this.parent, 'View-Details'),
194
189
  iconCss: this.parent.view === 'Details' ? CLS.TB_OPTION_TICK : ''
195
190
  }
196
191
  ];
@@ -199,27 +194,14 @@ var Toolbar = /** @class */ (function () {
199
194
  cssClass: getCssClass(this.parent, 'e-caret-hide ' + CLS.ROOT_POPUP),
200
195
  items: layoutItems, select: this.layoutChange.bind(this),
201
196
  enableRtl: this.parent.enableRtl,
202
- content: '<span class="e-tbar-btn-text">' + getLocaleText(this.parent, 'View') + '</span>',
203
- beforeItemRender: function (args) {
204
- var tickIcon = args.item.iconCss;
205
- var viewText = args.item.text === getLocaleText(_this.parent, 'View-LargeIcons');
206
- var iconClass = tickIcon ? ' e-menu-icon ' + tickIcon : '';
207
- args.element.innerHTML = '<span class="' + iconClass + '"></span>' + (viewText ? largeIconSpan_1 : gridSpan_1) + args.item.text;
208
- var span = args.element.firstChild;
209
- if (span && span.className === '') {
210
- args.element.removeChild(span);
211
- }
212
- }
197
+ enableHtmlSanitizer: this.parent.enableHtmlSanitizer,
198
+ content: '<span class="e-tbar-btn-text">' + getLocaleText(this.parent, 'View') + '</span>'
213
199
  });
214
200
  this.layoutBtnObj.isStringTemplate = true;
215
201
  this.layoutBtnObj.appendTo('#' + this.getId('View'));
216
202
  }
217
203
  this.hideItems(this.default, true);
218
204
  this.hideStatus();
219
- if (this.parent.portals && this.toolbarObj.portals) {
220
- this.parent.portals = this.parent.portals.concat(this.toolbarObj.portals);
221
- this.parent['renderReactTemplates']();
222
- }
223
205
  var btnElement = selectAll('.e-btn', this.toolbarObj.element);
224
206
  var _loop_1 = function (btnCount) {
225
207
  /* istanbul ignore next */
@@ -250,12 +232,7 @@ var Toolbar = /** @class */ (function () {
250
232
  items[itemCount].iconCss = this.parent.sortBy === 'size' ? CLS.TB_OPTION_DOT : '';
251
233
  }
252
234
  else if (items[itemCount].id === this.getPupupId('date')) {
253
- if (this.parent.sortBy === 'dateModified' || this.parent.sortBy === 'dateCreated') {
254
- items[itemCount].iconCss = this.parent.sortBy === this.parent.sortBy ? CLS.TB_OPTION_DOT : '';
255
- }
256
- else {
257
- items[itemCount].iconCss = this.parent.sortBy === '_fm_modified' ? CLS.TB_OPTION_DOT : '';
258
- }
235
+ items[itemCount].iconCss = this.parent.sortBy === '_fm_modified' ? CLS.TB_OPTION_DOT : '';
259
236
  }
260
237
  else if (items[itemCount].id === this.getPupupId('ascending')) {
261
238
  items[itemCount].iconCss = this.parent.sortOrder === 'Ascending' ? CLS.TB_OPTION_TICK : '';
@@ -292,13 +269,10 @@ var Toolbar = /** @class */ (function () {
292
269
  }
293
270
  for (var i = 0; i < data.length; i++) {
294
271
  var item = void 0;
295
- var propItem = void 0;
296
- if (this.parent.toolbarItems.length > 0) {
297
- propItem = this.getItemModel(this.parent.toolbarItems[parseInt(i.toString(), 10)]);
298
- }
299
272
  var itemId = this.getId(data[i]);
300
273
  var itemText = getLocaleText(this.parent, data[i]);
301
274
  var itemTooltip = getLocaleText(this.parent, 'Tooltip-' + data[i]);
275
+ var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
302
276
  switch (data[i]) {
303
277
  case '|':
304
278
  item = { type: 'Separator' };
@@ -306,17 +280,12 @@ var Toolbar = /** @class */ (function () {
306
280
  case 'Upload':
307
281
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_UPLOAD, showTextOn: mode };
308
282
  break;
309
- case 'SortBy': {
310
- var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
311
- if (propItem && propItem.text) {
312
- spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + propItem.text + '</span>';
313
- }
283
+ case 'SortBy':
314
284
  item = {
315
285
  id: itemId, tooltipText: itemTooltip,
316
286
  template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1">' + spanElement + '</button>'
317
287
  };
318
288
  break;
319
- }
320
289
  case 'Refresh':
321
290
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_REFRESH, showTextOn: mode };
322
291
  break;
@@ -326,22 +295,14 @@ var Toolbar = /** @class */ (function () {
326
295
  align: 'Right'
327
296
  };
328
297
  break;
329
- case 'View': {
330
- var viewText = void 0;
331
- if (propItem && propItem.text) {
332
- viewText = propItem.text;
333
- }
334
- else {
335
- viewText = getLocaleText(this.parent, 'View');
336
- }
298
+ case 'View':
337
299
  item = {
338
300
  id: itemId, tooltipText: itemTooltip, prefixIcon: this.parent.view === 'Details' ? CLS.ICON_GRID : CLS.ICON_LARGE,
339
301
  overflow: 'Show', align: 'Right', text: itemText, showTextOn: 'Overflow',
340
302
  template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1" aria-label=' +
341
- viewText + '></button>'
303
+ getLocaleText(this.parent, 'View') + '></button>'
342
304
  };
343
305
  break;
344
- }
345
306
  case 'Details':
346
307
  item = {
347
308
  id: itemId, tooltipText: itemTooltip, prefixIcon: CLS.ICON_DETAILS, overflow: 'Show', align: 'Right',
@@ -373,74 +334,13 @@ var Toolbar = /** @class */ (function () {
373
334
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_SELECTALL, showTextOn: mode };
374
335
  break;
375
336
  default:
376
- item = { id: itemId, text: itemText, tooltipText: itemTooltip, template: '' };
337
+ item = { id: itemId, text: itemText, tooltipText: itemTooltip };
377
338
  break;
378
339
  }
379
- if (this.parent.toolbarItems.length > 0 && propItem) {
380
- var mergedItems = Object.assign({}, item, propItem);
381
- items.push(mergedItems);
382
- }
383
- else {
384
- items.push(item);
385
- }
340
+ items.push(item);
386
341
  }
387
342
  return items;
388
343
  };
389
- Toolbar.prototype.getItemModel = function (propItem) {
390
- var item = {};
391
- if (propItem.id) {
392
- item.id = propItem.id;
393
- }
394
- if (propItem.text) {
395
- item.text = propItem.text;
396
- }
397
- if (propItem.tooltipText) {
398
- item.tooltipText = propItem.tooltipText;
399
- }
400
- if (propItem.prefixIcon) {
401
- item.prefixIcon = propItem.prefixIcon;
402
- }
403
- if (propItem.cssClass) {
404
- item.cssClass = propItem.cssClass;
405
- }
406
- if (propItem.showTextOn !== 'Both') {
407
- item.showTextOn = propItem.showTextOn;
408
- }
409
- if (propItem.template) {
410
- item.template = propItem.template;
411
- }
412
- if (propItem.disabled) {
413
- item.disabled = propItem.disabled;
414
- }
415
- if (propItem.width !== 'auto') {
416
- item.width = propItem.width;
417
- }
418
- if (propItem.suffixIcon) {
419
- item.suffixIcon = propItem.suffixIcon;
420
- }
421
- if (propItem.align !== 'Left') {
422
- item.align = propItem.align;
423
- }
424
- if (propItem.overflow !== 'None') {
425
- item.overflow = propItem.overflow;
426
- }
427
- if (propItem.htmlAttributes) {
428
- item.htmlAttributes = propItem.htmlAttributes;
429
- }
430
- if (propItem.type !== 'Button') {
431
- item.type = propItem.type;
432
- }
433
- if (propItem.visible !== true) {
434
- item.visible = propItem.visible;
435
- }
436
- if (propItem.showAlwaysInPopup) {
437
- item.showAlwaysInPopup = propItem.showAlwaysInPopup;
438
- }
439
- if (propItem.tabIndex !== -1) {
440
- item.tabIndex = propItem.tabIndex;
441
- }
442
- return item;
443
- };
444
344
  Toolbar.prototype.getId = function (id) {
445
345
  return this.parent.element.id + '_tb_' + id.toLowerCase();
446
346
  };
@@ -455,19 +355,8 @@ var Toolbar = /** @class */ (function () {
455
355
  };
456
356
  Toolbar.prototype.reRenderToolbar = function (e) {
457
357
  var _this = this;
458
- var itemsToProcess = [];
459
- if (this.parent.toolbarItems.length > 0) {
460
- itemsToProcess = this.parent.toolbarItems.map(function (item) {
461
- return item.name;
462
- });
463
- }
464
- else if (e.newProp.toolbarSettings.items !== undefined) {
465
- itemsToProcess = e.newProp.toolbarSettings.items.map(function (item) {
466
- return item.trim();
467
- });
468
- }
469
- if (itemsToProcess.length > 0) {
470
- this.items = this.toolbarItemData(this.getItems(itemsToProcess));
358
+ if (e.newProp.toolbarSettings.items !== undefined) {
359
+ this.items = this.toolbarItemData(this.getItems(e.newProp.toolbarSettings.items.map(function (item) { return item.trim(); })));
471
360
  var eventArgs = { items: this.items };
472
361
  this.parent.trigger('toolbarCreate', eventArgs, function (toolbarCreateArgs) {
473
362
  if (_this.buttonObj) {
@@ -496,7 +385,7 @@ var Toolbar = /** @class */ (function () {
496
385
  this.hideItems(this.selection, true);
497
386
  }
498
387
  var ele = select('#' + this.getId('Selection'), this.toolbarObj.element);
499
- if (this.parent.selectedItems.length > 0 && ele && !this.parent.enableVirtualization) {
388
+ if (this.parent.selectedItems.length > 0 && ele) {
500
389
  var txt = void 0;
501
390
  if (this.parent.selectedItems.length === 1) {
502
391
  txt = this.parent.selectedItems.length + ' ' + getLocaleText(this.parent, 'Item-Selection');
@@ -581,7 +470,6 @@ var Toolbar = /** @class */ (function () {
581
470
  this.toolbarObj.refreshOverflow();
582
471
  break;
583
472
  case 'toolbarSettings':
584
- case 'toolbarItems':
585
473
  this.reRenderToolbar(e);
586
474
  break;
587
475
  }
@@ -1,4 +1,4 @@
1
- import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest, Collection, detach, selectAll, setStyleAttribute } from '@syncfusion/ej2-base';import { Property, INotifyPropertyChanged, NotifyPropertyChanges, Complex, select } from '@syncfusion/ej2-base';import { createElement, addClass, removeClass, setStyleAttribute as setAttr, getUniqueID } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, formatUnit, Browser, KeyboardEvents, KeyboardEventArgs } from '@syncfusion/ej2-base';import { Event, EventHandler, getValue, setValue } from '@syncfusion/ej2-base';import { Splitter, PanePropertiesModel } from '@syncfusion/ej2-layouts';import { Dialog, createSpinner, hideSpinner, showSpinner, BeforeOpenEventArgs, BeforeCloseEventArgs } from '@syncfusion/ej2-popups';import { createDialog, createExtDialog } from '../pop-up/dialog';import { ToolbarSettings, ToolbarSettingsModel, AjaxSettings, NavigationPaneSettings, DetailsViewSettings } from '../models/index';import { ToolbarItem, ToolbarItemModel } from'../models/index' ;import { NavigationPaneSettingsModel, DetailsViewSettingsModel } from '../models/index';import { AjaxSettingsModel, SearchSettings, SearchSettingsModel } from '../models/index';import { Toolbar } from '../actions/toolbar';import { DetailsView } from '../layout/details-view';import { LargeIconsView } from '../layout/large-icons-view';import { Uploader, UploadingEventArgs, SelectedEventArgs, FileInfo, CancelEventArgs } from '@syncfusion/ej2-inputs';import { UploadSettingsModel } from '../models/upload-settings-model';import { UploadSettings } from '../models/upload-settings';import * as events from './constant';import * as CLS from './classes';import { read, filter, createFolder } from '../common/operations';import { ITreeView, IContextMenu, ViewType, SortOrder, FileDragEventArgs, RetryArgs, ReadArgs, FileSelectionEventArgs } from './interface';import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs, FolderCreateEventArgs, DeleteEventArgs, RenameEventArgs, MoveEventArgs, SearchEventArgs } from './interface';import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs, MenuCloseEventArgs } from './interface';import { ToolbarClickEventArgs, ToolbarCreateEventArgs, UploadListCreateArgs } from './interface';import { PopupOpenCloseEventArgs, BeforePopupOpenCloseEventArgs, BeforeDownloadEventArgs, BeforeImageLoadEventArgs } from './interface';import { refresh, getPathObject, getLocaleText, setNextPath, createDeniedDialog, getCssClass } from '../common/utility';import { hasContentAccess, hasUploadAccess, updateLayout, createNewFolder, uploadItem, closePopup } from '../common/utility';import { TreeView as BaseTreeView } from '@syncfusion/ej2-navigations';import { ContextMenuSettingsModel } from '../models/contextMenu-settings-model';import { ContextMenuSettings } from '../models/contextMenu-settings';import { BreadCrumbBar } from '../actions/breadcrumb-bar';import { ContextMenu } from '../pop-up/context-menu';import { defaultLocale } from '../models/default-locale';import { PositionModel } from '@syncfusion/ej2-base/src/draggable-model';import { Virtualization } from '../actions/virtualization';import { SortComparer } from './interface';
1
+ import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest } from '@syncfusion/ej2-base';import { Property, INotifyPropertyChanged, NotifyPropertyChanges, Complex, select } from '@syncfusion/ej2-base';import { createElement, addClass, removeClass, setStyleAttribute as setAttr, getUniqueID } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, formatUnit, Browser, KeyboardEvents, KeyboardEventArgs } from '@syncfusion/ej2-base';import { Event, EventHandler, getValue, setValue } from '@syncfusion/ej2-base';import { Splitter, PanePropertiesModel } from '@syncfusion/ej2-layouts';import { Dialog, createSpinner, hideSpinner, showSpinner, BeforeOpenEventArgs, BeforeCloseEventArgs } from '@syncfusion/ej2-popups';import { createDialog, createExtDialog } from '../pop-up/dialog';import { ToolbarSettings, ToolbarSettingsModel, AjaxSettings, NavigationPaneSettings, DetailsViewSettings } from '../models/index';import { NavigationPaneSettingsModel, DetailsViewSettingsModel } from '../models/index';import { AjaxSettingsModel, SearchSettings, SearchSettingsModel } from '../models/index';import { Toolbar } from '../actions/toolbar';import { DetailsView } from '../layout/details-view';import { LargeIconsView } from '../layout/large-icons-view';import { Uploader, UploadingEventArgs, SelectedEventArgs, FileInfo, CancelEventArgs } from '@syncfusion/ej2-inputs';import { UploadSettingsModel } from '../models/upload-settings-model';import { UploadSettings } from '../models/upload-settings';import * as events from './constant';import * as CLS from './classes';import { read, filter, createFolder } from '../common/operations';import { ITreeView, IContextMenu, ViewType, SortOrder, FileDragEventArgs, RetryArgs, ReadArgs, FileSelectionEventArgs } from './interface';import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs } from './interface';import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs } from './interface';import { ToolbarClickEventArgs, ToolbarCreateEventArgs, UploadListCreateArgs } from './interface';import { PopupOpenCloseEventArgs, BeforePopupOpenCloseEventArgs, BeforeDownloadEventArgs, BeforeImageLoadEventArgs } from './interface';import { refresh, getPathObject, getLocaleText, setNextPath, createDeniedDialog, getCssClass } from '../common/utility';import { hasContentAccess, hasUploadAccess, updateLayout, createNewFolder, uploadItem } from '../common/utility';import { TreeView as BaseTreeView } from '@syncfusion/ej2-navigations';import { ContextMenuSettingsModel } from '../models/contextMenu-settings-model';import { ContextMenuSettings } from '../models/contextMenu-settings';import { BreadCrumbBar } from '../actions/breadcrumb-bar';import { ContextMenu } from '../pop-up/context-menu';import { defaultLocale } from '../models/default-locale';import { PositionModel } from '@syncfusion/ej2-base/src/draggable-model';
2
2
  import {ComponentModel} from '@syncfusion/ej2-base';
3
3
 
4
4
  /**
@@ -18,15 +18,6 @@ export interface FileManagerModel extends ComponentModel{
18
18
  */
19
19
  ajaxSettings?: AjaxSettingsModel;
20
20
 
21
- /**
22
- * Specifies the array of data to populate folders/files in the File Manager.
23
- * The mandatory fields to be included in the JSON data are defined in fileData interface.
24
- * This interface can be extended to add additional fields as required.
25
- *
26
- * @default []
27
- */
28
- fileSystemData?: { [key: string]: Object }[];
29
-
30
21
  /**
31
22
  * Enables or disables drag-and-drop of files.
32
23
  *
@@ -41,13 +32,6 @@ export interface FileManagerModel extends ComponentModel{
41
32
  */
42
33
  allowMultiSelection?: boolean;
43
34
 
44
- /**
45
- * 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.
46
- *
47
- * @default true
48
- */
49
- showItemCheckBoxes?: boolean;
50
-
51
35
  /**
52
36
  * Specifies the context menu settings of the file manager.
53
37
  *
@@ -98,15 +82,6 @@ export interface FileManagerModel extends ComponentModel{
98
82
  */
99
83
  enablePersistence?: boolean;
100
84
 
101
- /**
102
- * Gets or sets a value that enables/disables the virtualization feature of the File Manager.
103
- * 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.
104
- * This can improve performance when dealing with a large number of files and folders, as it reduces the initial load time and memory usage.
105
- *
106
- * @default false
107
- */
108
- enableVirtualization?: boolean;
109
-
110
85
  /**
111
86
  * Specifies the height of the file manager.
112
87
  *
@@ -215,26 +190,6 @@ export interface FileManagerModel extends ComponentModel{
215
190
  */
216
191
  sortBy?: string;
217
192
 
218
- /**
219
- * Defines the custom sorting function.
220
- * The sort comparer function has the same functionality like
221
- * [`Array.sort`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) sort comparer.
222
- * This can be used to customize the default sorting functionalities with required comparison values.
223
- *
224
- * @default null
225
- * @aspType string
226
- */
227
- sortComparer?: SortComparer | string;
228
-
229
- /**
230
- * Gets or sets a value that indicates whether the File Manager allows multiple items selection with mouse dragging.
231
- * Set this property to true to allow users to select multiple items with mouse drag as like file explorer. Hover over
232
- * the files or folders and drag the mouse to select the required items.
233
- *
234
- * @default false
235
- */
236
- enableRangeSelection?: boolean;
237
-
238
193
  /**
239
194
  * Specifies the group of items aligned horizontally in the toolbar.
240
195
  *
@@ -246,17 +201,6 @@ export interface FileManagerModel extends ComponentModel{
246
201
  */
247
202
  toolbarSettings?: ToolbarSettingsModel;
248
203
 
249
- /**
250
- * An array of items that are used to configure File Manager toolbar items.
251
- *
252
- * @remarks
253
- * 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.
254
- *
255
- * @default []
256
- *
257
- */
258
- toolbarItems?: ToolbarItemModel[];
259
-
260
204
  /**
261
205
  * Specifies the upload settings for the file manager.
262
206
  *
@@ -265,8 +209,7 @@ export interface FileManagerModel extends ComponentModel{
265
209
  * minFileSize: 0,
266
210
  * maxFileSize: 30000000,
267
211
  * allowedExtensions: '',
268
- * autoClose: false,
269
- * directoryUpload: false
212
+ * autoClose: false
270
213
  * }
271
214
  */
272
215
  uploadSettings?: UploadSettingsModel;
@@ -281,238 +224,169 @@ export interface FileManagerModel extends ComponentModel{
281
224
  /**
282
225
  * Triggers before the file/folder is rendered.
283
226
  *
284
- * @event fileLoad
227
+ * @event
285
228
  */
286
229
  fileLoad?: EmitType<FileLoadEventArgs>;
287
230
 
288
231
  /**
289
232
  * Triggers before the file/folder is opened.
290
233
  *
291
- * @event fileOpen
234
+ * @event
292
235
  */
293
236
  fileOpen?: EmitType<FileOpenEventArgs>;
294
237
 
295
238
  /**
296
239
  * Triggers before sending the download request to the server.
297
240
  *
298
- * @event beforeDownload
241
+ * @event
299
242
  */
300
243
  beforeDownload?: EmitType<BeforeDownloadEventArgs>;
301
244
 
302
245
  /**
303
246
  * Triggers before sending the getImage request to the server.
304
247
  *
305
- * @event beforeImageLoad
248
+ * @event
306
249
  */
307
250
  beforeImageLoad?: EmitType<BeforeImageLoadEventArgs>;
308
251
 
309
252
  /**
310
253
  * Triggers before the dialog is closed.
311
254
  *
312
- * @event beforePopupClose
255
+ * @event
313
256
  */
314
257
  beforePopupClose?: EmitType<BeforePopupOpenCloseEventArgs>;
315
258
 
316
259
  /**
317
260
  * Triggers before the dialog is opened.
318
261
  *
319
- * @event beforePopupOpen
262
+ * @event
320
263
  */
321
264
  beforePopupOpen?: EmitType<BeforePopupOpenCloseEventArgs>;
322
265
 
323
266
  /**
324
267
  * Triggers before sending the AJAX request to the server.
325
268
  *
326
- * @event beforeSend
269
+ * @event
327
270
  */
328
271
  beforeSend?: EmitType<BeforeSendEventArgs>;
329
272
 
330
273
  /**
331
274
  * Triggers when the file manager component is created.
332
275
  *
333
- * @event created
276
+ * @event
334
277
  */
278
+ /* eslint-disable */
335
279
  created?: EmitType<Object>;
336
280
 
337
- /**
338
- * This event is triggered before a folder is created. It allows for the restriction of folder creation based on the application's use case.
339
- *
340
- * @event beforeFolderCreate
341
- */
342
- beforeFolderCreate?: EmitType<FolderCreateEventArgs>;
343
-
344
- /**
345
- * This event is triggered when a folder is successfully created. It provides an opportunity to retrieve details about the newly created folder.
346
- *
347
- * @event folderCreate
348
- */
349
- folderCreate?: EmitType<FolderCreateEventArgs>;
350
-
351
281
  /**
352
282
  * Triggers when the file manager component is destroyed.
353
283
  *
354
- * @event destroyed
284
+ * @event
355
285
  */
286
+ /* eslint-disable */
356
287
  destroyed?: EmitType<Object>;
357
288
 
358
- /**
359
- * 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.
360
- *
361
- * @event beforeDelete
362
- */
363
- beforeDelete?: EmitType<DeleteEventArgs>;
364
-
365
- /**
366
- * 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.
367
- *
368
- * @event delete
369
- */
370
- delete?: EmitType<DeleteEventArgs>;
371
-
372
- /**
373
- * 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.
374
- *
375
- * @event beforeRename
376
- */
377
- beforeRename?: EmitType<RenameEventArgs>;
378
-
379
- /**
380
- * This event is triggered when a file or folder is successfully renamed. It provides an opportunity to fetch details about the renamed file.
381
- *
382
- * @event rename
383
- */
384
- rename?: EmitType<RenameEventArgs>;
385
-
386
- /**
387
- * This event is triggered when a file or folder begins to move from its current path through a copy/cut and paste action.
388
- *
389
- * @event beforeMove
390
- */
391
- beforeMove?: EmitType<MoveEventArgs>;
392
-
393
- /**
394
- * This event is triggered when a file or folder is pasted into the destination path.
395
- *
396
- * @event move
397
- */
398
- move?: EmitType<MoveEventArgs>;
399
-
400
- /**
401
- * 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.
402
- *
403
- * @event search
404
- */
405
- search?: EmitType<SearchEventArgs>;
406
-
407
289
  /**
408
290
  * Triggers when the file/folder dragging is started.
409
291
  *
410
- * @event fileDragStart
292
+ * @event
411
293
  */
412
294
  fileDragStart?: EmitType<FileDragEventArgs>;
413
295
 
414
296
  /**
415
297
  * Triggers while dragging the file/folder.
416
298
  *
417
- * @event fileDragging
299
+ * @event
418
300
  */
419
301
  fileDragging?: EmitType<FileDragEventArgs>;
420
302
 
421
303
  /**
422
304
  * Triggers when the file/folder is about to be dropped at the target.
423
305
  *
424
- * @event fileDragStop
306
+ * @event
425
307
  */
426
308
  fileDragStop?: EmitType<FileDragEventArgs>;
427
309
 
428
310
  /**
429
311
  * Triggers when the file/folder is dropped.
430
312
  *
431
- * @event fileDropped
313
+ * @event
432
314
  */
433
315
  fileDropped?: EmitType<FileDragEventArgs>;
434
316
 
435
317
  /**
436
318
  * Triggers before the file/folder is selected.
437
319
  *
438
- * @event fileSelection
320
+ * @event
439
321
  */
440
322
  fileSelection?: EmitType<FileSelectionEventArgs>;
441
323
 
442
324
  /**
443
325
  * Triggers when the file/folder is selected/unselected.
444
326
  *
445
- * @event fileSelect
327
+ * @event
446
328
  */
447
329
  fileSelect?: EmitType<FileSelectEventArgs>;
448
330
 
449
331
  /**
450
332
  * Triggers when the context menu item is clicked.
451
333
  *
452
- * @event menuClick
334
+ * @event
453
335
  */
454
336
  menuClick?: EmitType<MenuClickEventArgs>;
455
337
 
456
338
  /**
457
339
  * Triggers before the context menu is opened.
458
340
  *
459
- * @event menuOpen
341
+ * @event
460
342
  */
461
343
  menuOpen?: EmitType<MenuOpenEventArgs>;
462
344
 
463
- /**
464
- * Triggers before the context menu is closed.
465
- *
466
- * @event menuClose
467
- */
468
- menuClose?: EmitType<MenuCloseEventArgs>;
469
-
470
345
  /**
471
346
  * Triggers when the AJAX request is failed.
472
347
  *
473
- * @event failure
348
+ * @event
474
349
  */
475
350
  failure?: EmitType<FailureEventArgs>;
476
351
 
477
352
  /**
478
353
  * Triggers when the dialog is closed.
479
354
  *
480
- * @event popupClose
355
+ * @event
481
356
  */
482
357
  popupClose?: EmitType<PopupOpenCloseEventArgs>;
483
358
 
484
359
  /**
485
360
  * Triggers when the dialog is opened.
486
361
  *
487
- * @event popupOpen
362
+ * @event
488
363
  */
489
364
  popupOpen?: EmitType<PopupOpenCloseEventArgs>;
490
365
 
491
366
  /**
492
367
  * Triggers when the AJAX request is success.
493
- *
494
- * @event success
368
+ * @event
495
369
  */
496
370
  success?: EmitType<SuccessEventArgs>;
497
371
 
498
372
  /**
499
373
  * Triggers when the toolbar item is clicked.
500
374
  *
501
- * @event toolbarClick
375
+ * @event
502
376
  */
503
377
  toolbarClick?: EmitType<ToolbarClickEventArgs>;
504
378
 
505
379
  /**
506
380
  * Triggers before creating the toolbar.
507
381
  *
508
- * @event toolbarCreate
382
+ * @event
509
383
  */
510
384
  toolbarCreate?: EmitType<ToolbarCreateEventArgs>;
511
385
 
512
386
  /**
513
387
  * Triggers before rendering each file item in upload dialog box.
514
388
  *
515
- * @event uploadListCreate
389
+ * @event
516
390
  */
517
391
  uploadListCreate?: EmitType<UploadListCreateArgs>;
518
392