[ACA-2177] Actions - rearrange actions order (#922)

* rearange actions

* remove separator duplication

* don't show last divider element

* update e2e

* update e2e

* Update toolbar-single-selection.test.ts

remove fdescribe

* move comment as well

* edit folder locator

* edit folder action

* edit folder action from toolbar more menu

* edit folder context menu id

* dont render versions tab
This commit is contained in:
Cilibiu Bogdan
2019-02-19 12:26:34 +02:00
committed by Adina Parpalita
parent 4cde12dfee
commit 2fd0ff3825
6 changed files with 199 additions and 159 deletions

View File

@@ -37,7 +37,7 @@ export class Menu extends Component {
submenu: 'app-context-menu-item .mat-menu-item', submenu: 'app-context-menu-item .mat-menu-item',
editFolder: `app.context.menu.editFolder`, editFolder: `.mat-menu-item[id$='editFolder']`,
editOffline: `.mat-menu-item[title='Edit offline']`, editOffline: `.mat-menu-item[title='Edit offline']`,
cancelEditing: `.mat-menu-item[title='Cancel editing']` cancelEditing: `.mat-menu-item[title='Cancel editing']`
}; };
@@ -54,7 +54,7 @@ export class Menu extends Component {
createLibraryAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Create Library')); createLibraryAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Create Library'));
deleteAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Delete')); deleteAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Delete'));
downloadAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Download')); downloadAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Download'));
editFolderAction: ElementFinder = this.component.element(by.id(Menu.selectors.editFolder)); editFolderAction: ElementFinder = this.component.element(by.css(Menu.selectors.editFolder));
editOfflineAction: ElementFinder = this.component.element(by.css(Menu.selectors.editOffline)); editOfflineAction: ElementFinder = this.component.element(by.css(Menu.selectors.editOffline));
favoriteAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Favorite')); favoriteAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Favorite'));
joinAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Join')); joinAction: ElementFinder = this.component.element(by.cssContainingText(Menu.selectors.item, 'Join'));
@@ -196,6 +196,9 @@ export class Menu extends Component {
return this.uploadFiles; return this.uploadFiles;
} }
async clickEditFolder() {
return await this.editFolderAction.click();
}
async clickShare() { async clickShare() {
const action = this.shareAction; const action = this.shareAction;

View File

@@ -111,7 +111,8 @@ describe('Edit folder', () => {
it('dialog UI defaults - [C216331]', async () => { it('dialog UI defaults - [C216331]', async () => {
await dataTable.doubleClickOnRowByName(parent); await dataTable.doubleClickOnRowByName(parent);
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
expect(await editDialog.getTitle()).toEqual('Edit folder'); expect(await editDialog.getTitle()).toEqual('Edit folder');
expect(await editDialog.getName()).toBe(folderName); expect(await editDialog.getName()).toBe(folderName);
@@ -130,7 +131,8 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C216335]', async (done) => { it('properties are modified when pressing OK - [C216335]', async (done) => {
await dataTable.selectItem(folderNameToEdit); await dataTable.selectItem(folderNameToEdit);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited); await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited); await editDialog.enterName(folderNameEdited);
@@ -146,7 +148,8 @@ describe('Edit folder', () => {
it('with empty folder name - [C216332]', async () => { it('with empty folder name - [C216332]', async () => {
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.deleteNameWithBackspace(); await editDialog.deleteNameWithBackspace();
expect(await editDialog.isUpdateButtonEnabled()).toBe(false, 'upload button is not enabled'); expect(await editDialog.isUpdateButtonEnabled()).toBe(false, 'upload button is not enabled');
@@ -157,7 +160,8 @@ describe('Edit folder', () => {
const namesWithSpecialChars = [ 'a*a', 'a"a', 'a<a', 'a>a', `a\\a`, 'a/a', 'a?a', 'a:a', 'a|a' ]; const namesWithSpecialChars = [ 'a*a', 'a"a', 'a<a', 'a>a', `a\\a`, 'a/a', 'a?a', 'a:a', 'a|a' ];
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
for (const name of namesWithSpecialChars) { for (const name of namesWithSpecialChars) {
await editDialog.enterName(name); await editDialog.enterName(name);
@@ -168,7 +172,8 @@ describe('Edit folder', () => {
it('with name ending with a dot - [C216334]', async () => { it('with name ending with a dot - [C216334]', async () => {
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.nameInput.sendKeys('.'); await editDialog.nameInput.sendKeys('.');
@@ -178,7 +183,8 @@ describe('Edit folder', () => {
it('Cancel button - [C216336]', async () => { it('Cancel button - [C216336]', async () => {
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.clickCancel(); await editDialog.clickCancel();
@@ -187,7 +193,8 @@ describe('Edit folder', () => {
it('with duplicate folder name - [C216337]', async () => { it('with duplicate folder name - [C216337]', async () => {
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterName(duplicateFolderName); await editDialog.enterName(duplicateFolderName);
await editDialog.clickUpdate(); await editDialog.clickUpdate();
@@ -198,7 +205,8 @@ describe('Edit folder', () => {
it('trim ending spaces - [C216338]', async () => { it('trim ending spaces - [C216338]', async () => {
await dataTable.selectItem(folderName); await dataTable.selectItem(folderName);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.nameInput.sendKeys(' '); await editDialog.nameInput.sendKeys(' ');
await editDialog.clickUpdate(); await editDialog.clickUpdate();
await editDialog.waitForDialogToClose(); await editDialog.waitForDialogToClose();
@@ -216,7 +224,8 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C280384]', async (done) => { it('properties are modified when pressing OK - [C280384]', async (done) => {
await dataTable.selectItem(folderFavoriteToEdit); await dataTable.selectItem(folderFavoriteToEdit);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited); await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited); await editDialog.enterName(folderNameEdited);
@@ -232,7 +241,8 @@ describe('Edit folder', () => {
it('with duplicate folder name - [C280386]', async () => { it('with duplicate folder name - [C280386]', async () => {
await dataTable.selectItem(folderFavorite); await dataTable.selectItem(folderFavorite);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterName(folderFavoriteDuplicate); await editDialog.enterName(folderFavoriteDuplicate);
await editDialog.clickUpdate(); await editDialog.clickUpdate();
@@ -251,7 +261,8 @@ describe('Edit folder', () => {
it('properties are modified when pressing OK - [C280509]', async (done) => { it('properties are modified when pressing OK - [C280509]', async (done) => {
await dataTable.selectItem(folderSiteToEdit); await dataTable.selectItem(folderSiteToEdit);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterDescription(folderDescriptionEdited); await editDialog.enterDescription(folderDescriptionEdited);
await editDialog.enterName(folderNameEdited); await editDialog.enterName(folderNameEdited);
@@ -267,7 +278,8 @@ describe('Edit folder', () => {
it('with duplicate folder name - [C280511]', async () => { it('with duplicate folder name - [C280511]', async () => {
await dataTable.selectItem(folderSite); await dataTable.selectItem(folderSite);
await toolbar.clickEditFolder(); await toolbar.openMoreMenu();
await toolbar.menu.clickEditFolder();
await editDialog.waitForDialogToOpen(); await editDialog.waitForDialogToOpen();
await editDialog.enterName(duplicateFolderSite); await editDialog.enterName(duplicateFolderSite);
await editDialog.clickUpdate(); await editDialog.clickUpdate();

View File

@@ -392,12 +392,12 @@ describe('Granular permissions available actions : ', () => {
expect(await toolbar.isViewPresent()).toBe(false, `View is not displayed for ${folder1}`); expect(await toolbar.isViewPresent()).toBe(false, `View is not displayed for ${folder1}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`); expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not displayed for ${folder1}`);
expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${folder1}`); expect(await toolbar.isViewDetailsPresent()).toBe(true, `View details is not displayed for ${folder1}`);
// TODO: change expect to false when ACA-1737 is done
expect(await toolbar.isEditFolderPresent()).toBe(true, `Edit folder is displayed for ${folder1}`);
expect(await toolbar.isSharePresent()).toBe(false, `Share is displayed`); expect(await toolbar.isSharePresent()).toBe(false, `Share is displayed`);
await toolbar.openMoreMenu(); await toolbar.openMoreMenu();
// TODO: change expect to false when ACA-1737 is done
expect(await toolbar.menu.isEditFolderPresent()).toBe(true, `Edit folder is displayed for ${folder1}`);
expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folder1}`); expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folder1}`);
expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folder1}`); expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folder1}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`); expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folder1}`);

View File

@@ -182,10 +182,10 @@ describe('Toolbar actions - single selection : ', () => {
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`); expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`); expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`); expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
await toolbar.openMoreMenu(); await toolbar.openMoreMenu();
expect(await toolbar.menu.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`); expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`);
expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`); expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`); expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
@@ -264,10 +264,10 @@ describe('Toolbar actions - single selection : ', () => {
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderInSite}`); expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderInSite}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderInSite}`); expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderInSite}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderInSite}`); expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderInSite}`);
expect(await toolbar.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderInSite}`);
await toolbar.openMoreMenu(); await toolbar.openMoreMenu();
expect(await toolbar.menu.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderInSite}`);
expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderInSite}`); expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderInSite}`);
expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderInSite}`); expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderInSite}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderInSite}`); expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderInSite}`);
@@ -599,10 +599,10 @@ describe('Toolbar actions - single selection : ', () => {
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`); expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`); expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`); expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
await toolbar.openMoreMenu(); await toolbar.openMoreMenu();
expect(await toolbar.menu.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`); expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`);
expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`); expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`); expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);
@@ -725,10 +725,10 @@ describe('Toolbar actions - single selection : ', () => {
expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`); expect(await toolbar.isEmpty()).toBe(false, `actions not displayed for ${folderUser}`);
expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`); expect(await toolbar.isViewPresent()).toBe(false, `View is displayed for ${folderUser}`);
expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`); expect(await toolbar.isDownloadPresent()).toBe(true, `Download is not enabled for ${folderUser}`);
expect(await toolbar.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
await toolbar.openMoreMenu(); await toolbar.openMoreMenu();
expect(await toolbar.menu.isEditFolderPresent()).toBe(true, `Edit folder is not displayed for ${folderUser}`);
expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`); expect(await toolbar.menu.isEditOfflinePresent()).toBe(false, `Edit offline is displayed for ${folderUser}`);
expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`); expect(await toolbar.menu.isCancelEditingPresent()).toBe(false, `Cancel editing is displayed for ${folderUser}`);
expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`); expect(await toolbar.menu.isCopyPresent()).toBe(true, `Copy is not displayed for ${folderUser}`);

View File

@@ -1,6 +1,10 @@
@mixin adf-toolbar-theme($theme) { @mixin adf-toolbar-theme($theme) {
$foreground: map-get($theme, foreground); $foreground: map-get($theme, foreground);
.app-toolbar-menu-item:last-child > .mat-divider-horizontal {
display: none;
}
.adf-viewer { .adf-viewer {
.adf-toolbar { .adf-toolbar {
.mat-toolbar { .mat-toolbar {

View File

@@ -456,18 +456,6 @@
"visible": "app.toolbar.canDownload" "visible": "app.toolbar.canDownload"
} }
}, },
{
"id": "app.toolbar.editFolder",
"order": 250,
"title": "APP.ACTIONS.EDIT",
"icon": "create",
"actions": {
"click": "EDIT_FOLDER"
},
"rules": {
"visible": "app.toolbar.canEditFolder"
}
},
{ {
"id": "app.toolbar.purgeDeletedNodes", "id": "app.toolbar.purgeDeletedNodes",
"order": 400, "order": 400,
@@ -552,11 +540,28 @@
"visible": "app.toolbar.canToggleLock" "visible": "app.toolbar.canToggleLock"
} }
}, },
{
"id": "app.toolbar.uploadNodeVersion",
"order": 200,
"title": "APP.ACTIONS.UPLOAD_VERSION",
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.toolbar.versions"
}
},
{
"id": "app.create.separator.1",
"type": "separator",
"order": 300
},
{ {
"id": "app.toolbar.favorite", "id": "app.toolbar.favorite",
"comment": "workaround for Recent Files and Search API issue", "comment": "workaround for Recent Files and Search API issue",
"type": "custom", "type": "custom",
"order": 200, "order": 400,
"component": "app.toolbar.toggleFavorite", "component": "app.toolbar.toggleFavorite",
"rules": { "rules": {
"visible": "app.toolbar.favorite.canToggle" "visible": "app.toolbar.favorite.canToggle"
@@ -565,7 +570,7 @@
{ {
"id": "app.libraries.toolbar.toggleFavorite", "id": "app.libraries.toolbar.toggleFavorite",
"type": "custom", "type": "custom",
"order": 201, "order": 401,
"component": "app.toolbar.toggleFavoriteLibrary", "component": "app.toolbar.toggleFavoriteLibrary",
"rules": { "rules": {
"visible": "app.libraries.toolbar" "visible": "app.libraries.toolbar"
@@ -573,7 +578,7 @@
}, },
{ {
"id": "app.toolbar.favorite.add", "id": "app.toolbar.favorite.add",
"order": 300, "order": 402,
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"icon": "star_border", "icon": "star_border",
"actions": { "actions": {
@@ -585,7 +590,7 @@
}, },
{ {
"id": "app.toolbar.favorite.remove", "id": "app.toolbar.favorite.remove",
"order": 400, "order": 403,
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"icon": "star", "icon": "star",
"actions": { "actions": {
@@ -595,14 +600,31 @@
"visible": "app.toolbar.favorite.canRemove" "visible": "app.toolbar.favorite.canRemove"
} }
}, },
{
"id": "app.create.separator.2",
"type": "separator",
"order": 450
},
{
"id": "app.toolbar.editFolder",
"order": 450,
"title": "APP.ACTIONS.EDIT",
"icon": "create",
"actions": {
"click": "EDIT_FOLDER"
},
"rules": {
"visible": "app.toolbar.canEditFolder"
}
},
{ {
"id": "app.create.separator.3", "id": "app.create.separator.3",
"type": "separator", "type": "separator",
"order": 3480 "order": 500
}, },
{ {
"id": "app.toolbar.copy", "id": "app.toolbar.copy",
"order": 500, "order": 600,
"title": "APP.ACTIONS.COPY", "title": "APP.ACTIONS.COPY",
"icon": "content_copy", "icon": "content_copy",
"actions": { "actions": {
@@ -614,7 +636,7 @@
}, },
{ {
"id": "app.toolbar.move", "id": "app.toolbar.move",
"order": 600, "order": 700,
"title": "APP.ACTIONS.MOVE", "title": "APP.ACTIONS.MOVE",
"icon": "adf:move_file", "icon": "adf:move_file",
"actions": { "actions": {
@@ -636,38 +658,14 @@
"visible": "app.toolbar.canDelete" "visible": "app.toolbar.canDelete"
} }
}, },
{
"id": "app.toolbar.deleteLibrary",
"order": 900,
"title": "APP.ACTIONS.DELETE",
"icon": "delete",
"actions": {
"click": "DELETE_LIBRARY"
},
"rules": {
"visible": "app.selection.library"
}
},
{ {
"id": "app.create.separator.4", "id": "app.create.separator.4",
"type": "separator", "type": "separator",
"order": 980 "order": 900
},
{
"id": "app.toolbar.uploadNodeVersion",
"order": 1000,
"title": "APP.ACTIONS.UPLOAD_VERSION",
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.selection.file.canUploadVersion"
}
}, },
{ {
"id": "app.toolbar.versions", "id": "app.toolbar.versions",
"order": 1000, "order": 1100,
"title": "APP.ACTIONS.VERSIONS", "title": "APP.ACTIONS.VERSIONS",
"icon": "history", "icon": "history",
"actions": { "actions": {
@@ -679,7 +677,7 @@
}, },
{ {
"id": "app.toolbar.permissions", "id": "app.toolbar.permissions",
"order": 1100, "order": 1200,
"title": "APP.ACTIONS.PERMISSIONS", "title": "APP.ACTIONS.PERMISSIONS",
"icon": "settings_input_component", "icon": "settings_input_component",
"actions": { "actions": {
@@ -688,6 +686,18 @@
"rules": { "rules": {
"visible": "app.toolbar.permissions" "visible": "app.toolbar.permissions"
} }
},
{
"id": "app.toolbar.deleteLibrary",
"order": 100,
"title": "APP.ACTIONS.DELETE",
"icon": "delete",
"actions": {
"click": "DELETE_LIBRARY"
},
"rules": {
"visible": "app.selection.library"
}
} }
] ]
} }
@@ -702,10 +712,27 @@
"visible": "app.toolbar.canToggleLock" "visible": "app.toolbar.canToggleLock"
} }
}, },
{
"id": "app.context.menu.uploadNodeVersion",
"title": "APP.ACTIONS.UPLOAD_VERSION",
"order": 200,
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.toolbar.versions"
}
},
{
"id": "app.create.separator.1",
"type": "separator",
"order": 300
},
{ {
"id": "app.context.menu.share", "id": "app.context.menu.share",
"type": "custom", "type": "custom",
"order": 200, "order": 400,
"component": "app.shared-link.toggleSharedLink", "component": "app.shared-link.toggleSharedLink",
"rules": { "rules": {
"visible": "app.context.canShare" "visible": "app.context.canShare"
@@ -713,7 +740,7 @@
}, },
{ {
"id": "app.context.menu.download", "id": "app.context.menu.download",
"order": 300, "order": 500,
"title": "APP.ACTIONS.DOWNLOAD", "title": "APP.ACTIONS.DOWNLOAD",
"icon": "get_app", "icon": "get_app",
"actions": { "actions": {
@@ -725,7 +752,7 @@
}, },
{ {
"id": "app.context.menu.preview", "id": "app.context.menu.preview",
"order": 400, "order": 600,
"title": "APP.ACTIONS.VIEW", "title": "APP.ACTIONS.VIEW",
"icon": "visibility", "icon": "visibility",
"actions": { "actions": {
@@ -735,22 +762,10 @@
"visible": "app.toolbar.canViewFile" "visible": "app.toolbar.canViewFile"
} }
}, },
{
"id": "app.context.menu.editFolder",
"order": 500,
"title": "APP.ACTIONS.EDIT",
"icon": "create",
"actions": {
"click": "EDIT_FOLDER"
},
"rules": {
"visible": "app.toolbar.canEditFolder"
}
},
{ {
"id": "app.context.menu.favorite.add", "id": "app.context.menu.favorite.add",
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"order": 600, "order": 700,
"icon": "star_border", "icon": "star_border",
"actions": { "actions": {
"click": "ADD_FAVORITE" "click": "ADD_FAVORITE"
@@ -762,7 +777,7 @@
{ {
"id": "app.context.menu.favorite.remove", "id": "app.context.menu.favorite.remove",
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"order": 700, "order": 701,
"icon": "star", "icon": "star",
"actions": { "actions": {
"click": "REMOVE_FAVORITE" "click": "REMOVE_FAVORITE"
@@ -775,7 +790,7 @@
"id": "app.context.menu.favorite", "id": "app.context.menu.favorite",
"comment": "workaround for Recent Files and Search API issue", "comment": "workaround for Recent Files and Search API issue",
"type": "custom", "type": "custom",
"order": 701, "order": 702,
"component": "app.toolbar.toggleFavorite", "component": "app.toolbar.toggleFavorite",
"rules": { "rules": {
"visible": "app.toolbar.favorite.canToggle" "visible": "app.toolbar.favorite.canToggle"
@@ -784,42 +799,33 @@
{ {
"id": "app.context.menu.libraries.toggleFavorite", "id": "app.context.menu.libraries.toggleFavorite",
"type": "custom", "type": "custom",
"order": 702, "order": 703,
"component": "app.toolbar.toggleFavoriteLibrary", "component": "app.toolbar.toggleFavoriteLibrary",
"rules": { "rules": {
"visible": "app.libraries.toolbar" "visible": "app.libraries.toolbar"
} }
}, },
{ {
"id": "app.context.menu.joinLibrary", "id": "app.context.menu.editFolder",
"type": "custom", "order": 800,
"order": 703, "title": "APP.ACTIONS.EDIT",
"component": "app.menu.toggleJoinLibrary", "icon": "create",
"rules": {
"visible": "app.libraries.toolbar.canToggleJoin"
}
},
{
"id": "app.context.menu.leaveLibrary",
"order": 803,
"title": "APP.ACTIONS.LEAVE",
"icon": "exit_to_app",
"actions": { "actions": {
"click": "LEAVE_LIBRARY" "click": "EDIT_FOLDER"
}, },
"rules": { "rules": {
"visible": "app.libraries.toolbar.canLeaveLibrary" "visible": "app.toolbar.canEditFolder"
} }
}, },
{ {
"id": "app.create.separator.5", "id": "app.create.separator.2",
"type": "separator", "type": "separator",
"order": 820 "order": 900
}, },
{ {
"id": "app.context.menu.copy", "id": "app.context.menu.copy",
"title": "APP.ACTIONS.COPY", "title": "APP.ACTIONS.COPY",
"order": 850, "order": 1000,
"icon": "content_copy", "icon": "content_copy",
"actions": { "actions": {
"click": "COPY_NODES" "click": "COPY_NODES"
@@ -831,7 +837,7 @@
{ {
"id": "app.context.menu.move", "id": "app.context.menu.move",
"title": "APP.ACTIONS.MOVE", "title": "APP.ACTIONS.MOVE",
"order": 900, "order": 1100,
"icon": "adf:move_file", "icon": "adf:move_file",
"actions": { "actions": {
"click": "MOVE_NODES" "click": "MOVE_NODES"
@@ -843,7 +849,7 @@
{ {
"id": "app.context.menu.delete", "id": "app.context.menu.delete",
"title": "APP.ACTIONS.DELETE", "title": "APP.ACTIONS.DELETE",
"order": 1000, "order": 1200,
"icon": "delete", "icon": "delete",
"actions": { "actions": {
"click": "DELETE_NODES" "click": "DELETE_NODES"
@@ -853,38 +859,14 @@
} }
}, },
{ {
"id": "app.context.menu.deleteLibrary", "id": "app.create.separator.3",
"order": 1001,
"title": "APP.ACTIONS.DELETE",
"icon": "delete",
"actions": {
"click": "DELETE_LIBRARY"
},
"rules": {
"visible": "app.libraries.toolbar"
}
},
{
"id": "app.create.separator.6",
"type": "separator", "type": "separator",
"order": 1080 "order": 1300
},
{
"id": "app.context.menu.uploadNodeVersion",
"title": "APP.ACTIONS.UPLOAD_VERSION",
"order": 1100,
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.selection.file.canUploadVersion"
}
}, },
{ {
"id": "app.context.menu.versions", "id": "app.context.menu.versions",
"title": "APP.ACTIONS.VERSIONS", "title": "APP.ACTIONS.VERSIONS",
"order": 1100, "order": 1400,
"icon": "history", "icon": "history",
"actions": { "actions": {
"click": "MANAGE_VERSIONS" "click": "MANAGE_VERSIONS"
@@ -897,7 +879,7 @@
"id": "app.context.menu.permissions", "id": "app.context.menu.permissions",
"title": "APP.ACTIONS.PERMISSIONS", "title": "APP.ACTIONS.PERMISSIONS",
"icon": "settings_input_component", "icon": "settings_input_component",
"order": 1200, "order": 1500,
"actions": { "actions": {
"click": "MANAGE_PERMISSIONS" "click": "MANAGE_PERMISSIONS"
}, },
@@ -905,9 +887,42 @@
"visible": "app.toolbar.permissions" "visible": "app.toolbar.permissions"
} }
}, },
{
"id": "app.context.menu.joinLibrary",
"type": "custom",
"order": 100,
"component": "app.menu.toggleJoinLibrary",
"rules": {
"visible": "app.libraries.toolbar.canToggleJoin"
}
},
{
"id": "app.context.menu.leaveLibrary",
"order": 200,
"title": "APP.ACTIONS.LEAVE",
"icon": "exit_to_app",
"actions": {
"click": "LEAVE_LIBRARY"
},
"rules": {
"visible": "app.libraries.toolbar.canLeaveLibrary"
}
},
{
"id": "app.context.menu.deleteLibrary",
"order": 300,
"title": "APP.ACTIONS.DELETE",
"icon": "delete",
"actions": {
"click": "DELETE_LIBRARY"
},
"rules": {
"visible": "app.libraries.toolbar"
}
},
{ {
"id": "app.context.menu.purgeDeletedNodes", "id": "app.context.menu.purgeDeletedNodes",
"order": 1300, "order": 100,
"title": "APP.ACTIONS.DELETE_PERMANENT", "title": "APP.ACTIONS.DELETE_PERMANENT",
"icon": "delete_forever", "icon": "delete_forever",
"actions": { "actions": {
@@ -919,7 +934,7 @@
}, },
{ {
"id": "app.context.menu.restoreDeletedNodes", "id": "app.context.menu.restoreDeletedNodes",
"order": 1400, "order": 200,
"title": "APP.ACTIONS.RESTORE", "title": "APP.ACTIONS.RESTORE",
"icon": "restore", "icon": "restore",
"actions": { "actions": {
@@ -1014,8 +1029,25 @@
} }
}, },
{ {
"id": "app.viewer.favorite.add", "id": "app.toolbar.uploadNodeVersion",
"order": 200, "order": 200,
"title": "APP.ACTIONS.UPLOAD_VERSION",
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.toolbar.versions"
}
},
{
"id": "app.viewer.more.separator.1",
"type": "separator",
"order": 300
},
{
"id": "app.viewer.favorite.add",
"order": 400,
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"icon": "star_border", "icon": "star_border",
"actions": { "actions": {
@@ -1027,7 +1059,7 @@
}, },
{ {
"id": "app.viewer.favorite.remove", "id": "app.viewer.favorite.remove",
"order": 300, "order": 401,
"title": "APP.ACTIONS.FAVORITE", "title": "APP.ACTIONS.FAVORITE",
"icon": "star", "icon": "star",
"actions": { "actions": {
@@ -1041,20 +1073,20 @@
"id": "app.viewer.favorite", "id": "app.viewer.favorite",
"comment": "workaround for Recent Files and Search API issue", "comment": "workaround for Recent Files and Search API issue",
"type": "custom", "type": "custom",
"order": 201, "order": 402,
"component": "app.toolbar.toggleFavorite", "component": "app.toolbar.toggleFavorite",
"rules": { "rules": {
"visible": "app.toolbar.favorite.canToggle" "visible": "app.toolbar.favorite.canToggle"
} }
}, },
{ {
"id": "app.viewer.more.separator.1", "id": "app.viewer.more.separator.2",
"type": "separator", "type": "separator",
"order": 380 "order": 500
}, },
{ {
"id": "app.viewer.copy", "id": "app.viewer.copy",
"order": 400, "order": 600,
"title": "APP.ACTIONS.COPY", "title": "APP.ACTIONS.COPY",
"icon": "content_copy", "icon": "content_copy",
"actions": { "actions": {
@@ -1066,7 +1098,7 @@
}, },
{ {
"id": "app.viewer.move", "id": "app.viewer.move",
"order": 500, "order": 700,
"title": "APP.ACTIONS.MOVE", "title": "APP.ACTIONS.MOVE",
"icon": "adf:move_file", "icon": "adf:move_file",
"actions": { "actions": {
@@ -1078,7 +1110,7 @@
}, },
{ {
"id": "app.viewer.delete", "id": "app.viewer.delete",
"order": 600, "order": 800,
"title": "APP.ACTIONS.DELETE", "title": "APP.ACTIONS.DELETE",
"icon": "delete", "icon": "delete",
"actions": { "actions": {
@@ -1089,25 +1121,14 @@
} }
}, },
{ {
"id": "app.viewer.more.separator.2", "id": "app.viewer.more.separator.3",
"type": "separator", "type": "separator",
"order": 680 "order": 900
},
{
"id": "app.toolbar.uploadNodeVersion",
"order": 700,
"title": "APP.ACTIONS.UPLOAD_VERSION",
"icon": "playlist_add",
"actions": {
"click": "UPLOAD_FILE_VERSION"
},
"rules": {
"visible": "app.selection.file.canUploadVersion"
}
}, },
{ {
"id": "app.viewer.versions", "id": "app.viewer.versions",
"order": 800, "order": 1000,
"title": "APP.ACTIONS.VERSIONS", "title": "APP.ACTIONS.VERSIONS",
"icon": "history", "icon": "history",
"actions": { "actions": {
@@ -1119,7 +1140,7 @@
}, },
{ {
"id": "app.viewer.permissions", "id": "app.viewer.permissions",
"order": 900, "order": 1100,
"title": "APP.ACTIONS.PERMISSIONS", "title": "APP.ACTIONS.PERMISSIONS",
"icon": "settings_input_component", "icon": "settings_input_component",
"actions": { "actions": {