@syncfusion/ej2-filemanager 26.2.10 → 26.2.11

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,6 +1,6 @@
1
1
  /*!
2
2
  * filename: index.d.ts
3
- * version : 26.2.10
3
+ * version : 26.2.11
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@26.2.7",
3
+ "_id": "@syncfusion/ej2-filemanager@26.2.10",
4
4
  "_inBundle": false,
5
- "_integrity": "sha512-WBLVyIiVrlyLJO0YbLcMYkHc+eJvQSwHeUsr5JWhapUTSo3L0u5Z6Mb0K3BV5q7X6VesEExXXqYXH+OKL4FUaw==",
5
+ "_integrity": "sha512-oiNkHvO8aEgTFU9PVi+t/aw3isJHPEDUoClk68yJ0zSfEnv6tawYHEAVYfQItpmRGvEGLI43gLdn6ePdoeSdiA==",
6
6
  "_location": "/@syncfusion/ej2-filemanager",
7
7
  "_phantomChildren": {},
8
8
  "_requested": {
@@ -24,8 +24,8 @@
24
24
  "/@syncfusion/ej2-richtexteditor",
25
25
  "/@syncfusion/ej2-vue-filemanager"
26
26
  ],
27
- "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-filemanager/-/ej2-filemanager-26.2.7.tgz",
28
- "_shasum": "823145120e2b236a4907d250a101ac8e1da431f6",
27
+ "_resolved": "https://nexus.syncfusioninternal.com/repository/ej2-hotfix-new/@syncfusion/ej2-filemanager/-/ej2-filemanager-26.2.10.tgz",
28
+ "_shasum": "304c8eee30929973f64d0924c1f8bb67ba8b5db9",
29
29
  "_spec": "@syncfusion/ej2-filemanager@*",
30
30
  "_where": "/jenkins/workspace/elease-automation_release_26.1.1/packages/included",
31
31
  "author": {
@@ -39,12 +39,12 @@
39
39
  "@syncfusion/ej2-base": "~26.2.10",
40
40
  "@syncfusion/ej2-buttons": "~26.2.10",
41
41
  "@syncfusion/ej2-data": "~26.2.10",
42
- "@syncfusion/ej2-grids": "~26.2.10",
43
- "@syncfusion/ej2-inputs": "~26.2.10",
42
+ "@syncfusion/ej2-grids": "~26.2.11",
43
+ "@syncfusion/ej2-inputs": "~26.2.11",
44
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",
45
+ "@syncfusion/ej2-lists": "~26.2.11",
46
+ "@syncfusion/ej2-navigations": "~26.2.11",
47
+ "@syncfusion/ej2-popups": "~26.2.11",
48
48
  "@syncfusion/ej2-splitbuttons": "~26.2.10"
49
49
  },
50
50
  "deprecated": false,
@@ -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": "26.2.10",
78
+ "version": "26.2.11",
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 } 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') {
@@ -1082,7 +1082,7 @@ var DetailsView = /** @class */ (function () {
1082
1082
  DetailsView.prototype.onpasteEnd = function (args) {
1083
1083
  if (this.parent.view === 'Details') {
1084
1084
  this.isPasteOperation = true;
1085
- if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args)) {
1085
+ if (this.parent.path === this.parent.destinationPath || this.parent.path === getDirectoryPath(this.parent, args) || this.parent.hasId) {
1086
1086
  this.onPathChanged(args);
1087
1087
  }
1088
1088
  }
@@ -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
  }
@@ -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 {