@syncfusion/ej2-filemanager 22.2.12 → 23.1.38

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 (59) hide show
  1. package/CHANGELOG.md +9 -72
  2. package/dist/ej2-filemanager.min.js +3 -3
  3. package/dist/ej2-filemanager.umd.min.js +3 -3
  4. package/dist/ej2-filemanager.umd.min.js.map +1 -1
  5. package/dist/es6/ej2-filemanager.es2015.js +191 -30
  6. package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
  7. package/dist/es6/ej2-filemanager.es5.js +205 -28
  8. package/dist/es6/ej2-filemanager.es5.js.map +1 -1
  9. package/dist/global/ej2-filemanager.min.js +3 -3
  10. package/dist/global/ej2-filemanager.min.js.map +1 -1
  11. package/dist/global/index.d.ts +2 -2
  12. package/package.json +16 -16
  13. package/src/file-manager/actions/toolbar.d.ts +1 -0
  14. package/src/file-manager/actions/toolbar.js +117 -8
  15. package/src/file-manager/base/file-manager-model.d.ts +12 -1
  16. package/src/file-manager/base/file-manager.d.ts +11 -0
  17. package/src/file-manager/base/file-manager.js +9 -4
  18. package/src/file-manager/base/interface.d.ts +2 -1
  19. package/src/file-manager/layout/details-view.d.ts +1 -0
  20. package/src/file-manager/layout/details-view.js +9 -4
  21. package/src/file-manager/layout/large-icons-view.js +1 -1
  22. package/src/file-manager/layout/navigation-pane.js +6 -3
  23. package/src/file-manager/models/details-view-settings-model.d.ts +1 -1
  24. package/src/file-manager/models/toolbar-settings-model.d.ts +177 -2
  25. package/src/file-manager/models/toolbar-settings.d.ts +157 -2
  26. package/src/file-manager/models/toolbar-settings.js +64 -2
  27. package/src/file-manager/pop-up/dialog.js +0 -5
  28. package/styles/file-manager/_material3-definition.scss +1 -1
  29. package/styles/file-manager/bootstrap-dark.scss +1 -1
  30. package/styles/file-manager/bootstrap.scss +1 -1
  31. package/styles/file-manager/bootstrap4.scss +1 -1
  32. package/styles/file-manager/bootstrap5-dark.scss +1 -1
  33. package/styles/file-manager/bootstrap5.scss +1 -1
  34. package/styles/file-manager/fabric-dark.scss +1 -1
  35. package/styles/file-manager/fabric.scss +1 -1
  36. package/styles/file-manager/fluent-dark.scss +1 -1
  37. package/styles/file-manager/fluent.scss +1 -1
  38. package/styles/file-manager/highcontrast-light.scss +1 -1
  39. package/styles/file-manager/highcontrast.scss +1 -1
  40. package/styles/file-manager/material-dark.css +0 -1
  41. package/styles/file-manager/material-dark.scss +1 -1
  42. package/styles/file-manager/material.css +0 -1
  43. package/styles/file-manager/material.scss +1 -1
  44. package/styles/file-manager/material3-dark.css +1 -2
  45. package/styles/file-manager/material3-dark.scss +1 -1
  46. package/styles/file-manager/material3.css +1 -2
  47. package/styles/file-manager/material3.scss +1 -1
  48. package/styles/file-manager/tailwind-dark.css +0 -1
  49. package/styles/file-manager/tailwind-dark.scss +1 -1
  50. package/styles/file-manager/tailwind.css +0 -1
  51. package/styles/file-manager/tailwind.scss +1 -1
  52. package/styles/material-dark.css +0 -1
  53. package/styles/material.css +0 -1
  54. package/styles/material3-dark.css +1 -2
  55. package/styles/material3-dark.scss +1 -1
  56. package/styles/material3.css +1 -2
  57. package/styles/material3.scss +1 -1
  58. package/styles/tailwind-dark.css +0 -1
  59. package/styles/tailwind.css +0 -1
@@ -1,4 +1,4 @@
1
- import { Ajax, Browser, ChildProperty, Complex, Component, Draggable, Event, EventHandler, Internationalization, KeyboardEvents, L10n, NotifyPropertyChanges, Property, Touch, addClass, closest, createElement, detach, extend, formatUnit, getUniqueID, getValue, initializeCSPTemplate, isNullOrUndefined, isVisible, matches, remove, removeClass, select, selectAll, setStyleAttribute, setValue } from '@syncfusion/ej2-base';
1
+ import { Ajax, Browser, ChildProperty, Collection, Complex, Component, Draggable, Event, EventHandler, Internationalization, KeyboardEvents, L10n, NotifyPropertyChanges, Property, Touch, addClass, closest, createElement, detach, extend, formatUnit, getUniqueID, getValue, initializeCSPTemplate, isNullOrUndefined, isVisible, matches, remove, removeClass, select, selectAll, setStyleAttribute, setValue } from '@syncfusion/ej2-base';
2
2
  import { Splitter } from '@syncfusion/ej2-layouts';
