@syncfusion/ej2-filemanager 26.2.11 → 27.1.50
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 +164 -20
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +165 -20
- 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 +10 -1
- package/src/file-manager/base/file-manager.d.ts +25 -0
- package/src/file-manager/base/file-manager.js +145 -1
- package/src/file-manager/base/interface.d.ts +1 -0
- package/src/file-manager/common/operations.js +1 -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.js +4 -1
- 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
@@ -2840,6 +2840,7 @@ function triggerSearchOperation(parent, data, eventArgs) {
|
|
2840
2840
|
showHiddenItems: getValue('showHiddenItems', data)
|
2841
2841
|
};
|
2842
2842
|
parent.trigger('search', searchEventArgs, function (args) {
|
2843
|
+
setValue('data', args.searchResults, data);
|
2843
2844
|
if (args.cancel) {
|
2844
2845
|
eventArgs.cancel = true;
|
2845
2846
|
}
|
@@ -4656,9 +4657,6 @@ class LargeIconsView {
|
|
4656
4657
|
}
|
4657
4658
|
iconsView.classList.remove(DISPLAY_NONE);
|
4658
4659
|
if (this.parent.enableVirtualization && this.allItems.length > 0) {
|
4659
|
-
if (!this.element.style.height) {
|
4660
|
-
this.adjustHeight();
|
4661
|
-
}
|
4662
4660
|
this.parent.virtualizationModule.setUIVirtualization();
|
4663
4661
|
}
|
4664
4662
|
this.listElements = ListBase.createListFromJson(createElement, this.items, this.listObj);
|
@@ -4696,7 +4694,6 @@ class LargeIconsView {
|
|
4696
4694
|
for (let i = 0; i < activeEle.length; i++) {
|
4697
4695
|
activeEle[i].setAttribute('aria-selected', 'true');
|
4698
4696
|
}
|
4699
|
-
this.adjustHeight();
|
4700
4697
|
this.element.style.maxHeight = '100%';
|
4701
4698
|
this.getItemCount();
|
4702
4699
|
this.addEventListener();
|
@@ -4802,11 +4799,6 @@ class LargeIconsView {
|
|
4802
4799
|
getModuleName() {
|
4803
4800
|
return 'largeiconsview';
|
4804
4801
|
}
|
4805
|
-
adjustHeight() {
|
4806
|
-
const pane = select('#' + this.parent.element.id + CONTENT_ID, this.parent.element);
|
4807
|
-
const bar = select('#' + this.parent.element.id + BREADCRUMBBAR_ID, this.parent.element);
|
4808
|
-
this.element.style.height = (pane.offsetHeight - bar.offsetHeight) + 'px';
|
4809
|
-
}
|
4810
4802
|
onItemCreated(args) {
|
4811
4803
|
args.item.removeAttribute('aria-level');
|
4812
4804
|
if (!this.parent.showFileExtension && getValue('isFile', args.curData)) {
|
@@ -5006,7 +4998,6 @@ class LargeIconsView {
|
|
5006
4998
|
if (this.parent.view !== 'LargeIcons') {
|
5007
4999
|
return;
|
5008
5000
|
}
|
5009
|
-
this.adjustHeight();
|
5010
5001
|
}
|
5011
5002
|
onUpdateSelectionData() {
|
5012
5003
|
if (this.parent.view !== 'LargeIcons') {
|
@@ -5134,7 +5125,8 @@ class LargeIconsView {
|
|
5134
5125
|
onpasteEnd(args) {
|
5135
5126
|
if (this.parent.view === 'LargeIcons') {
|
5136
5127
|
this.isPasteOperation = true;
|
5137
|
-
if (this.parent.path === this.parent.destinationPath ||
|
5128
|
+
if (this.parent.path === this.parent.destinationPath ||
|
5129
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
5138
5130
|
this.onPathChanged(args);
|
5139
5131
|
}
|
5140
5132
|
}
|
@@ -5155,9 +5147,6 @@ class LargeIconsView {
|
|
5155
5147
|
case 'allowDragAndDrop':
|
5156
5148
|
this.createDragObj();
|
5157
5149
|
break;
|
5158
|
-
case 'height':
|
5159
|
-
this.adjustHeight();
|
5160
|
-
break;
|
5161
5150
|
case 'selectedItems':
|
5162
5151
|
this.isInteraction = false;
|
5163
5152
|
this.isInteracted = false;
|
@@ -5618,6 +5607,9 @@ class LargeIconsView {
|
|
5618
5607
|
case 'ctrlD':
|
5619
5608
|
this.doDownload();
|
5620
5609
|
break;
|
5610
|
+
case 'back':
|
5611
|
+
this.parent.traverseBackward();
|
5612
|
+
break;
|
5621
5613
|
}
|
5622
5614
|
}
|
5623
5615
|
doDownload() {
|
@@ -5910,9 +5902,6 @@ class LargeIconsView {
|
|
5910
5902
|
}
|
5911
5903
|
resizeHandler() {
|
5912
5904
|
this.getItemCount();
|
5913
|
-
if (!isNullOrUndefined(this.listObj)) {
|
5914
|
-
this.adjustHeight();
|
5915
|
-
}
|
5916
5905
|
}
|
5917
5906
|
splitterResizeHandler() {
|
5918
5907
|
this.getItemCount();
|
@@ -6943,8 +6932,11 @@ class ContextMenu {
|
|
6943
6932
|
if (this.menuType === 'folder') {
|
6944
6933
|
if (this.parent.activeModule === 'navigationpane') {
|
6945
6934
|
this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(this.targetNodeElement, 'li'));
|
6935
|
+
this.parent.folderPath = this.parent.path;
|
6936
|
+
}
|
6937
|
+
else {
|
6938
|
+
this.parent.folderPath = getFullPath(this.parent, this.menuItemData, this.parent.path);
|
6946
6939
|
}
|
6947
|
-
this.parent.folderPath = getFullPath(this.parent, this.menuItemData, this.parent.path);
|
6948
6940
|
}
|
6949
6941
|
else {
|
6950
6942
|
this.parent.folderPath = '';
|
@@ -7371,6 +7363,7 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7371
7363
|
this.uploadedCount = 0;
|
7372
7364
|
//Specifies whether the operating system is MAC or not
|
7373
7365
|
this.isMac = false;
|
7366
|
+
this.dragSelectedItems = [];
|
7374
7367
|
FileManager_1.Inject(BreadCrumbBar, LargeIconsView, ContextMenu);
|
7375
7368
|
}
|
7376
7369
|
/**
|
@@ -7493,6 +7486,9 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7493
7486
|
this.setRtl(this.enableRtl);
|
7494
7487
|
this.addEventListeners();
|
7495
7488
|
read(this, (this.path !== this.originalPath) ? initialEnd : finalizeEnd, this.path);
|
7489
|
+
if (this.fileView === 'Details') {
|
7490
|
+
this.largeiconsviewModule.element.classList.add(DISPLAY_NONE);
|
7491
|
+
}
|
7496
7492
|
this.adjustHeight();
|
7497
7493
|
if (isNullOrUndefined(this.navigationpaneModule)) {
|
7498
7494
|
this.splitterObj.collapse(this.enableRtl ? 1 : 0);
|
@@ -7929,7 +7925,33 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7929
7925
|
break;
|
7930
7926
|
}
|
7931
7927
|
}
|
7928
|
+
wireSelectOnDragEvent(isBind) {
|
7929
|
+
if (isNullOrUndefined(this.view)) {
|
7930
|
+
return;
|
7931
|
+
}
|
7932
|
+
if (isBind) {
|
7933
|
+
this.viewElem = this.view === 'LargeIcons' ? this.largeiconsviewModule.element : this.element.querySelector('.e-gridcontent');
|
7934
|
+
}
|
7935
|
+
if (!this.viewElem) {
|
7936
|
+
return;
|
7937
|
+
}
|
7938
|
+
if (isBind) {
|
7939
|
+
if (this.allowMultiSelection) {
|
7940
|
+
EventHandler.add(this.viewElem, 'mousedown', this.onDragStart, this);
|
7941
|
+
this.on(layoutChange, this.onLayoutChange, this);
|
7942
|
+
this.on(selectionChanged, this.onLayoutChange, this);
|
7943
|
+
}
|
7944
|
+
}
|
7945
|
+
else {
|
7946
|
+
EventHandler.remove(this.viewElem, 'mousedown', this.onDragStart);
|
7947
|
+
this.off(layoutChange, this.onLayoutChange);
|
7948
|
+
this.off(selectionChanged, this.onLayoutChange);
|
7949
|
+
}
|
7950
|
+
}
|
7932
7951
|
wireEvents() {
|
7952
|
+
if (this.enableRangeSelection) {
|
7953
|
+
this.wireSelectOnDragEvent(true);
|
7954
|
+
}
|
7933
7955
|
EventHandler.add(window, 'resize', this.resizeHandler, this);
|
7934
7956
|
this.keyboardModule = new KeyboardEvents(this.element, {
|
7935
7957
|
keyAction: this.keyActionHandler.bind(this),
|
@@ -7938,9 +7960,93 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7938
7960
|
});
|
7939
7961
|
}
|
7940
7962
|
unWireEvents() {
|
7963
|
+
this.wireSelectOnDragEvent(false);
|
7941
7964
|
EventHandler.remove(window, 'resize', this.resizeHandler);
|
7942
7965
|
this.keyboardModule.destroy();
|
7943
7966
|
}
|
7967
|
+
onDragStart(event) {
|
7968
|
+
if (this.viewElem) {
|
7969
|
+
if (this.allowDragAndDrop) {
|
7970
|
+
const targetElement = closest(event.target, this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-fe-text');
|
7971
|
+
if (targetElement) {
|
7972
|
+
return;
|
7973
|
+
}
|
7974
|
+
}
|
7975
|
+
event.preventDefault();
|
7976
|
+
this.dragX = event.pageX;
|
7977
|
+
this.dragY = event.pageY;
|
7978
|
+
if (!this.dragSelectElement) {
|
7979
|
+
this.dragSelectElement = createElement('div', {
|
7980
|
+
id: this.element.id + '_drag',
|
7981
|
+
className: 'e-filemanager e-drag-select',
|
7982
|
+
styles: 'left: ' + this.dragX + 'px;top: ' + this.dragY + 'px;'
|
7983
|
+
});
|
7984
|
+
document.body.append(this.dragSelectElement);
|
7985
|
+
}
|
7986
|
+
EventHandler.add(document, 'mouseup', this.onDragStop, this);
|
7987
|
+
EventHandler.add(this.viewElem, 'mousemove', this.onDrag, this);
|
7988
|
+
EventHandler.add(this.dragSelectElement, 'mousemove', this.onDrag, this);
|
7989
|
+
}
|
7990
|
+
}
|
7991
|
+
onDrag(event) {
|
7992
|
+
event.stopPropagation();
|
7993
|
+
if (this.dragSelectElement) {
|
7994
|
+
const diffX = event.pageX - this.dragX;
|
7995
|
+
const diffY = event.pageY - this.dragY;
|
7996
|
+
setStyleAttribute(this.dragSelectElement, {
|
7997
|
+
'left': diffX < 0 ? this.dragX + diffX + 'px' : this.dragX + 'px', 'top': diffY < 0 ? this.dragY + diffY + 'px' : this.dragY + 'px',
|
7998
|
+
'height': Math.abs(diffY) + 'px', 'width': Math.abs(diffX) + 'px'
|
7999
|
+
});
|
8000
|
+
this.selectItems();
|
8001
|
+
}
|
8002
|
+
else {
|
8003
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
8004
|
+
}
|
8005
|
+
}
|
8006
|
+
onDragStop() {
|
8007
|
+
if (this.viewElem) {
|
8008
|
+
EventHandler.remove(document, 'mouseup', this.onDragStop);
|
8009
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
8010
|
+
}
|
8011
|
+
if (this.dragSelectElement) {
|
8012
|
+
EventHandler.remove(this.dragSelectElement, 'mousemove', this.onDrag);
|
8013
|
+
if (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0) {
|
8014
|
+
this.setProperties({ selectedItems: this.dragSelectedItems });
|
8015
|
+
}
|
8016
|
+
this.dragSelectedItems = [];
|
8017
|
+
detach(this.dragSelectElement);
|
8018
|
+
this.dragSelectElement = null;
|
8019
|
+
}
|
8020
|
+
}
|
8021
|
+
selectItems() {
|
8022
|
+
this.dragSelectedItems = [];
|
8023
|
+
const dragRect = this.dragSelectElement.getBoundingClientRect();
|
8024
|
+
const allItems = selectAll(this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-row', this.viewElem);
|
8025
|
+
removeClass(selectAll('.e-active', this.viewElem), ['e-active', 'e-focus']);
|
8026
|
+
removeClass(selectAll('.e-check', this.viewElem), ['e-check']);
|
8027
|
+
for (const item of allItems) {
|
8028
|
+
const itemRect = item.getBoundingClientRect();
|
8029
|
+
if (!(dragRect.right < itemRect.left || dragRect.left > itemRect.right
|
8030
|
+
|| dragRect.bottom < itemRect.top || dragRect.top > itemRect.bottom)
|
8031
|
+
&& (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0)) {
|
8032
|
+
if (this.viewElem.classList.contains('e-large-icons')) {
|
8033
|
+
item.classList.add('e-active');
|
8034
|
+
this.dragSelectedItems.push(item.getAttribute('title'));
|
8035
|
+
}
|
8036
|
+
else {
|
8037
|
+
addClass(selectAll('.e-rowcell', item), ['e-active']);
|
8038
|
+
this.dragSelectedItems.push(item.querySelector('.e-drag-text').textContent);
|
8039
|
+
}
|
8040
|
+
item.querySelector('.e-frame').classList.add('e-check');
|
8041
|
+
}
|
8042
|
+
}
|
8043
|
+
}
|
8044
|
+
onLayoutChange() {
|
8045
|
+
if (this.enableRangeSelection) {
|
8046
|
+
this.unWireEvents();
|
8047
|
+
this.wireEvents();
|
8048
|
+
}
|
8049
|
+
}
|
7944
8050
|
setPath() {
|
7945
8051
|
this.setProperties({ selectedItems: [] }, true);
|
7946
8052
|
this.ensurePath();
|
@@ -7986,6 +8092,12 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7986
8092
|
case 'detailsViewSettings':
|
7987
8093
|
this.notify(modelChanged, { module: 'detailsview', newProp: newProp, oldProp: oldProp });
|
7988
8094
|
break;
|
8095
|
+
case 'enableRangeSelection':
|
8096
|
+
this.wireSelectOnDragEvent(false);
|
8097
|
+
if (newProp.enableRangeSelection) {
|
8098
|
+
this.wireSelectOnDragEvent(true);
|
8099
|
+
}
|
8100
|
+
break;
|
7989
8101
|
case 'enableRtl':
|
7990
8102
|
this.enableRtl = newProp.enableRtl;
|
7991
8103
|
this.refresh();
|
@@ -8166,6 +8278,9 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
8166
8278
|
this.largeiconsviewModule = null;
|
8167
8279
|
this.detailsviewModule = null;
|
8168
8280
|
this.breadcrumbbarModule = null;
|
8281
|
+
this.viewElem = null;
|
8282
|
+
this.dragSelectElement = null;
|
8283
|
+
this.dragSelectedItems = null;
|
8169
8284
|
}
|
8170
8285
|
/**
|
8171
8286
|
* Creates a new folder in file manager.
|
@@ -8354,6 +8469,23 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
8354
8469
|
selectAll() {
|
8355
8470
|
this.notify(methodCall, { action: 'selectAll' });
|
8356
8471
|
}
|
8472
|
+
/**
|
8473
|
+
* Specifies the method that must be invoked to traverse the path backwards in the file manager.
|
8474
|
+
*
|
8475
|
+
* @returns {void}
|
8476
|
+
*/
|
8477
|
+
traverseBackward() {
|
8478
|
+
if (this.pathNames.length > 1 && this.breadcrumbbarModule.searchObj.element.value === '' && !this.isFiltered) {
|
8479
|
+
this.pathId.pop();
|
8480
|
+
this.pathNames.pop();
|
8481
|
+
let newPath = this.pathNames.slice(1).join('/');
|
8482
|
+
newPath = newPath === '' ? '/' : '/' + newPath + '/';
|
8483
|
+
this.setProperties({ path: newPath }, true);
|
8484
|
+
read(this, pathChanged, this.path);
|
8485
|
+
const treeNodeId = this.pathId[this.pathId.length - 1];
|
8486
|
+
this.notify(updateTreeSelection, { module: 'treeview', selectedNode: treeNodeId });
|
8487
|
+
}
|
8488
|
+
}
|
8357
8489
|
/**
|
8358
8490
|
* Deselects the currently selected folders and files in current path.
|
8359
8491
|
*
|
@@ -8490,6 +8622,9 @@ __decorate$8([
|
|
8490
8622
|
__decorate$8([
|
8491
8623
|
Property(null)
|
8492
8624
|
], FileManager.prototype, "sortComparer", void 0);
|
8625
|
+
__decorate$8([
|
8626
|
+
Property(false)
|
8627
|
+
], FileManager.prototype, "enableRangeSelection", void 0);
|
8493
8628
|
__decorate$8([
|
8494
8629
|
Complex({}, ToolbarSettings)
|
8495
8630
|
], FileManager.prototype, "toolbarSettings", void 0);
|
@@ -10399,7 +10534,8 @@ class DetailsView {
|
|
10399
10534
|
ctrlD: 'ctrl+d',
|
10400
10535
|
f2: 'f2',
|
10401
10536
|
ctrlA: 'ctrl+a',
|
10402
|
-
enter: 'enter'
|
10537
|
+
enter: 'enter',
|
10538
|
+
back: 'backspace'
|
10403
10539
|
};
|
10404
10540
|
}
|
10405
10541
|
/* istanbul ignore next */
|
@@ -10570,6 +10706,10 @@ class DetailsView {
|
|
10570
10706
|
for (let i = 0, len = columns.length; i < len; i++) {
|
10571
10707
|
columns[i].disableHtmlEncode = !this.parent.enableHtmlSanitizer;
|
10572
10708
|
}
|
10709
|
+
if (this.parent.enableRangeSelection) {
|
10710
|
+
const HiddenName = { field: 'name', visible: false, customAttributes: { class: 'e-drag-text' } };
|
10711
|
+
columns.push(HiddenName);
|
10712
|
+
}
|
10573
10713
|
return columns;
|
10574
10714
|
}
|
10575
10715
|
adjustHeight() {
|
@@ -11393,7 +11533,8 @@ class DetailsView {
|
|
11393
11533
|
onpasteEnd(args) {
|
11394
11534
|
if (this.parent.view === 'Details') {
|
11395
11535
|
this.isPasteOperation = true;
|
11396
|
-
if (this.parent.path === this.parent.destinationPath ||
|
11536
|
+
if (this.parent.path === this.parent.destinationPath ||
|
11537
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
11397
11538
|
this.onPathChanged(args);
|
11398
11539
|
}
|
11399
11540
|
}
|
@@ -11829,6 +11970,9 @@ class DetailsView {
|
|
11829
11970
|
this.parent.setProperties({ selectedItems: lastItem }, true);
|
11830
11971
|
this.selectRecords(lastItem);
|
11831
11972
|
break;
|
11973
|
+
case 'back':
|
11974
|
+
this.parent.traverseBackward();
|
11975
|
+
break;
|
11832
11976
|
}
|
11833
11977
|
}
|
11834
11978
|
gridSelectNodes() {
|