@syncfusion/ej2-filemanager 26.2.10 → 27.1.48
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.eslintrc.json +2 -4
- package/dist/ej2-filemanager.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js +2 -2
- package/dist/ej2-filemanager.umd.min.js.map +1 -1
- package/dist/es6/ej2-filemanager.es2015.js +190 -21
- package/dist/es6/ej2-filemanager.es2015.js.map +1 -1
- package/dist/es6/ej2-filemanager.es5.js +191 -21
- package/dist/es6/ej2-filemanager.es5.js.map +1 -1
- package/dist/global/ej2-filemanager.min.js +2 -2
- package/dist/global/ej2-filemanager.min.js.map +1 -1
- package/dist/global/index.d.ts +1 -1
- package/package.json +16 -16
- package/src/file-manager/base/file-manager-model.d.ts +17 -1
- package/src/file-manager/base/file-manager.d.ts +32 -1
- package/src/file-manager/base/file-manager.js +148 -1
- package/src/file-manager/base/interface.d.ts +38 -0
- package/src/file-manager/common/operations.js +1 -0
- package/src/file-manager/common/utility.js +3 -0
- package/src/file-manager/layout/details-view.js +11 -2
- package/src/file-manager/layout/large-icons-view.d.ts +0 -1
- package/src/file-manager/layout/large-icons-view.js +5 -17
- package/src/file-manager/pop-up/context-menu.d.ts +1 -1
- package/src/file-manager/pop-up/context-menu.js +24 -2
- package/styles/bootstrap-dark-lite.css +1058 -0
- package/styles/bootstrap-dark-lite.scss +16 -0
- package/styles/bootstrap-dark.css +201 -161
- package/styles/bootstrap-dark.scss +1 -0
- package/styles/bootstrap-lite.css +1040 -0
- package/styles/bootstrap-lite.scss +16 -0
- package/styles/bootstrap.css +183 -143
- package/styles/bootstrap.scss +1 -0
- package/styles/bootstrap4-lite.css +1068 -0
- package/styles/bootstrap4-lite.scss +16 -0
- package/styles/bootstrap4.css +211 -171
- package/styles/bootstrap4.scss +1 -0
- package/styles/bootstrap5-dark-lite.css +1078 -0
- package/styles/bootstrap5-dark-lite.scss +16 -0
- package/styles/bootstrap5-dark.css +220 -186
- package/styles/bootstrap5-dark.scss +1 -0
- package/styles/bootstrap5-lite.css +1078 -0
- package/styles/bootstrap5-lite.scss +16 -0
- package/styles/bootstrap5.3-lite.css +1035 -0
- package/styles/bootstrap5.3-lite.scss +16 -0
- package/styles/bootstrap5.3.css +1603 -0
- package/styles/bootstrap5.3.scss +17 -0
- package/styles/bootstrap5.css +220 -186
- package/styles/bootstrap5.scss +1 -0
- package/styles/fabric-dark-lite.css +1039 -0
- package/styles/fabric-dark-lite.scss +16 -0
- package/styles/fabric-dark.css +184 -144
- package/styles/fabric-dark.scss +1 -0
- package/styles/fabric-lite.css +1039 -0
- package/styles/fabric-lite.scss +16 -0
- package/styles/fabric.css +183 -143
- package/styles/fabric.scss +1 -0
- package/styles/file-manager/_bds-definition.scss +2 -0
- package/styles/file-manager/_bigger.scss +758 -0
- package/styles/file-manager/_bootstrap-dark-definition.scss +2 -0
- package/styles/file-manager/_bootstrap-definition.scss +2 -0
- package/styles/file-manager/_bootstrap4-definition.scss +2 -0
- package/styles/file-manager/_bootstrap5-definition.scss +2 -0
- package/styles/file-manager/_bootstrap5.3-definition.scss +22 -20
- package/styles/file-manager/_fabric-dark-definition.scss +2 -0
- package/styles/file-manager/_fabric-definition.scss +2 -0
- package/styles/file-manager/_fluent-definition.scss +2 -0
- package/styles/file-manager/_fluent2-definition.scss +15 -9
- package/styles/file-manager/_fusionnew-definition.scss +2 -0
- package/styles/file-manager/_highcontrast-definition.scss +2 -0
- package/styles/file-manager/_highcontrast-light-definition.scss +2 -0
- package/styles/file-manager/_layout.scss +45 -663
- package/styles/file-manager/_material-dark-definition.scss +2 -0
- package/styles/file-manager/_material-definition.scss +2 -0
- package/styles/file-manager/_material3-definition.scss +2 -0
- package/styles/file-manager/_tailwind-definition.scss +2 -0
- package/styles/file-manager/_theme.scss +38 -7
- package/styles/file-manager/bootstrap-dark.css +201 -161
- package/styles/file-manager/bootstrap-dark.scss +1 -0
- package/styles/file-manager/bootstrap.css +183 -143
- package/styles/file-manager/bootstrap.scss +1 -0
- package/styles/file-manager/bootstrap4.css +211 -171
- package/styles/file-manager/bootstrap4.scss +1 -0
- package/styles/file-manager/bootstrap5-dark.css +220 -186
- package/styles/file-manager/bootstrap5-dark.scss +1 -0
- package/styles/file-manager/bootstrap5.3.css +1603 -0
- package/styles/file-manager/bootstrap5.3.scss +17 -0
- package/styles/file-manager/bootstrap5.css +220 -186
- package/styles/file-manager/bootstrap5.scss +1 -0
- package/styles/file-manager/fabric-dark.css +184 -144
- package/styles/file-manager/fabric-dark.scss +1 -0
- package/styles/file-manager/fabric.css +183 -143
- package/styles/file-manager/fabric.scss +1 -0
- package/styles/file-manager/fluent-dark.css +187 -147
- package/styles/file-manager/fluent-dark.scss +1 -0
- package/styles/file-manager/fluent.css +186 -146
- package/styles/file-manager/fluent.scss +1 -0
- package/styles/file-manager/fluent2.css +204 -158
- package/styles/file-manager/fluent2.scss +1 -0
- package/styles/file-manager/highcontrast-light.css +184 -144
- package/styles/file-manager/highcontrast-light.scss +1 -0
- package/styles/file-manager/highcontrast.css +207 -167
- package/styles/file-manager/highcontrast.scss +1 -0
- package/styles/file-manager/material-dark.css +198 -158
- package/styles/file-manager/material-dark.scss +1 -0
- package/styles/file-manager/material.css +183 -143
- package/styles/file-manager/material.scss +1 -0
- package/styles/file-manager/material3-dark.css +185 -145
- package/styles/file-manager/material3-dark.scss +1 -0
- package/styles/file-manager/material3.css +185 -145
- package/styles/file-manager/material3.scss +1 -0
- package/styles/file-manager/tailwind-dark.css +198 -164
- package/styles/file-manager/tailwind-dark.scss +1 -0
- package/styles/file-manager/tailwind.css +198 -164
- package/styles/file-manager/tailwind.scss +1 -0
- package/styles/fluent-dark-lite.css +1037 -0
- package/styles/fluent-dark-lite.scss +16 -0
- package/styles/fluent-dark.css +187 -147
- package/styles/fluent-dark.scss +1 -0
- package/styles/fluent-lite.css +1036 -0
- package/styles/fluent-lite.scss +16 -0
- package/styles/fluent.css +186 -146
- package/styles/fluent.scss +1 -0
- package/styles/fluent2-lite.css +1272 -0
- package/styles/fluent2-lite.scss +16 -0
- package/styles/fluent2.css +204 -158
- package/styles/fluent2.scss +1 -0
- package/styles/highcontrast-light-lite.css +1039 -0
- package/styles/highcontrast-light-lite.scss +16 -0
- package/styles/highcontrast-light.css +184 -144
- package/styles/highcontrast-light.scss +1 -0
- package/styles/highcontrast-lite.css +1059 -0
- package/styles/highcontrast-lite.scss +16 -0
- package/styles/highcontrast.css +207 -167
- package/styles/highcontrast.scss +1 -0
- package/styles/material-dark-lite.css +1092 -0
- package/styles/material-dark-lite.scss +16 -0
- package/styles/material-dark.css +198 -158
- package/styles/material-dark.scss +1 -0
- package/styles/material-lite.css +1097 -0
- package/styles/material-lite.scss +16 -0
- package/styles/material.css +183 -143
- package/styles/material.scss +1 -0
- package/styles/material3-dark-lite.css +1090 -0
- package/styles/material3-dark-lite.scss +16 -0
- package/styles/material3-dark.css +185 -145
- package/styles/material3-dark.scss +1 -0
- package/styles/material3-lite.css +1092 -0
- package/styles/material3-lite.scss +16 -0
- package/styles/material3.css +185 -145
- package/styles/material3.scss +1 -0
- package/styles/tailwind-dark-lite.css +1060 -0
- package/styles/tailwind-dark-lite.scss +16 -0
- package/styles/tailwind-dark.css +198 -164
- package/styles/tailwind-dark.scss +1 -0
- package/styles/tailwind-lite.css +1060 -0
- package/styles/tailwind-lite.scss +16 -0
- package/styles/tailwind.css +198 -164
- package/styles/tailwind.scss +1 -0
- package/tslint.json +0 -111
package/dist/global/index.d.ts
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/*!
|
2
2
|
* filename: index.d.ts
|
3
|
-
* version :
|
3
|
+
* version : 27.1.48
|
4
4
|
* Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
|
5
5
|
* Use of this code is subject to the terms of our license.
|
6
6
|
* A copy of the current license can be obtained at any time by e-mailing
|
package/package.json
CHANGED
@@ -1,8 +1,8 @@
|
|
1
1
|
{
|
2
2
|
"_from": "@syncfusion/ej2-filemanager@*",
|
3
|
-
"_id": "@syncfusion/ej2-filemanager@
|
3
|
+
"_id": "@syncfusion/ej2-filemanager@18.28.1",
|
4
4
|
"_inBundle": false,
|
5
|
-
"_integrity": "sha512-
|
5
|
+
"_integrity": "sha512-opby/2n/6yJA4+14V/syjuS4wTJVti6Up4krWzctYlPcbQk7GuKiJuQlveSIbLKjk4I6ERRfHBAxnZiNKdkqZQ==",
|
6
6
|
"_location": "/@syncfusion/ej2-filemanager",
|
7
7
|
"_phantomChildren": {},
|
8
8
|
"_requested": {
|
@@ -24,10 +24,10 @@
|
|
24
24
|
"/@syncfusion/ej2-richtexteditor",
|
25
25
|
"/@syncfusion/ej2-vue-filemanager"
|
26
26
|
],
|
27
|
-
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-
|
28
|
-
"_shasum": "
|
27
|
+
"_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-release/@syncfusion/ej2-filemanager/-/ej2-filemanager-18.28.1.tgz",
|
28
|
+
"_shasum": "0fb6ec0705a6e57f523e448c4e28626ae7d3d8b7",
|
29
29
|
"_spec": "@syncfusion/ej2-filemanager@*",
|
30
|
-
"_where": "/jenkins/workspace/elease-
|
30
|
+
"_where": "/jenkins/workspace/elease-automation_release_27.1.1/packages/included",
|
31
31
|
"author": {
|
32
32
|
"name": "Syncfusion Inc."
|
33
33
|
},
|
@@ -36,16 +36,16 @@
|
|
36
36
|
},
|
37
37
|
"bundleDependencies": false,
|
38
38
|
"dependencies": {
|
39
|
-
"@syncfusion/ej2-base": "~
|
40
|
-
"@syncfusion/ej2-buttons": "~
|
41
|
-
"@syncfusion/ej2-data": "~
|
42
|
-
"@syncfusion/ej2-grids": "~
|
43
|
-
"@syncfusion/ej2-inputs": "~
|
44
|
-
"@syncfusion/ej2-layouts": "~
|
45
|
-
"@syncfusion/ej2-lists": "~
|
46
|
-
"@syncfusion/ej2-navigations": "~
|
47
|
-
"@syncfusion/ej2-popups": "~
|
48
|
-
"@syncfusion/ej2-splitbuttons": "~
|
39
|
+
"@syncfusion/ej2-base": "~27.1.48",
|
40
|
+
"@syncfusion/ej2-buttons": "~27.1.48",
|
41
|
+
"@syncfusion/ej2-data": "~27.1.48",
|
42
|
+
"@syncfusion/ej2-grids": "~27.1.48",
|
43
|
+
"@syncfusion/ej2-inputs": "~27.1.48",
|
44
|
+
"@syncfusion/ej2-layouts": "~27.1.48",
|
45
|
+
"@syncfusion/ej2-lists": "~27.1.48",
|
46
|
+
"@syncfusion/ej2-navigations": "~27.1.48",
|
47
|
+
"@syncfusion/ej2-popups": "~27.1.48",
|
48
|
+
"@syncfusion/ej2-splitbuttons": "~27.1.48"
|
49
49
|
},
|
50
50
|
"deprecated": false,
|
51
51
|
"description": "Essential JS 2 FileManager Component",
|
@@ -75,6 +75,6 @@
|
|
75
75
|
"url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
|
76
76
|
},
|
77
77
|
"typings": "index.d.ts",
|
78
|
-
"version": "
|
78
|
+
"version": "27.1.48",
|
79
79
|
"sideEffects": false
|
80
80
|
}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest, Collection } 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 { ToolbarItem, ToolbarItemModel } 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, FolderCreateEventArgs, DeleteEventArgs, RenameEventArgs, MoveEventArgs, SearchEventArgs } 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, closePopup } 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';import { Virtualization } from '../actions/virtualization';import { SortComparer } from './interface';
|
1
|
+
import { Component, EmitType, ModuleDeclaration, isNullOrUndefined, L10n, closest, Collection, detach, selectAll, setStyleAttribute } 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 { ToolbarItem, ToolbarItemModel } 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, FolderCreateEventArgs, DeleteEventArgs, RenameEventArgs, MoveEventArgs, SearchEventArgs } from './interface';import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs, MenuCloseEventArgs } 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, closePopup } 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';import { Virtualization } from '../actions/virtualization';import { SortComparer } from './interface';
|
2
2
|
import {ComponentModel} from '@syncfusion/ej2-base';
|
3
3
|
|
4
4
|
/**
|
@@ -226,6 +226,15 @@ export interface FileManagerModel extends ComponentModel{
|
|
226
226
|
*/
|
227
227
|
sortComparer?: SortComparer | string;
|
228
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
|
+
|
229
238
|
/**
|
230
239
|
* Specifies the group of items aligned horizontally in the toolbar.
|
231
240
|
*
|
@@ -451,6 +460,13 @@ export interface FileManagerModel extends ComponentModel{
|
|
451
460
|
*/
|
452
461
|
menuOpen?: EmitType<MenuOpenEventArgs>;
|
453
462
|
|
463
|
+
/**
|
464
|
+
* Triggers before the context menu is closed.
|
465
|
+
*
|
466
|
+
* @event menuClose
|
467
|
+
*/
|
468
|
+
menuClose?: EmitType<MenuCloseEventArgs>;
|
469
|
+
|
454
470
|
/**
|
455
471
|
* Triggers when the AJAX request is failed.
|
456
472
|
*
|
@@ -14,7 +14,7 @@ import { UploadSettingsModel } from '../models/upload-settings-model';
|
|
14
14
|
import { FileManagerModel } from './file-manager-model';
|
15
15
|
import { ITreeView, IContextMenu, ViewType, SortOrder, FileDragEventArgs, RetryArgs, FileSelectionEventArgs } from './interface';
|
16
16
|
import { BeforeSendEventArgs, SuccessEventArgs, FailureEventArgs, FileLoadEventArgs, FolderCreateEventArgs, DeleteEventArgs, RenameEventArgs, MoveEventArgs, SearchEventArgs } from './interface';
|
17
|
-
import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs } from './interface';
|
17
|
+
import { FileOpenEventArgs, FileSelectEventArgs, MenuClickEventArgs, MenuOpenEventArgs, MenuCloseEventArgs } from './interface';
|
18
18
|
import { ToolbarClickEventArgs, ToolbarCreateEventArgs, UploadListCreateArgs } from './interface';
|
19
19
|
import { PopupOpenCloseEventArgs, BeforePopupOpenCloseEventArgs, BeforeDownloadEventArgs, BeforeImageLoadEventArgs } from './interface';
|
20
20
|
import { TreeView as BaseTreeView } from '@syncfusion/ej2-navigations';
|
@@ -153,6 +153,11 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
|
|
153
153
|
isMac: boolean;
|
154
154
|
oldView: string;
|
155
155
|
oldPath: string;
|
156
|
+
private viewElem;
|
157
|
+
private dragSelectElement;
|
158
|
+
private dragX;
|
159
|
+
private dragY;
|
160
|
+
private dragSelectedItems;
|
156
161
|
/**
|
157
162
|
* Specifies the AJAX settings of the file manager.
|
158
163
|
*
|
@@ -350,6 +355,14 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
|
|
350
355
|
* @aspType string
|
351
356
|
*/
|
352
357
|
sortComparer: SortComparer | string;
|
358
|
+
/**
|
359
|
+
* Gets or sets a value that indicates whether the File Manager allows multiple items selection with mouse dragging.
|
360
|
+
* Set this property to true to allow users to select multiple items with mouse drag as like file explorer. Hover over
|
361
|
+
* the files or folders and drag the mouse to select the required items.
|
362
|
+
*
|
363
|
+
* @default false
|
364
|
+
*/
|
365
|
+
enableRangeSelection: boolean;
|
353
366
|
/**
|
354
367
|
* Specifies the group of items aligned horizontally in the toolbar.
|
355
368
|
*
|
@@ -545,6 +558,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
|
|
545
558
|
* @event menuOpen
|
546
559
|
*/
|
547
560
|
menuOpen: EmitType<MenuOpenEventArgs>;
|
561
|
+
/**
|
562
|
+
* Triggers before the context menu is closed.
|
563
|
+
*
|
564
|
+
* @event menuClose
|
565
|
+
*/
|
566
|
+
menuClose: EmitType<MenuCloseEventArgs>;
|
548
567
|
/**
|
549
568
|
* Triggers when the AJAX request is failed.
|
550
569
|
*
|
@@ -655,8 +674,14 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
|
|
655
674
|
private onDetailsInit;
|
656
675
|
private resizeHandler;
|
657
676
|
private keyActionHandler;
|
677
|
+
private wireSelectOnDragEvent;
|
658
678
|
private wireEvents;
|
659
679
|
private unWireEvents;
|
680
|
+
private onDragStart;
|
681
|
+
private onDrag;
|
682
|
+
private onDragStop;
|
683
|
+
private selectItems;
|
684
|
+
private onLayoutChange;
|
660
685
|
private setPath;
|
661
686
|
/**
|
662
687
|
* Called internally if any of the property value changed.
|
@@ -783,6 +808,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
|
|
783
808
|
* @returns {void}
|
784
809
|
*/
|
785
810
|
selectAll(): void;
|
811
|
+
/**
|
812
|
+
* Specifies the method that must be invoked to traverse the path backwards in the file manager.
|
813
|
+
*
|
814
|
+
* @returns {void}
|
815
|
+
*/
|
816
|
+
traverseBackward(): void;
|
786
817
|
/**
|
787
818
|
* Deselects the currently selected folders and files in current path.
|
788
819
|
*
|
@@ -17,7 +17,7 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
|
|
17
17
|
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
|
18
18
|
return c > 3 && r && Object.defineProperty(target, key, r), r;
|
19
19
|
};
|
20
|
-
import { Component, isNullOrUndefined, L10n, closest, Collection } from '@syncfusion/ej2-base';
|
20
|
+
import { Component, isNullOrUndefined, L10n, closest, Collection, detach, selectAll, setStyleAttribute } from '@syncfusion/ej2-base';
|
21
21
|
import { Property, NotifyPropertyChanges, Complex, select } from '@syncfusion/ej2-base';
|
22
22
|
import { createElement, addClass, removeClass, setStyleAttribute as setAttr, getUniqueID } from '@syncfusion/ej2-base';
|
23
23
|
import { isNullOrUndefined as isNOU, formatUnit, Browser, KeyboardEvents } from '@syncfusion/ej2-base';
|
@@ -101,6 +101,7 @@ var FileManager = /** @class */ (function (_super) {
|
|
101
101
|
_this.uploadedCount = 0;
|
102
102
|
//Specifies whether the operating system is MAC or not
|
103
103
|
_this.isMac = false;
|
104
|
+
_this.dragSelectedItems = [];
|
104
105
|
FileManager_1.Inject(BreadCrumbBar, LargeIconsView, ContextMenu);
|
105
106
|
return _this;
|
106
107
|
}
|
@@ -225,6 +226,9 @@ var FileManager = /** @class */ (function (_super) {
|
|
225
226
|
this.setRtl(this.enableRtl);
|
226
227
|
this.addEventListeners();
|
227
228
|
read(this, (this.path !== this.originalPath) ? events.initialEnd : events.finalizeEnd, this.path);
|
229
|
+
if (this.fileView === 'Details') {
|
230
|
+
this.largeiconsviewModule.element.classList.add(CLS.DISPLAY_NONE);
|
231
|
+
}
|
228
232
|
this.adjustHeight();
|
229
233
|
if (isNOU(this.navigationpaneModule)) {
|
230
234
|
this.splitterObj.collapse(this.enableRtl ? 1 : 0);
|
@@ -661,7 +665,33 @@ var FileManager = /** @class */ (function (_super) {
|
|
661
665
|
break;
|
662
666
|
}
|
663
667
|
};
|
668
|
+
FileManager.prototype.wireSelectOnDragEvent = function (isBind) {
|
669
|
+
if (isNOU(this.view)) {
|
670
|
+
return;
|
671
|
+
}
|
672
|
+
if (isBind) {
|
673
|
+
this.viewElem = this.view === 'LargeIcons' ? this.largeiconsviewModule.element : this.element.querySelector('.e-gridcontent');
|
674
|
+
}
|
675
|
+
if (!this.viewElem) {
|
676
|
+
return;
|
677
|
+
}
|
678
|
+
if (isBind) {
|
679
|
+
if (this.allowMultiSelection) {
|
680
|
+
EventHandler.add(this.viewElem, 'mousedown', this.onDragStart, this);
|
681
|
+
this.on(events.layoutChange, this.onLayoutChange, this);
|
682
|
+
this.on(events.selectionChanged, this.onLayoutChange, this);
|
683
|
+
}
|
684
|
+
}
|
685
|
+
else {
|
686
|
+
EventHandler.remove(this.viewElem, 'mousedown', this.onDragStart);
|
687
|
+
this.off(events.layoutChange, this.onLayoutChange);
|
688
|
+
this.off(events.selectionChanged, this.onLayoutChange);
|
689
|
+
}
|
690
|
+
};
|
664
691
|
FileManager.prototype.wireEvents = function () {
|
692
|
+
if (this.enableRangeSelection) {
|
693
|
+
this.wireSelectOnDragEvent(true);
|
694
|
+
}
|
665
695
|
EventHandler.add(window, 'resize', this.resizeHandler, this);
|
666
696
|
this.keyboardModule = new KeyboardEvents(this.element, {
|
667
697
|
keyAction: this.keyActionHandler.bind(this),
|
@@ -670,9 +700,94 @@ var FileManager = /** @class */ (function (_super) {
|
|
670
700
|
});
|
671
701
|
};
|
672
702
|
FileManager.prototype.unWireEvents = function () {
|
703
|
+
this.wireSelectOnDragEvent(false);
|
673
704
|
EventHandler.remove(window, 'resize', this.resizeHandler);
|
674
705
|
this.keyboardModule.destroy();
|
675
706
|
};
|
707
|
+
FileManager.prototype.onDragStart = function (event) {
|
708
|
+
if (this.viewElem) {
|
709
|
+
if (this.allowDragAndDrop) {
|
710
|
+
var targetElement = closest(event.target, this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-fe-text');
|
711
|
+
if (targetElement) {
|
712
|
+
return;
|
713
|
+
}
|
714
|
+
}
|
715
|
+
event.preventDefault();
|
716
|
+
this.dragX = event.pageX;
|
717
|
+
this.dragY = event.pageY;
|
718
|
+
if (!this.dragSelectElement) {
|
719
|
+
this.dragSelectElement = createElement('div', {
|
720
|
+
id: this.element.id + '_drag',
|
721
|
+
className: 'e-filemanager e-drag-select',
|
722
|
+
styles: 'left: ' + this.dragX + 'px;top: ' + this.dragY + 'px;'
|
723
|
+
});
|
724
|
+
document.body.append(this.dragSelectElement);
|
725
|
+
}
|
726
|
+
EventHandler.add(document, 'mouseup', this.onDragStop, this);
|
727
|
+
EventHandler.add(this.viewElem, 'mousemove', this.onDrag, this);
|
728
|
+
EventHandler.add(this.dragSelectElement, 'mousemove', this.onDrag, this);
|
729
|
+
}
|
730
|
+
};
|
731
|
+
FileManager.prototype.onDrag = function (event) {
|
732
|
+
event.stopPropagation();
|
733
|
+
if (this.dragSelectElement) {
|
734
|
+
var diffX = event.pageX - this.dragX;
|
735
|
+
var diffY = event.pageY - this.dragY;
|
736
|
+
setStyleAttribute(this.dragSelectElement, {
|
737
|
+
'left': diffX < 0 ? this.dragX + diffX + 'px' : this.dragX + 'px', 'top': diffY < 0 ? this.dragY + diffY + 'px' : this.dragY + 'px',
|
738
|
+
'height': Math.abs(diffY) + 'px', 'width': Math.abs(diffX) + 'px'
|
739
|
+
});
|
740
|
+
this.selectItems();
|
741
|
+
}
|
742
|
+
else {
|
743
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
744
|
+
}
|
745
|
+
};
|
746
|
+
FileManager.prototype.onDragStop = function () {
|
747
|
+
if (this.viewElem) {
|
748
|
+
EventHandler.remove(document, 'mouseup', this.onDragStop);
|
749
|
+
EventHandler.remove(this.viewElem, 'mousemove', this.onDrag);
|
750
|
+
}
|
751
|
+
if (this.dragSelectElement) {
|
752
|
+
EventHandler.remove(this.dragSelectElement, 'mousemove', this.onDrag);
|
753
|
+
if (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0) {
|
754
|
+
this.setProperties({ selectedItems: this.dragSelectedItems });
|
755
|
+
}
|
756
|
+
this.dragSelectedItems = [];
|
757
|
+
detach(this.dragSelectElement);
|
758
|
+
this.dragSelectElement = null;
|
759
|
+
}
|
760
|
+
};
|
761
|
+
FileManager.prototype.selectItems = function () {
|
762
|
+
this.dragSelectedItems = [];
|
763
|
+
var dragRect = this.dragSelectElement.getBoundingClientRect();
|
764
|
+
var allItems = selectAll(this.viewElem.classList.contains('e-large-icons') ? '.e-list-item' : '.e-row', this.viewElem);
|
765
|
+
removeClass(selectAll('.e-active', this.viewElem), ['e-active', 'e-focus']);
|
766
|
+
removeClass(selectAll('.e-check', this.viewElem), ['e-check']);
|
767
|
+
for (var _i = 0, allItems_1 = allItems; _i < allItems_1.length; _i++) {
|
768
|
+
var item = allItems_1[_i];
|
769
|
+
var itemRect = item.getBoundingClientRect();
|
770
|
+
if (!(dragRect.right < itemRect.left || dragRect.left > itemRect.right
|
771
|
+
|| dragRect.bottom < itemRect.top || dragRect.top > itemRect.bottom)
|
772
|
+
&& (this.dragSelectElement.clientHeight > 0 && this.dragSelectElement.clientWidth > 0)) {
|
773
|
+
if (this.viewElem.classList.contains('e-large-icons')) {
|
774
|
+
item.classList.add('e-active');
|
775
|
+
this.dragSelectedItems.push(item.getAttribute('title'));
|
776
|
+
}
|
777
|
+
else {
|
778
|
+
addClass(selectAll('.e-rowcell', item), ['e-active']);
|
779
|
+
this.dragSelectedItems.push(item.querySelector('.e-drag-text').textContent);
|
780
|
+
}
|
781
|
+
item.querySelector('.e-frame').classList.add('e-check');
|
782
|
+
}
|
783
|
+
}
|
784
|
+
};
|
785
|
+
FileManager.prototype.onLayoutChange = function () {
|
786
|
+
if (this.enableRangeSelection) {
|
787
|
+
this.unWireEvents();
|
788
|
+
this.wireEvents();
|
789
|
+
}
|
790
|
+
};
|
676
791
|
FileManager.prototype.setPath = function () {
|
677
792
|
this.setProperties({ selectedItems: [] }, true);
|
678
793
|
this.ensurePath();
|
@@ -719,6 +834,12 @@ var FileManager = /** @class */ (function (_super) {
|
|
719
834
|
case 'detailsViewSettings':
|
720
835
|
this.notify(events.modelChanged, { module: 'detailsview', newProp: newProp, oldProp: oldProp });
|
721
836
|
break;
|
837
|
+
case 'enableRangeSelection':
|
838
|
+
this.wireSelectOnDragEvent(false);
|
839
|
+
if (newProp.enableRangeSelection) {
|
840
|
+
this.wireSelectOnDragEvent(true);
|
841
|
+
}
|
842
|
+
break;
|
722
843
|
case 'enableRtl':
|
723
844
|
this.enableRtl = newProp.enableRtl;
|
724
845
|
this.refresh();
|
@@ -899,6 +1020,9 @@ var FileManager = /** @class */ (function (_super) {
|
|
899
1020
|
this.largeiconsviewModule = null;
|
900
1021
|
this.detailsviewModule = null;
|
901
1022
|
this.breadcrumbbarModule = null;
|
1023
|
+
this.viewElem = null;
|
1024
|
+
this.dragSelectElement = null;
|
1025
|
+
this.dragSelectedItems = null;
|
902
1026
|
};
|
903
1027
|
/**
|
904
1028
|
* Creates a new folder in file manager.
|
@@ -1087,6 +1211,23 @@ var FileManager = /** @class */ (function (_super) {
|
|
1087
1211
|
FileManager.prototype.selectAll = function () {
|
1088
1212
|
this.notify(events.methodCall, { action: 'selectAll' });
|
1089
1213
|
};
|
1214
|
+
/**
|
1215
|
+
* Specifies the method that must be invoked to traverse the path backwards in the file manager.
|
1216
|
+
*
|
1217
|
+
* @returns {void}
|
1218
|
+
*/
|
1219
|
+
FileManager.prototype.traverseBackward = function () {
|
1220
|
+
if (this.pathNames.length > 1 && this.breadcrumbbarModule.searchObj.element.value === '' && !this.isFiltered) {
|
1221
|
+
this.pathId.pop();
|
1222
|
+
this.pathNames.pop();
|
1223
|
+
var newPath = this.pathNames.slice(1).join('/');
|
1224
|
+
newPath = newPath === '' ? '/' : '/' + newPath + '/';
|
1225
|
+
this.setProperties({ path: newPath }, true);
|
1226
|
+
read(this, events.pathChanged, this.path);
|
1227
|
+
var treeNodeId = this.pathId[this.pathId.length - 1];
|
1228
|
+
this.notify(events.updateTreeSelection, { module: 'treeview', selectedNode: treeNodeId });
|
1229
|
+
}
|
1230
|
+
};
|
1090
1231
|
/**
|
1091
1232
|
* Deselects the currently selected folders and files in current path.
|
1092
1233
|
*
|
@@ -1223,6 +1364,9 @@ var FileManager = /** @class */ (function (_super) {
|
|
1223
1364
|
__decorate([
|
1224
1365
|
Property(null)
|
1225
1366
|
], FileManager.prototype, "sortComparer", void 0);
|
1367
|
+
__decorate([
|
1368
|
+
Property(false)
|
1369
|
+
], FileManager.prototype, "enableRangeSelection", void 0);
|
1226
1370
|
__decorate([
|
1227
1371
|
Complex({}, ToolbarSettings)
|
1228
1372
|
], FileManager.prototype, "toolbarSettings", void 0);
|
@@ -1313,6 +1457,9 @@ var FileManager = /** @class */ (function (_super) {
|
|
1313
1457
|
__decorate([
|
1314
1458
|
Event()
|
1315
1459
|
], FileManager.prototype, "menuOpen", void 0);
|
1460
|
+
__decorate([
|
1461
|
+
Event()
|
1462
|
+
], FileManager.prototype, "menuClose", void 0);
|
1316
1463
|
__decorate([
|
1317
1464
|
Event()
|
1318
1465
|
], FileManager.prototype, "failure", void 0);
|
@@ -678,6 +678,43 @@ export interface MenuOpenEventArgs {
|
|
678
678
|
*/
|
679
679
|
menuType?: string;
|
680
680
|
}
|
681
|
+
/**
|
682
|
+
* Interface for MenuClose event arguments.
|
683
|
+
*/
|
684
|
+
export interface MenuCloseEventArgs {
|
685
|
+
/**
|
686
|
+
* If you want to cancel this event then, set cancel to true. Otherwise, false.
|
687
|
+
*/
|
688
|
+
cancel?: boolean;
|
689
|
+
/**
|
690
|
+
* Returns the current context menu element.
|
691
|
+
*/
|
692
|
+
element?: HTMLElement;
|
693
|
+
/**
|
694
|
+
* Specifies the actual event.
|
695
|
+
*/
|
696
|
+
event?: Event;
|
697
|
+
/**
|
698
|
+
* Returns whether the current context menu is focused or not.
|
699
|
+
*/
|
700
|
+
isFocused?: boolean;
|
701
|
+
/**
|
702
|
+
* Returns the target folder/file item as an array of JSON object.
|
703
|
+
*/
|
704
|
+
fileDetails?: Object[];
|
705
|
+
/**
|
706
|
+
* Returns the current context menu items as JSON object.
|
707
|
+
*/
|
708
|
+
items?: MenuItemModel[];
|
709
|
+
/**
|
710
|
+
* Returns the parent context menu item as JSON object.
|
711
|
+
*/
|
712
|
+
parentItem?: MenuItemModel;
|
713
|
+
/**
|
714
|
+
* Returns the current context menu type based on current target.
|
715
|
+
*/
|
716
|
+
menuType?: string;
|
717
|
+
}
|
681
718
|
/**
|
682
719
|
* Interface for UploadListCreate event arguments.
|
683
720
|
*/
|
@@ -878,6 +915,7 @@ export interface IFileManager extends Component<HTMLElement> {
|
|
878
915
|
destinationPath: string;
|
879
916
|
enableHtmlSanitizer: boolean;
|
880
917
|
refreshLayout(): void;
|
918
|
+
traverseBackward(): void;
|
881
919
|
isMac: boolean;
|
882
920
|
oldView: string;
|
883
921
|
oldPath: string;
|
@@ -492,6 +492,7 @@ function triggerSearchOperation(parent, data, eventArgs) {
|
|
492
492
|
showHiddenItems: getValue('showHiddenItems', data)
|
493
493
|
};
|
494
494
|
parent.trigger('search', searchEventArgs, function (args) {
|
495
|
+
setValue('data', args.searchResults, data);
|
495
496
|
if (args.cancel) {
|
496
497
|
eventArgs.cancel = true;
|
497
498
|
}
|
@@ -880,6 +880,9 @@ export function pasteHandler(parent) {
|
|
880
880
|
parent.isDragDrop = false;
|
881
881
|
if (parent.selectedNodes.length !== 0 && parent.enablePaste) {
|
882
882
|
var path = (parent.folderPath === '') ? parent.path : parent.folderPath;
|
883
|
+
if (parent.activeModule === 'navigationpane' && !parent.selectedNodes[0].includes('/')) {
|
884
|
+
parent.targetPath = getValue('filterPath', parent.actionRecords[0]).replace(/\\/g, '/');
|
885
|
+
}
|
883
886
|
var subFolder = validateSubFolder(parent, parent.actionRecords, path, parent.path);
|
884
887
|
if (!subFolder) {
|
885
888
|
if ((parent.fileAction === 'move' && parent.targetPath !== path) || parent.fileAction === 'copy') {
|
@@ -80,7 +80,8 @@ var DetailsView = /** @class */ (function () {
|
|
80
80
|
ctrlD: 'ctrl+d',
|
81
81
|
f2: 'f2',
|
82
82
|
ctrlA: 'ctrl+a',
|
83
|
-
enter: 'enter'
|
83
|
+
enter: 'enter',
|
84
|
+
back: 'backspace'
|
84
85
|
};
|
85
86
|
}
|
86
87
|
/* istanbul ignore next */
|
@@ -255,6 +256,10 @@ var DetailsView = /** @class */ (function () {
|
|
255
256
|
for (var i = 0, len = columns.length; i < len; i++) {
|
256
257
|
columns[i].disableHtmlEncode = !this.parent.enableHtmlSanitizer;
|
257
258
|
}
|
259
|
+
if (this.parent.enableRangeSelection) {
|
260
|
+
var HiddenName = { field: 'name', visible: false, customAttributes: { class: 'e-drag-text' } };
|
261
|
+
columns.push(HiddenName);
|
262
|
+
}
|
258
263
|
return columns;
|
259
264
|
};
|
260
265
|
DetailsView.prototype.adjustHeight = function () {
|
@@ -1082,7 +1087,8 @@ var DetailsView = /** @class */ (function () {
|
|
1082
1087
|
DetailsView.prototype.onpasteEnd = function (args) {
|
1083
1088
|
if (this.parent.view === 'Details') {
|
1084
1089
|
this.isPasteOperation = true;
|
1085
|
-
if (this.parent.path === this.parent.destinationPath ||
|
1090
|
+
if (this.parent.path === this.parent.destinationPath ||
|
1091
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
1086
1092
|
this.onPathChanged(args);
|
1087
1093
|
}
|
1088
1094
|
}
|
@@ -1521,6 +1527,9 @@ var DetailsView = /** @class */ (function () {
|
|
1521
1527
|
this.parent.setProperties({ selectedItems: lastItem }, true);
|
1522
1528
|
this.selectRecords(lastItem);
|
1523
1529
|
break;
|
1530
|
+
case 'back':
|
1531
|
+
this.parent.traverseBackward();
|
1532
|
+
break;
|
1524
1533
|
}
|
1525
1534
|
};
|
1526
1535
|
DetailsView.prototype.gridSelectNodes = function () {
|
@@ -120,9 +120,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
120
120
|
}
|
121
121
|
iconsView.classList.remove(CLS.DISPLAY_NONE);
|
122
122
|
if (this.parent.enableVirtualization && this.allItems.length > 0) {
|
123
|
-
if (!this.element.style.height) {
|
124
|
-
this.adjustHeight();
|
125
|
-
}
|
126
123
|
this.parent.virtualizationModule.setUIVirtualization();
|
127
124
|
}
|
128
125
|
this.listElements = ListBase.createListFromJson(createElement, this.items, this.listObj);
|
@@ -160,7 +157,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
160
157
|
for (var i = 0; i < activeEle.length; i++) {
|
161
158
|
activeEle[i].setAttribute('aria-selected', 'true');
|
162
159
|
}
|
163
|
-
this.adjustHeight();
|
164
160
|
this.element.style.maxHeight = '100%';
|
165
161
|
this.getItemCount();
|
166
162
|
this.addEventListener();
|
@@ -267,11 +263,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
267
263
|
LargeIconsView.prototype.getModuleName = function () {
|
268
264
|
return 'largeiconsview';
|
269
265
|
};
|
270
|
-
LargeIconsView.prototype.adjustHeight = function () {
|
271
|
-
var pane = select('#' + this.parent.element.id + CLS.CONTENT_ID, this.parent.element);
|
272
|
-
var bar = select('#' + this.parent.element.id + CLS.BREADCRUMBBAR_ID, this.parent.element);
|
273
|
-
this.element.style.height = (pane.offsetHeight - bar.offsetHeight) + 'px';
|
274
|
-
};
|
275
266
|
LargeIconsView.prototype.onItemCreated = function (args) {
|
276
267
|
args.item.removeAttribute('aria-level');
|
277
268
|
if (!this.parent.showFileExtension && getValue('isFile', args.curData)) {
|
@@ -471,7 +462,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
471
462
|
if (this.parent.view !== 'LargeIcons') {
|
472
463
|
return;
|
473
464
|
}
|
474
|
-
this.adjustHeight();
|
475
465
|
};
|
476
466
|
LargeIconsView.prototype.onUpdateSelectionData = function () {
|
477
467
|
if (this.parent.view !== 'LargeIcons') {
|
@@ -599,7 +589,8 @@ var LargeIconsView = /** @class */ (function () {
|
|
599
589
|
LargeIconsView.prototype.onpasteEnd = function (args) {
|
600
590
|
if (this.parent.view === 'LargeIcons') {
|
601
591
|
this.isPasteOperation = true;
|
602
|
-
if (this.parent.path === this.parent.destinationPath ||
|
592
|
+
if (this.parent.path === this.parent.destinationPath ||
|
593
|
+
this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
|
603
594
|
this.onPathChanged(args);
|
604
595
|
}
|
605
596
|
}
|
@@ -621,9 +612,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
621
612
|
case 'allowDragAndDrop':
|
622
613
|
this.createDragObj();
|
623
614
|
break;
|
624
|
-
case 'height':
|
625
|
-
this.adjustHeight();
|
626
|
-
break;
|
627
615
|
case 'selectedItems':
|
628
616
|
this.isInteraction = false;
|
629
617
|
this.isInteracted = false;
|
@@ -1089,6 +1077,9 @@ var LargeIconsView = /** @class */ (function () {
|
|
1089
1077
|
case 'ctrlD':
|
1090
1078
|
this.doDownload();
|
1091
1079
|
break;
|
1080
|
+
case 'back':
|
1081
|
+
this.parent.traverseBackward();
|
1082
|
+
break;
|
1092
1083
|
}
|
1093
1084
|
};
|
1094
1085
|
LargeIconsView.prototype.doDownload = function () {
|
@@ -1381,9 +1372,6 @@ var LargeIconsView = /** @class */ (function () {
|
|
1381
1372
|
};
|
1382
1373
|
LargeIconsView.prototype.resizeHandler = function () {
|
1383
1374
|
this.getItemCount();
|
1384
|
-
if (!isNOU(this.listObj)) {
|
1385
|
-
this.adjustHeight();
|
1386
|
-
}
|
1387
1375
|
};
|
1388
1376
|
LargeIconsView.prototype.splitterResizeHandler = function () {
|
1389
1377
|
this.getItemCount();
|
@@ -27,7 +27,7 @@ export declare class ContextMenu {
|
|
27
27
|
constructor(parent?: IFileManager);
|
28
28
|
private render;
|
29
29
|
onBeforeItemRender(args: MenuEventArgs): void;
|
30
|
-
onBeforeClose(): void;
|
30
|
+
onBeforeClose(args: BeforeOpenCloseMenuEventArgs): void;
|
31
31
|
onBeforeOpen(args: BeforeOpenCloseMenuEventArgs): void;
|
32
32
|
private updateActiveModule;
|
33
33
|
/**
|
@@ -61,7 +61,23 @@ var ContextMenu = /** @class */ (function () {
|
|
61
61
|
iconSpan.setAttribute('class', CLS.ICON_GRID + ' ' + CLS.MENU_ICON);
|
62
62
|
}
|
63
63
|
};
|
64
|
-
ContextMenu.prototype.onBeforeClose = function () {
|
64
|
+
ContextMenu.prototype.onBeforeClose = function (args) {
|
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
|
+
});
|
65
81
|
this.menuTarget = null;
|
66
82
|
if (!this.isMenuItemClicked && this.parent.pathId.length > 1 && this.parent.activeModule === 'navigationpane') {
|
67
83
|
this.parent.pathId.pop();
|
@@ -398,7 +414,13 @@ var ContextMenu = /** @class */ (function () {
|
|
398
414
|
break;
|
399
415
|
case 'paste':
|
400
416
|
if (_this.menuType === 'folder') {
|
401
|
-
|
417
|
+
if (_this.parent.activeModule === 'navigationpane') {
|
418
|
+
_this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(_this.targetNodeElement, 'li'));
|
419
|
+
_this.parent.folderPath = _this.parent.path;
|
420
|
+
}
|
421
|
+
else {
|
422
|
+
_this.parent.folderPath = getFullPath(_this.parent, _this.menuItemData, _this.parent.path);
|
423
|
+
}
|
402
424
|
}
|
403
425
|
else {
|
404
426
|
_this.parent.folderPath = '';
|