3
3
  import { Dialog, createSpinner, hideSpinner, showSpinner } from '@syncfusion/ej2-popups';
4
4
  import { DataManager, Query } from '@syncfusion/ej2-data';
@@ -70,7 +70,7 @@ var __decorate$1 = (undefined && undefined.__decorate) || function (decorators,
70
70
  else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
71
71
  return c > 3 && r && Object.defineProperty(target, key, r), r;
72
72
  };
73
- var toolbarItems = ['NewFolder', 'Upload', 'Cut', 'Copy', 'Paste', 'Delete', 'Download', 'Rename',
73
+ var defaultToolbarItems = ['NewFolder', 'Upload', 'Cut', 'Copy', 'Paste', 'Delete', 'Download', 'Rename',
74
74
  'SortBy', 'Refresh', 'Selection', 'View', 'Details'];
75
75
  /**
76
76
  * Specifies the Toolbar settings of the FileManager.
@@ -81,13 +81,74 @@ var ToolbarSettings = /** @__PURE__ @class */ (function (_super) {
81
81
  return _super !== null && _super.apply(this, arguments) || this;
82
82
  }
83
83
  __decorate$1([
84
- Property(toolbarItems)
84
+ Property(defaultToolbarItems)
85
85
  ], ToolbarSettings.prototype, "items", void 0);
86
86
  __decorate$1([
87
87
  Property(true)
88
88
  ], ToolbarSettings.prototype, "visible", void 0);
89
89
  return ToolbarSettings;
90
90
  }(ChildProperty));
91
+ var ToolbarItem = /** @__PURE__ @class */ (function (_super) {
92
+ __extends$1(ToolbarItem, _super);
93
+ function ToolbarItem() {
94
+ return _super !== null && _super.apply(this, arguments) || this;
95
+ }
96
+ __decorate$1([
97
+ Property('')
98
+ ], ToolbarItem.prototype, "id", void 0);
99
+ __decorate$1([
100
+ Property('')
101
+ ], ToolbarItem.prototype, "text", void 0);
102
+ __decorate$1([
103
+ Property('auto')
104
+ ], ToolbarItem.prototype, "width", void 0);
105
+ __decorate$1([
106
+ Property('')
107
+ ], ToolbarItem.prototype, "cssClass", void 0);
108
+ __decorate$1([
109
+ Property(false)
110
+ ], ToolbarItem.prototype, "showAlwaysInPopup", void 0);
111
+ __decorate$1([
112
+ Property(false)
113
+ ], ToolbarItem.prototype, "disabled", void 0);
114
+ __decorate$1([
115
+ Property('')
116
+ ], ToolbarItem.prototype, "prefixIcon", void 0);
117
+ __decorate$1([
118
+ Property('')
119
+ ], ToolbarItem.prototype, "suffixIcon", void 0);
120
+ __decorate$1([
121
+ Property(true)
122
+ ], ToolbarItem.prototype, "visible", void 0);
123
+ __decorate$1([
124
+ Property('None')
125
+ ], ToolbarItem.prototype, "overflow", void 0);
126
+ __decorate$1([
127
+ Property('')
128
+ ], ToolbarItem.prototype, "template", void 0);
129
+ __decorate$1([
130
+ Property('Button')
131
+ ], ToolbarItem.prototype, "type", void 0);
132
+ __decorate$1([
133
+ Property('Both')
134
+ ], ToolbarItem.prototype, "showTextOn", void 0);
135
+ __decorate$1([
136
+ Property(null)
137
+ ], ToolbarItem.prototype, "htmlAttributes", void 0);
138
+ __decorate$1([
139
+ Property('')
140
+ ], ToolbarItem.prototype, "tooltipText", void 0);
141
+ __decorate$1([
142
+ Property('Left')
143
+ ], ToolbarItem.prototype, "align", void 0);
144
+ __decorate$1([
145
+ Property(-1)
146
+ ], ToolbarItem.prototype, "tabIndex", void 0);
147
+ __decorate$1([
148
+ Property()
149
+ ], ToolbarItem.prototype, "name", void 0);
150
+ return ToolbarItem;
151
+ }(ChildProperty));
91
152
 
