mirror of
https://github.com/Alfresco/alfresco-content-app.git
synced 2025-07-31 17:38:28 +00:00
tree-shakable services (#661)
* improved services * context menu service * update to latest adf-extensions
This commit is contained in:
6
package-lock.json
generated
6
package-lock.json
generated
@@ -21,9 +21,9 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"@alfresco/adf-extensions": {
|
"@alfresco/adf-extensions": {
|
||||||
"version": "2.6.0-84da24c02ff43ca583fea52ad521c89467c05618",
|
"version": "2.6.0-018b08cce71a46bebdadb9d1ba3c17617de68005",
|
||||||
"resolved": "https://registry.npmjs.org/@alfresco/adf-extensions/-/adf-extensions-2.6.0-84da24c02ff43ca583fea52ad521c89467c05618.tgz",
|
"resolved": "https://registry.npmjs.org/@alfresco/adf-extensions/-/adf-extensions-2.6.0-018b08cce71a46bebdadb9d1ba3c17617de68005.tgz",
|
||||||
"integrity": "sha512-ySSmh9YWT+d95unBueZrID3DTzkMm9GXGtG4B81X2hossJbT/ix8s8etQQiFGh4Nor0VJW2TfAdApGkmPyvQhg==",
|
"integrity": "sha512-aWT2BaDmBgeWAxK0o6OWpBdcuRszIicor5sdzd0Pr8OBLLDKE0mhdVAZQGF9llxuJc5e9RoOhLA+zmchcGHEdw==",
|
||||||
"requires": {
|
"requires": {
|
||||||
"tslib": "^1.9.0"
|
"tslib": "^1.9.0"
|
||||||
}
|
}
|
||||||
|
@@ -29,7 +29,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"@alfresco/adf-content-services": "2.6.0-8fee6e217aae1f2de5ff4634c5cd1e699336fd20",
|
"@alfresco/adf-content-services": "2.6.0-8fee6e217aae1f2de5ff4634c5cd1e699336fd20",
|
||||||
"@alfresco/adf-core": "2.6.0-8fee6e217aae1f2de5ff4634c5cd1e699336fd20",
|
"@alfresco/adf-core": "2.6.0-8fee6e217aae1f2de5ff4634c5cd1e699336fd20",
|
||||||
"@alfresco/adf-extensions": "2.6.0-84da24c02ff43ca583fea52ad521c89467c05618",
|
"@alfresco/adf-extensions": "2.6.0-018b08cce71a46bebdadb9d1ba3c17617de68005",
|
||||||
"@angular/animations": "6.1.7",
|
"@angular/animations": "6.1.7",
|
||||||
"@angular/cdk": "^6.4.7",
|
"@angular/cdk": "^6.4.7",
|
||||||
"@angular/common": "6.1.7",
|
"@angular/common": "6.1.7",
|
||||||
|
@@ -43,15 +43,9 @@ import { FilesComponent } from './components/files/files.component';
|
|||||||
import { LibrariesComponent } from './components/libraries/libraries.component';
|
import { LibrariesComponent } from './components/libraries/libraries.component';
|
||||||
import { NodeVersionsDialogComponent } from './dialogs/node-versions/node-versions.dialog';
|
import { NodeVersionsDialogComponent } from './dialogs/node-versions/node-versions.dialog';
|
||||||
import { LibraryDialogComponent } from './dialogs/library/library.dialog';
|
import { LibraryDialogComponent } from './dialogs/library/library.dialog';
|
||||||
import { ContentManagementService } from './services/content-management.service';
|
|
||||||
import { NodeActionsService } from './services/node-actions.service';
|
|
||||||
import { NodePermissionService } from './services/node-permission.service';
|
|
||||||
import { ProfileResolver } from './services/profile.resolver';
|
|
||||||
import { ExperimentalGuard } from './services/experimental-guard.service';
|
|
||||||
|
|
||||||
import { AppStoreModule } from './store/app-store.module';
|
import { AppStoreModule } from './store/app-store.module';
|
||||||
import { MaterialModule } from './material.module';
|
import { MaterialModule } from './material.module';
|
||||||
import { ContentApiService } from './services/content-api.service';
|
|
||||||
import { AppExtensionsModule } from './extensions.module';
|
import { AppExtensionsModule } from './extensions.module';
|
||||||
import { CoreExtensionsModule } from './extensions/core.extensions.module';
|
import { CoreExtensionsModule } from './extensions/core.extensions.module';
|
||||||
import { AppRouteReuseStrategy } from './app.routes.strategy';
|
import { AppRouteReuseStrategy } from './app.routes.strategy';
|
||||||
@@ -69,7 +63,6 @@ import { AppCurrentUserModule } from './components/current-user/current-user.mod
|
|||||||
import { AppSearchInputModule } from './components/search/search-input.module';
|
import { AppSearchInputModule } from './components/search/search-input.module';
|
||||||
import { AppSearchResultsModule } from './components/search/search-results.module';
|
import { AppSearchResultsModule } from './components/search/search-results.module';
|
||||||
import { AppLoginModule } from './components/login/login.module';
|
import { AppLoginModule } from './components/login/login.module';
|
||||||
import { AppAuthGuard } from './guards/auth.guard';
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -86,14 +79,14 @@ import { AppAuthGuard } from './guards/auth.guard';
|
|||||||
ContentModule.forRoot(),
|
ContentModule.forRoot(),
|
||||||
AppStoreModule,
|
AppStoreModule,
|
||||||
CoreExtensionsModule.forRoot(),
|
CoreExtensionsModule.forRoot(),
|
||||||
ExtensionsModule.forRoot(),
|
ExtensionsModule,
|
||||||
AppExtensionsModule,
|
AppExtensionsModule,
|
||||||
AppLoginModule,
|
AppLoginModule,
|
||||||
AppCommonModule,
|
AppCommonModule,
|
||||||
AppLayoutModule,
|
AppLayoutModule,
|
||||||
AppCurrentUserModule,
|
AppCurrentUserModule,
|
||||||
DirectivesModule,
|
DirectivesModule,
|
||||||
ContextMenuModule.forRoot(),
|
ContextMenuModule,
|
||||||
AppInfoDrawerModule,
|
AppInfoDrawerModule,
|
||||||
AppToolbarModule,
|
AppToolbarModule,
|
||||||
AppSidenavModule,
|
AppSidenavModule,
|
||||||
@@ -119,14 +112,7 @@ import { AppAuthGuard } from './guards/auth.guard';
|
|||||||
name: 'app',
|
name: 'app',
|
||||||
source: 'assets'
|
source: 'assets'
|
||||||
}
|
}
|
||||||
},
|
}
|
||||||
AppAuthGuard,
|
|
||||||
ContentManagementService,
|
|
||||||
NodeActionsService,
|
|
||||||
NodePermissionService,
|
|
||||||
ProfileResolver,
|
|
||||||
ExperimentalGuard,
|
|
||||||
ContentApiService
|
|
||||||
],
|
],
|
||||||
entryComponents: [LibraryDialogComponent, NodeVersionsDialogComponent],
|
entryComponents: [LibraryDialogComponent, NodeVersionsDialogComponent],
|
||||||
bootstrap: [AppComponent]
|
bootstrap: [AppComponent]
|
||||||
|
@@ -23,7 +23,7 @@
|
|||||||
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
|
* along with Alfresco. If not, see <http://www.gnu.org/licenses/>.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
import { NgModule, ModuleWithProviders } from '@angular/core';
|
import { NgModule } from '@angular/core';
|
||||||
import {
|
import {
|
||||||
MatMenuModule,
|
MatMenuModule,
|
||||||
MatListModule,
|
MatListModule,
|
||||||
@@ -34,7 +34,6 @@ import { CoreModule } from '@alfresco/adf-core';
|
|||||||
import { CoreExtensionsModule } from '../../extensions/core.extensions.module';
|
import { CoreExtensionsModule } from '../../extensions/core.extensions.module';
|
||||||
|
|
||||||
import { ContextActionsDirective } from './context-menu.directive';
|
import { ContextActionsDirective } from './context-menu.directive';
|
||||||
import { ContextMenuService } from './context-menu.service';
|
|
||||||
import { ContextMenuComponent } from './context-menu.component';
|
import { ContextMenuComponent } from './context-menu.component';
|
||||||
import { ContextMenuItemDirective } from './context-menu-item.directive';
|
import { ContextMenuItemDirective } from './context-menu-item.directive';
|
||||||
import { ExtensionsModule } from '@alfresco/adf-extensions';
|
import { ExtensionsModule } from '@alfresco/adf-extensions';
|
||||||
@@ -48,7 +47,7 @@ import { OutsideEventDirective } from './context-menu-outside-event.directive';
|
|||||||
MatButtonModule,
|
MatButtonModule,
|
||||||
CoreExtensionsModule.forChild(),
|
CoreExtensionsModule.forChild(),
|
||||||
CoreModule.forChild(),
|
CoreModule.forChild(),
|
||||||
ExtensionsModule.forChild()
|
ExtensionsModule
|
||||||
],
|
],
|
||||||
declarations: [
|
declarations: [
|
||||||
ContextActionsDirective,
|
ContextActionsDirective,
|
||||||
@@ -63,17 +62,4 @@ import { OutsideEventDirective } from './context-menu-outside-event.directive';
|
|||||||
],
|
],
|
||||||
entryComponents: [ContextMenuComponent]
|
entryComponents: [ContextMenuComponent]
|
||||||
})
|
})
|
||||||
export class ContextMenuModule {
|
export class ContextMenuModule {}
|
||||||
static forRoot(): ModuleWithProviders {
|
|
||||||
return {
|
|
||||||
ngModule: ContextMenuModule,
|
|
||||||
providers: [ContextMenuService]
|
|
||||||
};
|
|
||||||
}
|
|
||||||
|
|
||||||
static forChild(): ModuleWithProviders {
|
|
||||||
return {
|
|
||||||
ngModule: ContextMenuModule
|
|
||||||
};
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
@@ -5,7 +5,9 @@ import { ContextMenuOverlayRef } from './context-menu-overlay';
|
|||||||
import { ContextMenuComponent } from './context-menu.component';
|
import { ContextMenuComponent } from './context-menu.component';
|
||||||
import { ContextmenuOverlayConfig } from './interfaces';
|
import { ContextmenuOverlayConfig } from './interfaces';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class ContextMenuService {
|
export class ContextMenuService {
|
||||||
constructor(private injector: Injector, private overlay: Overlay) {}
|
constructor(private injector: Injector, private overlay: Overlay) {}
|
||||||
|
|
||||||
|
@@ -55,7 +55,7 @@ const routes: Routes = [
|
|||||||
DirectivesModule,
|
DirectivesModule,
|
||||||
AppCommonModule,
|
AppCommonModule,
|
||||||
AppToolbarModule,
|
AppToolbarModule,
|
||||||
ContextMenuModule.forChild(),
|
ContextMenuModule,
|
||||||
AppInfoDrawerModule
|
AppInfoDrawerModule
|
||||||
],
|
],
|
||||||
declarations: [FavoritesComponent],
|
declarations: [FavoritesComponent],
|
||||||
|
@@ -52,7 +52,7 @@ export function components() {
|
|||||||
CommonModule,
|
CommonModule,
|
||||||
MaterialModule,
|
MaterialModule,
|
||||||
CoreModule.forChild(),
|
CoreModule.forChild(),
|
||||||
ExtensionsModule.forChild(),
|
ExtensionsModule,
|
||||||
ContentMetadataModule,
|
ContentMetadataModule,
|
||||||
VersionManagerModule,
|
VersionManagerModule,
|
||||||
DirectivesModule
|
DirectivesModule
|
||||||
|
@@ -54,7 +54,7 @@ const routes: Routes = [
|
|||||||
DirectivesModule,
|
DirectivesModule,
|
||||||
AppCommonModule,
|
AppCommonModule,
|
||||||
AppToolbarModule,
|
AppToolbarModule,
|
||||||
ContextMenuModule.forChild(),
|
ContextMenuModule,
|
||||||
AppInfoDrawerModule
|
AppInfoDrawerModule
|
||||||
],
|
],
|
||||||
declarations: [RecentFilesComponent],
|
declarations: [RecentFilesComponent],
|
||||||
|
@@ -55,7 +55,7 @@ const routes: Routes = [
|
|||||||
DirectivesModule,
|
DirectivesModule,
|
||||||
AppCommonModule,
|
AppCommonModule,
|
||||||
AppToolbarModule,
|
AppToolbarModule,
|
||||||
ContextMenuModule.forChild(),
|
ContextMenuModule,
|
||||||
AppInfoDrawerModule
|
AppInfoDrawerModule
|
||||||
],
|
],
|
||||||
declarations: [SharedFilesComponent],
|
declarations: [SharedFilesComponent],
|
||||||
|
@@ -48,7 +48,7 @@ export function components() {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [CommonModule, CoreModule.forChild(), ExtensionsModule.forChild()],
|
imports: [CommonModule, CoreModule.forChild(), ExtensionsModule],
|
||||||
declarations: components(),
|
declarations: components(),
|
||||||
exports: components(),
|
exports: components(),
|
||||||
entryComponents: components()
|
entryComponents: components()
|
||||||
|
@@ -54,7 +54,7 @@ const routes: Routes = [
|
|||||||
DirectivesModule,
|
DirectivesModule,
|
||||||
AppCommonModule,
|
AppCommonModule,
|
||||||
AppToolbarModule,
|
AppToolbarModule,
|
||||||
ContextMenuModule.forChild()
|
ContextMenuModule
|
||||||
],
|
],
|
||||||
declarations: [TrashcanComponent],
|
declarations: [TrashcanComponent],
|
||||||
exports: [TrashcanComponent]
|
exports: [TrashcanComponent]
|
||||||
|
@@ -43,14 +43,14 @@ export function setupExtensions(service: AppExtensionService): Function {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [CommonModule, CoreModule.forChild(), ExtensionsModule.forChild()]
|
imports: [CommonModule, CoreModule.forChild(), ExtensionsModule]
|
||||||
})
|
})
|
||||||
export class CoreExtensionsModule {
|
export class CoreExtensionsModule {
|
||||||
static forRoot(): ModuleWithProviders {
|
static forRoot(): ModuleWithProviders {
|
||||||
return {
|
return {
|
||||||
ngModule: CoreExtensionsModule,
|
ngModule: CoreExtensionsModule,
|
||||||
providers: [
|
providers: [
|
||||||
AppExtensionService,
|
// AppExtensionService,
|
||||||
{
|
{
|
||||||
provide: APP_INITIALIZER,
|
provide: APP_INITIALIZER,
|
||||||
useFactory: setupExtensions,
|
useFactory: setupExtensions,
|
||||||
|
@@ -49,7 +49,9 @@ import {
|
|||||||
ProfileState
|
ProfileState
|
||||||
} from '@alfresco/adf-extensions';
|
} from '@alfresco/adf-extensions';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class AppExtensionService implements RuleContext {
|
export class AppExtensionService implements RuleContext {
|
||||||
defaults = {
|
defaults = {
|
||||||
layout: 'app.layout.main',
|
layout: 'app.layout.main',
|
||||||
|
@@ -31,7 +31,9 @@ import {
|
|||||||
AuthGuardEcm
|
AuthGuardEcm
|
||||||
} from '@alfresco/adf-core';
|
} from '@alfresco/adf-core';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class AppAuthGuard extends AuthGuardEcm {
|
export class AppAuthGuard extends AuthGuardEcm {
|
||||||
constructor(
|
constructor(
|
||||||
private _auth: AuthenticationService,
|
private _auth: AuthenticationService,
|
||||||
|
@@ -43,7 +43,9 @@ import {
|
|||||||
FavoriteBody
|
FavoriteBody
|
||||||
} from 'alfresco-js-api';
|
} from 'alfresco-js-api';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class ContentApiService {
|
export class ContentApiService {
|
||||||
constructor(
|
constructor(
|
||||||
private api: AlfrescoApiService,
|
private api: AlfrescoApiService,
|
||||||
|
@@ -68,7 +68,9 @@ interface RestoredNode {
|
|||||||
statusCode?: number;
|
statusCode?: number;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class ContentManagementService {
|
export class ContentManagementService {
|
||||||
nodesMoved = new Subject<any>();
|
nodesMoved = new Subject<any>();
|
||||||
nodesDeleted = new Subject<any>();
|
nodesDeleted = new Subject<any>();
|
||||||
|
@@ -46,7 +46,9 @@ import {
|
|||||||
import { ContentApiService } from '../services/content-api.service';
|
import { ContentApiService } from '../services/content-api.service';
|
||||||
import { catchError, map, mergeMap } from 'rxjs/operators';
|
import { catchError, map, mergeMap } from 'rxjs/operators';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class NodeActionsService {
|
export class NodeActionsService {
|
||||||
static SNACK_MESSAGE_DURATION_WITH_UNDO = 10000;
|
static SNACK_MESSAGE_DURATION_WITH_UNDO = 10000;
|
||||||
static SNACK_MESSAGE_DURATION = 3000;
|
static SNACK_MESSAGE_DURATION = 3000;
|
||||||
|
@@ -26,7 +26,9 @@
|
|||||||
import { Injectable } from '@angular/core';
|
import { Injectable } from '@angular/core';
|
||||||
import { NodePermissions } from '@alfresco/adf-extensions';
|
import { NodePermissions } from '@alfresco/adf-extensions';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class NodePermissionService implements NodePermissions {
|
export class NodePermissionService implements NodePermissions {
|
||||||
static DEFAULT_OPERATION = 'OR';
|
static DEFAULT_OPERATION = 'OR';
|
||||||
|
|
||||||
|
@@ -32,7 +32,9 @@ import { AppStore } from '../store/states/app.state';
|
|||||||
import { SetUserProfileAction } from '../store/actions';
|
import { SetUserProfileAction } from '../store/actions';
|
||||||
import { ContentApiService } from './content-api.service';
|
import { ContentApiService } from './content-api.service';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable({
|
||||||
|
providedIn: 'root'
|
||||||
|
})
|
||||||
export class ProfileResolver implements Resolve<Person> {
|
export class ProfileResolver implements Resolve<Person> {
|
||||||
constructor(
|
constructor(
|
||||||
private store: Store<AppStore>,
|
private store: Store<AppStore>,
|
||||||
|
@@ -55,15 +55,6 @@ import {
|
|||||||
DocumentListService
|
DocumentListService
|
||||||
} from '@alfresco/adf-content-services';
|
} from '@alfresco/adf-content-services';
|
||||||
import { MaterialModule } from '../material.module';
|
import { MaterialModule } from '../material.module';
|
||||||
import { ContentManagementService } from '../services/content-management.service';
|
|
||||||
import { NodeActionsService } from '../services/node-actions.service';
|
|
||||||
import { NodePermissionService } from '../services/node-permission.service';
|
|
||||||
import { ContentApiService } from '../services/content-api.service';
|
|
||||||
import { AppExtensionService } from '../extensions/extension.service';
|
|
||||||
import {
|
|
||||||
ExtensionLoaderService,
|
|
||||||
ExtensionService
|
|
||||||
} from '@alfresco/adf-extensions';
|
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
imports: [
|
imports: [
|
||||||
@@ -103,15 +94,7 @@ import {
|
|||||||
ThumbnailService,
|
ThumbnailService,
|
||||||
UploadService,
|
UploadService,
|
||||||
CustomResourcesService,
|
CustomResourcesService,
|
||||||
DocumentListService,
|
DocumentListService
|
||||||
|
|
||||||
ContentManagementService,
|
|
||||||
NodeActionsService,
|
|
||||||
NodePermissionService,
|
|
||||||
ContentApiService,
|
|
||||||
AppExtensionService,
|
|
||||||
ExtensionService,
|
|
||||||
ExtensionLoaderService
|
|
||||||
]
|
]
|
||||||
})
|
})
|
||||||
export class AppTestingModule {}
|
export class AppTestingModule {}
|
||||||
|
Reference in New Issue
Block a user