@syncfusion/ej2-filemanager 27.1.52 → 27.1.53
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 +4 -2
- 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 +102 -61
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +104 -61
- 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 +11 -11
- package/src/file-manager/base/file-manager-model.d.ts +1 -1
- package/src/file-manager/base/file-manager.js +28 -5
- package/src/file-manager/common/operations.js +57 -44
- package/src/file-manager/common/utility.d.ts +1 -2
- package/src/file-manager/common/utility.js +7 -9
- package/src/file-manager/layout/details-view.js +8 -2
- package/src/file-manager/layout/large-icons-view.js +4 -1
- package/tslint.json +111 -0
@@ -1430,9 +1430,8 @@ function getSortedData(parent, items) {
|
|
1430
1430
|
*/
|
1431
1431
|
function getObject(parent, key, value) {
|
1432
1432
|
var currFiles = getValue(parent.pathId[parent.pathId.length - 1], parent.feFiles);
|
1433
|
-
var
|
1434
|
-
|
1435
|
-
return lists[0];
|
1433
|
+
var result = currFiles.filter(function (data) { return data[key].toString() === value; });
|
1434
|
+
return result.length > 0 ? result[0] : null;
|
1436
1435
|
}
|
1437
1436
|
/**
|
1438
1437
|
* Creates empty element
|
@@ -2117,16 +2116,15 @@ function removeItemClass(parent, value) {
|
|
2117
2116
|
* @param {Element} scrollParent - specifies the scrolling target.
|
2118
2117
|
* @param {IFileManager} parent - specifies the parent.
|
2119
2118
|
* @param {string} nodeClass - specifies the node class.
|
2120
|
-
* @param {number} screenY - specifies the vertical (Y) coordinate of the mouse cursor position relative to the entire screen.
|
2121
2119
|
* @param {number} clientY - specifies the vertical (Y) coordinate of the mouse cursor position relative to the target element.
|
2122
2120
|
* @returns {void}
|
2123
2121
|
* @private
|
2124
2122
|
*/
|
2125
|
-
function scrollHandler(scrollParent, parent, nodeClass,
|
2123
|
+
function scrollHandler(scrollParent, parent, nodeClass, clientY) {
|
2126
2124
|
var position;
|
2127
2125
|
var elementData = scrollParent.getBoundingClientRect();
|
2128
2126
|
var node = select('.' + nodeClass, scrollParent);
|
2129
|
-
if ((
|
2127
|
+
if ((clientY >= (elementData.top + scrollParent.clientHeight - 30)) && !isNullOrUndefined(node)) {
|
2130
2128
|
position = (parent.targetModule === 'navigationpane' || parent.targetModule === 'detailsview') ? node.offsetHeight / 2.5 : node.offsetHeight / 4.5;
|
2131
2129
|
scrollParent.scrollBy(0, position);
|
2132
2130
|
}
|
@@ -2163,7 +2161,7 @@ function draggingHandler(parent, args) {
|
|
2163
2161
|
/* istanbul ignore next */
|
2164
2162
|
parent.treeExpandTimer = window.setTimeout(function () { parent.notify(dragging, args); }, 800);
|
2165
2163
|
scrollParent = parent.navigationpaneModule.treeObj.element.parentElement;
|
2166
|
-
scrollHandler(scrollParent, parent, 'e-level-2', args.event.
|
2164
|
+
scrollHandler(scrollParent, parent, 'e-level-2', args.event.y);
|
2167
2165
|
}
|
2168
2166
|
else if (parent.targetModule === 'detailsview') {
|
2169
2167
|
node = closest(args.target, 'tr');
|
@@ -2175,7 +2173,7 @@ function draggingHandler(parent, args) {
|
|
2175
2173
|
}
|
2176
2174
|
canDrop = true;
|
2177
2175
|
scrollParent = parent.detailsviewModule.gridObj.element.querySelector('.e-content');
|
2178
|
-
scrollHandler(scrollParent, parent, 'e-row', args.event.
|
2176
|
+
scrollHandler(scrollParent, parent, 'e-row', args.event.y);
|
2179
2177
|
}
|
2180
2178
|
else if (parent.targetModule === 'largeiconsview') {
|
2181
2179
|
node = closest(args.target, 'li');
|
@@ -2184,7 +2182,7 @@ function draggingHandler(parent, args) {
|
|
2184
2182
|
}
|
2185
2183
|
canDrop = true;
|
2186
2184
|
scrollParent = parent.largeiconsviewModule.element.firstElementChild;
|
2187
|
-
scrollHandler(scrollParent, parent, 'e-large-icon', args.event.
|
2185
|
+
scrollHandler(scrollParent, parent, 'e-large-icon', args.event.y);
|
2188
2186
|
/* istanbul ignore next */
|
2189
2187
|
}
|
2190
2188
|
else if (parent.targetModule === 'breadcrumbbar') {
|
@@ -3343,13 +3341,18 @@ function readSuccess(parent, result, event) {
|
|
3343
3341
|
* @private
|
3344
3342
|
*/
|
3345
3343
|
function filterSuccess(parent, result, event, action) {
|
3346
|
-
|
3347
|
-
|
3348
|
-
|
3349
|
-
|
3344
|
+
try {
|
3345
|
+
if (!isNullOrUndefined(result.files)) {
|
3346
|
+
parent.notify(event, result);
|
3347
|
+
var args = { action: action, result: result };
|
3348
|
+
parent.trigger('success', args);
|
3349
|
+
}
|
3350
|
+
else {
|
3351
|
+
onFailure(parent, result, action);
|
3352
|
+
}
|
3350
3353
|
}
|
3351
|
-
|
3352
|
-
|
3354
|
+
catch (error) {
|
3355
|
+
handleCatchError(parent, error, action);
|
3353
3356
|
}
|
3354
3357
|
}
|
3355
3358
|
/* istanbul ignore next */
|
@@ -3363,51 +3366,59 @@ function filterSuccess(parent, result, event, action) {
|
|
3363
3366
|
* @private
|
3364
3367
|
*/
|
3365
3368
|
function createSuccess(parent, result, itemName) {
|
3366
|
-
|
3367
|
-
if (
|
3368
|
-
parent.dialogObj.hide();
|
3369
|
-
}
|
3370
|
-
parent.createdItem = isFileSystemData(parent) ? result.files[result.files.length - 1] : result.files[0];
|
3371
|
-
parent.breadcrumbbarModule.searchObj.value = '';
|
3372
|
-
var createEventArgs = {
|
3373
|
-
folderName: itemName,
|
3374
|
-
path: parent.path,
|
3375
|
-
parentFolder: parent.itemData
|
3376
|
-
};
|
3377
|
-
parent.trigger('folderCreate', createEventArgs);
|
3378
|
-
var args = { action: 'create', result: result };
|
3379
|
-
parent.trigger('success', args);
|
3380
|
-
parent.itemData = [getPathObject(parent)];
|
3381
|
-
read(parent, createEnd, parent.path);
|
3382
|
-
}
|
3383
|
-
else {
|
3384
|
-
if (result.error.code === '400') {
|
3369
|
+
try {
|
3370
|
+
if (!isNullOrUndefined(result.files)) {
|
3385
3371
|
if (parent.dialogObj && parent.dialogObj.visible) {
|
3386
|
-
|
3387
|
-
var error = getLocaleText(parent, 'Validation-NewFolder-Exists').replace('{0}', '"' + ele.value + '"');
|
3388
|
-
ele.parentElement.nextElementSibling.innerHTML = error;
|
3389
|
-
}
|
3390
|
-
else {
|
3391
|
-
var result_2 = {
|
3392
|
-
files: null,
|
3393
|
-
error: {
|
3394
|
-
code: '400',
|
3395
|
-
message: getLocaleText(parent, 'Validation-NewFolder-Exists').replace('{0}', '"' + itemName + '"'),
|
3396
|
-
fileExists: null
|
3397
|
-
}
|
3398
|
-
};
|
3399
|
-
createDialog(parent, 'Error', result_2);
|
3372
|
+
parent.dialogObj.hide();
|
3400
3373
|
}
|
3401
|
-
|
3402
|
-
parent.
|
3374
|
+
parent.createdItem = isFileSystemData(parent) ? result.files[result.files.length - 1] : result.files[0];
|
3375
|
+
parent.breadcrumbbarModule.searchObj.value = '';
|
3376
|
+
var createEventArgs = {
|
3377
|
+
folderName: itemName,
|
3378
|
+
path: parent.path,
|
3379
|
+
parentFolder: parent.itemData
|
3380
|
+
};
|
3381
|
+
parent.trigger('folderCreate', createEventArgs);
|
3382
|
+
var args = { action: 'create', result: result };
|
3383
|
+
parent.trigger('success', args);
|
3384
|
+
parent.itemData = [getPathObject(parent)];
|
3385
|
+
read(parent, createEnd, parent.path);
|
3403
3386
|
}
|
3404
3387
|
else {
|
3405
|
-
if (
|
3406
|
-
parent.dialogObj.
|
3388
|
+
if (result.error.code === '400') {
|
3389
|
+
if (parent.dialogObj && parent.dialogObj.visible) {
|
3390
|
+
var ele = select('#newname', parent.dialogObj.element);
|
3391
|
+
var error = getLocaleText(parent, 'Validation-NewFolder-Exists').replace('{0}', '"' + ele.value + '"');
|
3392
|
+
ele.parentElement.nextElementSibling.innerHTML = error;
|
3393
|
+
}
|
3394
|
+
else {
|
3395
|
+
var result_2 = {
|
3396
|
+
files: null,
|
3397
|
+
error: {
|
3398
|
+
code: '400',
|
3399
|
+
message: getLocaleText(parent, 'Validation-NewFolder-Exists').replace('{0}', '"' + itemName + '"'),
|
3400
|
+
fileExists: null
|
3401
|
+
}
|
3402
|
+
};
|
3403
|
+
createDialog(parent, 'Error', result_2);
|
3404
|
+
}
|
3405
|
+
var args = { action: 'create', error: result.error };
|
3406
|
+
parent.trigger('failure', args);
|
3407
|
+
}
|
3408
|
+
else {
|
3409
|
+
if (parent.dialogObj && parent.dialogObj.visible) {
|
3410
|
+
parent.dialogObj.hide();
|
3411
|
+
}
|
3412
|
+
onFailure(parent, result, 'create');
|
3407
3413
|
}
|
3408
|
-
onFailure(parent, result, 'create');
|
3409
3414
|
}
|
3410
3415
|
}
|
3416
|
+
catch (error) {
|
3417
|
+
if (parent.dialogObj && parent.dialogObj.visible) {
|
3418
|
+
parent.dialogObj.hide();
|
3419
|
+
}
|
3420
|
+
handleCatchError(parent, error, 'create');
|
3421
|
+
}
|
3411
3422
|
}
|
3412
3423
|
/* istanbul ignore next */
|
3413
3424
|
/**
|
@@ -5003,7 +5014,9 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5003
5014
|
var textEle = args.item.querySelector('.' + LIST_TEXT);
|
5004
5015
|
var txt = getValue('name', args.curData);
|
5005
5016
|
var type = getValue('type', args.curData);
|
5006
|
-
|
5017
|
+
if (txt.indexOf(type) !== -1) {
|
5018
|
+
textEle.innerHTML = txt.substr(0, txt.length - type.length);
|
5019
|
+
}
|
5007
5020
|
}
|
5008
5021
|
this.renderCheckbox(args);
|
5009
5022
|
var eventArgs = {
|
@@ -5371,6 +5384,7 @@ var LargeIconsView = /** @__PURE__ @class */ (function () {
|
|
5371
5384
|
read(this.parent, pathChanged, this.parent.path);
|
5372
5385
|
break;
|
5373
5386
|
case 'allowMultiSelection':
|
5387
|
+
case 'showItemCheckBoxes':
|
5374
5388
|
if (this.parent.view !== 'LargeIcons') {
|
5375
5389
|
break;
|
5376
5390
|
}
|
@@ -8289,7 +8303,9 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8289
8303
|
*/
|
8290
8304
|
/* istanbul ignore next */
|
8291
8305
|
FileManager.prototype.onPropertyChanged = function (newProp, oldProp) {
|
8306
|
+
var _this = this;
|
8292
8307
|
var height;
|
8308
|
+
var requiresRefresh = false;
|
8293
8309
|
for (var _i = 0, _a = Object.keys(newProp); _i < _a.length; _i++) {
|
8294
8310
|
var prop = _a[_i];
|
8295
8311
|
switch (prop) {
|
@@ -8300,6 +8316,14 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8300
8316
|
this.allowDragAndDrop = newProp.allowDragAndDrop;
|
8301
8317
|
this.notify(modelChanged, { module: 'common', newProp: newProp, oldProp: oldProp });
|
8302
8318
|
break;
|
8319
|
+
case 'showItemCheckBoxes':
|
8320
|
+
this.showItemCheckBoxes = newProp.showItemCheckBoxes;
|
8321
|
+
this.notify(modelChanged, { module: 'common', newProp: newProp, oldProp: oldProp });
|
8322
|
+
break;
|
8323
|
+
case 'enableVirtualization':
|
8324
|
+
this.enableVirtualization = newProp.enableVirtualization;
|
8325
|
+
requiresRefresh = true;
|
8326
|
+
break;
|
8303
8327
|
case 'allowMultiSelection':
|
8304
8328
|
if (this.allowMultiSelection) {
|
8305
8329
|
addClass([this.element], CHECK_SELECT);
|
@@ -8327,11 +8351,11 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8327
8351
|
break;
|
8328
8352
|
case 'enableRtl':
|
8329
8353
|
this.enableRtl = newProp.enableRtl;
|
8330
|
-
|
8354
|
+
requiresRefresh = true;
|
8331
8355
|
break;
|
8332
8356
|
case 'rootAliasName':
|
8333
8357
|
this.rootAliasName = newProp.rootAliasName;
|
8334
|
-
|
8358
|
+
requiresRefresh = true;
|
8335
8359
|
break;
|
8336
8360
|
case 'height':
|
8337
8361
|
height = !isNullOrUndefined(newProp.height) ? formatUnit(newProp.height) : newProp.height;
|
@@ -8406,11 +8430,21 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8406
8430
|
this.notify(sortByChange, {});
|
8407
8431
|
break;
|
8408
8432
|
case 'sortBy':
|
8409
|
-
refresh(this);
|
8410
|
-
this.notify(sortByChange, {});
|
8411
8433
|
if (this.view === 'Details') {
|
8434
|
+
var columns = this.detailsViewSettings.columns;
|
8435
|
+
var isValidSortField = !isNullOrUndefined(columns) &&
|
8436
|
+
columns.findIndex(function (col) { return col.field === _this.sortBy; }) !== -1;
|
8437
|
+
if (!isValidSortField) {
|
8438
|
+
return;
|
8439
|
+
}
|
8440
|
+
refresh(this);
|
8441
|
+
this.notify(sortByChange, {});
|
8412
8442
|
this.notify(sortColumn, {});
|
8413
8443
|
}
|
8444
|
+
else {
|
8445
|
+
refresh(this);
|
8446
|
+
this.notify(sortByChange, {});
|
8447
|
+
}
|
8414
8448
|
break;
|
8415
8449
|
case 'popupTarget':
|
8416
8450
|
if (this.uploadDialogObj) {
|
@@ -8428,10 +8462,13 @@ var FileManager = /** @__PURE__ @class */ (function (_super) {
|
|
8428
8462
|
break;
|
8429
8463
|
case 'fileSystemData':
|
8430
8464
|
this.fileSystemData = newProp.fileSystemData;
|
8431
|
-
|
8465
|
+
requiresRefresh = true;
|
8432
8466
|
break;
|
8433
8467
|
}
|
8434
8468
|
}
|
8469
|
+
if (requiresRefresh) {
|
8470
|
+
this.refresh();
|
8471
|
+
}
|
8435
8472
|
};
|
8436
8473
|
/* istanbul ignore next */
|
8437
8474
|
FileManager.prototype.ajaxSettingSetModel = function (newProp) {
|
@@ -10783,6 +10820,7 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
10783
10820
|
}
|
10784
10821
|
/* istanbul ignore next */
|
10785
10822
|
DetailsView.prototype.render = function (args) {
|
10823
|
+
var _this = this;
|
10786
10824
|
showSpinner(this.parent.element);
|
10787
10825
|
if (this.parent.view === 'Details') {
|
10788
10826
|
removeClass([this.parent.element], MULTI_SELECT);
|
@@ -10790,7 +10828,9 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
10790
10828
|
this.checkNameWidth();
|
10791
10829
|
var columns = this.getColumns();
|
10792
10830
|
var sortSettings = void 0;
|
10793
|
-
|
10831
|
+
var isValidSortField = !isNullOrUndefined(columns) &&
|
10832
|
+
columns.findIndex(function (col) { return col.field === _this.parent.sortBy; }) !== -1;
|
10833
|
+
if (this.parent.isMobile || !isValidSortField) {
|
10794
10834
|
sortSettings = [];
|
10795
10835
|
}
|
10796
10836
|
else {
|
@@ -11001,7 +11041,9 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
11001
11041
|
if (textEle) {
|
11002
11042
|
var name_1 = getValue('name', args.data);
|
11003
11043
|
var type = getValue('type', args.data);
|
11004
|
-
|
11044
|
+
if (name_1.indexOf(type) !== -1) {
|
11045
|
+
textEle.innerHTML = name_1.substr(0, name_1.length - type.length);
|
11046
|
+
}
|
11005
11047
|
}
|
11006
11048
|
}
|
11007
11049
|
if (getValue('size', args.data) !== undefined && args.row.querySelector('.e-fe-size')) {
|
@@ -11264,6 +11306,7 @@ var DetailsView = /** @__PURE__ @class */ (function () {
|
|
11264
11306
|
case 'showHiddenItems':
|
11265
11307
|
read(this.parent, pathChanged, this.parent.path);
|
11266
11308
|
break;
|
11309
|
+
case 'showItemCheckBoxes':
|
11267
11310
|
case 'allowMultiSelection':
|
11268
11311
|
if (!isNullOrUndefined(this.gridObj)) {
|
11269
11312
|
this.currentSelectedItem = this.parent.selectedItems;
|