@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
@@ -1,4 +1,3 @@
|
|
1
|
-
/* eslint-disable @typescript-eslint/no-explicit-any */
|
2
1
|
import { Toolbar as BaseToolbar } from '@syncfusion/ej2-navigations';
|
3
2
|
import { select, isNullOrUndefined as isNOU, closest, selectAll } from '@syncfusion/ej2-base';
|
4
3
|
import { createDialog } from '../pop-up/dialog';
|
@@ -45,7 +44,6 @@ var Toolbar = /** @class */ (function () {
|
|
45
44
|
enableRtl: _this.parent.enableRtl
|
46
45
|
});
|
47
46
|
_this.toolbarObj.isStringTemplate = true;
|
48
|
-
_this.toolbarObj.root = _this.parent.root ? _this.parent.root : _this.parent;
|
49
47
|
_this.toolbarObj.appendTo('#' + _this.parent.element.id + CLS.TOOLBAR_ID);
|
50
48
|
});
|
51
49
|
};
|
@@ -63,9 +61,6 @@ var Toolbar = /** @class */ (function () {
|
|
63
61
|
if (this.parent.isDevice && this.parent.allowMultiSelection) {
|
64
62
|
currItems.push('SelectAll');
|
65
63
|
}
|
66
|
-
if (this.parent.toolbarItems.length > 0) {
|
67
|
-
currItems = this.parent.toolbarItems.map(function (item) { return item.name; });
|
68
|
-
}
|
69
64
|
return currItems;
|
70
65
|
};
|
71
66
|
/* istanbul ignore next */
|
@@ -75,6 +70,7 @@ var Toolbar = /** @class */ (function () {
|
|
75
70
|
return;
|
76
71
|
}
|
77
72
|
var tool = args.item.id.substr((this.parent.element.id + '_tb_').length);
|
73
|
+
// eslint-disable-next-line
|
78
74
|
var details;
|
79
75
|
if (tool === 'refresh' || tool === 'newfolder' || tool === 'upload') {
|
80
76
|
details = [getPathObject(this.parent)];
|
@@ -155,7 +151,6 @@ var Toolbar = /** @class */ (function () {
|
|
155
151
|
});
|
156
152
|
};
|
157
153
|
Toolbar.prototype.toolbarCreateHandler = function () {
|
158
|
-
var _this = this;
|
159
154
|
if (!isNOU(select('#' + this.getId('SortBy'), this.parent.element))) {
|
160
155
|
var items = [
|
161
156
|
{ id: this.getPupupId('name'), text: getLocaleText(this.parent, 'Name'),
|
@@ -182,15 +177,15 @@ var Toolbar = /** @class */ (function () {
|
|
182
177
|
this.buttonObj.appendTo('#' + this.getId('SortBy'));
|
183
178
|
}
|
184
179
|
if (!isNOU(select('#' + this.getId('View'), this.parent.element))) {
|
185
|
-
var
|
186
|
-
var
|
180
|
+
var gridSpan = '<span class="' + CLS.ICON_GRID + ' ' + CLS.MENU_ICON + '"></span>';
|
181
|
+
var largeIconSpan = '<span class="' + CLS.ICON_LARGE + ' ' + CLS.MENU_ICON + '"></span>';
|
187
182
|
var layoutItems = [
|
188
183
|
{
|
189
|
-
id: this.getPupupId('large'), text: getLocaleText(this.parent, 'View-LargeIcons'),
|
184
|
+
id: this.getPupupId('large'), text: largeIconSpan + getLocaleText(this.parent, 'View-LargeIcons'),
|
190
185
|
iconCss: this.parent.view === 'Details' ? '' : CLS.TB_OPTION_TICK
|
191
186
|
},
|
192
187
|
{
|
193
|
-
id: this.getPupupId('details'), text: getLocaleText(this.parent, 'View-Details'),
|
188
|
+
id: this.getPupupId('details'), text: gridSpan + getLocaleText(this.parent, 'View-Details'),
|
194
189
|
iconCss: this.parent.view === 'Details' ? CLS.TB_OPTION_TICK : ''
|
195
190
|
}
|
196
191
|
];
|
@@ -199,27 +194,14 @@ var Toolbar = /** @class */ (function () {
|
|
199
194
|
cssClass: getCssClass(this.parent, 'e-caret-hide ' + CLS.ROOT_POPUP),
|
200
195
|
items: layoutItems, select: this.layoutChange.bind(this),
|
201
196
|
enableRtl: this.parent.enableRtl,
|
202
|
-
|
203
|
-
|
204
|
-
var tickIcon = args.item.iconCss;
|
205
|
-
var viewText = args.item.text === getLocaleText(_this.parent, 'View-LargeIcons');
|
206
|
-
var iconClass = tickIcon ? ' e-menu-icon ' + tickIcon : '';
|
207
|
-
args.element.innerHTML = '<span class="' + iconClass + '"></span>' + (viewText ? largeIconSpan_1 : gridSpan_1) + args.item.text;
|
208
|
-
var span = args.element.firstChild;
|
209
|
-
if (span && span.className === '') {
|
210
|
-
args.element.removeChild(span);
|
211
|
-
}
|
212
|
-
}
|
197
|
+
enableHtmlSanitizer: this.parent.enableHtmlSanitizer,
|
198
|
+
content: '<span class="e-tbar-btn-text">' + getLocaleText(this.parent, 'View') + '</span>'
|
213
199
|
});
|
214
200
|
this.layoutBtnObj.isStringTemplate = true;
|
215
201
|
this.layoutBtnObj.appendTo('#' + this.getId('View'));
|
216
202
|
}
|
217
203
|
this.hideItems(this.default, true);
|
218
204
|
this.hideStatus();
|
219
|
-
if (this.parent.portals && this.toolbarObj.portals) {
|
220
|
-
this.parent.portals = this.parent.portals.concat(this.toolbarObj.portals);
|
221
|
-
this.parent['renderReactTemplates']();
|
222
|
-
}
|
223
205
|
var btnElement = selectAll('.e-btn', this.toolbarObj.element);
|
224
206
|
var _loop_1 = function (btnCount) {
|
225
207
|
/* istanbul ignore next */
|
@@ -250,12 +232,7 @@ var Toolbar = /** @class */ (function () {
|
|
250
232
|
items[itemCount].iconCss = this.parent.sortBy === 'size' ? CLS.TB_OPTION_DOT : '';
|
251
233
|
}
|
252
234
|
else if (items[itemCount].id === this.getPupupId('date')) {
|
253
|
-
|
254
|
-
items[itemCount].iconCss = this.parent.sortBy === this.parent.sortBy ? CLS.TB_OPTION_DOT : '';
|
255
|
-
}
|
256
|
-
else {
|
257
|
-
items[itemCount].iconCss = this.parent.sortBy === '_fm_modified' ? CLS.TB_OPTION_DOT : '';
|
258
|
-
}
|
235
|
+
items[itemCount].iconCss = this.parent.sortBy === '_fm_modified' ? CLS.TB_OPTION_DOT : '';
|
259
236
|
}
|
260
237
|
else if (items[itemCount].id === this.getPupupId('ascending')) {
|
261
238
|
items[itemCount].iconCss = this.parent.sortOrder === 'Ascending' ? CLS.TB_OPTION_TICK : '';
|
@@ -292,13 +269,10 @@ var Toolbar = /** @class */ (function () {
|
|
292
269
|
}
|
293
270
|
for (var i = 0; i < data.length; i++) {
|
294
271
|
var item = void 0;
|
295
|
-
var propItem = void 0;
|
296
|
-
if (this.parent.toolbarItems.length > 0) {
|
297
|
-
propItem = this.getItemModel(this.parent.toolbarItems[parseInt(i.toString(), 10)]);
|
298
|
-
}
|
299
272
|
var itemId = this.getId(data[i]);
|
300
273
|
var itemText = getLocaleText(this.parent, data[i]);
|
301
274
|
var itemTooltip = getLocaleText(this.parent, 'Tooltip-' + data[i]);
|
275
|
+
var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
|
302
276
|
switch (data[i]) {
|
303
277
|
case '|':
|
304
278
|
item = { type: 'Separator' };
|
@@ -306,17 +280,12 @@ var Toolbar = /** @class */ (function () {
|
|
306
280
|
case 'Upload':
|
307
281
|
item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_UPLOAD, showTextOn: mode };
|
308
282
|
break;
|
309
|
-
case 'SortBy':
|
310
|
-
var spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + itemText + '</span>';
|
311
|
-
if (propItem && propItem.text) {
|
312
|
-
spanElement = '<span class="e-tbar-btn-text e-tbar-ddb-text">' + propItem.text + '</span>';
|
313
|
-
}
|
283
|
+
case 'SortBy':
|
314
284
|
item = {
|
315
285
|
id: itemId, tooltipText: itemTooltip,
|
316
286
|
template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1">' + spanElement + '</button>'
|
317
287
|
};
|
318
288
|
break;
|
319
|
-
}
|
320
289
|
case 'Refresh':
|
321
290
|
item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_REFRESH, showTextOn: mode };
|
322
291
|
break;
|
@@ -326,22 +295,14 @@ var Toolbar = /** @class */ (function () {
|
|
326
295
|
align: 'Right'
|
327
296
|
};
|
328
297
|
break;
|
329
|
-
case 'View':
|
330
|
-
var viewText = void 0;
|
331
|
-
if (propItem && propItem.text) {
|
332
|
-
viewText = propItem.text;
|
333
|
-
}
|
334
|
-
else {
|
335
|
-
viewText = getLocaleText(this.parent, 'View');
|
336
|
-
}
|
298
|
+
case 'View':
|
337
299
|
item = {
|
338
300
|
id: itemId, tooltipText: itemTooltip, prefixIcon: this.parent.view === 'Details' ? CLS.ICON_GRID : CLS.ICON_LARGE,
|
339
301
|
overflow: 'Show', align: 'Right', text: itemText, showTextOn: 'Overflow',
|
340
302
|
template: '<button id="' + itemId + '" class="e-tbar-btn e-tbtn-txt" tabindex="-1" aria-label=' +
|
341
|
-
|
303
|
+
getLocaleText(this.parent, 'View') + '></button>'
|
342
304
|
};
|
343
305
|
break;
|
344
|
-
}
|
345
306
|
case 'Details':
|
346
307
|
item = {
|
347
308
|
id: itemId, tooltipText: itemTooltip, prefixIcon: CLS.ICON_DETAILS, overflow: 'Show', align: 'Right',
|
@@ -373,74 +334,13 @@ var Toolbar = /** @class */ (function () {
|
|
373
334
|
item = { id: itemId, text: itemText, tooltipText: itemTooltip, prefixIcon: CLS.ICON_SELECTALL, showTextOn: mode };
|
374
335
|
break;
|
375
336
|
default:
|
376
|
-
item = { id: itemId, text: itemText, tooltipText: itemTooltip
|
337
|
+
item = { id: itemId, text: itemText, tooltipText: itemTooltip };
|
377
338
|
break;
|
378
339
|
}
|
379
|
-
|
380
|
-
var mergedItems = Object.assign({}, item, propItem);
|
381
|
-
items.push(mergedItems);
|
382
|
-
}
|
383
|
-
else {
|
384
|
-
items.push(item);
|
385
|
-
}
|
340
|
+
items.push(item);
|
386
341
|
}
|
387
342
|
return items;
|
388
343
|
};
|
389
|
-
Toolbar.prototype.getItemModel = function (propItem) {
|
390
|
-
var item = {};
|
391
|
-
if (propItem.id) {
|
392
|
-
item.id = propItem.id;
|
393
|
-
}
|
394
|
-
if (propItem.text) {
|
395
|
-
item.text = propItem.text;
|
396
|
-
}
|
397
|
-
if (propItem.tooltipText) {
|
398
|
-
item.tooltipText = propItem.tooltipText;
|
399
|
-
}
|
400
|
-
if (propItem.prefixIcon) {
|
401
|
-
item.prefixIcon = propItem.prefixIcon;
|
402
|
-
}
|
403
|
-
if (propItem.cssClass) {
|
404
|
-
item.cssClass = propItem.cssClass;
|
405
|
-
}
|
406
|
-
if (propItem.showTextOn !== 'Both') {
|
407
|
-
item.showTextOn = propItem.showTextOn;
|
408
|
-
}
|
409
|
-
if (propItem.template) {
|
410
|
-
item.template = propItem.template;
|
411
|
-
}
|
412
|
-
if (propItem.disabled) {
|
413
|
-
item.disabled = propItem.disabled;
|
414
|
-
}
|
415
|
-
if (propItem.width !== 'auto') {
|
416
|
-
item.width = propItem.width;
|
417
|
-
}
|
418
|
-
if (propItem.suffixIcon) {
|
419
|
-
item.suffixIcon = propItem.suffixIcon;
|
420
|
-
}
|
421
|
-
if (propItem.align !== 'Left') {
|
422
|
-
item.align = propItem.align;
|
423
|
-
}
|
424
|
-
if (propItem.overflow !== 'None') {
|
425
|
-
item.overflow = propItem.overflow;
|
426
|
-
}
|
427
|
-
if (propItem.htmlAttributes) {
|
428
|
-
item.htmlAttributes = propItem.htmlAttributes;
|
429
|
-
}
|
430
|
-
if (propItem.type !== 'Button') {
|
431
|
-
item.type = propItem.type;
|
432
|
-
}
|
433
|
-
if (propItem.visible !== true) {
|
434
|
-
item.visible = propItem.visible;
|
435
|
-
}
|
436
|
-
if (propItem.showAlwaysInPopup) {
|
437
|
-
item.showAlwaysInPopup = propItem.showAlwaysInPopup;
|
438
|
-
}
|
439
|
-
if (propItem.tabIndex !== -1) {
|
440
|
-
item.tabIndex = propItem.tabIndex;
|
441
|
-
}
|
442
|
-
return item;
|
443
|
-
};
|
444
344
|
Toolbar.prototype.getId = function (id) {
|
445
345
|
return this.parent.element.id + '_tb_' + id.toLowerCase();
|
446
346
|
};
|
@@ -455,19 +355,8 @@ var Toolbar = /** @class */ (function () {
|
|
455
355
|
};
|
456
356
|
Toolbar.prototype.reRenderToolbar = function (e) {
|
457
357
|
var _this = this;
|
458
|
-
|
459
|
-
|
460
|
-
itemsToProcess = this.parent.toolbarItems.map(function (item) {
|
461
|
-
return item.name;
|
462
|
-
});
|
463
|
-
}
|
464
|
-
else if (e.newProp.toolbarSettings.items !== undefined) {
|
465
|
-
itemsToProcess = e.newProp.toolbarSettings.items.map(function (item) {
|
466
|
-
return item.trim();
|
467
|
-
});
|
468
|
-
}
|
469
|
-
if (itemsToProcess.length > 0) {
|
470
|
-
this.items = this.toolbarItemData(this.getItems(itemsToProcess));
|
358
|
+
if (e.newProp.toolbarSettings.items !== undefined) {
|
359
|
+
this.items = this.toolbarItemData(this.getItems(e.newProp.toolbarSettings.items.map(function (item) { return item.trim(); })));
|
471
360
|
var eventArgs = { items: this.items };
|
472
361
|
this.parent.trigger('toolbarCreate', eventArgs, function (toolbarCreateArgs) {
|
473
362
|
if (_this.buttonObj) {
|
@@ -496,7 +385,7 @@ var Toolbar = /** @class */ (function () {
|
|
496
385
|
this.hideItems(this.selection, true);
|
497
386
|
}
|
498
387
|
var ele = select('#' + this.getId('Selection'), this.toolbarObj.element);
|
499
|
-
if (this.parent.selectedItems.length > 0 && ele
|
388
|
+
if (this.parent.selectedItems.length > 0 && ele) {
|
500
389
|
var txt = void 0;
|
501
390
|
if (this.parent.selectedItems.length === 1) {
|
502
391
|
txt = this.parent.selectedItems.length + ' ' + getLocaleText(this.parent, 'Item-Selection');
|
@@ -581,7 +470,6 @@ var Toolbar = /** @class */ (function () {
|
|
581
470
|
this.toolbarObj.refreshOverflow();
|
582
471
|
break;
|
583
472
|
case 'toolbarSettings':
|
584
|
-
case 'toolbarItems':
|
585
473
|
this.reRenderToolbar(e);
|
586
474
|
break;
|
587
475
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest
|
1
|
+
import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest } from '@syncfusion/ej2-base';import { Property, INotifyPropertyChanged, NotifyPropertyChanges, Complex, select } from '@syncfusion/ej2-base';import { createElement, addClass, removeClass, setStyleAttribute as setAttr, getUniqueID } from '@syncfusion/ej2-base';import { isNullOrUndefined as isNOU, formatUnit, Browser, KeyboardEvents, KeyboardEventArgs } from '@syncfusion/ej2-base';import { Event, EventHandler, getValue, setValue } from '@syncfusion/ej2-base';import { Splitter, PanePropertiesModel } from '@syncfusion/ej2-layouts';import { Dialog, createSpinner, hideSpinner, showSpinner, BeforeOpenEventArgs, BeforeCloseEventArgs } from '@syncfusion/ej2-popups';import { createDialog, createExtDialog } from '../pop-up/dialog';import { ToolbarSettings, ToolbarSettingsModel, AjaxSettings, NavigationPaneSettings, DetailsViewSettings } from '../models/index';import { NavigationPaneSettingsModel, DetailsViewSettingsModel } from '../models/index';import { AjaxSettingsModel, SearchSettings, SearchSettingsModel } from '../models/index';import { Toolbar } from '../actions/toolbar';import { DetailsView } from '../layout/details-view';import { LargeIconsView } from '../layout/large-icons-view';import { Uploader, UploadingEventArgs, SelectedEventArgs, FileInfo, CancelEventArgs } from '@syncfusion/ej2-inputs';import { UploadSettingsModel } from '../models/upload-settings-model';import { UploadSettings } from '../models/upload-settings';import * as events from './constant';import * as CLS from './classes';import { read, filter, createFolder } from '../common/operations';import { ITreeView, IContextMenu, ViewType, SortOrder, FileDragEventArgs, RetryArgs, ReadArgs, FileSelectionEventArgs } from './interface';import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs } from './interface';import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs } from './interface';import { ToolbarClickEventArgs, ToolbarCreateEventArgs, UploadListCreateArgs } from './interface';import { PopupOpenCloseEventArgs, BeforePopupOpenCloseEventArgs, BeforeDownloadEventArgs, BeforeImageLoadEventArgs } from './interface';import { refresh, getPathObject, getLocaleText, setNextPath, createDeniedDialog, getCssClass } from '../common/utility';import { hasContentAccess, hasUploadAccess, updateLayout, createNewFolder, uploadItem } from '../common/utility';import { TreeView as BaseTreeView } from '@syncfusion/ej2-navigations';import { ContextMenuSettingsModel } from '../models/contextMenu-settings-model';import { ContextMenuSettings } from '../models/contextMenu-settings';import { BreadCrumbBar } from '../actions/breadcrumb-bar';import { ContextMenu } from '../pop-up/context-menu';import { defaultLocale } from '../models/default-locale';import { PositionModel } from '@syncfusion/ej2-base/src/draggable-model';
|
2
2
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
3
3
|
|
4
4
|
/**
|
@@ -18,15 +18,6 @@ export interface FileManagerModel extends ComponentModel{
|
|
18
18
|
*/
|
19
19
|
ajaxSettings?: AjaxSettingsModel;
|
20
20
|
|
21
|
-
/**
|
22
|
-
* Specifies the array of data to populate folders/files in the File Manager.
|
23
|
-
* The mandatory fields to be included in the JSON data are defined in fileData interface.
|
24
|
-
* This interface can be extended to add additional fields as required.
|
25
|
-
*
|
26
|
-
* @default []
|
27
|
-
*/
|
28
|
-
fileSystemData?: { [key: string]: Object }[];
|
29
|
-
|
30
21
|
/**
|
31
22
|
* Enables or disables drag-and-drop of files.
|
32
23
|
*
|
@@ -41,13 +32,6 @@ export interface FileManagerModel extends ComponentModel{
|
|
41
32
|
*/
|
42
33
|
allowMultiSelection?: boolean;
|
43
34
|
|
44
|
-
/**
|
45
|
-
* Gets or sets a boolean value that determines whether to display checkboxes in the file manager. If enabled, checkboxes are shown for files or folders on hover.
|
46
|
-
*
|
47
|
-
* @default true
|
48
|
-
*/
|
49
|
-
showItemCheckBoxes?: boolean;
|
50
|
-
|
51
35
|
/**
|
52
36
|
* Specifies the context menu settings of the file manager.
|
53
37
|
*
|
@@ -98,15 +82,6 @@ export interface FileManagerModel extends ComponentModel{
|
|
98
82
|
*/
|
99
83
|
enablePersistence?: boolean;
|
100
84
|
|
101
|
-
/**
|
102
|
-
* Gets or sets a value that enables/disables the virtualization feature of the File Manager.
|
103
|
-
* When enabled, the File Manager will only load a subset of files and folders based on the size of the view port, with the rest being loaded dynamically as the user scrolls vertically through the list.
|
104
|
-
* This can improve performance when dealing with a large number of files and folders, as it reduces the initial load time and memory usage.
|
105
|
-
*
|
106
|
-
* @default false
|
107
|
-
*/
|
108
|
-
enableVirtualization?: boolean;
|
109
|
-
|
110
85
|
/**
|
111
86
|
* Specifies the height of the file manager.
|
112
87
|
*
|
@@ -215,26 +190,6 @@ export interface FileManagerModel extends ComponentModel{
|
|
215
190
|
*/
|
216
191
|
sortBy?: string;
|
217
192
|
|
218
|
-
/**
|
219
|
-
* Defines the custom sorting function.
|
220
|
-
* The sort comparer function has the same functionality like
|
221
|
-
* [`Array.sort`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort) sort comparer.
|
222
|
-
* This can be used to customize the default sorting functionalities with required comparison values.
|
223
|
-
*
|
224
|
-
* @default null
|
225
|
-
* @aspType string
|
226
|
-
*/
|
227
|
-
sortComparer?: SortComparer | string;
|
228
|
-
|
229
|
-
/**
|
230
|
-
* Gets or sets a value that indicates whether the File Manager allows multiple items selection with mouse dragging.
|
231
|
-
* Set this property to true to allow users to select multiple items with mouse drag as like file explorer. Hover over
|
232
|
-
* the files or folders and drag the mouse to select the required items.
|
233
|
-
*
|
234
|
-
* @default false
|
235
|
-
*/
|
236
|
-
enableRangeSelection?: boolean;
|
237
|
-
|
238
193
|
/**
|
239
194
|
* Specifies the group of items aligned horizontally in the toolbar.
|
240
195
|
*
|
@@ -246,17 +201,6 @@ export interface FileManagerModel extends ComponentModel{
|
|
246
201
|
*/
|
247
202
|
toolbarSettings?: ToolbarSettingsModel;
|
248
203
|
|
249
|
-
/**
|
250
|
-
* An array of items that are used to configure File Manager toolbar items.
|
251
|
-
*
|
252
|
-
* @remarks
|
253
|
-
* Use this property if you want to include custom toolbar items along with existing toolbar items. If both `toolbarSettings` and `toolbarItems` are defined, then items will be rendered based on toolbarItems.
|
254
|
-
*
|
255
|
-
* @default []
|
256
|
-
*
|
257
|
-
*/
|
258
|
-
toolbarItems?: ToolbarItemModel[];
|
259
|
-
|
260
204
|
/**
|
261
205
|
* Specifies the upload settings for the file manager.
|
262
206
|
*
|
@@ -265,8 +209,7 @@ export interface FileManagerModel extends ComponentModel{
|
|
265
209
|
* minFileSize: 0,
|
266
210
|
* maxFileSize: 30000000,
|
267
211
|
* allowedExtensions: '',
|
268
|
-
* autoClose: false
|
269
|
-
* directoryUpload: false
|
212
|
+
* autoClose: false
|
270
213
|
* }
|
271
214
|
*/
|
272
215
|
uploadSettings?: UploadSettingsModel;
|
@@ -281,238 +224,169 @@ export interface FileManagerModel extends ComponentModel{
|
|
281
224
|
/**
|
282
225
|
* Triggers before the file/folder is rendered.
|
283
226
|
*
|
284
|
-
* @event
|
227
|
+
* @event
|
285
228
|
*/
|
286
229
|
fileLoad?: EmitType<FileLoadEventArgs>;
|
287
230
|
|
288
231
|
/**
|
289
232
|
* Triggers before the file/folder is opened.
|
290
233
|
*
|
291
|
-
* @event
|
234
|
+
* @event
|
292
235
|
*/
|
293
236
|
fileOpen?: EmitType<FileOpenEventArgs>;
|
294
237
|
|
295
238
|
/**
|
296
239
|
* Triggers before sending the download request to the server.
|
297
240
|
*
|
298
|
-
* @event
|
241
|
+
* @event
|
299
242
|
*/
|
300
243
|
beforeDownload?: EmitType<BeforeDownloadEventArgs>;
|
301
244
|
|
302
245
|
/**
|
303
246
|
* Triggers before sending the getImage request to the server.
|
304
247
|
*
|
305
|
-
* @event
|
248
|
+
* @event
|
306
249
|
*/
|
307
250
|
beforeImageLoad?: EmitType<BeforeImageLoadEventArgs>;
|
308
251
|
|
309
252
|
/**
|
310
253
|
* Triggers before the dialog is closed.
|
311
254
|
*
|
312
|
-
* @event
|
255
|
+
* @event
|
313
256
|
*/
|
314
257
|
beforePopupClose?: EmitType<BeforePopupOpenCloseEventArgs>;
|
315
258
|
|
316
259
|
/**
|
317
260
|
* Triggers before the dialog is opened.
|
318
261
|
*
|
319
|
-
* @event
|
262
|
+
* @event
|
320
263
|
*/
|
321
264
|
beforePopupOpen?: EmitType<BeforePopupOpenCloseEventArgs>;
|
322
265
|
|
323
266
|
/**
|
324
267
|
* Triggers before sending the AJAX request to the server.
|
325
268
|
*
|
326
|
-
* @event
|
269
|
+
* @event
|
327
270
|
*/
|
328
271
|
beforeSend?: EmitType<BeforeSendEventArgs>;
|
329
272
|
|
330
273
|
/**
|
331
274
|
* Triggers when the file manager component is created.
|
332
275
|
*
|
333
|
-
* @event
|
276
|
+
* @event
|
334
277
|
*/
|
278
|
+
/* eslint-disable */
|
335
279
|
created?: EmitType<Object>;
|
336
280
|
|
337
|
-
/**
|
338
|
-
* This event is triggered before a folder is created. It allows for the restriction of folder creation based on the application's use case.
|
339
|
-
*
|
340
|
-
* @event beforeFolderCreate
|
341
|
-
*/
|
342
|
-
beforeFolderCreate?: EmitType<FolderCreateEventArgs>;
|
343
|
-
|
344
|
-
/**
|
345
|
-
* This event is triggered when a folder is successfully created. It provides an opportunity to retrieve details about the newly created folder.
|
346
|
-
*
|
347
|
-
* @event folderCreate
|
348
|
-
*/
|
349
|
-
folderCreate?: EmitType<FolderCreateEventArgs>;
|
350
|
-
|
351
281
|
/**
|
352
282
|
* Triggers when the file manager component is destroyed.
|
353
283
|
*
|
354
|
-
* @event
|
284
|
+
* @event
|
355
285
|
*/
|
286
|
+
/* eslint-disable */
|
356
287
|
destroyed?: EmitType<Object>;
|
357
288
|
|
358
|
-
/**
|
359
|
-
* This event is triggered before the deletion of a file or folder occurs. It can be utilized to prevent the deletion of specific files or folders. Any actions, such as displaying a spinner for deletion, can be implemented here.
|
360
|
-
*
|
361
|
-
* @event beforeDelete
|
362
|
-
*/
|
363
|
-
beforeDelete?: EmitType<DeleteEventArgs>;
|
364
|
-
|
365
|
-
/**
|
366
|
-
* This event is triggered after the file or folder is deleted successfully. The deleted file or folder details can be retrieved here. Additionally, custom elements' visibility can be managed here based on the application's use case.
|
367
|
-
*
|
368
|
-
* @event delete
|
369
|
-
*/
|
370
|
-
delete?: EmitType<DeleteEventArgs>;
|
371
|
-
|
372
|
-
/**
|
373
|
-
* This event is triggered when a file or folder is about to be renamed. It allows for the restriction of the rename action for specific folders or files by utilizing the cancel option.
|
374
|
-
*
|
375
|
-
* @event beforeRename
|
376
|
-
*/
|
377
|
-
beforeRename?: EmitType<RenameEventArgs>;
|
378
|
-
|
379
|
-
/**
|
380
|
-
* This event is triggered when a file or folder is successfully renamed. It provides an opportunity to fetch details about the renamed file.
|
381
|
-
*
|
382
|
-
* @event rename
|
383
|
-
*/
|
384
|
-
rename?: EmitType<RenameEventArgs>;
|
385
|
-
|
386
|
-
/**
|
387
|
-
* This event is triggered when a file or folder begins to move from its current path through a copy/cut and paste action.
|
388
|
-
*
|
389
|
-
* @event beforeMove
|
390
|
-
*/
|
391
|
-
beforeMove?: EmitType<MoveEventArgs>;
|
392
|
-
|
393
|
-
/**
|
394
|
-
* This event is triggered when a file or folder is pasted into the destination path.
|
395
|
-
*
|
396
|
-
* @event move
|
397
|
-
*/
|
398
|
-
move?: EmitType<MoveEventArgs>;
|
399
|
-
|
400
|
-
/**
|
401
|
-
* This event is triggered when a search action occurs in the search bar of the File Manager component. It triggers each character entered in the input during the search process.
|
402
|
-
*
|
403
|
-
* @event search
|
404
|
-
*/
|
405
|
-
search?: EmitType<SearchEventArgs>;
|
406
|
-
|
407
289
|
/**
|
408
290
|
* Triggers when the file/folder dragging is started.
|
409
291
|
*
|
410
|
-
* @event
|
292
|
+
* @event
|
411
293
|
*/
|
412
294
|
fileDragStart?: EmitType<FileDragEventArgs>;
|
413
295
|
|
414
296
|
/**
|
415
297
|
* Triggers while dragging the file/folder.
|
416
298
|
*
|
417
|
-
* @event
|
299
|
+
* @event
|
418
300
|
*/
|
419
301
|
fileDragging?: EmitType<FileDragEventArgs>;
|
420
302
|
|
421
303
|
/**
|
422
304
|
* Triggers when the file/folder is about to be dropped at the target.
|
423
305
|
*
|
424
|
-
* @event
|
306
|
+
* @event
|
425
307
|
*/
|
426
308
|
fileDragStop?: EmitType<FileDragEventArgs>;
|
427
309
|
|
428
310
|
/**
|
429
311
|
* Triggers when the file/folder is dropped.
|
430
312
|
*
|
431
|
-
* @event
|
313
|
+
* @event
|
432
314
|
*/
|
433
315
|
fileDropped?: EmitType<FileDragEventArgs>;
|
434
316
|
|
435
317
|
/**
|
436
318
|
* Triggers before the file/folder is selected.
|
437
319
|
*
|
438
|
-
* @event
|
320
|
+
* @event
|
439
321
|
*/
|
440
322
|
fileSelection?: EmitType<FileSelectionEventArgs>;
|
441
323
|
|
442
324
|
/**
|
443
325
|
* Triggers when the file/folder is selected/unselected.
|
444
326
|
*
|
445
|
-
* @event
|
327
|
+
* @event
|
446
328
|
*/
|
447
329
|
fileSelect?: EmitType<FileSelectEventArgs>;
|
448
330
|
|
449
331
|
/**
|
450
332
|
* Triggers when the context menu item is clicked.
|
451
333
|
*
|
452
|
-
* @event
|
334
|
+
* @event
|
453
335
|
*/
|
454
336
|
menuClick?: EmitType<MenuClickEventArgs>;
|
455
337
|
|
456
338
|
/**
|
457
339
|
* Triggers before the context menu is opened.
|
458
340
|
*
|
459
|
-
* @event
|
341
|
+
* @event
|
460
342
|
*/
|
461
343
|
menuOpen?: EmitType<MenuOpenEventArgs>;
|
462
344
|
|
463
|
-
/**
|
464
|
-
* Triggers before the context menu is closed.
|
465
|
-
*
|
466
|
-
* @event menuClose
|
467
|
-
*/
|
468
|
-
menuClose?: EmitType<MenuCloseEventArgs>;
|
469
|
-
|
470
345
|
/**
|
471
346
|
* Triggers when the AJAX request is failed.
|
472
347
|
*
|
473
|
-
* @event
|
348
|
+
* @event
|
474
349
|
*/
|
475
350
|
failure?: EmitType<FailureEventArgs>;
|
476
351
|
|
477
352
|
/**
|
478
353
|
* Triggers when the dialog is closed.
|
479
354
|
*
|
480
|
-
* @event
|
355
|
+
* @event
|
481
356
|
*/
|
482
357
|
popupClose?: EmitType<PopupOpenCloseEventArgs>;
|
483
358
|
|
484
359
|
/**
|
485
360
|
* Triggers when the dialog is opened.
|
486
361
|
*
|
487
|
-
* @event
|
362
|
+
* @event
|
488
363
|
*/
|
489
364
|
popupOpen?: EmitType<PopupOpenCloseEventArgs>;
|
490
365
|
|
491
366
|
/**
|
492
367
|
* Triggers when the AJAX request is success.
|
493
|
-
*
|
494
|
-
* @event success
|
368
|
+
* @event
|
495
369
|
*/
|
496
370
|
success?: EmitType<SuccessEventArgs>;
|
497
371
|
|
498
372
|
/**
|
499
373
|
* Triggers when the toolbar item is clicked.
|
500
374
|
*
|
501
|
-
* @event
|
375
|
+
* @event
|
502
376
|
*/
|
503
377
|
toolbarClick?: EmitType<ToolbarClickEventArgs>;
|
504
378
|
|
505
379
|
/**
|
506
380
|
* Triggers before creating the toolbar.
|
507
381
|
*
|
508
|
-
* @event
|
382
|
+
* @event
|
509
383
|
*/
|
510
384
|
toolbarCreate?: EmitType<ToolbarCreateEventArgs>;
|
511
385
|
|
512
386
|
/**
|
513
387
|
* Triggers before rendering each file item in upload dialog box.
|
514
388
|
*
|
515
|
-
* @event
|
389
|
+
* @event
|
516
390
|
*/
|
517
391
|
uploadListCreate?: EmitType<UploadListCreateArgs>;
|
518
392
|
|