@syncfusion/ej2-filemanager 26.2.10 → 27.1.48
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.
- package/.eslintrc.json +2 -4
- package/dist/ej2-filemanager.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js.map +1 -1
- package/dist/es6/ej2-filemanager.es2015.js +190 -21
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +191 -21
- package/dist/es6/ej2-filemanager.es5.js.map +1 -1
- package/dist/global/ej2-filemanager.min.js +2 -2
- package/dist/global/ej2-filemanager.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +16 -16
- package/src/file-manager/base/file-manager-model.d.ts +17 -1
- package/src/file-manager/base/file-manager.d.ts +32 -1
- package/src/file-manager/base/file-manager.js +148 -1
- package/src/file-manager/base/interface.d.ts +38 -0
- package/src/file-manager/common/operations.js +1 -0
- package/src/file-manager/common/utility.js +3 -0
- package/src/file-manager/layout/details-view.js +11 -2
- package/src/file-manager/layout/large-icons-view.d.ts +0 -1
- package/src/file-manager/layout/large-icons-view.js +5 -17
- package/src/file-manager/pop-up/context-menu.d.ts +1 -1
- package/src/file-manager/pop-up/context-menu.js +24 -2
- package/styles/bootstrap-dark-lite.css +1058 -0
- package/styles/bootstrap-dark-lite.scss +16 -0
- package/styles/bootstrap-dark.css +201 -161
- package/styles/bootstrap-dark.scss +1 -0
- package/styles/bootstrap-lite.css +1040 -0
- package/styles/bootstrap-lite.scss +16 -0
- package/styles/bootstrap.css +183 -143
- package/styles/bootstrap.scss +1 -0
- package/styles/bootstrap4-lite.css +1068 -0
- package/styles/bootstrap4-lite.scss +16 -0
- package/styles/bootstrap4.css +211 -171
- package/styles/bootstrap4.scss +1 -0
- package/styles/bootstrap5-dark-lite.css +1078 -0
- package/styles/bootstrap5-dark-lite.scss +16 -0
- package/styles/bootstrap5-dark.css +220 -186
- package/styles/bootstrap5-dark.scss +1 -0
- package/styles/bootstrap5-lite.css +1078 -0
- package/styles/bootstrap5-lite.scss +16 -0
- package/styles/bootstrap5.3-lite.css +1035 -0
- package/styles/bootstrap5.3-lite.scss +16 -0
- package/styles/bootstrap5.3.css +1603 -0
- package/styles/bootstrap5.3.scss +17 -0
- package/styles/bootstrap5.css +220 -186
- package/styles/bootstrap5.scss +1 -0
- package/styles/fabric-dark-lite.css +1039 -0
- package/styles/fabric-dark-lite.scss +16 -0
- package/styles/fabric-dark.css +184 -144
- package/styles/fabric-dark.scss +1 -0
- package/styles/fabric-lite.css +1039 -0
- package/styles/fabric-lite.scss +16 -0
- package/styles/fabric.css +183 -143
- package/styles/fabric.scss +1 -0
- package/styles/file-manager/_bds-definition.scss +2 -0
- package/styles/file-manager/_bigger.scss +758 -0
- package/styles/file-manager/_bootstrap-dark-definition.scss +2 -0
- package/styles/file-manager/_bootstrap-definition.scss +2 -0
- package/styles/file-manager/_bootstrap4-definition.scss +2 -0
- package/styles/file-manager/_bootstrap5-definition.scss +2 -0
- package/styles/file-manager/_bootstrap5.3-definition.scss +22 -20
- package/styles/file-manager/_fabric-dark-definition.scss +2 -0
- package/styles/file-manager/_fabric-definition.scss +2 -0
- package/styles/file-manager/_fluent-definition.scss +2 -0
- package/styles/file-manager/_fluent2-definition.scss +15 -9
- package/styles/file-manager/_fusionnew-definition.scss +2 -0
- package/styles/file-manager/_highcontrast-definition.scss +2 -0
- package/styles/file-manager/_highcontrast-light-definition.scss +2 -0
- package/styles/file-manager/_layout.scss +45 -663
- package/styles/file-manager/_material-dark-definition.scss +2 -0
- package/styles/file-manager/_material-definition.scss +2 -0
- package/styles/file-manager/_material3-definition.scss +2 -0
- package/styles/file-manager/_tailwind-definition.scss +2 -0
- package/styles/file-manager/_theme.scss +38 -7
- package/styles/file-manager/bootstrap-dark.css +201 -161
- package/styles/file-manager/bootstrap-dark.scss +1 -0
- package/styles/file-manager/bootstrap.css +183 -143
- package/styles/file-manager/bootstrap.scss +1 -0
- package/styles/file-manager/bootstrap4.css +211 -171
- package/styles/file-manager/bootstrap4.scss +1 -0
- package/styles/file-manager/bootstrap5-dark.css +220 -186
- package/styles/file-manager/bootstrap5-dark.scss +1 -0
- package/styles/file-manager/bootstrap5.3.css +1603 -0
- package/styles/file-manager/bootstrap5.3.scss +17 -0
- package/styles/file-manager/bootstrap5.css +220 -186
- package/styles/file-manager/bootstrap5.scss +1 -0
- package/styles/file-manager/fabric-dark.css +184 -144
- package/styles/file-manager/fabric-dark.scss +1 -0
- package/styles/file-manager/fabric.css +183 -143
- package/styles/file-manager/fabric.scss +1 -0
- package/styles/file-manager/fluent-dark.css +187 -147
- package/styles/file-manager/fluent-dark.scss +1 -0
- package/styles/file-manager/fluent.css +186 -146
- package/styles/file-manager/fluent.scss +1 -0
- package/styles/file-manager/fluent2.css +204 -158
- package/styles/file-manager/fluent2.scss +1 -0
- package/styles/file-manager/highcontrast-light.css +184 -144
- package/styles/file-manager/highcontrast-light.scss +1 -0
- package/styles/file-manager/highcontrast.css +207 -167
- package/styles/file-manager/highcontrast.scss +1 -0
- package/styles/file-manager/material-dark.css +198 -158
- package/styles/file-manager/material-dark.scss +1 -0
- package/styles/file-manager/material.css +183 -143
- package/styles/file-manager/material.scss +1 -0
- package/styles/file-manager/material3-dark.css +185 -145
- package/styles/file-manager/material3-dark.scss +1 -0
- package/styles/file-manager/material3.css +185 -145
- package/styles/file-manager/material3.scss +1 -0
- package/styles/file-manager/tailwind-dark.css +198 -164
- package/styles/file-manager/tailwind-dark.scss +1 -0
- package/styles/file-manager/tailwind.css +198 -164
- package/styles/file-manager/tailwind.scss +1 -0
- package/styles/fluent-dark-lite.css +1037 -0
- package/styles/fluent-dark-lite.scss +16 -0
- package/styles/fluent-dark.css +187 -147
- package/styles/fluent-dark.scss +1 -0
- package/styles/fluent-lite.css +1036 -0
- package/styles/fluent-lite.scss +16 -0
- package/styles/fluent.css +186 -146
- package/styles/fluent.scss +1 -0
- package/styles/fluent2-lite.css +1272 -0
- package/styles/fluent2-lite.scss +16 -0
- package/styles/fluent2.css +204 -158
- package/styles/fluent2.scss +1 -0
- package/styles/highcontrast-light-lite.css +1039 -0
- package/styles/highcontrast-light-lite.scss +16 -0
- package/styles/highcontrast-light.css +184 -144
- package/styles/highcontrast-light.scss +1 -0
- package/styles/highcontrast-lite.css +1059 -0
- package/styles/highcontrast-lite.scss +16 -0
- package/styles/highcontrast.css +207 -167
- package/styles/highcontrast.scss +1 -0
- package/styles/material-dark-lite.css +1092 -0
- package/styles/material-dark-lite.scss +16 -0
- package/styles/material-dark.css +198 -158
- package/styles/material-dark.scss +1 -0
- package/styles/material-lite.css +1097 -0
- package/styles/material-lite.scss +16 -0
- package/styles/material.css +183 -143
- package/styles/material.scss +1 -0
- package/styles/material3-dark-lite.css +1090 -0
- package/styles/material3-dark-lite.scss +16 -0
- package/styles/material3-dark.css +185 -145
- package/styles/material3-dark.scss +1 -0
- package/styles/material3-lite.css +1092 -0
- package/styles/material3-lite.scss +16 -0
- package/styles/material3.css +185 -145
- package/styles/material3.scss +1 -0
- package/styles/tailwind-dark-lite.css +1060 -0
- package/styles/tailwind-dark-lite.scss +16 -0
- package/styles/tailwind-dark.css +198 -164
- package/styles/tailwind-dark.scss +1 -0
- package/styles/tailwind-lite.css +1060 -0
- package/styles/tailwind-lite.scss +16 -0
- package/styles/tailwind.css +198 -164
- package/styles/tailwind.scss +1 -0
- package/tslint.json +0 -111
@@ -1708,6 +1708,9 @@ function pasteHandler(parent) {
|
|
1708
1708
|
parent.isDragDrop = false;
|
1709
1709
|
if (parent.selectedNodes.length !== 0 && parent.enablePaste) {
|
1710
1710
|
var path = (parent.folderPath === '') ? parent.path : parent.folderPath;
|
1711
|
+
if (parent.activeModule === 'navigationpane' && !parent.selectedNodes[0].includes('/')) {
|
1712
|
+
parent.targetPath = getValue('filterPath', parent.actionRecords[0]).replace(/\\/g, '/');
|
1713
|
+
}
|
1711
1714
|
var subFolder = validateSubFolder(parent, parent.actionRecords, path, parent.path);
|
1712
1715
|
if (!subFolder) {
|
1713
1716
|
if ((parent.fileAction === 'move' && parent.targetPath !== path) || parent.fileAction === 'copy') {
|
@@ -2986,6 +2989,7 @@ function triggerSearchOperation(parent, data, eventArgs) {
|
|
2986
2989
|
showHiddenItems: getValue('showHiddenItems', data)
|
2987
2990
|
};
|
2988
2991
|
parent.trigger('search', searchEventArgs, function (args) {
|
2992
|
+
setValue('data', args.searchResults, data);
|
2989
2993
|
if (args.cancel) {
|
2990
2994
|
eventArgs.cancel = true;
|
2991
2995
|
}
|
@@ -4805,9 +4809,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
4805
4809
|
}
|
4806
4810
|
iconsView.classList.remove(DISPLAY_NONE);
|
4807
4811
|
if (this.parent.enableVirtualization && this.allItems.length > 0) {
|
4808
|
-
if (!this.element.style.height) {
|
4809
|
-
this.adjustHeight();
|
4810
|
-
}
|
4811
4812
|
this.parent.virtualizationModule.setUIVirtualization();
|
4812
4813
|
}
|
4813
4814
|
this.listElements = ListBase.createListFromJson(createElement, this.items, this.listObj);
|
@@ -4845,7 +4846,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
4845
4846
|
for (var i = 0; i < activeEle.length; i++) {
|
4846
4847
|
activeEle[i].setAttribute('aria-selected', 'true');
|
4847
4848
|
}
|
4848
|
-
this.adjustHeight();
|
4849
4849
|
this.element.style.maxHeight = '100%';
|
4850
4850
|
this.getItemCount();
|
4851
4851
|
this.addEventListener();
|
@@ -4952,11 +4952,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
4952
4952
|
LargeIconsView.prototype.getModuleName = function () {
|
4953
4953
|
return 'largeiconsview';
|
4954
4954
|
};
|
4955
|
-
LargeIconsView.prototype.adjustHeight = function () {
|
4956
|
-
var pane = select('#' + this.parent.element.id + CONTENT_ID, this.parent.element);
|
4957
|
-
var bar = select('#' + this.parent.element.id + BREADCRUMBBAR_ID, this.parent.element);
|
4958
|
-
this.element.style.height = (pane.offsetHeight - bar.offsetHeight) + 'px';
|
4959
|
-
};
|
4960
4955
|
LargeIconsView.prototype.onItemCreated = function (args) {
|
4961
4956
|
args.item.removeAttribute('aria-level');
|
4962
4957
|
if (!this.parent.showFileExtension && getValue('isFile', args.curData)) {
|
@@ -5156,7 +5151,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5156
5151
|
if (this.parent.view !== 'LargeIcons') {
|
5157
5152
|
return;
|
5158
5153
|
}
|
5159
|
-
this.adjustHeight();
|
5160
5154
|
};
|
5161
5155
|
LargeIconsView.prototype.onUpdateSelectionData = function () {
|
5162
5156
|
if (this.parent.view !== 'LargeIcons') {
|
@@ -5284,7 +5278,8 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5284
5278
|
LargeIconsView.prototype.onpasteEnd = function (args) {
|
5285
5279
|
if (this.parent.view === 'LargeIcons') {
|
5286
5280
|
this.isPasteOperation = true;
|
5287
|
-
if (this.parent.path === this.parent.destinationPath ||
|
5281
|
+
if (this.parent.path === this.parent.destinationPath ||
|
5282
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
5288
5283
|
this.onPathChanged(args);
|
5289
5284
|
}
|
5290
5285
|
}
|
@@ -5306,9 +5301,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5306
5301
|
case 'allowDragAndDrop':
|
5307
5302
|
this.createDragObj();
|
5308
5303
|
break;
|
5309
|
-
case 'height':
|
5310
|
-
this.adjustHeight();
|
5311
|
-
break;
|
5312
5304
|
case 'selectedItems':
|
5313
5305
|
this.isInteraction = false;
|
5314
5306
|
this.isInteracted = false;
|
@@ -5772,6 +5764,9 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5772
5764
|
case 'ctrlD':
|
5773
5765
|
this.doDownload();
|
5774
5766
|
break;
|
5767
|
+
case 'back':
|
5768
|
+
this.parent.traverseBackward();
|
5769
|
+
break;
|
5775
5770
|
}
|
5776
5771
|
};
|
5777
5772
|
LargeIconsView.prototype.doDownload = function () {
|
@@ -6064,9 +6059,6 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
6064
6059
|
};
|
6065
6060
|
LargeIconsView.prototype.resizeHandler = function () {
|
6066
6061
|
this.getItemCount();
|
6067
|
-
if (!isNullOrUndefined(this.listObj)) {
|
6068
|
-
this.adjustHeight();
|
6069
|
-
}
|
6070
6062
|
};
|
6071
6063
|
LargeIconsView.prototype.splitterResizeHandler = function () {
|
6072
6064
|
this.getItemCount();
|
@@ -6749,7 +6741,23 @@ var ContextMenu = /** @__PURE__ @class */ (function () {
|
|
6749
6741
|
iconSpan.setAttribute('class', ICON_GRID + ' ' + MENU_ICON);
|
6750
6742
|
}
|
6751
6743
|
};
|
6752
|
-
ContextMenu.prototype.onBeforeClose = function () {
|
6744
|
+
ContextMenu.prototype.onBeforeClose = function (args) {
|
6745
|
+
var eventArgs = {
|
6746
|
+
cancel: false,
|
6747
|
+
element: args.element,
|
6748
|
+
event: args.event,
|
6749
|
+
isFocused: args.isFocused,
|
6750
|
+
fileDetails: [this.menuItemData],
|
6751
|
+
items: args.items,
|
6752
|
+
parentItem: args.parentItem,
|
6753
|
+
menuType: this.menuType
|
6754
|
+
};
|
6755
|
+
this.parent.trigger('menuClose', eventArgs, function (menuCloseArgs) {
|
6756
|
+
if (menuCloseArgs.cancel) {
|
6757
|
+
args.cancel = menuCloseArgs.cancel;
|
6758
|
+
return;
|
6759
|
+
}
|
6760
|
+
});
|
6753
6761
|
this.menuTarget = null;
|
6754
6762
|
if (!this.isMenuItemClicked && this.parent.pathId.length > 1 && this.parent.activeModule === 'navigationpane') {
|
6755
6763
|
this.parent.pathId.pop();
|
@@ -7086,7 +7094,13 @@ var ContextMenu = /** @__PURE__ @class */ (function () {
|
|
7086
7094
|
break;
|
7087
7095
|
case 'paste':
|
7088
7096
|
if (_this.menuType === 'folder') {
|
7089
|
-
|
7097
|
+
if (_this.parent.activeModule === 'navigationpane') {
|
7098
|
+
_this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(_this.targetNodeElement, 'li'));
|
7099
|
+
_this.parent.folderPath = _this.parent.path;
|
7100
|
+
}
|
7101
|
+
else {
|
7102
|
+
_this.parent.folderPath = getFullPath(_this.parent, _this.menuItemData, _this.parent.path);
|
7103
|
+
}
|
7090
7104
|
}
|
7091
7105
|
else {
|
7092
7106
|
_this.parent.folderPath = '';
|
@@ -7528,6 +7542,7 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
7528
7542
|
_this.uploadedCount = 0;
|
7529
7543
|
//Specifies whether the operating system is MAC or not
|
7530
7544
|
_this.isMac = false;
|
7545
|
+
_this.dragSelectedItems = [];
|
7531
7546
|
FileManager_1.Inject(BreadCrumbBar, LargeIconsView, ContextMenu);
|
7532
7547
|
return _this;
|
7533
7548
|
}
|
@@ -7652,6 +7667,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
7652
7667
|
this.setRtl(this.enableRtl);
|
7653
7668
|
this.addEventListeners();
|
7654
7669
|
read(this, (this.path !== this.originalPath) ? initialEnd : finalizeEnd, this.path);
|
7670
|
+
if (this.fileView === 'Details') {
|
7671
|
+
this.largeiconsviewModule.element.classList.add(DISPLAY_NONE);
|
7672
|
+
}
|
7655
7673
|
this.adjustHeight();
|
7656
7674
|
if (isNullOrUndefined(this.navigationpaneModule)) {
|
7657
7675
|
this.splitterObj.collapse(this.enableRtl ? 1 : 0);
|
@@ -8088,7 +8106,33 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8088
8106
|
break;
|
8089
8107
|
}
|
8090
8108
|
};
|
8109
|
+
FileManager.prototype.wireSelectOnDragEvent = function (isBind) {
|
8110
|
+
if (isNullOrUndefined(this.view)) {
|
8111
|
+
return;
|
8112
|
+
}
|
8113
|
+
if (isBind) {
|
8114
|
+
this.viewElem = this.view === 'LargeIcons' ? this.largeiconsviewModule.element : this.element.querySelector('.e-gridcontent');
|
8115
|
+
}
|
8116
|
+
if (!this.viewElem) {
|
8117
|
+
return;
|
8118
|
+
}
|
8119
|
+
if (isBind) {
|
8120
|
+
if (this.allowMultiSelection) {
|
8121
|
+
EventHandler.add(this.viewElem, 'mousedown', this.onDragStart, this);
|
8122
|
+
this.on(layoutChange, this.onLayoutChange, this);
|
8123
|
+
this.on(selectionChanged, this.onLayoutChange, this);
|
8124
|
+
}
|
8125
|
+
}
|
8126
|
+
else {
|
8127
|
+
EventHandler.remove(this.viewElem, 'mousedown', this.onDragStart);
|
8128
|
+
this.off(layoutChange, this.onLayoutChange);
|
8129
|
+
this.off(selectionChanged, this.onLayoutChange);
|
8130
|
+
}
|
8131
|
+
};
|
8091
8132
|
FileManager.prototype.wireEvents = function () {
|
8133
|
+
if (this.enableRangeSelection) {
|
8134
|
+
this.wireSelectOnDragEvent(true);
|
8135
|
+
}
|
8092
8136
|
EventHandler.add(window, 'resize', this.resizeHandler, this);
|
8093
8137
|
this.keyboardModule = new KeyboardEvents(this.element, {
|
8094
8138
|
keyAction: this.keyActionHandler.bind(this),
|
@@ -8097,9 +8141,94 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8097
8141
|
});
|
8098
8142
|
};
|
8099
8143
|
FileManager.prototype.unWireEvents = function () {
|
8144
|
+
this.wireSelectOnDragEvent(false);
|
8100
8145
|
EventHandler.remove(window, 'resize', this.resizeHandler);
|
8101
8146
|
this.keyboardModule.destroy();
|
8102
8147
|
};
|
8148
|
+
FileManager.prototype.onDragStart = function (event) {
|
8149
|
+
if (this.viewElem) {
|
8150
|
+
if (this.allowDragAndDrop) {
|
8151
|
+
var targetElement = closest(event.target, this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-fe-text');
|
8152
|
+
if (targetElement) {
|
8153
|
+
return;
|
8154
|
+
}
|
8155
|
+
}
|
8156
|
+
event.preventDefault();
|
8157
|
+
this.dragX = event.pageX;
|
8158
|
+
this.dragY = event.pageY;
|
8159
|
+
if (!this.dragSelectElement) {
|
8160
|
+
this.dragSelectElement = createElement('div', {
|
8161
|
+
id: this.element.id + '_drag',
|
8162
|
+
className: 'e-filemanager e-drag-select',
|
8163
|
+
styles: 'left: ' + this.dragX + 'px;top: ' + this.dragY + 'px;'
|
8164
|
+
});
|
8165
|
+
document.body.append(this.dragSelectElement);
|
8166
|
+
}
|
8167
|
+
EventHandler.add(document, 'mouseup', this.onDragStop, this);
|
8168
|
+
EventHandler.add(this.viewElem, 'mousemove', this.onDrag, this);
|
8169
|
+
EventHandler.add(this.dragSelectElement, 'mousemove', this.onDrag, this);
|
8170
|
+
}
|
8171
|
+
};
|
8172
|
+
FileManager.prototype.onDrag = function (event) {
|
8173
|
+
event.stopPropagation();
|
8174
|
+
if (this.dragSelectElement) {
|
8175
|
+
var diffX = event.pageX - this.dragX;
|
8176
|
+
var diffY = event.pageY - this.dragY;
|
8177
|
+
setStyleAttribute(this.dragSelectElement, {
|
8178
|
+
'left': diffX < 0 ? this.dragX + diffX + 'px' : this.dragX + 'px', 'top': diffY < 0 ? this.dragY + diffY + 'px' : this.dragY + 'px',
|
8179
|
+
'height': Math.abs(diffY) + 'px', 'width': Math.abs(diffX) + 'px'
|
8180
|
+
});
|
8181
|
+
this.selectItems();
|
8182
|
+
}
|
8183
|
+
else {
|
8184
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
8185
|
+
}
|
8186
|
+
};
|
8187
|
+
FileManager.prototype.onDragStop = function () {
|
8188
|
+
if (this.viewElem) {
|
8189
|
+
EventHandler.remove(document, 'mouseup', this.onDragStop);
|
8190
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
8191
|
+
}
|
8192
|
+
if (this.dragSelectElement) {
|
8193
|
+
EventHandler.remove(this.dragSelectElement, 'mousemove', this.onDrag);
|
8194
|
+
if (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0) {
|
8195
|
+
this.setProperties({ selectedItems: this.dragSelectedItems });
|
8196
|
+
}
|
8197
|
+
this.dragSelectedItems = [];
|
8198
|
+
detach(this.dragSelectElement);
|
8199
|
+
this.dragSelectElement = null;
|
8200
|
+
}
|
8201
|
+
};
|
8202
|
+
FileManager.prototype.selectItems = function () {
|
8203
|
+
this.dragSelectedItems = [];
|
8204
|
+
var dragRect = this.dragSelectElement.getBoundingClientRect();
|
8205
|
+
var allItems = selectAll(this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-row', this.viewElem);
|
8206
|
+
removeClass(selectAll('.e-active', this.viewElem), ['e-active', 'e-focus']);
|
8207
|
+
removeClass(selectAll('.e-check', this.viewElem), ['e-check']);
|
8208
|
+
for (var _i = 0, allItems_1 = allItems; _i < allItems_1.length; _i++) {
|
8209
|
+
var item = allItems_1[_i];
|
8210
|
+
var itemRect = item.getBoundingClientRect();
|
8211
|
+
if (!(dragRect.right < itemRect.left || dragRect.left > itemRect.right
|
8212
|
+
|| dragRect.bottom < itemRect.top || dragRect.top > itemRect.bottom)
|
8213
|
+
&& (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0)) {
|
8214
|
+
if (this.viewElem.classList.contains('e-large-icons')) {
|
8215
|
+
item.classList.add('e-active');
|
8216
|
+
this.dragSelectedItems.push(item.getAttribute('title'));
|
8217
|
+
}
|
8218
|
+
else {
|
8219
|
+
addClass(selectAll('.e-rowcell', item), ['e-active']);
|
8220
|
+
this.dragSelectedItems.push(item.querySelector('.e-drag-text').textContent);
|
8221
|
+
}
|
8222
|
+
item.querySelector('.e-frame').classList.add('e-check');
|
8223
|
+
}
|
8224
|
+
}
|
8225
|
+
};
|
8226
|
+
FileManager.prototype.onLayoutChange = function () {
|
8227
|
+
if (this.enableRangeSelection) {
|
8228
|
+
this.unWireEvents();
|
8229
|
+
this.wireEvents();
|
8230
|
+
}
|
8231
|
+
};
|
8103
8232
|
FileManager.prototype.setPath = function () {
|
8104
8233
|
this.setProperties({ selectedItems: [] }, true);
|
8105
8234
|
this.ensurePath();
|
@@ -8146,6 +8275,12 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8146
8275
|
case 'detailsViewSettings':
|
8147
8276
|
this.notify(modelChanged, { module: 'detailsview', newProp: newProp, oldProp: oldProp });
|
8148
8277
|
break;
|
8278
|
+
case 'enableRangeSelection':
|
8279
|
+
this.wireSelectOnDragEvent(false);
|
8280
|
+
if (newProp.enableRangeSelection) {
|
8281
|
+
this.wireSelectOnDragEvent(true);
|
8282
|
+
}
|
8283
|
+
break;
|
8149
8284
|
case 'enableRtl':
|
8150
8285
|
this.enableRtl = newProp.enableRtl;
|
8151
8286
|
this.refresh();
|
@@ -8326,6 +8461,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8326
8461
|
this.largeiconsviewModule = null;
|
8327
8462
|
this.detailsviewModule = null;
|
8328
8463
|
this.breadcrumbbarModule = null;
|
8464
|
+
this.viewElem = null;
|
8465
|
+
this.dragSelectElement = null;
|
8466
|
+
this.dragSelectedItems = null;
|
8329
8467
|
};
|
8330
8468
|
/**
|
8331
8469
|
* Creates a new folder in file manager.
|
@@ -8514,6 +8652,23 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8514
8652
|
FileManager.prototype.selectAll = function () {
|
8515
8653
|
this.notify(methodCall, { action: 'selectAll' });
|
8516
8654
|
};
|
8655
|
+
/**
|
8656
|
+
* Specifies the method that must be invoked to traverse the path backwards in the file manager.
|
8657
|
+
*
|
8658
|
+
* @returns {void}
|
8659
|
+
*/
|
8660
|
+
FileManager.prototype.traverseBackward = function () {
|
8661
|
+
if (this.pathNames.length > 1 && this.breadcrumbbarModule.searchObj.element.value === '' && !this.isFiltered) {
|
8662
|
+
this.pathId.pop();
|
8663
|
+
this.pathNames.pop();
|
8664
|
+
var newPath = this.pathNames.slice(1).join('/');
|
8665
|
+
newPath = newPath === '' ? '/' : '/' + newPath + '/';
|
8666
|
+
this.setProperties({ path: newPath }, true);
|
8667
|
+
read(this, pathChanged, this.path);
|
8668
|
+
var treeNodeId = this.pathId[this.pathId.length - 1];
|
8669
|
+
this.notify(updateTreeSelection, { module: 'treeview', selectedNode: treeNodeId });
|
8670
|
+
}
|
8671
|
+
};
|
8517
8672
|
/**
|
8518
8673
|
* Deselects the currently selected folders and files in current path.
|
8519
8674
|
*
|
@@ -8650,6 +8805,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8650
8805
|
__decorate$8([
|
8651
8806
|
Property(null)
|
8652
8807
|
], FileManager.prototype, "sortComparer", void 0);
|
8808
|
+
__decorate$8([
|
8809
|
+
Property(false)
|
8810
|
+
], FileManager.prototype, "enableRangeSelection", void 0);
|
8653
8811
|
__decorate$8([
|
8654
8812
|
Complex({}, ToolbarSettings)
|
8655
8813
|
], FileManager.prototype, "toolbarSettings", void 0);
|
@@ -8740,6 +8898,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8740
8898
|
__decorate$8([
|
8741
8899
|
Event()
|
8742
8900
|
], FileManager.prototype, "menuOpen", void 0);
|
8901
|
+
__decorate$8([
|
8902
|
+
Event()
|
8903
|
+
], FileManager.prototype, "menuClose", void 0);
|
8743
8904
|
__decorate$8([
|
8744
8905
|
Event()
|
8745
8906
|
], FileManager.prototype, "failure", void 0);
|
@@ -10573,7 +10734,8 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
10573
10734
|
ctrlD: 'ctrl+d',
|
10574
10735
|
f2: 'f2',
|
10575
10736
|
ctrlA: 'ctrl+a',
|
10576
|
-
enter: 'enter'
|
10737
|
+
enter: 'enter',
|
10738
|
+
back: 'backspace'
|
10577
10739
|
};
|
10578
10740
|
}
|
10579
10741
|
/* istanbul ignore next */
|
@@ -10748,6 +10910,10 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
10748
10910
|
for (var i = 0, len = columns.length; i < len; i++) {
|
10749
10911
|
columns[i].disableHtmlEncode = !this.parent.enableHtmlSanitizer;
|
10750
10912
|
}
|
10913
|
+
if (this.parent.enableRangeSelection) {
|
10914
|
+
var HiddenName = { field: 'name', visible: false, customAttributes: { class: 'e-drag-text' } };
|
10915
|
+
columns.push(HiddenName);
|
10916
|
+
}
|
10751
10917
|
return columns;
|
10752
10918
|
};
|
10753
10919
|
DetailsView.prototype.adjustHeight = function () {
|
@@ -11575,7 +11741,8 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
11575
11741
|
DetailsView.prototype.onpasteEnd = function (args) {
|
11576
11742
|
if (this.parent.view === 'Details') {
|
11577
11743
|
this.isPasteOperation = true;
|
11578
|
-
if (this.parent.path === this.parent.destinationPath ||
|
11744
|
+
if (this.parent.path === this.parent.destinationPath ||
|
11745
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
11579
11746
|
this.onPathChanged(args);
|
11580
11747
|
}
|
11581
11748
|
}
|
@@ -12012,6 +12179,9 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
12012
12179
|
this.parent.setProperties({ selectedItems: lastItem }, true);
|
12013
12180
|
this.selectRecords(lastItem);
|
12014
12181
|
break;
|
12182
|
+
case 'back':
|
12183
|
+
this.parent.traverseBackward();
|
12184
|
+
break;
|
12015
12185
|
}
|
12016
12186
|
};
|
12017
12187
|
DetailsView.prototype.gridSelectNodes = function () {
|