92
153
  var __extends$2 = (undefined && undefined.__extends) || (function () {
93
154
  var extendStatics = function (d, b) {
@@ -2941,7 +3002,6 @@ function Download(parent, path, items) {
2941
3002
  });
2942
3003
  }
2943
3004
 
2944
- // eslint:disable-next-line
2945
3005
  /**
2946
3006
  *
2947
3007
  * @param {IFileManager} parent - Specifies the parent element
@@ -3101,7 +3161,6 @@ function triggerPopupClose(parent, dlgModule, dialogName) {
3101
3161
  var args = { popupModule: dlgModule, element: dlgModule.element, popupName: dialogName };
3102
3162
  parent.trigger('popupClose', args);
3103
3163
  }
3104
- // eslint:disable-next-line
3105
3164
  /**
3106
3165
  *
3107
3166
  * @param {IFileManager} parent - Specifies the parent element.
@@ -3321,7 +3380,6 @@ function retryDlgClose(parent) {
3321
3380
  * @returns {void}
3322
3381
  * @private
3323
3382
  */
3324
- // eslint-disable-next-line
3325
3383
  function onRetryOpen(parent, args) {
3326
3384
  parent.isRetryOpened = true;
3327
3385
  var dialogEle = getValue('element', args);
@@ -3470,8 +3528,6 @@ function createInput(ele, placeholder) {
3470
3528
  }
3471
3529
  });
3472
3530
  }
3473
- /* istanbul ignore next */
3474
- // eslint:disable-next-line
3475
3531
  /**
3476
3532
  *
3477
3533
  * @param {IFileManager} parent - specifies the parent element.
@@ -4104,7 +4160,7 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
4104
4160
  };
4105
4161
  LargeIconsView.prototype.createDragObj = function () {
4106
4162
  var _this = this;
4107
- if (!this.parent.isMobile && this.listObj) {
4163
+ if (this.listObj) {
4108
4164
  if (this.parent.allowDragAndDrop) {
4109
4165
  if (this.dragObj) {
4110
4166
  this.dragObj.destroy();
@@ -7415,6 +7471,7 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7415
7471
  this.notify(modelChanged, { module: 'largeiconsview', newProp: newProp, oldProp: oldProp });
7416
7472
  break;
7417
7473
  case 'toolbarSettings':
7474
+ case 'toolbarItems':
7418
7475
  this.adjustHeight();
7419
7476
  this.notify(modelChanged, { module: 'toolbar', newProp: newProp, oldProp: oldProp });
7420
7477
  break;
@@ -7523,10 +7580,10 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7523
7580
  this.element.innerHTML = '';
7524
7581
  this.breadCrumbBarNavigation = null;
7525
7582
  this.activeElements = null;
7526
- this.virtualizationModule = null;
7527
7583
  this.virtualDragElement = null;
7528
7584
  this.visitedItem = null;
7529
7585
  _super.prototype.destroy.call(this);
7586
+ this.virtualizationModule = null;
7530
7587
  this.navigationpaneModule = null;
7531
7588
  this.toolbarModule = null;
7532
7589
  this.contextmenuModule = null;
@@ -7591,7 +7648,7 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7591
7648
  * @returns {void}
7592
7649
  */
7593
7650
  FileManager.prototype.disableToolbarItems = function (items) {
7594
- if (!isNullOrUndefined(items)) {
7651
+ if (!isNullOrUndefined(items) && this.toolbarModule) {
7595
7652
  this.toolbarModule.enableItems(items, false);
7596
7653
  }
7597
7654
  };
@@ -7615,7 +7672,7 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7615
7672
  * @returns {void}
7616
7673
  */
7617
7674
  FileManager.prototype.enableToolbarItems = function (items) {
7618
- if (!isNullOrUndefined(items)) {
7675
+ if (!isNullOrUndefined(items) && this.toolbarModule) {
7619
7676
  this.toolbarModule.enableItems(items, true);
7620
7677
  }
7621
7678
  };
@@ -7850,6 +7907,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7850
7907
  __decorate$8([
7851
7908
  Complex({}, ToolbarSettings)
7852
7909
  ], FileManager.prototype, "toolbarSettings", void 0);
7910
+ __decorate$8([
7911
+ Collection([], ToolbarItem)
7912
+ ], FileManager.prototype, "toolbarItems", void 0);
7853
7913
  __decorate$8([
7854
7914
  Complex({}, UploadSettings)
7855
7915
  ], FileManager.prototype, "uploadSettings", void 0);
@@ -7938,6 +7998,18 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
7938
7998
  * File Manager base modules
7939
7999
  */
7940
8000
 
8001
+ var __assign = (undefined && undefined.__assign) || function () {
8002
+ __assign = Object.assign || function(t) {
8003
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
8004
+ s = arguments[i];
8005
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
8006
+ t[p] = s[p];
8007
+ }
8008
+ return t;
8009
+ };
8010
+ return __assign.apply(this, arguments);
8011
+ };
8012
+ /* eslint-disable @typescript-eslint/no-explicit-any */
7941
8013
  /**
7942
8014
  * Toolbar module
7943
8015
  */
@@ -7973,6 +8045,7 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
7973
8045
  enableRtl: _this.parent.enableRtl
7974
8046
  });
