@syncfusion/ej2-filemanager 20.4.54 → 21.1.37
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/CHANGELOG.md +3 -39
- 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 +72 -28
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +72 -28
- 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.js +4 -2
- package/src/file-manager/base/interface.d.ts +130 -5
- package/src/file-manager/layout/details-view.js +11 -1
- package/src/file-manager/layout/navigation-pane.d.ts +1 -0
- package/src/file-manager/layout/navigation-pane.js +49 -21
- package/src/file-manager/models/details-view-settings.js +1 -1
- package/src/file-manager/models/search-settings.d.ts +13 -1
- package/src/file-manager/pop-up/context-menu.js +7 -3
- package/styles/bootstrap-dark.css +2 -5
- package/styles/bootstrap.css +1 -4
- package/styles/bootstrap4.css +1 -4
- package/styles/bootstrap5-dark.css +3 -5
- package/styles/bootstrap5.css +3 -5
- package/styles/fabric-dark.css +1 -4
- package/styles/fabric.css +1 -4
- 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 +13 -11
- 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 +13 -11
- 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 +74 -13
- package/styles/file-manager/_material-dark-definition.scss +2 -0
- package/styles/file-manager/_material-definition.scss +2 -0
- package/styles/file-manager/_tailwind-definition.scss +14 -12
- package/styles/file-manager/_theme.scss +15 -3
- package/styles/file-manager/bootstrap-dark.css +2 -5
- package/styles/file-manager/bootstrap.css +1 -4
- package/styles/file-manager/bootstrap4.css +1 -4
- package/styles/file-manager/bootstrap5-dark.css +3 -5
- package/styles/file-manager/bootstrap5.css +3 -5
- package/styles/file-manager/fabric-dark.css +1 -4
- package/styles/file-manager/fabric.css +1 -4
- package/styles/file-manager/fluent-dark.css +2 -5
- package/styles/file-manager/fluent.css +2 -5
- package/styles/file-manager/highcontrast-light.css +1 -4
- package/styles/file-manager/highcontrast.css +1 -4
- package/styles/file-manager/material-dark.css +2 -6
- package/styles/file-manager/material.css +1 -4
- package/styles/file-manager/tailwind-dark.css +3 -5
- package/styles/file-manager/tailwind.css +3 -5
- package/styles/fluent-dark.css +2 -5
- package/styles/fluent.css +2 -5
- package/styles/highcontrast-light.css +1 -4
- package/styles/highcontrast.css +1 -4
- package/styles/material-dark.css +2 -6
- package/styles/material.css +1 -4
- package/styles/tailwind-dark.css +3 -5
- package/styles/tailwind.css +3 -5
- package/src/file-manager/models/virtualization-settings-model.d.ts +0 -29
- package/src/file-manager/models/virtualization-settings.d.ts +0 -24
- package/src/file-manager/models/virtualization-settings.js +0 -40
- package/styles/file-manager/_material3-definition.scss +0 -237
@@ -96,7 +96,7 @@ const columnArray = [
|
|
96
96
|
format: 'MMMM dd, yyyy HH:mm', minWidth: 120, width: '190'
|
97
97
|
},
|
98
98
|
{
|
99
|
-
field: 'size', headerText: 'Size', minWidth: 90, width: '110', template: '<span class="e-fe-size">${size}</span>'
|
99
|
+
field: 'size', headerText: 'Size', minWidth: 90, width: '110', template: '<span class="e-fe-size">${size}</span>', format: 'n2'
|
100
100
|
}
|
101
101
|
];
|
102
102
|
/**
|
@@ -5953,10 +5953,11 @@ class ContextMenu$2 {
|
|
5953
5953
|
this.menuType = 'folder';
|
5954
5954
|
this.contextMenu.items = this.getItemData(this.parent.contextMenuSettings.folder.map((item) => item.trim()));
|
5955
5955
|
this.contextMenu.dataBind();
|
5956
|
-
|
5956
|
+
const selectedTreeNode = select('[data-uid="' + this.parent.navigationpaneModule.treeObj.selectedNodes[0] + '"]', this.parent.navigationpaneModule.treeObj.element);
|
5957
|
+
if (this.parent.pathNames[this.parent.pathNames.length - 1] === selectedTreeNode.querySelector('.e-list-text').innerHTML && this.parent.activeModule === 'navigationpane') {
|
5957
5958
|
this.disabledItems.push('Open');
|
5958
5959
|
}
|
5959
|
-
else if (this.parent.selectedItems.length !== 1) {
|
5960
|
+
else if (this.parent.selectedItems.length !== 1 && this.parent.activeModule !== 'navigationpane') {
|
5960
5961
|
this.disabledItems.push('Rename', 'Paste');
|
5961
5962
|
}
|
5962
5963
|
}
|
@@ -6099,10 +6100,13 @@ class ContextMenu$2 {
|
|
6099
6100
|
refresh(this.parent);
|
6100
6101
|
break;
|
6101
6102
|
case 'open':
|
6102
|
-
if (this.parent.visitedItem) {
|
6103
|
+
if (this.parent.visitedItem && this.parent.activeModule !== 'navigationpane') {
|
6103
6104
|
this.parent.notify(openInit, { target: this.parent.visitedItem });
|
6104
6105
|
}
|
6105
6106
|
else if (this.parent.activeModule === 'navigationpane') {
|
6107
|
+
if (this.parent.visitedItem) {
|
6108
|
+
this.parent.notify(openInit, { target: this.parent.visitedItem });
|
6109
|
+
}
|
6106
6110
|
this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(this.targetNodeElement, 'li'));
|
6107
6111
|
}
|
6108
6112
|
break;
|
@@ -7042,8 +7046,10 @@ let FileManager = FileManager_1 = class FileManager extends Component {
|
|
7042
7046
|
break;
|
7043
7047
|
case 'ctrlU':
|
7044
7048
|
e.preventDefault();
|
7045
|
-
|
7046
|
-
|
7049
|
+
if (this.toolbarSettings.items.indexOf('Upload') != -1) {
|
7050
|
+
uploadEle = select('#' + this.element.id + UPLOAD_ID, this.element);
|
7051
|
+
uploadEle.click();
|
7052
|
+
}
|
7047
7053
|
break;
|
7048
7054
|
}
|
7049
7055
|
}
|
@@ -8418,6 +8424,7 @@ class NavigationPane {
|
|
8418
8424
|
this.isPathDragged = false;
|
8419
8425
|
this.isRenameParent = false;
|
8420
8426
|
this.isRightClick = false;
|
8427
|
+
this.isSameNodeClicked = false;
|
8421
8428
|
this.renameParent = null;
|
8422
8429
|
// Specifies the previously selected nodes in the treeview control.
|
8423
8430
|
this.previousSelected = null;
|
@@ -8572,7 +8579,7 @@ class NavigationPane {
|
|
8572
8579
|
}
|
8573
8580
|
// Node Selecting event handler
|
8574
8581
|
onNodeSelecting(args) {
|
8575
|
-
if (!args.isInteracted && !this.isRightClick && !this.isPathDragged && !this.isRenameParent || this.restrictSelecting) {
|
8582
|
+
if (!args.isInteracted && !this.isRightClick && !this.isSameNodeClicked && !this.isPathDragged && !this.isRenameParent || this.restrictSelecting) {
|
8576
8583
|
this.restrictSelecting = false;
|
8577
8584
|
this.isNodeClickCalled = false;
|
8578
8585
|
return;
|
@@ -8581,18 +8588,29 @@ class NavigationPane {
|
|
8581
8588
|
this.parent.activeModule = 'navigationpane';
|
8582
8589
|
// eslint-disable-next-line
|
8583
8590
|
const nodeData = this.getTreeData(getValue('id', args.nodeData));
|
8584
|
-
|
8585
|
-
|
8586
|
-
|
8587
|
-
|
8588
|
-
|
8589
|
-
|
8590
|
-
|
8591
|
-
this.
|
8592
|
-
|
8593
|
-
|
8594
|
-
|
8591
|
+
if (args.node.getAttribute('data-uid') !== this.parent.pathId[this.parent.pathId.length - 1] && !this.isRightClick && !this.isNodeClickCalled || this.isSameNodeClicked) {
|
8592
|
+
this.isNodeClickCalled = false;
|
8593
|
+
if (!this.isSameNodeClicked) {
|
8594
|
+
this.isSameNodeClicked = true;
|
8595
|
+
const selecEventArgs = { action: args.action, fileDetails: nodeData[0], isInteracted: args.isInteracted };
|
8596
|
+
this.parent.trigger('fileSelect', selecEventArgs);
|
8597
|
+
}
|
8598
|
+
if (!this.isRightClick) {
|
8599
|
+
const eventArgs = { cancel: false, fileDetails: nodeData[0], module: 'NavigationPane' };
|
8600
|
+
this.parent.trigger('fileOpen', eventArgs);
|
8601
|
+
args.cancel = eventArgs.cancel;
|
8595
8602
|
}
|
8603
|
+
if (args.cancel) {
|
8604
|
+
this.restrictSelecting = this.isNodeClickCalled ? this.previousSelected[0] !== args.node.getAttribute('data-uid') : false;
|
8605
|
+
this.isNodeClickCalled = true;
|
8606
|
+
this.isSameNodeClicked = false;
|
8607
|
+
this.previousSelected = this.treeObj.selectedNodes;
|
8608
|
+
this.treeObj.selectedNodes = [args.node.getAttribute("data-uid")];
|
8609
|
+
}
|
8610
|
+
}
|
8611
|
+
else if (this.previousSelected[0] !== args.node.getAttribute('data-uid')) {
|
8612
|
+
const selecEventArgs = { action: args.action, fileDetails: nodeData[0], isInteracted: args.isInteracted };
|
8613
|
+
this.parent.trigger('fileSelect', selecEventArgs);
|
8596
8614
|
}
|
8597
8615
|
}
|
8598
8616
|
}
|
@@ -8604,19 +8622,25 @@ class NavigationPane {
|
|
8604
8622
|
this.parent.itemData = data;
|
8605
8623
|
this.activeNode = node;
|
8606
8624
|
this.parent.activeModule = 'navigationpane';
|
8607
|
-
|
8608
|
-
|
8609
|
-
this.
|
8610
|
-
|
8611
|
-
|
8625
|
+
const eventArgs = { cancel: false, fileDetails: data[0], module: 'NavigationPane' };
|
8626
|
+
this.parent.trigger('fileOpen', eventArgs);
|
8627
|
+
this.isNodeClickCalled = true;
|
8628
|
+
if (!eventArgs.cancel) {
|
8629
|
+
updatePath(node, this.parent.itemData[0], this.parent);
|
8630
|
+
read(this.parent, this.isPathDragged ? pasteEnd : pathChanged, this.parent.path);
|
8631
|
+
this.parent.visitedItem = node;
|
8632
|
+
this.isPathDragged = this.isRenameParent = this.isRightClick = false;
|
8633
|
+
this.treeObj.selectedNodes = [node.getAttribute('data-uid')];
|
8634
|
+
}
|
8612
8635
|
}
|
8613
8636
|
onNodeSelected(args) {
|
8614
8637
|
if (this.parent.breadcrumbbarModule && this.parent.breadcrumbbarModule.searchObj && !this.renameParent) {
|
8615
8638
|
this.parent.breadcrumbbarModule.searchObj.element.value = '';
|
8616
8639
|
this.parent.isFiltered = false;
|
8640
|
+
this.isNodeClickCalled = false;
|
8617
8641
|
}
|
8618
8642
|
this.parent.searchedItems = [];
|
8619
|
-
if (!args.isInteracted && !this.isRightClick && !this.isPathDragged && !this.isRenameParent) {
|
8643
|
+
if (!args.isInteracted && !this.isRightClick && !this.isSameNodeClicked && !this.isPathDragged && !this.isRenameParent) {
|
8620
8644
|
this.parent.pathId = getPathId(args.node);
|
8621
8645
|
return;
|
8622
8646
|
}
|
@@ -8627,7 +8651,8 @@ class NavigationPane {
|
|
8627
8651
|
this.parent.selectedItems = [];
|
8628
8652
|
this.parent.itemData = nodeData;
|
8629
8653
|
const previousPath = this.parent.path;
|
8630
|
-
|
8654
|
+
const sNode = select('[data-uid="' + this.treeObj.selectedNodes[0] + '"]', this.treeObj.element);
|
8655
|
+
if (!this.isRightClick && this.isSameNodeClicked && sNode.querySelector('.e-list-text').innerHTML !== this.parent.pathNames[this.parent.pathNames.length - 1]) {
|
8631
8656
|
updatePath(args.node, this.parent.itemData[0], this.parent);
|
8632
8657
|
}
|
8633
8658
|
else {
|
@@ -8639,12 +8664,13 @@ class NavigationPane {
|
|
8639
8664
|
if (args.node.querySelector('.' + ICONS) && args.node.querySelector('.' + LIST_ITEM) === null) {
|
8640
8665
|
this.expandNodeTarget = 'add';
|
8641
8666
|
}
|
8642
|
-
if (!this.isRightClick) {
|
8667
|
+
if (!this.isRightClick && this.isSameNodeClicked) {
|
8643
8668
|
read(this.parent, this.isPathDragged ? pasteEnd : pathChanged, this.parent.path);
|
8669
|
+
this.isNodeClickCalled = true;
|
8644
8670
|
}
|
8645
8671
|
this.parent.visitedItem = args.node;
|
8646
8672
|
}
|
8647
|
-
this.isPathDragged = this.isRenameParent = this.isRightClick = false;
|
8673
|
+
this.isPathDragged = this.isRenameParent = this.isRightClick = this.isSameNodeClicked = false;
|
8648
8674
|
}
|
8649
8675
|
/* istanbul ignore next */
|
8650
8676
|
// eslint-disable-next-line
|
@@ -8688,6 +8714,14 @@ class NavigationPane {
|
|
8688
8714
|
const layout = (this.parent.view === 'LargeIcons') ? 'largeiconsview' : 'detailsview';
|
8689
8715
|
this.parent.notify(modelChanged, { module: layout, newProp: { selectedItems: [] } });
|
8690
8716
|
}
|
8717
|
+
else if (args.node.getAttribute('data-uid') === this.treeObj.selectedNodes[0] && !this.isNodeClickCalled) {
|
8718
|
+
if (args.event.which === 3) {
|
8719
|
+
this.isRightClick = true;
|
8720
|
+
}
|
8721
|
+
this.isSameNodeClicked = true;
|
8722
|
+
this.isNodeClickCalled = true;
|
8723
|
+
this.treeObj.selectedNodes = [args.node.getAttribute('data-uid')];
|
8724
|
+
}
|
8691
8725
|
}
|
8692
8726
|
/* istanbul ignore next */
|
8693
8727
|
onNodeEditing(args) {
|
@@ -9515,7 +9549,17 @@ class DetailsView {
|
|
9515
9549
|
else {
|
9516
9550
|
const sizeValue = getValue('size', args.data);
|
9517
9551
|
const intl = new Internationalization(this.parent.locale);
|
9518
|
-
|
9552
|
+
let sizeFormat;
|
9553
|
+
const columns = this.parent.detailsViewSettings.columns;
|
9554
|
+
for (let i = 0; i < columns.length; i++) {
|
9555
|
+
if (columns[i].field === 'size') {
|
9556
|
+
sizeFormat = columns[i].format.toString();
|
9557
|
+
break;
|
9558
|
+
}
|
9559
|
+
}
|
9560
|
+
let value = intl.formatNumber((sizeValue / 1024), { format: sizeFormat });
|
9561
|
+
let num = Number(value.replace(/,/g, ''));
|
9562
|
+
value = num.toLocaleString(intl.culture);
|
9519
9563
|
modifiedSize = value + ' ' + getLocaleText(this.parent, 'KB');
|
9520
9564
|
}
|
9521
9565
|
sizeEle.innerHTML = modifiedSize;
|