@syncfusion/ej2-filemanager 26.2.10 → 26.2.11-21788

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.
@@ -1,12 +1,3 @@
1
- /*!
2
- * filename: index.d.ts
3
- * version : 26.2.10
4
- * Copyright Syncfusion Inc. 2001 - 2023. All rights reserved.
5
- * Use of this code is subject to the terms of our license.
6
- * A copy of the current license can be obtained at any time by e-mailing
7
- * licensing@syncfusion.com. Any infringement will be prosecuted under
8
- * applicable laws.
9
- */
10
1
  import * as _filemanager from '@syncfusion/ej2-filemanager';
11
2
 
12
3
  export declare namespace ej {
package/package.json CHANGED
@@ -1,80 +1,80 @@
1
1
  {
2
- "_from": "@syncfusion/ej2-filemanager@*",
3
- "_id": "@syncfusion/ej2-filemanager@26.2.7",
4
- "_inBundle": false,
5
- "_integrity": "sha512-WBLVyIiVrlyLJO0YbLcMYkHc+eJvQSwHeUsr5JWhapUTSo3L0u5Z6Mb0K3BV5q7X6VesEExXXqYXH+OKL4FUaw==",
6
- "_location": "/@syncfusion/ej2-filemanager",
7
- "_phantomChildren": {},
8
- "_requested": {
9
- "type": "range",
10
- "registry": true,
11
- "raw": "@syncfusion/ej2-filemanager@*",
12
- "name": "@syncfusion/ej2-filemanager",
13
- "escapedName": "@syncfusion%2fej2-filemanager",
14
- "scope": "@syncfusion",
15
- "rawSpec": "*",
16
- "saveSpec": null,
17
- "fetchSpec": "*"
18
- },
19
- "_requiredBy": [
20
- "/",
21
- "/@syncfusion/ej2",
22
- "/@syncfusion/ej2-angular-filemanager",
23
- "/@syncfusion/ej2-react-filemanager",
24
- "/@syncfusion/ej2-richtexteditor",
25
- "/@syncfusion/ej2-vue-filemanager"
26
- ],
27
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-filemanager/-/ej2-filemanager-26.2.7.tgz",
28
- "_shasum": "823145120e2b236a4907d250a101ac8e1da431f6",
29
- "_spec": "@syncfusion/ej2-filemanager@*",
30
- "_where": "/jenkins/workspace/elease-automation_release_26.1.1/packages/included",
31
- "author": {
32
- "name": "Syncfusion Inc."
33
- },
34
- "bugs": {
35
- "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/issues"
36
- },
37
- "bundleDependencies": false,
38
- "dependencies": {
39
- "@syncfusion/ej2-base": "~26.2.10",
40
- "@syncfusion/ej2-buttons": "~26.2.10",
41
- "@syncfusion/ej2-data": "~26.2.10",
42
- "@syncfusion/ej2-grids": "~26.2.10",
43
- "@syncfusion/ej2-inputs": "~26.2.10",
44
- "@syncfusion/ej2-layouts": "~26.2.10",
45
- "@syncfusion/ej2-lists": "~26.2.10",
46
- "@syncfusion/ej2-navigations": "~26.2.10",
47
- "@syncfusion/ej2-popups": "~26.2.10",
48
- "@syncfusion/ej2-splitbuttons": "~26.2.10"
49
- },
50
- "deprecated": false,
51
- "description": "Essential JS 2 FileManager Component",
52
- "devDependencies": {},
53
- "es2015": "./dist/es6/ej2-filemanager.es5.js",
54
- "homepage": "https://www.syncfusion.com/javascript-ui-controls",
55
- "keywords": [
56
- "ej2",
57
- "syncfusion",
58
- "JavaScript",
59
- "TypeScript",
60
- "filemanager",
61
- "file organizer",
62
- "file organizing tool",
63
- "file picker",
64
- "file viewer",
65
- "file browser",
66
- "file selector",
67
- "directory viewer"
68
- ],
69
- "license": "SEE LICENSE IN license",
70
- "main": "./dist/ej2-filemanager.umd.min.js",
71
- "module": "./index.js",
72
- "name": "@syncfusion/ej2-filemanager",
73
- "repository": {
74
- "type": "git",
75
- "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
76
- },
77
- "typings": "index.d.ts",
78
- "version": "26.2.10",
79
- "sideEffects": false
80
- }
2
+ "_from": "@syncfusion/ej2-filemanager@*",
3
+ "_id": "@syncfusion/ej2-filemanager@26.2.10",
4
+ "_inBundle": false,
5
+ "_integrity": "sha512-oiNkHvO8aEgTFU9PVi+t/aw3isJHPEDUoClk68yJ0zSfEnv6tawYHEAVYfQItpmRGvEGLI43gLdn6ePdoeSdiA==",
6
+ "_location": "/@syncfusion/ej2-filemanager",
7
+ "_phantomChildren": {},
8
+ "_requested": {
9
+ "type": "range",
10
+ "registry": true,
11
+ "raw": "@syncfusion/ej2-filemanager@*",
12
+ "name": "@syncfusion/ej2-filemanager",
13
+ "escapedName": "@syncfusion%2fej2-filemanager",
14
+ "scope": "@syncfusion",
15
+ "rawSpec": "*",
16
+ "saveSpec": null,
17
+ "fetchSpec": "*"
18
+ },
19
+ "_requiredBy": [
20
+ "/",
21
+ "/@syncfusion/ej2",
22
+ "/@syncfusion/ej2-angular-filemanager",
23
+ "/@syncfusion/ej2-react-filemanager",
24
+ "/@syncfusion/ej2-richtexteditor",
25
+ "/@syncfusion/ej2-vue-filemanager"
26
+ ],
27
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-filemanager/-/ej2-filemanager-26.2.10.tgz",
28
+ "_shasum": "304c8eee30929973f64d0924c1f8bb67ba8b5db9",
29
+ "_spec": "@syncfusion/ej2-filemanager@*",
30
+ "_where": "/jenkins/workspace/elease-automation_release_26.1.1/packages/included",
31
+ "author": {
32
+ "name": "Syncfusion Inc."
33
+ },
34
+ "bugs": {
35
+ "url": "https://github.com/syncfusion/ej2-javascript-ui-controls/issues"
36
+ },
37
+ "bundleDependencies": false,
38
+ "dependencies": {
39
+ "@syncfusion/ej2-base": "~26.2.10",
40
+ "@syncfusion/ej2-buttons": "~26.2.10",
41
+ "@syncfusion/ej2-data": "~26.2.10",
42
+ "@syncfusion/ej2-grids": "~26.2.11",
43
+ "@syncfusion/ej2-inputs": "~26.2.11",
44
+ "@syncfusion/ej2-layouts": "~26.2.10",
45
+ "@syncfusion/ej2-lists": "~26.2.11",
46
+ "@syncfusion/ej2-navigations": "~26.2.11",
47
+ "@syncfusion/ej2-popups": "~26.2.11",
48
+ "@syncfusion/ej2-splitbuttons": "~26.2.10"
49
+ },
50
+ "deprecated": false,
51
+ "description": "Essential JS 2 FileManager Component",
52
+ "devDependencies": {},
53
+ "es2015": "./dist/es6/ej2-filemanager.es5.js",
54
+ "homepage": "https://www.syncfusion.com/javascript-ui-controls",
55
+ "keywords": [
56
+ "ej2",
57
+ "syncfusion",
58
+ "JavaScript",
59
+ "TypeScript",
60
+ "filemanager",
61
+ "file organizer",
62
+ "file organizing tool",
63
+ "file picker",
64
+ "file viewer",
65
+ "file browser",
66
+ "file selector",
67
+ "directory viewer"
68
+ ],
69
+ "license": "SEE LICENSE IN license",
70
+ "main": "./dist/ej2-filemanager.umd.min.js",
71
+ "module": "./index.js",
72
+ "name": "@syncfusion/ej2-filemanager",
73
+ "repository": {
74
+ "type": "git",
75
+ "url": "git+https://github.com/syncfusion/ej2-javascript-ui-controls.git"
76
+ },
77
+ "typings": "index.d.ts",
78
+ "version": "26.2.11-21788",
79
+ "sideEffects": false
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 } 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
  /**
@@ -451,6 +451,13 @@ export interface FileManagerModel extends ComponentModel{
451
451
  */