7975
8047
  _this.toolbarObj.isStringTemplate = true;
8048
+ _this.toolbarObj.root = _this.parent.root ? _this.parent.root : _this.parent;
7976
8049
  _this.toolbarObj.appendTo('#' + _this.parent.element.id + TOOLBAR_ID);
7977
8050
  });
7978
8051
  };
@@ -7990,6 +8063,9 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
7990
8063
  if (this.parent.isDevice && this.parent.allowMultiSelection) {
7991
8064
  currItems.push('SelectAll');
7992
8065
  }
8066
+ if (this.parent.toolbarItems.length > 0) {
8067
+ currItems = this.parent.toolbarItems.map(function (item) { return item.name; });
8068
+ }
7993
8069
  return currItems;
7994
8070
  };
7995
8071
  /* istanbul ignore next */
@@ -8130,6 +8206,10 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8130
8206
  }
8131
8207
  this.hideItems(this.default, true);
8132
8208
  this.hideStatus();
8209
+ if (this.parent.portals && this.toolbarObj.portals) {
8210
+ this.parent.portals = this.parent.portals.concat(this.toolbarObj.portals);
8211
+ this.parent['renderReactTemplates']();
8212
+ }
8133
8213
  var btnElement = selectAll('.e-btn', this.toolbarObj.element);
8134
8214
  var _loop_1 = function (btnCount) {
8135
8215
  /* istanbul ignore next */
@@ -8202,10 +8282,13 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8202
8282
  }
8203
8283
  for (var i = 0; i < data.length; i++) {
8204
8284
  var item = void 0;
8285
+ var propItem = void 0;
8286
+ if (this.parent.toolbarItems.length > 0) {
8287
+ propItem = this.getItemModel(this.parent.toolbarItems[parseInt(i.toString(), 10)]);
8288
+ }
8205
8289
  var itemId = this.getId(data[i]);
8206
8290
  var itemText = getLocaleText(this.parent, data[i]);
8207
8291
  var itemTooltip = getLocaleText(this.parent, 'Tooltip-' + data[i]);
8208
- var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
8209
8292
  switch (data[i]) {
8210
8293
  case '|':
8211
8294
  item = { type: 'Separator' };
@@ -8213,12 +8296,17 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8213
8296
  case 'Upload':
8214
8297
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: ICON_UPLOAD, showTextOn: mode };
8215
8298
  break;
8216
- case 'SortBy':
8299
+ case 'SortBy': {
8300
+ var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
8301
+ if (propItem && propItem.text) {
8302
+ spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + propItem.text + '</span>';
8303
+ }
8217
8304
  item = {
8218
8305
  id: itemId, tooltipText: itemTooltip,
8219
8306
  template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1">' + spanElement + '</button>'
8220
8307
  };
8221
8308
  break;
8309
+ }
8222
8310
  case 'Refresh':
8223
8311
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: ICON_REFRESH, showTextOn: mode };
8224
8312
  break;
@@ -8228,14 +8316,22 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8228
8316
  align: 'Right'
8229
8317
  };
8230
8318
  break;
8231
- case 'View':
8319
+ case 'View': {
8320
+ var viewText = void 0;
8321
+ if (propItem && propItem.text) {
8322
+ viewText = propItem.text;
8323
+ }
8324
+ else {
8325
+ viewText = getLocaleText(this.parent, 'View');
8326
+ }
8232
8327
  item = {
8233
8328
  id: itemId, tooltipText: itemTooltip, prefixIcon: this.parent.view === 'Details' ? ICON_GRID : ICON_LARGE,
8234
8329
  overflow: 'Show', align: 'Right', text: itemText, showTextOn: 'Overflow',
8235
8330
  template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1" aria-label=' +
8236
- getLocaleText(this.parent, 'View') + '></button>'
8331
+ viewText + '></button>'
8237
8332
  };
8238
8333
  break;
8334
+ }
8239
8335
  case 'Details':
