Merge branch 'development' of https://github.com/Alfresco/alfresco-content-app into dev-pionnegru-ACA-2623

This commit is contained in:
pionnegru
2019-12-02 08:40:56 +02:00
75 changed files with 974 additions and 522 deletions
+8 -1
View File
@@ -73,6 +73,10 @@ import { AppSearchResultsModule } from './components/search/search-results.modul
import { AppLoginModule } from './components/login/login.module';
import { AppHeaderModule } from './components/header/header.module';
import { AppNodeVersionModule } from './components/node-version/node-version.module';
import { FavoritesComponent } from './components/favorites/favorites.component';
import { RecentFilesComponent } from './components/recent-files/recent-files.component';
import { SharedFilesComponent } from './components/shared-files/shared-files.component';
import { environment } from '../environments/environment';
import { registerLocaleData } from '@angular/common';
@@ -151,7 +155,10 @@ registerLocaleData(localeSv);
LibrariesComponent,
FavoriteLibrariesComponent,
NodeVersionUploadDialogComponent,
NodeVersionsDialogComponent
NodeVersionsDialogComponent,
FavoritesComponent,
RecentFilesComponent,
SharedFilesComponent
],
providers: [
{ provide: RouteReuseStrategy, useClass: AppRouteReuseStrategy },
+87 -6
View File
@@ -36,6 +36,9 @@ import {
GenericErrorComponent
} from '@alfresco/aca-shared';
import { AuthGuardEcm, AuthGuard } from '@alfresco/adf-core';
import { FavoritesComponent } from './components/favorites/favorites.component';
import { RecentFilesComponent } from './components/recent-files/recent-files.component';
import { SharedFilesComponent } from './components/shared-files/shared-files.component';
export const APP_ROUTES: Routes = [
{
@@ -92,6 +95,14 @@ export const APP_ROUTES: Routes = [
defaultNodeId: '-my-'
}
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'personal-files'
}
},
{
path: 'view/:nodeId',
outlet: 'viewer',
@@ -119,6 +130,22 @@ export const APP_ROUTES: Routes = [
sortingPreferenceKey: 'personal-files'
}
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'personal-files'
}
},
// deprecated, backwards compatibility with ACA 1.8
{
path: ':folderId/preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'personal-files'
}
},
{
path: 'view/:nodeId',
outlet: 'viewer',
@@ -159,6 +186,14 @@ export const APP_ROUTES: Routes = [
sortingPreferenceKey: 'libraries-files'
}
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'libraries'
}
},
{
path: 'view/:nodeId',
outlet: 'viewer',
@@ -196,8 +231,21 @@ export const APP_ROUTES: Routes = [
children: [
{
path: '',
loadChildren:
'./components/favorites/favorites.module#AppFavoritesModule'
component: FavoritesComponent,
data: {
title: 'APP.BROWSE.FAVORITES.TITLE',
sortingPreferenceKey: 'favorites'
}
// loadChildren:
// './components/favorites/favorites.module#AppFavoritesModule'
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'favorites'
}
},
{
path: 'view/:nodeId',
@@ -223,8 +271,20 @@ export const APP_ROUTES: Routes = [
children: [
{
path: '',
loadChildren:
'./components/recent-files/recent-files.module#AppRecentFilesModule'
component: RecentFilesComponent,
data: {
title: 'APP.BROWSE.RECENT.TITLE'
}
// loadChildren:
// './components/recent-files/recent-files.module#AppRecentFilesModule'
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'recent-files'
}
},
{
path: 'view/:nodeId',
@@ -247,8 +307,21 @@ export const APP_ROUTES: Routes = [
children: [
{
path: '',
loadChildren:
'./components/shared-files/shared-files.module#AppSharedFilesModule'
data: {
title: 'APP.BROWSE.SHARED.TITLE',
sortingPreferenceKey: 'shared-files'
},
component: SharedFilesComponent
// loadChildren:
// './components/shared-files/shared-files.module#AppSharedFilesModule'
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'shared'
}
},
{
path: 'view/:nodeId',
@@ -286,6 +359,14 @@ export const APP_ROUTES: Routes = [
title: 'APP.BROWSE.SEARCH.TITLE'
}
},
// deprecated, backwards compatibility with ACA 1.8
{
path: 'preview/:nodeId',
loadChildren: './components/preview/preview.module#PreviewModule',
data: {
navigateSource: 'search'
}
},
{
path: 'view/:nodeId',
outlet: 'viewer',
@@ -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>
@@ -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>) {}
@@ -28,10 +28,9 @@ import { Overlay } from '@angular/cdk/overlay';
import { Injector } from '@angular/core';
import { Store } from '@ngrx/store';
import { of } from 'rxjs';
import { CoreModule } from '@alfresco/adf-core';
import { CoreModule, UserPreferencesService } from '@alfresco/adf-core';
import { ContextMenuService } from './context-menu.service';
import { ContextMenuModule } from './context-menu.module';
import { UserPreferencesService } from '@alfresco/adf-core';
describe('ContextMenuService', () => {
let contextMenuService;
@@ -25,13 +25,13 @@
import { TestBed, ComponentFixture } from '@angular/core/testing';
import { NO_ERRORS_SCHEMA } from '@angular/core';
import { UserPreferencesService } from '@alfresco/adf-core';
import { Router } from '@angular/router';
import {
AlfrescoApiService,
NodeFavoriteDirective,
DataTableComponent,
AppConfigPipe
AppConfigPipe,
UserPreferencesService
} from '@alfresco/adf-core';
import { DocumentListComponent } from '@alfresco/adf-content-services';
import { FavoriteLibrariesComponent } from './favorite-libraries.component';
@@ -1,66 +0,0 @@
/*!
* @license
* Alfresco Example Content Application
*
* Copyright (C) 2005 - 2019 Alfresco Software Limited
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { NgModule } from '@angular/core';
import { FavoritesComponent } from './favorites.component';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { RouterModule, Routes } from '@angular/router';
import { ContentModule } from '@alfresco/adf-content-services';
import { DirectivesModule } from '../../directives/directives.module';
import { AppCommonModule } from '../common/common.module';
import { AppToolbarModule } from '../toolbar/toolbar.module';
import { ContextMenuModule } from '../context-menu/context-menu.module';
import { AppInfoDrawerModule } from '../info-drawer/info.drawer.module';
import { AppLayoutModule } from '../layout/layout.module';
const routes: Routes = [
{
path: '',
component: FavoritesComponent,
data: {
title: 'APP.BROWSE.FAVORITES.TITLE',
sortingPreferenceKey: 'favorites'
}
}
];
@NgModule({
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes),
ContentModule.forChild(),
DirectivesModule,
AppCommonModule,
AppToolbarModule,
ContextMenuModule,
AppInfoDrawerModule,
AppLayoutModule
],
declarations: [FavoritesComponent],
exports: [FavoritesComponent]
})
export class AppFavoritesModule {}
+10 -5
View File
@@ -35,11 +35,14 @@ import {
} from '@alfresco/js-api';
import { ContentManagementService } from '../../services/content-management.service';
import { NodeActionsService } from '../../services/node-actions.service';
import { AppStore } from '@alfresco/aca-shared/store';
import { PageComponent } from '../page.component';
import { ContentApiService } from '@alfresco/aca-shared';
import { AppExtensionService } from '../../extensions/extension.service';
import { SetCurrentFolderAction, isAdmin } from '@alfresco/aca-shared/store';
import {
SetCurrentFolderAction,
isAdmin,
AppStore
} from '@alfresco/aca-shared/store';
import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';
import { debounceTime, takeUntil } from 'rxjs/operators';
import { ShareDataRow } from '@alfresco/adf-content-services';
@@ -51,6 +54,7 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
isValidPath = true;
isSmallScreen = false;
isAdmin = false;
selectedNode: MinimalNodeEntity;
private nodePath: PathElement[];
@@ -144,6 +148,7 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
navigateTo(node: MinimalNodeEntity) {
if (node && node.entry) {
this.selectedNode = node;
const { id, isFolder } = node.entry;
if (isFolder) {
@@ -173,7 +178,7 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
// check root and child nodes
if (node && node.entry && node.entry.parentId === this.getParentNodeId()) {
this.reload();
this.reload(this.selectedNode);
return;
}
@@ -211,7 +216,7 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
if (alreadyDisplayedParentFolder) {
return;
}
this.reload();
this.reload(this.selectedNode);
}
onContentCopied(nodes: MinimalNodeEntity[]) {
@@ -221,7 +226,7 @@ export class FilesComponent extends PageComponent implements OnInit, OnDestroy {
);
});
if (newNode) {
this.reload();
this.reload(this.selectedNode);
}
}
@@ -88,18 +88,6 @@ describe('InfoDrawerComponent', () => {
);
});
it('should set displayNode when node is from personal list', () => {
spyOn(contentApiService, 'getNodeInfo');
const nodeMock = <any>{ entry: { id: 'nodeId', aspectNames: [] } };
component.node = nodeMock;
fixture.detectChanges();
component.ngOnChanges();
expect(component.displayNode).toBe(nodeMock.entry);
expect(contentApiService.getNodeInfo).not.toHaveBeenCalled();
});
it('should set displayNode when node is library', async(() => {
spyOn(contentApiService, 'getNodeInfo');
const nodeMock = <any>{
@@ -88,12 +88,8 @@ export class InfoDrawerComponent implements OnChanges, OnInit, OnDestroy {
const entry: any = this.node.entry;
if (!entry.aspectNames) {
const id = entry.nodeId || entry.id;
return this.loadNodeInfo(id);
}
this.setDisplayNode(entry);
const id = entry.nodeId || entry.id;
return this.loadNodeInfo(id);
}
}
@@ -29,10 +29,13 @@ import { AppConfigService, UserPreferencesService } from '@alfresco/adf-core';
import { AppLayoutComponent } from './app-layout.component';
import { AppTestingModule } from '../../../testing/app-testing.module';
import { Store } from '@ngrx/store';
import { AppStore, SetSelectedNodesAction } from '@alfresco/aca-shared/store';
import {
AppStore,
SetSelectedNodesAction,
ResetSelectionAction
} from '@alfresco/aca-shared/store';
import { Router, NavigationStart } from '@angular/router';
import { Subject } from 'rxjs';
import { ResetSelectionAction } from '@alfresco/aca-shared/store';
class MockRouter {
private url = 'some-url';
+6 -2
View File
@@ -44,7 +44,8 @@ import {
isInfoDrawerOpened,
getSharedUrl,
ViewNodeAction,
ViewNodeExtras
ViewNodeExtras,
SetSelectedNodesAction
} from '@alfresco/aca-shared/store';
import { isLocked, isLibrary } from '../utils/node.utils';
@@ -131,8 +132,11 @@ export abstract class PageComponent implements OnInit, OnDestroy {
return null;
}
reload(): void {
reload(selectedNode?: MinimalNodeEntity): void {
this.store.dispatch(new ReloadDocumentListAction());
if (selectedNode) {
this.store.dispatch(new SetSelectedNodesAction([selectedNode]));
}
}
trackByActionId(_: number, action: ContentActionRef) {
@@ -49,9 +49,9 @@ import { Store } from '@ngrx/store';
import {
AppStore,
ClosePreviewAction,
ViewerActionTypes
ViewerActionTypes,
SetSelectedNodesAction
} from '@alfresco/aca-shared/store';
import { SetSelectedNodesAction } from '@alfresco/aca-shared/store';
import { PageComponent } from '../page.component';
import { ContentApiService } from '@alfresco/aca-shared';
import { AppExtensionService } from '../../extensions/extension.service';
@@ -1,65 +0,0 @@
/*!
* @license
* Alfresco Example Content Application
*
* Copyright (C) 2005 - 2019 Alfresco Software Limited
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { RouterModule, Routes } from '@angular/router';
import { ContentModule } from '@alfresco/adf-content-services';
import { DirectivesModule } from '../../directives/directives.module';
import { AppCommonModule } from '../common/common.module';
import { AppToolbarModule } from '../toolbar/toolbar.module';
import { ContextMenuModule } from '../context-menu/context-menu.module';
import { RecentFilesComponent } from './recent-files.component';
import { AppInfoDrawerModule } from '../info-drawer/info.drawer.module';
import { AppLayoutModule } from '../layout/layout.module';
const routes: Routes = [
{
path: '',
component: RecentFilesComponent,
data: {
title: 'APP.BROWSE.RECENT.TITLE'
}
}
];
@NgModule({
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes),
ContentModule.forChild(),
DirectivesModule,
AppCommonModule,
AppToolbarModule,
ContextMenuModule,
AppInfoDrawerModule,
AppLayoutModule
],
declarations: [RecentFilesComponent],
exports: [RecentFilesComponent]
})
export class AppRecentFilesModule {}
@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { NavigateLibraryAction } from '@alfresco/aca-shared/store';
import { NavigateLibraryAction, AppStore } from '@alfresco/aca-shared/store';
import { NodePaging, Pagination, SiteEntry } from '@alfresco/js-api';
import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';
import { Component, OnInit } from '@angular/core';
@@ -31,7 +31,6 @@ import { ActivatedRoute, Params } from '@angular/router';
import { Store } from '@ngrx/store';
import { AppExtensionService } from '../../../extensions/extension.service';
import { ContentManagementService } from '../../../services/content-management.service';
import { AppStore } from '@alfresco/aca-shared/store';
import { PageComponent } from '../../page.component';
import { SearchLibrariesQueryBuilderService } from './search-libraries-query-builder.service';
@@ -1,66 +0,0 @@
/*!
* @license
* Alfresco Example Content Application
*
* Copyright (C) 2005 - 2019 Alfresco Software Limited
*
* This file is part of the Alfresco Example Content Application.
* If the software was purchased under a paid Alfresco license, the terms of
* the paid license agreement will prevail. Otherwise, the software is
* provided under the following open source license terms:
*
* The Alfresco Example Content Application is free software: you can redistribute it and/or modify
* it under the terms of the GNU Lesser General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
*
* The Alfresco Example Content Application is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public License
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { NgModule } from '@angular/core';
import { SharedFilesComponent } from './shared-files.component';
import { CommonModule } from '@angular/common';
import { CoreModule } from '@alfresco/adf-core';
import { RouterModule, Routes } from '@angular/router';
import { ContentModule } from '@alfresco/adf-content-services';
import { DirectivesModule } from '../../directives/directives.module';
import { AppCommonModule } from '../common/common.module';
import { AppToolbarModule } from '../toolbar/toolbar.module';
import { ContextMenuModule } from '../context-menu/context-menu.module';
import { AppInfoDrawerModule } from '../info-drawer/info.drawer.module';
import { AppLayoutModule } from '../layout/layout.module';
const routes: Routes = [
{
path: '',
component: SharedFilesComponent,
data: {
title: 'APP.BROWSE.SHARED.TITLE',
sortingPreferenceKey: 'shared-files'
}
}
];
@NgModule({
imports: [
CommonModule,
CoreModule.forChild(),
RouterModule.forChild(routes),
ContentModule.forChild(),
DirectivesModule,
AppCommonModule,
AppToolbarModule,
ContextMenuModule,
AppInfoDrawerModule,
AppLayoutModule
],
declarations: [SharedFilesComponent],
exports: [SharedFilesComponent]
})
export class AppSharedFilesModule {}
@@ -4,6 +4,7 @@
'right_side--hide': !showRightSide
}"
[displayName]="fileName"
[maxRetries]="'viewer.maxRetries' | adfAppConfig"
[nodeId]="nodeId"
[allowNavigate]="navigateMultiple"
[allowRightSidebar]="true"
@@ -31,10 +31,11 @@ import {
SetSelectedNodesAction,
ClosePreviewAction,
ViewerActionTypes,
ViewNodeAction
ViewNodeAction,
ReloadDocumentListAction
} from '@alfresco/aca-shared/store';
import { ContentActionRef, SelectionState } from '@alfresco/adf-extensions';
import { MinimalNodeEntryEntity } from '@alfresco/js-api';
import { MinimalNodeEntryEntity, SearchRequest } from '@alfresco/js-api';
import { Component, OnDestroy, OnInit, ViewEncapsulation } from '@angular/core';
import { ActivatedRoute, Router, PRIMARY_OUTLET } from '@angular/router';
import {
@@ -49,8 +50,6 @@ import { from, Observable, Subject } from 'rxjs';
import { takeUntil, debounceTime } from 'rxjs/operators';
import { AppExtensionService } from '../../extensions/extension.service';
import { Actions, ofType } from '@ngrx/effects';
import { SearchRequest } from '@alfresco/js-api';
import { ReloadDocumentListAction } from '@alfresco/aca-shared/store';
@Component({
selector: 'app-viewer',
templateUrl: './viewer.component.html',
+10 -3
View File
@@ -32,12 +32,14 @@ import { Store } from '@ngrx/store';
import { SetSelectedNodesAction } from '@alfresco/aca-shared/store';
import { takeUntil, filter } from 'rxjs/operators';
import { ContentManagementService } from '../services/content-management.service';
import { MinimalNodeEntity } from '@alfresco/js-api';
@Directive({
selector: '[acaDocumentList]'
})
export class DocumentListDirective implements OnInit, OnDestroy {
private isLibrary = false;
selectedNode: MinimalNodeEntity;
onDestroy$ = new Subject<boolean>();
@@ -88,7 +90,7 @@ export class DocumentListDirective implements OnInit, OnDestroy {
.subscribe(() => this.onReady());
this.content.reload.pipe(takeUntil(this.onDestroy$)).subscribe(() => {
this.reload();
this.reload(this.selectedNode);
});
this.content.reset.pipe(takeUntil(this.onDestroy$)).subscribe(() => {
@@ -119,6 +121,7 @@ export class DocumentListDirective implements OnInit, OnDestroy {
onNodeSelect(event: CustomEvent) {
if (!!event.detail && !!event.detail.node) {
this.updateSelection();
this.selectedNode = event.detail.node;
}
}
@@ -140,9 +143,13 @@ export class DocumentListDirective implements OnInit, OnDestroy {
this.store.dispatch(new SetSelectedNodesAction(selection));
}
private reload() {
private reload(selectedNode?: MinimalNodeEntity) {
this.documentList.resetSelection();
this.store.dispatch(new SetSelectedNodesAction([]));
if (selectedNode) {
this.store.dispatch(new SetSelectedNodesAction([selectedNode]));
} else {
this.store.dispatch(new SetSelectedNodesAction([]));
}
this.documentList.reload();
}
@@ -23,7 +23,7 @@
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
*/
import { ContentApiService } from '@alfresco/aca-shared';
import { ContentApiService, NodePermissionService } from '@alfresco/aca-shared';
import {
AppStore,
DeletedNodeInfo,
@@ -69,7 +69,6 @@ import { NodePermissionsDialogComponent } from '../components/permissions/permis
import { NodeVersionUploadDialogComponent } from '../dialogs/node-version-upload/node-version-upload.dialog';
import { NodeVersionsDialogComponent } from '../dialogs/node-versions/node-versions.dialog';
import { NodeActionsService } from './node-actions.service';
import { NodePermissionService } from '@alfresco/aca-shared';
interface RestoredNode {
status: number;
@@ -215,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);
}
+1 -2
View File
@@ -58,8 +58,6 @@ $foreground: map-get($custom-theme, foreground);
$warn: map-get($custom-theme, warn);
@mixin custom-theme($theme) {
@include adf-style-fixes($theme);
@include layout-theme($theme);
@include aca-search-input-theme($theme);
@include app-permission-manager-theme($theme);
@@ -70,6 +68,7 @@ $warn: map-get($custom-theme, warn);
@include aca-current-user-theme($theme);
@include aca-context-menu-theme($theme);
@include app-create-menu-theme($theme);
@include adf-style-fixes($theme);
.mat-toolbar {
color: var(--theme-text-color, rgba(0, 0, 0, 0.54));
@@ -3,4 +3,14 @@
@mixin adf-style-fixes($theme) {
// add here all ADF style overrides
// and create a task to move them to ADF
.adf-content-node-selector-content-list {
.adf-content-selector-modified-cell {
display: none;
}
.adf-content-selector-modifier-cell {
display: none;
}
}
}