[ACA-2621] Shared link - when dialog is closed focus is not returned to trigger (#1255)

* use custom component action

* adjust component. to render icon and menu action

* pass action data

* update selection after dialog closes

* update mocks
This commit is contained in:
Cilibiu Bogdan
2019-11-22 14:16:23 +02:00
committed by Adina Parpalita
parent 236d80106d
commit f526db9657
5 changed files with 58 additions and 48 deletions

View File

@@ -422,6 +422,9 @@
"id": "app.toolbar.share",
"type": "custom",
"order": 600,
"data": {
"iconButton": true
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
@@ -517,6 +520,9 @@
"id": "item3",
"type": "custom",
"order": 400,
"data": {
"iconButton": false
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
@@ -538,6 +544,9 @@
"id": "item3",
"type": "custom",
"order": 400,
"data": {
"iconButton": false
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
@@ -586,6 +595,9 @@
"id": "app.context.menu.share",
"type": "custom",
"order": 400,
"data": {
"iconButton": false
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
@@ -805,6 +817,9 @@
"id": "app.viewer.share",
"type": "custom",
"order": 300,
"data": {
"iconButton": true
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"

View File

@@ -1,14 +1,30 @@
<ng-container *ngIf="selection$ | async as selection">
<button
mat-menu-item
data-automation-id="share-action-button"
(click)="editSharedNode(selection)"
>
<mat-icon>link</mat-icon>
<ng-container *ngIf="isShared(selection); else not_shared">
<span>{{ 'APP.ACTIONS.SHARE_EDIT' | translate }}</span>
</ng-container>
</button>
<ng-container *ngIf="!data.iconButton">
<button
mat-menu-item
data-automation-id="share-action-button"
(click)="editSharedNode(selection)"
>
<mat-icon>link</mat-icon>
<ng-container *ngIf="isShared(selection); else not_shared">
<span>{{ 'APP.ACTIONS.SHARE_EDIT' | translate }}</span>
</ng-container>
</button>
</ng-container>
<ng-container *ngIf="data.iconButton">
<button
mat-icon-button
data-automation-id="share-action-button"
(click)="editSharedNode(selection)"
[attr.title]="
(isShared(selection) ? 'APP.ACTIONS.SHARE_EDIT' : 'APP.ACTIONS.SHARE')
| translate
"
>
<mat-icon>link</mat-icon>
</button>
</ng-container>
</ng-container>
<ng-template #not_shared>

View File

@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { Component, OnInit } from '@angular/core';
import { Component, OnInit, Input } from '@angular/core';
import { Observable } from 'rxjs';
import { Store } from '@ngrx/store';
import { SelectionState } from '@alfresco/adf-extensions';
@@ -38,6 +38,8 @@ import {
templateUrl: './toggle-shared.component.html'
})
export class ToggleSharedComponent implements OnInit {
@Input() data: any;
selection$: Observable<SelectionState>;
constructor(private store: Store<AppStore>) {}

View File

@@ -214,9 +214,7 @@ export class ContentManagementService {
})
.afterClosed()
.subscribe(deletedSharedLink => {
this.store.dispatch(
new SetSelectedNodesAction([deletedSharedLink || node])
);
this.store.dispatch(new SetSelectedNodesAction([node]));
if (deletedSharedLink) {
this.linksUnshared.next(deletedSharedLink);
}

View File

@@ -197,26 +197,14 @@
},
{
"id": "app.toolbar.share",
"type": "custom",
"order": 100,
"title": "APP.ACTIONS.SHARE",
"icon": "link",
"actions": {
"click": "SHARE_NODE"
"data": {
"iconButton": true
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
}
},
{
"id": "app.toolbar.share.edit",
"order": 101,
"title": "APP.ACTIONS.SHARE_EDIT",
"icon": "link",
"actions": {
"click": "SHARE_NODE"
},
"rules": {
"visible": "app.selection.file.isShared"
"visible": "canToggleSharedLink"
}
},
{
@@ -486,6 +474,9 @@
"id": "app.context.menu.share",
"type": "custom",
"order": 100,
"data": {
"iconButton": false
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "canToggleSharedLink"
@@ -747,26 +738,14 @@
},
{
"id": "app.viewer.share",
"type": "custom",
"order": 200,
"title": "APP.ACTIONS.SHARE",
"icon": "link",
"actions": {
"click": "SHARE_NODE"
"data": {
"iconButton": true
},
"component": "app.shared-link.toggleSharedLink",
"rules": {
"visible": "app.selection.file.canShare"
}
},
{
"id": "app.viewer.share.edit",
"order": 250,
"title": "APP.ACTIONS.SHARE_EDIT",
"icon": "link",
"actions": {
"click": "SHARE_NODE"
},
"rules": {
"visible": "app.selection.file.isShared"
"visible": "canToggleSharedLink"
}
},
{