8240
8336
  item = {
8241
8337
  id: itemId, tooltipText: itemTooltip, prefixIcon: ICON_DETAILS, overflow: 'Show', align: 'Right',
@@ -8267,13 +8363,74 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8267
8363
  item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: ICON_SELECTALL, showTextOn: mode };
8268
8364
  break;
8269
8365
  default:
8270
- item = { id: itemId, text: itemText, tooltipText: itemTooltip };
8366
+ item = { id: itemId, text: itemText, tooltipText: itemTooltip, template: '' };
8271
8367
  break;
8272
8368
  }
8273
- items.push(item);
8369
+ if (this.parent.toolbarItems.length > 0 && propItem) {
8370
+ var mergedItems = __assign({}, item, propItem);
8371
+ items.push(mergedItems);
8372
+ }
8373
+ else {
8374
+ items.push(item);
8375
+ }
8274
8376
  }
8275
8377
  return items;
8276
8378
  };
8379
+ Toolbar$$1.prototype.getItemModel = function (propItem) {
8380
+ var item = {};
8381
+ if (propItem.id) {
8382
+ item.id = propItem.id;
8383
+ }
8384
+ if (propItem.text) {
8385
+ item.text = propItem.text;
8386
+ }
8387
+ if (propItem.tooltipText) {
8388
+ item.tooltipText = propItem.tooltipText;
8389
+ }
8390
+ if (propItem.prefixIcon) {
8391
+ item.prefixIcon = propItem.prefixIcon;
8392
+ }
8393
+ if (propItem.cssClass) {
8394
+ item.cssClass = propItem.cssClass;
8395
+ }
8396
+ if (propItem.showTextOn !== 'Both') {
8397
+ item.showTextOn = propItem.showTextOn;
8398
+ }
8399
+ if (propItem.template) {
8400
+ item.template = propItem.template;
8401
+ }
8402
+ if (propItem.disabled) {
8403
+ item.disabled = propItem.disabled;
8404
+ }
8405
+ if (propItem.width !== 'auto') {
8406
+ item.width = propItem.width;
8407
+ }
8408
+ if (propItem.suffixIcon) {
8409
+ item.suffixIcon = propItem.suffixIcon;
8410
+ }
8411
+ if (propItem.align !== 'Left') {
8412
+ item.align = propItem.align;
8413
+ }
8414
+ if (propItem.overflow !== 'None') {
8415
+ item.overflow = propItem.overflow;
8416
+ }
8417
+ if (propItem.htmlAttributes) {
8418
+ item.htmlAttributes = propItem.htmlAttributes;
8419
+ }
8420
+ if (propItem.type !== 'Button') {
8421
+ item.type = propItem.type;
8422
+ }
8423
+ if (propItem.visible !== true) {
8424
+ item.visible = propItem.visible;
8425
+ }
8426
+ if (propItem.showAlwaysInPopup) {
8427
+ item.showAlwaysInPopup = propItem.showAlwaysInPopup;
8428
+ }
8429
+ if (propItem.tabIndex !== -1) {
8430
+ item.tabIndex = propItem.tabIndex;
8431
+ }
8432
+ return item;
8433
+ };
8277
8434
  Toolbar$$1.prototype.getId = function (id) {
8278
8435
  return this.parent.element.id + '_tb_' + id.toLowerCase();
8279
8436
  };
@@ -8288,8 +8445,19 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8288
8445
  };