452
452
  menuOpen?: EmitType<MenuOpenEventArgs>;
453
453
 
454
+ /**
455
+ * Triggers before the context menu is closed.
456
+ *
457
+ * @event menuClose
458
+ */
459
+ menuClose?: EmitType<MenuCloseEventArgs>;
460
+
454
461
  /**
455
462
  * Triggers when the AJAX request is failed.
456
463
  *
@@ -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';
@@ -545,6 +545,12 @@ export declare class FileManager extends Component<HTMLElement> implements INoti
545
545
  * @event menuOpen
546
546
  */
547
547
  menuOpen: EmitType<MenuOpenEventArgs>;
548
+ /**
549
+ * Triggers before the context menu is closed.
550
+ *
551
+ * @event menuClose
552
+ */
553
+ menuClose: EmitType<MenuCloseEventArgs>;
548
554
  /**
549
555
  * Triggers when the AJAX request is failed.
550
556
  *
@@ -1313,6 +1313,9 @@ var FileManager = /** @class */ (function (_super) {
1313
1313
  __decorate([
1314
1314
  Event()
1315
1315
  ], FileManager.prototype, "menuOpen", void 0);
1316
+ __decorate([
1317
+ Event()
1318
+ ], FileManager.prototype, "menuClose", void 0);
1316
1319
  __decorate([
1317
1320
  Event()
1318
1321
  ], 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
  */
@@ -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') {
@@ -1033,10 +1033,7 @@ var DetailsView = /** @class */ (function () {
1033
1033
  DetailsView.prototype.createDragObj = function () {
1034
1034
  var _this = this;
1035
1035
  if (this.gridObj) {
1036
- if (this.parent.allowDragAndDrop) {
1037
- if (this.dragObj) {
1038
- this.dragObj.destroy();
1039
- }
1036
+ if (this.parent.allowDragAndDrop && isNullOrUndefined(this.dragObj)) {
1040
1037
  this.dragObj = new Draggable(this.gridObj.element, {
1041
1038
  cursorAt: this.parent.dragCursorPosition,
1042
1039
  distance: 5,
@@ -1054,6 +1051,7 @@ var DetailsView = /** @class */ (function () {
1054
1051
  }
1055
1052
  else if (!this.parent.allowDragAndDrop && this.dragObj) {
1056
1053
  this.dragObj.destroy();
1054
+ this.dragObj = null;
1057
1055
  }
1058
1056
  }
1059
1057
  };
@@ -1082,7 +1080,7 @@ var DetailsView = /** @class */ (function () {
1082
1080
  DetailsView.prototype.onpasteEnd = function (args) {
1083
1081
  if (this.parent.view === 'Details') {
1084
1082
  this.isPasteOperation = true;
1085
- if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args)) {
1083
+ if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
1086
1084
  this.onPathChanged(args);
1087
1085
  }
1088
1086
  }
@@ -599,7 +599,7 @@ var LargeIconsView = /** @class */ (function () {
599
599
  LargeIconsView.prototype.onpasteEnd = function (args) {
600
600
  if (this.parent.view === 'LargeIcons') {
601
601
  this.isPasteOperation = true;
602
- if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args)) {
602
+ if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
603
603
  this.onPathChanged(args);
604
604
  }
605
605
  }
@@ -93,10 +93,7 @@ var NavigationPane = /** @class */ (function () {
93
93
  NavigationPane.prototype.addDragDrop = function () {
94
94
  var _this = this;
95
95
  if (!this.parent.isMobile && this.treeObj) {
96
- if (this.parent.allowDragAndDrop) {
97
- if (this.dragObj) {
98
- this.dragObj.destroy();
99
- }
96
+ if (this.parent.allowDragAndDrop && isNOU(this.dragObj)) {
100
97
  this.dragObj = new Draggable(this.treeObj.element, {
101
98
  cursorAt: this.parent.dragCursorPosition,
102
99
  dragTarget: '.' + CLS.FULLROW,
@@ -114,6 +111,7 @@ var NavigationPane = /** @class */ (function () {
114
111
  }
115
112
  else if (!this.parent.allowDragAndDrop && this.dragObj) {
116
113
  this.dragObj.destroy();
114
+ this.dragObj = null;
117
115
  }
118
116
  }
119
117
  };
@@ -623,7 +621,7 @@ var NavigationPane = /** @class */ (function () {
623
621
  };
624
622
  /* istanbul ignore next */
625
623
  NavigationPane.prototype.checkDropPath = function (args) {
626
- if (isFileSystemData(this.parent) && this.parent.path === this.parent.dropPath || this.parent.targetModule === 'navigationpane') {
624
+ if (isFileSystemData(this.parent) && (this.parent.path === this.parent.dropPath || this.parent.targetModule === 'navigationpane')) {
627
625
  return;
628
626
  }
629
627
  if (this.parent.hasId) {
@@ -147,7 +147,7 @@ export interface ColumnModel {
147
147
  /**
148
148
  * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.
149
149
  *
150
-
150
+ * @deprecated
151
151
  * @default false
152
152
  */
153
153
  isPrimaryKey?: boolean;
@@ -172,7 +172,7 @@ export declare class Column extends ChildProperty<Column> {
172
172
  /**
173
173
  * If `isPrimaryKey` is set to true, considers this column as the primary key constraint.
174
174
  *
175
-
175
+ * @deprecated
176
176
  * @default false
177
177
  */
178
178
  isPrimaryKey: boolean;
@@ -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,6 +414,9 @@ var ContextMenu = /** @class */ (function () {
398
414
  break;
399
415
  case 'paste':
400
416
  if (_this.menuType === 'folder') {
417
+ if (_this.parent.activeModule === 'navigationpane') {
418
+ _this.parent.navigationpaneModule.openFileOnContextMenuClick(closest(_this.targetNodeElement, 'li'));
419
+ }
401
420
  _this.parent.folderPath = getFullPath(_this.parent, _this.menuItemData, _this.parent.path);
402
421
  }
403
422
  else {
@@ -1,4 +1,4 @@
1
-
1
+ @import 'ej2-base/styles/definition/material3-dark.scss';
2
2
 
3
3
  @import 'ej2-inputs/styles/input/material3-dark-definition.scss';
4
4
  @import 'ej2-inputs/styles/textbox/material3-dark-definition.scss';
@@ -1,4 +1,4 @@
1
-
1
+ @import 'ej2-base/styles/definition/material3.scss';
2
2
 
3
3
  @import 'ej2-inputs/styles/input/material3-definition.scss';
4
4
  @import 'ej2-inputs/styles/textbox/material3-definition.scss';
@@ -1,5 +1,5 @@
1
1
 
2
-
2
+ @import 'ej2-base/styles/definition/material3-dark.scss';
3
3
 
4
4
  @import 'ej2-inputs/styles/input/material3-dark-definition.scss';
5
5
  @import 'ej2-inputs/styles/textbox/material3-dark-definition.scss';
@@ -1,5 +1,5 @@
1
1
 
2
-
2
+ @import 'ej2-base/styles/definition/material3.scss';
3
3
 
4
4
  @import 'ej2-inputs/styles/input/material3-definition.scss';
5
5
  @import 'ej2-inputs/styles/textbox/material3-definition.scss';