@syncfusion/ej2-filemanager 20.1.52-10459 → 20.1.52-10460
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +3 -20
- package/CHANGELOG.md +410 -0
- package/README.md +43 -54
- package/dist/ej2-filemanager.umd.min.js +10 -1
- package/dist/ej2-filemanager.umd.min.js.map +1 -1
- package/dist/es6/ej2-filemanager.es2015.js +659 -2353
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +708 -2421
- package/dist/es6/ej2-filemanager.es5.js.map +1 -1
- package/dist/global/ej2-filemanager.min.js +10 -1
- package/dist/global/ej2-filemanager.min.js.map +1 -1
- package/dist/global/index.d.ts +9 -0
- package/helpers/e2e/filemanagerHelper.js +166 -183
- package/package.json +71 -71
- package/src/file-manager/actions/breadcrumb-bar.js +5 -1
- package/src/file-manager/actions/index.d.ts +0 -1
- package/src/file-manager/actions/index.js +0 -1
- package/src/file-manager/actions/toolbar.d.ts +0 -1
- package/src/file-manager/actions/toolbar.js +17 -129
- package/src/file-manager/base/file-manager-model.d.ts +28 -154
- package/src/file-manager/base/file-manager.d.ts +27 -176
- package/src/file-manager/base/file-manager.js +28 -244
- package/src/file-manager/base/interface.d.ts +3 -329
- package/src/file-manager/base/interface.js +1 -0
- package/src/file-manager/common/operations.d.ts +0 -7
- package/src/file-manager/common/operations.js +185 -830
- package/src/file-manager/common/utility.d.ts +3 -46
- package/src/file-manager/common/utility.js +73 -249
- package/src/file-manager/index.d.ts +0 -1
- package/src/file-manager/index.js +0 -1
- package/src/file-manager/layout/details-view.d.ts +0 -10
- package/src/file-manager/layout/details-view.js +94 -203
- package/src/file-manager/layout/large-icons-view.d.ts +2 -4
- package/src/file-manager/layout/large-icons-view.js +72 -121
- package/src/file-manager/layout/navigation-pane.d.ts +0 -2
- package/src/file-manager/layout/navigation-pane.js +73 -97
- package/src/file-manager/models/column-model.d.ts +5 -23
- package/src/file-manager/models/column.d.ts +2 -21
- package/src/file-manager/models/column.js +0 -6
- package/src/file-manager/models/default-locale.js +1 -0
- package/src/file-manager/models/details-view-settings-model.d.ts +1 -1
- package/src/file-manager/models/details-view-settings.js +3 -8
- package/src/file-manager/models/search-settings.d.ts +0 -5
- package/src/file-manager/models/toolbar-settings-model.d.ts +2 -177
- package/src/file-manager/models/toolbar-settings.d.ts +2 -157
- package/src/file-manager/models/toolbar-settings.js +2 -64
- package/src/file-manager/models/upload-settings-model.d.ts +0 -13
- package/src/file-manager/models/upload-settings.d.ts +0 -12
- package/src/file-manager/models/upload-settings.js +0 -3
- package/src/file-manager/pop-up/context-menu.d.ts +1 -2
- package/src/file-manager/pop-up/context-menu.js +36 -111
- package/src/file-manager/pop-up/dialog.d.ts +2 -1
- package/src/file-manager/pop-up/dialog.js +40 -19
- package/src/global.js +1 -1
- package/styles/bootstrap-dark.css +665 -371
- package/styles/bootstrap-dark.scss +1 -17
- package/styles/bootstrap.css +644 -353
- package/styles/bootstrap.scss +1 -17
- package/styles/bootstrap4.css +680 -381
- package/styles/bootstrap4.scss +1 -17
- package/styles/bootstrap5-dark.css +694 -376
- package/styles/bootstrap5-dark.scss +1 -17
- package/styles/bootstrap5.css +695 -377
- package/styles/bootstrap5.scss +1 -17
- package/styles/fabric-dark.css +642 -358
- package/styles/fabric-dark.scss +1 -17
- package/styles/fabric.css +641 -357
- package/styles/fabric.scss +1 -17
- package/styles/file-manager/_all.scss +1 -1
- package/styles/file-manager/_bootstrap-dark-definition.scss +2 -6
- package/styles/file-manager/_bootstrap-definition.scss +2 -6
- package/styles/file-manager/_bootstrap4-definition.scss +2 -6
- package/styles/file-manager/_bootstrap5-definition.scss +15 -20
- package/styles/file-manager/_fabric-dark-definition.scss +2 -6
- package/styles/file-manager/_fabric-definition.scss +2 -6
- package/styles/file-manager/_fluent-definition.scss +15 -18
- package/styles/file-manager/_highcontrast-definition.scss +2 -6
- package/styles/file-manager/_highcontrast-light-definition.scss +2 -6
- package/styles/file-manager/_layout.scss +932 -369
- package/styles/file-manager/_material-dark-definition.scss +2 -7
- package/styles/file-manager/_material-definition.scss +2 -7
- package/styles/file-manager/_tailwind-definition.scss +16 -20
- package/styles/file-manager/_theme.scss +102 -123
- package/styles/file-manager/bootstrap-dark.css +665 -371
- package/styles/file-manager/bootstrap-dark.scss +1 -2
- package/styles/file-manager/bootstrap.css +644 -353
- package/styles/file-manager/bootstrap.scss +1 -2
- package/styles/file-manager/bootstrap4.css +680 -381
- package/styles/file-manager/bootstrap4.scss +1 -2
- package/styles/file-manager/bootstrap5-dark.css +694 -376
- package/styles/file-manager/bootstrap5-dark.scss +1 -2
- package/styles/file-manager/bootstrap5.css +695 -377
- package/styles/file-manager/bootstrap5.scss +1 -2
- package/styles/file-manager/fabric-dark.css +642 -358
- package/styles/file-manager/fabric-dark.scss +1 -2
- package/styles/file-manager/fabric.css +641 -357
- package/styles/file-manager/fabric.scss +1 -2
- package/styles/file-manager/fluent-dark.css +641 -356
- package/styles/file-manager/fluent-dark.scss +1 -2
- package/styles/file-manager/fluent.css +640 -355
- package/styles/file-manager/fluent.scss +1 -2
- package/styles/file-manager/highcontrast-light.css +644 -354
- package/styles/file-manager/highcontrast-light.scss +1 -2
- package/styles/file-manager/highcontrast.css +647 -377
- package/styles/file-manager/highcontrast.scss +1 -2
- package/styles/file-manager/icons/_bootstrap.scss +1 -0
- package/styles/file-manager/icons/_bootstrap4.scss +1 -0
- package/styles/file-manager/icons/_fabric-dark.scss +1 -0
- package/styles/file-manager/icons/_fabric.scss +1 -0
- package/styles/file-manager/material-dark.css +671 -392
- package/styles/file-manager/material-dark.scss +1 -2
- package/styles/file-manager/material.css +654 -391
- package/styles/file-manager/material.scss +1 -2
- package/styles/file-manager/tailwind-dark.css +667 -350
- package/styles/file-manager/tailwind-dark.scss +1 -2
- package/styles/file-manager/tailwind.css +667 -350
- package/styles/file-manager/tailwind.scss +1 -2
- package/styles/fluent-dark.css +641 -356
- package/styles/fluent-dark.scss +1 -17
- package/styles/fluent.css +640 -355
- package/styles/fluent.scss +1 -17
- package/styles/highcontrast-light.css +644 -354
- package/styles/highcontrast-light.scss +1 -17
- package/styles/highcontrast.css +647 -377
- package/styles/highcontrast.scss +1 -17
- package/styles/material-dark.css +671 -392
- package/styles/material-dark.scss +1 -17
- package/styles/material.css +654 -391
- package/styles/material.scss +1 -17
- package/styles/tailwind-dark.css +667 -350
- package/styles/tailwind-dark.scss +1 -17
- package/styles/tailwind.css +667 -350
- package/styles/tailwind.scss +1 -17
- package/dist/ej2-filemanager.min.js +0 -1
- package/src/file-manager/actions/virtualization.d.ts +0 -93
- package/src/file-manager/actions/virtualization.js +0 -279
- package/styles/bootstrap-dark-lite.css +0 -1058
- package/styles/bootstrap-dark-lite.scss +0 -16
- package/styles/bootstrap-lite.css +0 -1040
- package/styles/bootstrap-lite.scss +0 -16
- package/styles/bootstrap4-lite.css +0 -1068
- package/styles/bootstrap4-lite.scss +0 -16
- package/styles/bootstrap5-dark-lite.css +0 -1078
- package/styles/bootstrap5-dark-lite.scss +0 -16
- package/styles/bootstrap5-lite.css +0 -1078
- package/styles/bootstrap5-lite.scss +0 -16
- package/styles/bootstrap5.3-lite.css +0 -1035
- package/styles/bootstrap5.3-lite.scss +0 -16
- package/styles/bootstrap5.3.css +0 -1603
- package/styles/bootstrap5.3.scss +0 -17
- package/styles/fabric-dark-lite.css +0 -1039
- package/styles/fabric-dark-lite.scss +0 -16
- package/styles/fabric-lite.css +0 -1039
- package/styles/fabric-lite.scss +0 -16
- package/styles/file-manager/_bds-definition.scss +0 -236
- package/styles/file-manager/_bigger.scss +0 -758
- package/styles/file-manager/_bootstrap5.3-definition.scss +0 -242
- package/styles/file-manager/_fluent2-definition.scss +0 -255
- package/styles/file-manager/_fusionnew-definition.scss +0 -241
- package/styles/file-manager/_material3-dark-definition.scss +0 -1
- package/styles/file-manager/_material3-definition.scss +0 -235
- package/styles/file-manager/bootstrap5.3.css +0 -1603
- package/styles/file-manager/bootstrap5.3.scss +0 -17
- package/styles/file-manager/fluent2.css +0 -1886
- package/styles/file-manager/fluent2.scss +0 -17
- package/styles/file-manager/icons/_bds.scss +0 -235
- package/styles/file-manager/icons/_bootstrap5.3.scss +0 -235
- package/styles/file-manager/icons/_fluent2.scss +0 -235
- package/styles/file-manager/icons/_fusionnew.scss +0 -235
- package/styles/file-manager/icons/_material3-dark.scss +0 -1
- package/styles/file-manager/icons/_material3.scss +0 -235
- package/styles/file-manager/material3-dark.css +0 -1633
- package/styles/file-manager/material3-dark.scss +0 -18
- package/styles/file-manager/material3.css +0 -1635
- package/styles/file-manager/material3.scss +0 -18
- package/styles/fluent-dark-lite.css +0 -1037
- package/styles/fluent-dark-lite.scss +0 -16
- package/styles/fluent-lite.css +0 -1036
- package/styles/fluent-lite.scss +0 -16
- package/styles/fluent2-lite.css +0 -1272
- package/styles/fluent2-lite.scss +0 -16
- package/styles/fluent2.css +0 -1886
- package/styles/fluent2.scss +0 -17
- package/styles/highcontrast-light-lite.css +0 -1039
- package/styles/highcontrast-light-lite.scss +0 -16
- package/styles/highcontrast-lite.css +0 -1059
- package/styles/highcontrast-lite.scss +0 -16
- package/styles/material-dark-lite.css +0 -1092
- package/styles/material-dark-lite.scss +0 -16
- package/styles/material-lite.css +0 -1097
- package/styles/material-lite.scss +0 -16
- package/styles/material3-dark-lite.css +0 -1090
- package/styles/material3-dark-lite.scss +0 -16
- package/styles/material3-dark.css +0 -1633
- package/styles/material3-dark.scss +0 -19
- package/styles/material3-lite.css +0 -1092
- package/styles/material3-lite.scss +0 -16
- package/styles/material3.css +0 -1635
- package/styles/material3.scss +0 -19
- package/styles/tailwind-dark-lite.css +0 -1060
- package/styles/tailwind-dark-lite.scss +0 -16
- package/styles/tailwind-lite.css +0 -1060
- package/styles/tailwind-lite.scss +0 -16
@@ -19,7 +19,6 @@ var ContextMenu = /** @class */ (function () {
|
|
19
19
|
* @hidden
|
20
20
|
*/
|
21
21
|
function ContextMenu(parent) {
|
22
|
-
this.isMenuItemClicked = false;
|
23
22
|
this.currentItems = [];
|
24
23
|
this.currentElement = null;
|
25
24
|
this.disabledItems = [];
|
@@ -61,46 +60,16 @@ var ContextMenu = /** @class */ (function () {
|
|
61
60
|
iconSpan.setAttribute('class', CLS.ICON_GRID + ' ' + CLS.MENU_ICON);
|
62
61
|
}
|
63
62
|
};
|
64
|
-
ContextMenu.prototype.onBeforeClose = function (
|
65
|
-
var eventArgs = {
|
66
|
-
cancel: false,
|
67
|
-
element: args.element,
|
68
|
-
event: args.event,
|
69
|
-
isFocused: args.isFocused,
|
70
|
-
fileDetails: [this.menuItemData],
|
71
|
-
items: args.items,
|
72
|
-
parentItem: args.parentItem,
|
73
|
-
menuType: this.menuType
|
74
|
-
};
|
75
|
-
this.parent.trigger('menuClose', eventArgs, function (menuCloseArgs) {
|
76
|
-
if (menuCloseArgs.cancel) {
|
77
|
-
args.cancel = menuCloseArgs.cancel;
|
78
|
-
return;
|
79
|
-
}
|
80
|
-
});
|
63
|
+
ContextMenu.prototype.onBeforeClose = function () {
|
81
64
|
this.menuTarget = null;
|
82
|
-
if (!this.isMenuItemClicked && this.parent.pathId.length > 1 && this.parent.activeModule === 'navigationpane') {
|
83
|
-
this.parent.pathId.pop();
|
84
|
-
var parentKey = [];
|
85
|
-
var itemKeys = Object.keys(this.parent.feParent);
|
86
|
-
for (var _i = 0, itemKeys_1 = itemKeys; _i < itemKeys_1.length; _i++) {
|
87
|
-
var item = itemKeys_1[_i];
|
88
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
89
|
-
var itemData = getValue(item, this.parent.feParent);
|
90
|
-
if (this.parent.pathNames.indexOf(itemData.name) !== -1) {
|
91
|
-
parentKey.push(itemData._fm_id);
|
92
|
-
}
|
93
|
-
}
|
94
|
-
this.parent.pathId.push(parentKey[parentKey.length - 1]);
|
95
|
-
this.parent.navigationpaneModule.treeObj.selectedNodes = [this.parent.pathId[this.parent.pathId.length - 1]];
|
96
|
-
}
|
97
|
-
this.isMenuItemClicked = false;
|
98
65
|
};
|
99
66
|
/* istanbul ignore next */
|
100
67
|
ContextMenu.prototype.onBeforeOpen = function (args) {
|
101
68
|
var _this = this;
|
69
|
+
this.disabledItems = [];
|
102
70
|
var selected = false;
|
103
71
|
var uid;
|
72
|
+
// eslint-disable-next-line
|
104
73
|
var data;
|
105
74
|
var treeFolder = false;
|
106
75
|
var target = args.event.target;
|
@@ -111,9 +80,6 @@ var ContextMenu = /** @class */ (function () {
|
|
111
80
|
this.menuTarget = this.targetNodeElement = target;
|
112
81
|
}
|
113
82
|
this.targetElement = this.parent.view === 'Details' ? closest(target, 'tr.e-row') : target;
|
114
|
-
if (this.parent.enableVirtualization && (target.classList.contains('e-virtual-bottom') || target.classList.contains('e-virtualtable'))) {
|
115
|
-
target = target.parentElement.closest('div');
|
116
|
-
}
|
117
83
|
var view = this.getTargetView(target);
|
118
84
|
this.updateActiveModule();
|
119
85
|
/* istanbul ignore next */
|
@@ -121,6 +87,7 @@ var ContextMenu = /** @class */ (function () {
|
|
121
87
|
(closest(target, '#' + this.parent.element.id + CLS.BREADCRUMBBAR_ID)) ||
|
122
88
|
(closest(target, '#' + this.parent.element.id + CLS.TOOLBAR_ID))) {
|
123
89
|
args.cancel = true;
|
90
|
+
// eslint:disable-next-line
|
124
91
|
}
|
125
92
|
else if (!(this.parent.view === 'LargeIcons') && this.targetElement &&
|
126
93
|
this.targetElement.classList.contains('e-emptyrow')) {
|
@@ -129,33 +96,34 @@ var ContextMenu = /** @class */ (function () {
|
|
129
96
|
}
|
130
97
|
else if (closest(target, '.' + CLS.EMPTY)) {
|
131
98
|
this.setLayoutItem(target);
|
99
|
+
// eslint:disable-next-line
|
132
100
|
}
|
133
101
|
else if (!target.classList.contains(CLS.MENU_ITEM) &&
|
134
102
|
!target.classList.contains(CLS.MENU_ICON) && !target.classList.contains(CLS.SUBMENU_ICON)) {
|
135
103
|
/* istanbul ignore next */
|
104
|
+
// eslint:disable-next-line
|
136
105
|
if (this.parent.view === 'LargeIcons' && !isNOU(closest(target, 'li')) && !closest(target, '#' + this.parent.element.id + CLS.TREE_ID)) {
|
137
106
|
var eveArgs = { ctrlKey: true, shiftKey: true };
|
138
107
|
if (!closest(target, 'li').classList.contains('e-active')) {
|
139
108
|
this.parent.largeiconsviewModule.doSelection(target, eveArgs);
|
140
109
|
}
|
110
|
+
// eslint-disable-next-line
|
141
111
|
data = this.parent.visitedData;
|
142
112
|
selected = true;
|
143
113
|
}
|
144
114
|
else if (!isNOU(closest(target, 'tr.e-row'))) {
|
145
115
|
uid = this.targetElement.getAttribute('data-uid');
|
116
|
+
// eslint-disable-next-line
|
146
117
|
data = this.parent.detailsviewModule.gridObj.getRowObjectFromUID(uid).data;
|
147
118
|
if (isNOU(this.targetElement.getAttribute('aria-selected'))) {
|
148
119
|
/* istanbul ignore next */
|
149
|
-
this.parent.detailsviewModule.gridObj.selectRows([parseInt(this.targetElement.getAttribute('
|
120
|
+
this.parent.detailsviewModule.gridObj.selectRows([parseInt(this.targetElement.getAttribute('aria-rowindex'), 10)]);
|
150
121
|
}
|
151
122
|
selected = true;
|
152
123
|
/* istanbul ignore next */
|
153
124
|
}
|
154
125
|
else if (closest(target, '#' + this.parent.element.id + CLS.TREE_ID)) {
|
155
126
|
uid = closest(target, 'li').getAttribute('data-uid');
|
156
|
-
if (!isNOU(uid)) {
|
157
|
-
this.parent.navigationpaneModule.treeObj.selectedNodes = [uid];
|
158
|
-
}
|
159
127
|
treeFolder = true;
|
160
128
|
}
|
161
129
|
/* istanbul ignore next */
|
@@ -173,17 +141,8 @@ var ContextMenu = /** @class */ (function () {
|
|
173
141
|
if (uid === this.parent.pathId[0]) {
|
174
142
|
this.disabledItems.push('Delete', 'Rename', 'Cut', 'Copy');
|
175
143
|
}
|
176
|
-
else {
|
177
|
-
var itemsToRemove = ['Delete', 'Rename', 'Cut', 'Copy'];
|
178
|
-
for (var i = 0; i < this.disabledItems.length; i++) {
|
179
|
-
var item = this.disabledItems[i];
|
180
|
-
if (itemsToRemove.indexOf(item) !== -1) {
|
181
|
-
this.disabledItems.splice(i, 1);
|
182
|
-
i--;
|
183
|
-
}
|
184
|
-
}
|
185
|
-
}
|
186
144
|
/* istanbul ignore next */
|
145
|
+
// eslint:disable-next-line
|
187
146
|
}
|
188
147
|
else if (view === 'TreeView' || view === 'GridView' || view === 'LargeIcon') {
|
189
148
|
this.setLayoutItem(target);
|
@@ -196,15 +155,7 @@ var ContextMenu = /** @class */ (function () {
|
|
196
155
|
var pasteEle = select('#' + this.getMenuId('Paste'), this.contextMenu.element);
|
197
156
|
if (!args.cancel && !this.parent.enablePaste &&
|
198
157
|
pasteEle && !pasteEle.classList.contains('e-disabled')) {
|
199
|
-
|
200
|
-
this.disabledItems.push('Paste');
|
201
|
-
}
|
202
|
-
}
|
203
|
-
else {
|
204
|
-
var pasteIndex = this.disabledItems.indexOf('Paste');
|
205
|
-
if (pasteIndex !== -1) {
|
206
|
-
this.disabledItems.splice(pasteIndex, 1);
|
207
|
-
}
|
158
|
+
this.disabledItems.push('Paste');
|
208
159
|
}
|
209
160
|
if (args.cancel) {
|
210
161
|
this.menuTarget = this.currentElement = null;
|
@@ -290,46 +241,17 @@ var ContextMenu = /** @class */ (function () {
|
|
290
241
|
this.contextMenu.items = this.getItemData(this.parent.contextMenuSettings.folder.map(function (item) { return item.trim(); }));
|
291
242
|
this.contextMenu.dataBind();
|
292
243
|
if (isTree) {
|
293
|
-
|
294
|
-
if (this.parent.pathNames[this.parent.pathNames.length - 1] === selectedTreeNode.querySelector('.e-list-text').innerHTML && this.parent.activeModule === 'navigationpane') {
|
295
|
-
this.disabledItems.push('Open');
|
296
|
-
}
|
297
|
-
else {
|
298
|
-
var indexToRemove = this.disabledItems.indexOf('Open');
|
299
|
-
if (indexToRemove !== -1) {
|
300
|
-
this.disabledItems.splice(indexToRemove, 1);
|
301
|
-
}
|
302
|
-
}
|
303
|
-
if (this.parent.selectedItems.length === 0) {
|
304
|
-
var renameIndex = this.disabledItems.indexOf('Rename');
|
305
|
-
if (renameIndex !== -1) {
|
306
|
-
this.disabledItems.splice(renameIndex, 1);
|
307
|
-
}
|
308
|
-
}
|
244
|
+
this.disabledItems.push('Open');
|
309
245
|
}
|
310
|
-
else if (this.parent.
|
311
|
-
|
312
|
-
var renameIndex = this.disabledItems.indexOf('Rename');
|
313
|
-
if (renameIndex !== -1) {
|
314
|
-
this.disabledItems.splice(renameIndex, 1);
|
315
|
-
}
|
316
|
-
}
|
317
|
-
else {
|
318
|
-
this.disabledItems.push('Rename', 'Paste');
|
319
|
-
}
|
246
|
+
else if (this.parent.selectedItems.length !== 1) {
|
247
|
+
this.disabledItems.push('Rename', 'Paste');
|
320
248
|
}
|
321
249
|
};
|
322
250
|
ContextMenu.prototype.setFileItem = function () {
|
323
251
|
this.menuType = 'file';
|
324
252
|
this.contextMenu.items = this.getItemData(this.parent.contextMenuSettings.file.map(function (item) { return item.trim(); }));
|
325
253
|
this.contextMenu.dataBind();
|
326
|
-
if (this.parent.selectedItems.length
|
327
|
-
var renameIndex = this.disabledItems.indexOf('Rename');
|
328
|
-
if (renameIndex !== -1) {
|
329
|
-
this.disabledItems.splice(renameIndex, 1);
|
330
|
-
}
|
331
|
-
}
|
332
|
-
else {
|
254
|
+
if (this.parent.selectedItems.length !== 1) {
|
333
255
|
this.disabledItems.push('Rename');
|
334
256
|
}
|
335
257
|
};
|
@@ -343,13 +265,8 @@ var ContextMenu = /** @class */ (function () {
|
|
343
265
|
(closest(target, '#' + this.parent.element.id + CLS.GRID_ID).getElementsByClassName(CLS.EMPTY).length !== 0)))) {
|
344
266
|
this.disabledItems.push('SelectAll');
|
345
267
|
}
|
346
|
-
else {
|
347
|
-
this.disabledItems = this.disabledItems.filter(function (item) { return item !== 'SelectAll'; });
|
348
|
-
}
|
349
268
|
if (this.parent.selectedNodes.length === 0) {
|
350
|
-
|
351
|
-
this.disabledItems.push('Paste');
|
352
|
-
}
|
269
|
+
this.disabledItems.push('Paste');
|
353
270
|
}
|
354
271
|
this.contextMenu.dataBind();
|
355
272
|
};
|
@@ -364,11 +281,13 @@ var ContextMenu = /** @class */ (function () {
|
|
364
281
|
return -1;
|
365
282
|
}
|
366
283
|
};
|
284
|
+
// eslint-disable-next-line
|
367
285
|
ContextMenu.prototype.getMenuItemData = function () {
|
368
286
|
if (this.menuType === 'layout') {
|
369
287
|
return getPathObject(this.parent);
|
370
288
|
}
|
371
289
|
else {
|
290
|
+
// eslint-disable-next-line
|
372
291
|
var args = { target: this.menuTarget };
|
373
292
|
this.parent.notify(events.menuItemData, args);
|
374
293
|
return this.parent.itemData[0];
|
@@ -381,6 +300,7 @@ var ContextMenu = /** @class */ (function () {
|
|
381
300
|
return;
|
382
301
|
}
|
383
302
|
var itemText = args.item.id.substr((this.parent.element.id + '_cm_').length);
|
303
|
+
// eslint-disable-next-line
|
384
304
|
var details;
|
385
305
|
if (itemText === 'refresh' || itemText === 'newfolder' || itemText === 'upload') {
|
386
306
|
details = [getPathObject(this.parent)];
|
@@ -404,7 +324,7 @@ var ContextMenu = /** @class */ (function () {
|
|
404
324
|
this.parent.trigger('menuClick', eventArgs, function (menuClickArgs) {
|
405
325
|
var sItems;
|
406
326
|
if (!menuClickArgs.cancel) {
|
407
|
-
|
327
|
+
// eslint:disable-next-line
|
408
328
|
switch (itemText) {
|
409
329
|
case 'cut':
|
410
330
|
cutFiles(_this.parent);
|
@@ -414,12 +334,11 @@ var ContextMenu = /** @class */ (function () {
|
|
414
334
|
break;
|
415
335
|
case 'paste':
|
416
336
|
if (_this.menuType === 'folder') {
|
417
|
-
if (_this.parent.activeModule === '
|
418
|
-
_this.parent.
|
419
|
-
_this.parent.folderPath = _this.parent.path;
|
337
|
+
if ((_this.parent.activeModule === 'largeiconsview') || (_this.parent.activeModule === 'detailsview')) {
|
338
|
+
_this.parent.folderPath = getFullPath(_this.parent, _this.menuItemData, _this.parent.path);
|
420
339
|
}
|
421
340
|
else {
|
422
|
-
_this.parent.folderPath =
|
341
|
+
_this.parent.folderPath = '';
|
423
342
|
}
|
424
343
|
}
|
425
344
|
else {
|
@@ -468,13 +387,10 @@ var ContextMenu = /** @class */ (function () {
|
|
468
387
|
refresh(_this.parent);
|
469
388
|
break;
|
470
389
|
case 'open':
|
471
|
-
if (_this.parent.visitedItem
|
390
|
+
if (_this.parent.visitedItem) {
|
472
391
|
_this.parent.notify(events.openInit, { target: _this.parent.visitedItem });
|
473
392
|
}
|
474
393
|
else if (_this.parent.activeModule === 'navigationpane') {
|
475
|
-
if (_this.parent.visitedItem) {
|
476
|
-
_this.parent.notify(events.openInit, { target: _this.parent.visitedItem });
|
477
|
-
}
|
478
394
|
_this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(_this.targetNodeElement, 'li'));
|
479
395
|
}
|
480
396
|
break;
|
@@ -483,7 +399,6 @@ var ContextMenu = /** @class */ (function () {
|
|
483
399
|
sItems = _this.parent.selectedItems;
|
484
400
|
if (_this.parent.activeModule === 'navigationpane') {
|
485
401
|
sItems = [];
|
486
|
-
_this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(_this.targetNodeElement, 'li'));
|
487
402
|
}
|
488
403
|
GetDetails(_this.parent, sItems, _this.parent.path, 'details');
|
489
404
|
break;
|
@@ -493,10 +408,19 @@ var ContextMenu = /** @class */ (function () {
|
|
493
408
|
case 'upload':
|
494
409
|
uploadItem(_this.parent);
|
495
410
|
break;
|
411
|
+
/* istanbul ignore next */
|
496
412
|
case 'name':
|
413
|
+
/* istanbul ignore next */
|
414
|
+
// eslint-disable-next-line no-fallthrough
|
497
415
|
case 'size':
|
416
|
+
/* istanbul ignore next */
|
417
|
+
// eslint-disable-next-line no-fallthrough
|
498
418
|
case 'date':
|
419
|
+
/* istanbul ignore next */
|
420
|
+
// eslint-disable-next-line no-fallthrough
|
499
421
|
case 'ascending':
|
422
|
+
/* istanbul ignore next */
|
423
|
+
// eslint-disable-next-line no-fallthrough
|
500
424
|
case 'descending':
|
501
425
|
/* istanbul ignore next */
|
502
426
|
sortbyClickHandler(_this.parent, args);
|
@@ -507,10 +431,12 @@ var ContextMenu = /** @class */ (function () {
|
|
507
431
|
sortbyClickHandler(_this.parent, args);
|
508
432
|
break;
|
509
433
|
/* istanbul ignore next */
|
434
|
+
// eslint:disable-next-line
|
510
435
|
case 'largeiconsview':
|
511
436
|
updateLayout(_this.parent, 'LargeIcons');
|
512
437
|
break;
|
513
438
|
/* istanbul ignore next */
|
439
|
+
// eslint:disable-next-line
|
514
440
|
case 'detailsview':
|
515
441
|
updateLayout(_this.parent, 'Details');
|
516
442
|
break;
|
@@ -568,7 +494,6 @@ var ContextMenu = /** @class */ (function () {
|
|
568
494
|
}
|
569
495
|
this.removeEventListener();
|
570
496
|
this.contextMenu.destroy();
|
571
|
-
this.targetElement = null;
|
572
497
|
};
|
573
498
|
/* istanbul ignore next */
|
574
499
|
ContextMenu.prototype.getItemData = function (data) {
|
@@ -676,7 +601,7 @@ var ContextMenu = /** @class */ (function () {
|
|
676
601
|
return items;
|
677
602
|
};
|
678
603
|
ContextMenu.prototype.getMenuId = function (id) {
|
679
|
-
return this.parent.element.id + '_cm_' + id.
|
604
|
+
return this.parent.element.id + '_cm_' + id.toLowerCase();
|
680
605
|
};
|
681
606
|
return ContextMenu;
|
682
607
|
}());
|
@@ -6,10 +6,11 @@ import { SelectedEventArgs } from '@syncfusion/ej2-inputs';
|
|
6
6
|
* @param {string} text - specifies the text string.
|
7
7
|
* @param {ReadArgs | SelectedEventArgs} e - specifies the type of event args.
|
8
8
|
* @param {FileDetails} details - specifies the file details.
|
9
|
+
* @param {string[]} replaceItems - specifies the replacement.
|
9
10
|
* @returns {void}
|
10
11
|
* @private
|
11
12
|
*/
|
12
|
-
export declare function createDialog(parent: IFileManager, text: string, e?: ReadArgs | SelectedEventArgs, details?: FileDetails): void;
|
13
|
+
export declare function createDialog(parent: IFileManager, text: string, e?: ReadArgs | SelectedEventArgs, details?: FileDetails, replaceItems?: string[]): void;
|
13
14
|
/**
|
14
15
|
*
|
15
16
|
* @param {IFileManager} parent - Specifies the parent element.
|
@@ -5,20 +5,22 @@ import { createFolder } from '../common/operations';
|
|
5
5
|
import * as CLS from '../base/classes';
|
6
6
|
import * as events from '../base/constant';
|
7
7
|
import { paste, rename } from '../common/operations';
|
8
|
-
import { getLocaleText, getDuplicateData, objectToString, getCssClass } from '../common/utility';
|
8
|
+
import { getLocaleText, getDuplicateData, getParentPath, objectToString, getCssClass } from '../common/utility';
|
9
9
|
import { Input } from '@syncfusion/ej2-inputs';
|
10
10
|
import { CheckBox } from '@syncfusion/ej2-buttons';
|
11
|
+
// eslint:disable-next-line
|
11
12
|
/**
|
12
13
|
*
|
13
14
|
* @param {IFileManager} parent - Specifies the parent element
|
14
15
|
* @param {string} text - specifies the text string.
|
15
16
|
* @param {ReadArgs | SelectedEventArgs} e - specifies the type of event args.
|
16
17
|
* @param {FileDetails} details - specifies the file details.
|
18
|
+
* @param {string[]} replaceItems - specifies the replacement.
|
17
19
|
* @returns {void}
|
18
20
|
* @private
|
19
21
|
*/
|
20
|
-
export function createDialog(parent, text, e, details) {
|
21
|
-
var options = getOptions(parent, text, e, details);
|
22
|
+
export function createDialog(parent, text, e, details, replaceItems) {
|
23
|
+
var options = getOptions(parent, text, e, details, replaceItems);
|
22
24
|
if (isNOU(parent.dialogObj)) {
|
23
25
|
parent.dialogObj = new Dialog({
|
24
26
|
beforeOpen: keydownAction.bind(this, parent, options.dialogName),
|
@@ -166,6 +168,7 @@ function triggerPopupClose(parent, dlgModule, dialogName) {
|
|
166
168
|
var args = { popupModule: dlgModule, element: dlgModule.element, popupName: dialogName };
|
167
169
|
parent.trigger('popupClose', args);
|
168
170
|
}
|
171
|
+
// eslint:disable-next-line
|
169
172
|
/**
|
170
173
|
*
|
171
174
|
* @param {IFileManager} parent - Specifies the parent element.
|
@@ -385,6 +388,7 @@ function retryDlgClose(parent) {
|
|
385
388
|
* @returns {void}
|
386
389
|
* @private
|
387
390
|
*/
|
391
|
+
// eslint-disable-next-line
|
388
392
|
function onRetryOpen(parent, args) {
|
389
393
|
parent.isRetryOpened = true;
|
390
394
|
var dialogEle = getValue('element', args);
|
@@ -533,16 +537,19 @@ function createInput(ele, placeholder) {
|
|
533
537
|
}
|
534
538
|
});
|
535
539
|
}
|
540
|
+
/* istanbul ignore next */
|
541
|
+
// eslint:disable-next-line
|
536
542
|
/**
|
537
543
|
*
|
538
544
|
* @param {IFileManager} parent - specifies the parent element.
|
539
545
|
* @param {string} text - specifies the text string.
|
540
546
|
* @param {ReadArgs | SelectedEventArgs} e - specifies the event arguements.
|
541
547
|
* @param {FileDetails} details - specifies the file details.
|
548
|
+
* @param {string[]} replaceItems - specifies the replacement items.
|
542
549
|
* @returns {DialogOptions} - specifies the dialog options.
|
543
550
|
* @private
|
544
551
|
*/
|
545
|
-
function getOptions(parent, text, e, details) {
|
552
|
+
function getOptions(parent, text, e, details, replaceItems) {
|
546
553
|
var options = {
|
547
554
|
header: '', content: '', buttons: [], dialogName: ''
|
548
555
|
};
|
@@ -555,7 +562,6 @@ function getOptions(parent, text, e, details) {
|
|
555
562
|
options.open = function () { triggerPopupOpen(parent, parent.dialogObj, options.dialogName); };
|
556
563
|
options.close = function () { triggerPopupClose(parent, parent.dialogObj, options.dialogName); };
|
557
564
|
text = (details && details.multipleFiles === true) ? 'MultipleFileDetails' : text;
|
558
|
-
var index;
|
559
565
|
switch (text) {
|
560
566
|
case 'NewFolder':
|
561
567
|
options.dialogName = 'Create Folder';
|
@@ -588,7 +594,7 @@ function getOptions(parent, text, e, details) {
|
|
588
594
|
options.buttons = [
|
589
595
|
{
|
590
596
|
buttonModel: { isPrimary: true, content: getLocaleText(parent, 'Button-Yes') },
|
591
|
-
click: function () {
|
597
|
+
click: function (e) {
|
592
598
|
onDeleteSubmit(parent);
|
593
599
|
}
|
594
600
|
},
|
@@ -640,7 +646,7 @@ function getOptions(parent, text, e, details) {
|
|
640
646
|
options.buttons = [
|
641
647
|
{
|
642
648
|
buttonModel: { isPrimary: true, content: getLocaleText(parent, 'Button-Ok') },
|
643
|
-
click: function () {
|
649
|
+
click: function (e) {
|
644
650
|
parent.dialogObj.hide();
|
645
651
|
}
|
646
652
|
}
|
@@ -648,16 +654,10 @@ function getOptions(parent, text, e, details) {
|
|
648
654
|
break;
|
649
655
|
case 'MultipleFileDetails':
|
650
656
|
options.dialogName = 'File Details';
|
651
|
-
strArr =
|
652
|
-
index = val.
|
653
|
-
return (index === 0
|
657
|
+
strArr = details.name.split(',').map(function (val) {
|
658
|
+
var index = val.indexOf('.') + 1;
|
659
|
+
return (index === 0) ? 'Folder' : val.substr(index).replace(' ', '');
|
654
660
|
});
|
655
|
-
if (strArr[0] === undefined) {
|
656
|
-
strArr = details.name.split(',').map(function (val) {
|
657
|
-
index = val.indexOf('.') + 1;
|
658
|
-
return (index === 0) ? 'Folder' : val.substr(index).replace(' ', '');
|
659
|
-
});
|
660
|
-
}
|
661
661
|
fileType = strArr.every(function (val, i, arr) { return val === arr[0]; }) ?
|
662
662
|
((strArr[0] === 'Folder') ? 'Folder' : strArr[0].toLocaleUpperCase() + ' Type') : 'Multiple Types';
|
663
663
|
location = details.location;
|
@@ -695,7 +695,7 @@ function getOptions(parent, text, e, details) {
|
|
695
695
|
options.buttons = [
|
696
696
|
{
|
697
697
|
buttonModel: { isPrimary: true, content: getLocaleText(parent, 'Button-Ok') },
|
698
|
-
click: function () {
|
698
|
+
click: function (e) {
|
699
699
|
parent.dialogObj.hide();
|
700
700
|
}
|
701
701
|
}
|
@@ -753,6 +753,27 @@ function preventKeydown(btnElement) {
|
|
753
753
|
_loop_1(btnCount);
|
754
754
|
}
|
755
755
|
}
|
756
|
+
/* istanbul ignore next */
|
757
|
+
/**
|
758
|
+
*
|
759
|
+
* @param {SelectedEventArgs} data - specifies the data.
|
760
|
+
* @returns {HTMLElement} - returns the HTML element.
|
761
|
+
* @private
|
762
|
+
*/
|
763
|
+
function getFilesName(data) {
|
764
|
+
var parent = createElement('div', { id: 'uploadDialog' });
|
765
|
+
var ulElement = createElement('ul');
|
766
|
+
var filesData = data.isModified ? data.modifiedFilesData : data.filesData;
|
767
|
+
for (var fileCount = 0; fileCount < filesData.length; fileCount++) {
|
768
|
+
var liElement = createElement('li', { className: 'dialogFiles' });
|
769
|
+
liElement.innerHTML = filesData[fileCount].name;
|
770
|
+
ulElement.appendChild(liElement);
|
771
|
+
}
|
772
|
+
parent.appendChild(ulElement);
|
773
|
+
var errorTag = createElement('div', { className: 'e-fe-error' });
|
774
|
+
parent.appendChild(errorTag);
|
775
|
+
return parent;
|
776
|
+
}
|
756
777
|
/**
|
757
778
|
*
|
758
779
|
* @param {IFileManager} parent - specifies the parent element.
|
@@ -812,7 +833,7 @@ function onReSubmit(parent) {
|
|
812
833
|
parent.dialogObj.hide();
|
813
834
|
return;
|
814
835
|
}
|
815
|
-
var newPath = (parent.activeModule === 'navigationpane') ?
|
836
|
+
var newPath = (parent.activeModule === 'navigationpane') ? getParentPath(parent.path) : parent.path;
|
816
837
|
parent.renamedId = getValue('id', parent.itemData[0]);
|
817
838
|
if (parent.isFile) {
|
818
839
|
var oldExtension = (oIndex === -1) ? '' : parent.currentItemText.substr(oIndex);
|
@@ -868,7 +889,7 @@ function onSubmitValidate(parent, ele) {
|
|
868
889
|
onValidate(parent, ele);
|
869
890
|
var len = ele.value.length - 1;
|
870
891
|
if (ele.value !== '' && ((ele.value.lastIndexOf('.') === len) || (ele.value.lastIndexOf(' ') === len)) &&
|
871
|
-
(parent.showFileExtension || (
|
892
|
+
(parent.showFileExtension || (parent.currentItemText.lastIndexOf('.') === -1))) {
|
872
893
|
addInvalid(parent, ele);
|
873
894
|
}
|
874
895
|
}
|
package/src/global.js
CHANGED
@@ -1,3 +1,3 @@
|
|
1
1
|
import * as index from './index';
|
2
|
-
index.FileManager.Inject(index.DetailsView, index.NavigationPane, index.LargeIconsView, index.Toolbar, index.ContextMenu, index.BreadCrumbBar
|
2
|
+
index.FileManager.Inject(index.DetailsView, index.NavigationPane, index.LargeIconsView, index.Toolbar, index.ContextMenu, index.BreadCrumbBar);
|
3
3
|
export * from './index';
|