8289
8446
  Toolbar$$1.prototype.reRenderToolbar = function (e) {
8290
8447
  var _this = this;
8291
- if (e.newProp.toolbarSettings.items !== undefined) {
8292
- this.items = this.toolbarItemData(this.getItems(e.newProp.toolbarSettings.items.map(function (item) { return item.trim(); })));
8448
+ var itemsToProcess = [];
8449
+ if (this.parent.toolbarItems.length > 0) {
8450
+ itemsToProcess = this.parent.toolbarItems.map(function (item) {
8451
+ return item.name;
8452
+ });
8453
+ }
8454
+ else if (e.newProp.toolbarSettings.items !== undefined) {
8455
+ itemsToProcess = e.newProp.toolbarSettings.items.map(function (item) {
8456
+ return item.trim();
8457
+ });
8458
+ }
8459
+ if (itemsToProcess.length > 0) {
8460
+ this.items = this.toolbarItemData(this.getItems(itemsToProcess));
8293
8461
  var eventArgs = { items: this.items };
8294
8462
  this.parent.trigger('toolbarCreate', eventArgs, function (toolbarCreateArgs) {
8295
8463
  if (_this.buttonObj) {
@@ -8403,6 +8571,7 @@ var Toolbar$1 = /** @__PURE__ @class */ (function () {
8403
8571
  this.toolbarObj.refreshOverflow();
8404
8572
  break;
8405
8573
  case 'toolbarSettings':
8574
+ case 'toolbarItems':
8406
8575
  this.reRenderToolbar(e);
8407
8576
  break;
8408
8577
  }
@@ -8855,8 +9024,12 @@ var NavigationPane = /** @__PURE__ @class */ (function () {
8855
9024
  }
8856
9025
  length_1++;
8857
9026
  }
8858
- // eslint-disable-next-line
8859
- this.treeObj.addNodes(directories, target, null, prevent);
9027
+ var element = select('[data-uid="' + target + '"]', this.treeObj.element);
9028
+ var childElements = select('ul', element);
9029
+ if (isNullOrUndefined(childElements)) {
9030
+ // eslint-disable-next-line
9031
+ this.treeObj.addNodes(directories, target, null, prevent);
9032
+ }
8860
9033
  }
8861
9034
  };
8862
9035
  // Node Selecting event handler
@@ -8941,7 +9114,6 @@ var NavigationPane = /** @__PURE__ @class */ (function () {
8941
9114
  this.parent.pathId = getPathId(args.node);
8942
9115
  this.parent.visitedItem = args.node;
8943
9116
  }
8944
- this.expandNodeTarget = null;
8945
9117
  if (args.node.querySelector('.' + ICONS) && args.node.querySelector('.' + LIST_ITEM) === null) {
8946
9118
  this.expandNodeTarget = 'add';
8947
9119
  }
@@ -9705,11 +9877,16 @@ var DetailsView = /** @__PURE__ @class */ (function () {
9705
9877
  };
9706
9878
  DetailsView.prototype.reactTemplateRender = function (args) {
9707
9879
  this.parent["portals"] = args;
9880
+ if (this.parent.portals && this.parent.toolbarModule && this.parent.toolbarModule.toolbarObj &&
9881
+ this.parent.toolbarModule.toolbarObj.portals) {
9882
+ this.parent["portals"] = this.parent["portals"].concat(this.parent.toolbarModule.toolbarObj.portals);
9883
+ }
9708
9884
  this.parent.notify('renderReactTemplate', this.parent["portals"]);
9709
9885
  this.parent["renderReactTemplates"]();
9710
9886
  };
9711
9887
  /**
9712
9888
  * Gets the grid height.
9889
+ *
9713
9890
  * @returns The grid height.
9714
9891
  * @private
9715
9892
  */
@@ -9776,7 +9953,7 @@ var DetailsView = /** @__PURE__ @class */ (function () {
9776
9953
  }), allowResizing: false, allowSorting: true, customAttributes: { class: 'e-fe-grid-icon' },
9777
9954
  headerTemplate: initializeCSPTemplate(function () {
9778
9955
  return "<span class=\"e-fe-icon e-fe-folder\"></span>";
9779
- }),
9956
+ })
9780
9957
  };
9781
9958
  columns.unshift(icon);
9782
9959
  if (this.parent.showItemCheckBoxes) {
@@ -10509,8 +10686,8 @@ var DetailsView = /** @__PURE__ @class */ (function () {
10509
10686
  if (dragLi.getElementsByClassName('e-fe-text')[0]) {
10510
10687
  name = dragLi.getElementsByClassName('e-fe-text')[0].innerText;
10511
10688
  }
10512
- else if (dragLi.getElementsByClassName("e-rowcell e-templatecell")[0].nextElementSibling) {
10513
- name = dragLi.getElementsByClassName("e-rowcell e-templatecell")[0].nextElementSibling.innerText;
10689
+ else if (dragLi.getElementsByClassName('e-rowcell e-templatecell')[0].nextElementSibling) {
10690
+ name = dragLi.getElementsByClassName('e-rowcell e-templatecell')[0].nextElementSibling.innerText;
10514
10691
  }
10515
10692
  if (dragLi && !dragLi.querySelector('.e-active')) {
10516
10693
  this.selectRecords([name]);
@@ -10579,7 +10756,7 @@ var DetailsView = /** @__PURE__ @class */ (function () {
10579
10756
  };
10580
10757
  DetailsView.prototype.createDragObj = function () {
10581
10758
  var _this = this;
10582
- if (!this.parent.isMobile && this.gridObj) {
10759
+ if (this.gridObj) {
10583
10760
  if (this.parent.allowDragAndDrop) {
10584
10761
  if (this.dragObj) {
10585
10762
  this.dragObj.destroy();
@@ -11498,5 +11675,5 @@ var DetailsView = /** @__PURE__ @class */ (function () {
11498
11675
  * File Manager all modules
11499
11676
  */
11500
11677
 
11501
- export { AjaxSettings, toolbarItems, ToolbarSettings, SearchSettings, columnArray, DetailsViewSettings, fileItems, folderItems, layoutItems, ContextMenuSettings, NavigationPaneSettings, UploadSettings, Column, TOOLBAR_ID, LAYOUT_ID, NAVIGATION_ID, TREE_ID, GRID_ID, LARGEICON_ID, DIALOG_ID, ALT_DIALOG_ID, IMG_DIALOG_ID, EXTN_DIALOG_ID, UPLOAD_DIALOG_ID, RETRY_DIALOG_ID, CONTEXT_MENU_ID, SORTBY_ID, VIEW_ID, SPLITTER_ID, CONTENT_ID, BREADCRUMBBAR_ID, UPLOAD_ID, RETRY_ID, SEARCH_ID, ROOT, CONTROL, CHECK_SELECT, ROOT_POPUP, MOBILE, MOB_POPUP, MULTI_SELECT, FILTER, LAYOUT, NAVIGATION, LAYOUT_CONTENT, LARGE_ICONS, TB_ITEM, LIST_ITEM, LIST_TEXT, LIST_PARENT, TB_OPTION_TICK, TB_OPTION_DOT, BLUR, ACTIVE, HOVER, FOCUS, FOCUSED, CHECK, FRAME, CB_WRAP, ROW, ROWCELL, EMPTY, EMPTY_CONTENT, EMPTY_INNER_CONTENT, CLONE, DROP_FOLDER, DROP_FILE, FOLDER, ICON_IMAGE, ICON_MUSIC, ICON_VIDEO, LARGE_ICON, LARGE_EMPTY_FOLDER, LARGE_EMPTY_FOLDER_TWO, LARGE_ICON_FOLDER, SELECTED_ITEMS, TEXT_CONTENT, GRID_HEADER, TEMPLATE_CELL, TREE_VIEW, MENU_ITEM, MENU_ICON, SUBMENU_ICON, GRID_VIEW, GRID_CONTENT, ICON_VIEW, ICON_OPEN, ICON_UPLOAD, ICON_CUT, ICON_COPY, ICON_PASTE, ICON_DELETE, ICON_RENAME, ICON_NEWFOLDER, ICON_DETAILS, ICON_SHORTBY, ICON_REFRESH, ICON_SELECTALL, ICON_DOWNLOAD, ICON_OPTIONS, ICON_GRID, ICON_LARGE, ICON_BREADCRUMB, ICON_CLEAR, ICON_DROP_IN, ICON_DROP_OUT, ICON_NO_DROP, ICONS, DETAILS_LABEL, ERROR_CONTENT, STATUS, BREADCRUMBS, RTL, DISPLAY_NONE, COLLAPSED, FULLROW, ICON_COLLAPSIBLE, SPLIT_BAR, HEADER_CHECK, OVERLAY, VALUE, isFile, modelChanged, initialEnd, finalizeEnd, createEnd, filterEnd, beforeDelete, pathDrag, deleteInit, deleteEnd, refreshEnd, resizeEnd, splitterResize, pathChanged, destroy, beforeRequest, upload, skipUpload, afterRequest, download, layoutRefresh, actionFailure, search, openInit, openEnd, selectionChanged, selectAllInit, clearAllInit, clearPathInit, layoutChange, sortByChange, nodeExpand, detailsInit, menuItemData, renameInit, renameEndParent, renameEnd, showPaste, hidePaste, selectedData, cutCopyInit, pasteInit, pasteEnd, cutEnd, hideLayout, updateTreeSelection, treeSelect, sortColumn, pathColumn, searchTextChange, beforeDownload, downloadInit, dropInit, dragEnd, dropPath, dragHelper, dragging, updateSelectionData, methodCall, permissionRead, permissionEdit, permissionEditContents, permissionCopy, permissionUpload, permissionDownload, FileManager, Toolbar$1 as Toolbar, BreadCrumbBar, Virtualization, NavigationPane, DetailsView, LargeIconsView, createDialog, createExtDialog, createImageDialog, ContextMenu$2 as ContextMenu };
11678
+ export { AjaxSettings, defaultToolbarItems, ToolbarSettings, ToolbarItem, SearchSettings, columnArray, DetailsViewSettings, fileItems, folderItems, layoutItems, ContextMenuSettings, NavigationPaneSettings, UploadSettings, Column, TOOLBAR_ID, LAYOUT_ID, NAVIGATION_ID, TREE_ID, GRID_ID, LARGEICON_ID, DIALOG_ID, ALT_DIALOG_ID, IMG_DIALOG_ID, EXTN_DIALOG_ID, UPLOAD_DIALOG_ID, RETRY_DIALOG_ID, CONTEXT_MENU_ID, SORTBY_ID, VIEW_ID, SPLITTER_ID, CONTENT_ID, BREADCRUMBBAR_ID, UPLOAD_ID, RETRY_ID, SEARCH_ID, ROOT, CONTROL, CHECK_SELECT, ROOT_POPUP, MOBILE, MOB_POPUP, MULTI_SELECT, FILTER, LAYOUT, NAVIGATION, LAYOUT_CONTENT, LARGE_ICONS, TB_ITEM, LIST_ITEM, LIST_TEXT, LIST_PARENT, TB_OPTION_TICK, TB_OPTION_DOT, BLUR, ACTIVE, HOVER, FOCUS, FOCUSED, CHECK, FRAME, CB_WRAP, ROW, ROWCELL, EMPTY, EMPTY_CONTENT, EMPTY_INNER_CONTENT, CLONE, DROP_FOLDER, DROP_FILE, FOLDER, ICON_IMAGE, ICON_MUSIC, ICON_VIDEO, LARGE_ICON, LARGE_EMPTY_FOLDER, LARGE_EMPTY_FOLDER_TWO, LARGE_ICON_FOLDER, SELECTED_ITEMS, TEXT_CONTENT, GRID_HEADER, TEMPLATE_CELL, TREE_VIEW, MENU_ITEM, MENU_ICON, SUBMENU_ICON, GRID_VIEW, GRID_CONTENT, ICON_VIEW, ICON_OPEN, ICON_UPLOAD, ICON_CUT, ICON_COPY, ICON_PASTE, ICON_DELETE, ICON_RENAME, ICON_NEWFOLDER, ICON_DETAILS, ICON_SHORTBY, ICON_REFRESH, ICON_SELECTALL, ICON_DOWNLOAD, ICON_OPTIONS, ICON_GRID, ICON_LARGE, ICON_BREADCRUMB, ICON_CLEAR, ICON_DROP_IN, ICON_DROP_OUT, ICON_NO_DROP, ICONS, DETAILS_LABEL, ERROR_CONTENT, STATUS, BREADCRUMBS, RTL, DISPLAY_NONE, COLLAPSED, FULLROW, ICON_COLLAPSIBLE, SPLIT_BAR, HEADER_CHECK, OVERLAY, VALUE, isFile, modelChanged, initialEnd, finalizeEnd, createEnd, filterEnd, beforeDelete, pathDrag, deleteInit, deleteEnd, refreshEnd, resizeEnd, splitterResize, pathChanged, destroy, beforeRequest, upload, skipUpload, afterRequest, download, layoutRefresh, actionFailure, search, openInit, openEnd, selectionChanged, selectAllInit, clearAllInit, clearPathInit, layoutChange, sortByChange, nodeExpand, detailsInit, menuItemData, renameInit, renameEndParent, renameEnd, showPaste, hidePaste, selectedData, cutCopyInit, pasteInit, pasteEnd, cutEnd, hideLayout, updateTreeSelection, treeSelect, sortColumn, pathColumn, searchTextChange, beforeDownload, downloadInit, dropInit, dragEnd, dropPath, dragHelper, dragging, updateSelectionData, methodCall, permissionRead, permissionEdit, permissionEditContents, permissionCopy, permissionUpload, permissionDownload, FileManager, Toolbar$1 as Toolbar, BreadCrumbBar, Virtualization, NavigationPane, DetailsView, LargeIconsView, createDialog, createExtDialog, createImageDialog, ContextMenu$2 as ContextMenu };
11502
11679
  //# sourceMappingURL=ej2-filemanager.es5.js.map