[ADF-3380] lazy loading fixes (#3609)

* lazy loading file viewer

* fix issue with CoreModule referencing

* fix issue with app config and lazy loading

* test fixes

* fix import

* lazy loading workaround for content module

* fix providers for lazy loading

* fix tests

* lazy loading for Process Services lib

* lazy loading for Insights, module cleanup

* fix issue with Translate module, optimise imports

* lazy-load blob viewer (demo shell)

* remove duplicate pdf init

* update to more stable pdfjs

* fix license header

* fix lint issues

* fix test import

* fix pdf version
This commit is contained in:
Denys Vuika
2018-08-14 15:42:50 +01:00
committed by Eugenio Romano
parent f3a513ca72
commit f606149344
55 changed files with 498 additions and 300 deletions
@@ -18,16 +18,16 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { MaterialModule } from '../material.module';
import { TranslateModule } from '@ngx-translate/core';
import { BreadcrumbComponent } from './breadcrumb.component';
import { DropdownBreadcrumbComponent } from './dropdown-breadcrumb.component';
import { CoreModule } from '@alfresco/adf-core';
@NgModule({
imports: [
CommonModule,
MaterialModule,
TranslateModule
CoreModule.forChild()
],
exports: [
BreadcrumbComponent,
@@ -18,9 +18,8 @@
import { CommonModule } from '@angular/common';
import { FlexLayoutModule } from '@angular/flex-layout';
import { NgModule } from '@angular/core';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { CardViewModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { ContentMetadataComponent } from './components/content-metadata/content-metadata.component';
import { ContentMetadataCardComponent } from './components/content-metadata-card/content-metadata-card.component';
@@ -28,9 +27,8 @@ import { ContentMetadataCardComponent } from './components/content-metadata-card
imports: [
CommonModule,
MaterialModule,
TranslateModule,
FlexLayoutModule,
CardViewModule
CoreModule.forChild()
],
exports: [
ContentMetadataComponent,
@@ -19,15 +19,12 @@ import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { MaterialModule } from '../material.module';
import { TranslateModule } from '@ngx-translate/core';
import { ContentNodeSelectorPanelComponent } from './content-node-selector-panel.component';
import { ContentNodeSelectorComponent } from './content-node-selector.component';
import { ContentNodeSelectorService } from './content-node-selector.service';
import { ContentNodeDialogService } from './content-node-dialog.service';
import { SitesDropdownModule } from '../site-dropdown/sites-dropdown.module';
import { BreadcrumbModule } from '../breadcrumb/breadcrumb.module';
import { PaginationModule, ToolbarModule, DirectiveModule, DataColumnModule, DataTableModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { DocumentListModule } from '../document-list/document-list.module';
import { NameLocationCellComponent } from './name-location-cell/name-location-cell.component';
@@ -35,17 +32,12 @@ import { NameLocationCellComponent } from './name-location-cell/name-location-ce
imports: [
FormsModule,
ReactiveFormsModule,
DirectiveModule,
CoreModule.forChild(),
CommonModule,
MaterialModule,
TranslateModule,
SitesDropdownModule,
BreadcrumbModule,
ToolbarModule,
DocumentListModule,
DataColumnModule,
DataTableModule,
PaginationModule
DocumentListModule
],
exports: [
ContentNodeSelectorPanelComponent,
@@ -53,16 +45,13 @@ import { NameLocationCellComponent } from './name-location-cell/name-location-ce
ContentNodeSelectorComponent
],
entryComponents: [
ContentNodeSelectorPanelComponent, ContentNodeSelectorComponent
ContentNodeSelectorPanelComponent,
ContentNodeSelectorComponent
],
declarations: [
ContentNodeSelectorPanelComponent,
NameLocationCellComponent,
ContentNodeSelectorComponent
],
providers: [
ContentNodeSelectorService,
ContentNodeDialogService
]
})
export class ContentNodeSelectorModule {}
+102 -12
View File
@@ -16,7 +16,7 @@
*/
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { NgModule, ModuleWithProviders } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CoreModule, TRANSLATION_PROVIDER } from '@alfresco/adf-core';
@@ -45,10 +45,86 @@ import { BasicPropertiesService } from './content-metadata/services/basic-proper
import { PropertyGroupTranslatorService } from './content-metadata/services/property-groups-translator.service';
import { SearchQueryBuilderService } from './search/search-query-builder.service';
import { SearchFilterService } from './search/components/search-filter/search-filter.service';
import { ContentNodeSelectorService } from './content-node-selector/content-node-selector.service';
import { ContentNodeDialogService } from './content-node-selector/content-node-dialog.service';
import { DocumentListService } from './document-list/services/document-list.service';
import { FolderActionsService } from './document-list/services/folder-actions.service';
import { DocumentActionsService } from './document-list/services/document-actions.service';
import { NodeActionsService } from './document-list/services/node-actions.service';
import { CustomResourcesService } from './document-list/services/custom-resources.service';
import { NodePermissionDialogService } from './permission-manager/services/node-permission-dialog.service';
import { NodePermissionService } from './permission-manager/services/node-permission.service';
import { TagService } from './tag/services/tag.service';
export function providers() {
return [
RatingService,
ContentMetadataService,
PropertyDescriptorsService,
ContentMetadataConfigFactory,
BasicPropertiesService,
PropertyGroupTranslatorService,
SearchQueryBuilderService,
SearchFilterService,
ContentNodeSelectorService,
ContentNodeDialogService,
DocumentListService,
FolderActionsService,
DocumentActionsService,
NodeActionsService,
CustomResourcesService,
NodePermissionDialogService,
NodePermissionService,
TagService
];
}
@NgModule({
imports: [
CoreModule,
CoreModule.forChild(),
SocialModule,
TagModule,
CommonModule,
WebScriptModule,
FormsModule,
ReactiveFormsModule,
DialogModule,
SearchModule,
DocumentListModule,
UploadModule,
MaterialModule,
SitesDropdownModule,
BreadcrumbModule,
ContentNodeSelectorModule,
ContentMetadataModule,
FolderDirectiveModule,
ContentDirectiveModule,
PermissionManagerModule,
VersionManagerModule
],
exports: [
SocialModule,
TagModule,
WebScriptModule,
DocumentListModule,
UploadModule,
SearchModule,
SitesDropdownModule,
BreadcrumbModule,
ContentNodeSelectorModule,
ContentMetadataModule,
DialogModule,
FolderDirectiveModule,
ContentDirectiveModule,
PermissionManagerModule,
VersionManagerModule
]
})
export class ContentModuleLazy {}
@NgModule({
imports: [
CoreModule.forChild(),
SocialModule,
TagModule,
CommonModule,
@@ -70,6 +146,7 @@ import { SearchFilterService } from './search/components/search-filter/search-fi
VersionManagerModule
],
providers: [
...providers(),
{
provide: TRANSLATION_PROVIDER,
multi: true,
@@ -77,18 +154,9 @@ import { SearchFilterService } from './search/components/search-filter/search-fi
name: 'adf-content-services',
source: 'assets/adf-content-services'
}
},
RatingService,
ContentMetadataService,
PropertyDescriptorsService,
ContentMetadataConfigFactory,
BasicPropertiesService,
PropertyGroupTranslatorService,
SearchQueryBuilderService,
SearchFilterService
}
],
exports: [
CoreModule,
SocialModule,
TagModule,
WebScriptModule,
@@ -107,4 +175,26 @@ import { SearchFilterService } from './search/components/search-filter/search-fi
]
})
export class ContentModule {
static forRoot(): ModuleWithProviders {
return {
ngModule: ContentModule,
providers: [
...providers(),
{
provide: TRANSLATION_PROVIDER,
multi: true,
useValue: {
name: 'adf-content-services',
source: 'assets/adf-content-services'
}
}
]
};
}
static forChild(): ModuleWithProviders {
return {
ngModule: ContentModuleLazy
};
}
}
@@ -17,18 +17,15 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { MaterialModule } from '../material.module';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { CoreModule } from '@alfresco/adf-core';
import { MaterialModule } from '../material.module';
import { DownloadZipDialogComponent } from './download-zip.dialog';
import { FolderDialogComponent } from './folder.dialog';
import { NodeLockDialogComponent } from './node-lock.dialog';
import { ShareDialogComponent } from './share.dialog';
import { ConfirmDialogComponent } from './confirm.dialog';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core';
import { FormModule } from '@alfresco/adf-core';
import { MatDatetimepickerModule } from '@mat-datetimepicker/core';
import { MatMomentDatetimeModule } from '@mat-datetimepicker/moment';
@@ -36,9 +33,8 @@ import { MatMomentDatetimeModule } from '@mat-datetimepicker/moment';
imports: [
CommonModule,
MaterialModule,
TranslateModule,
CoreModule.forChild(),
FormsModule,
FormModule,
ReactiveFormsModule,
MatMomentDatetimeModule,
MatDatetimepickerModule
@@ -18,8 +18,7 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FlexLayoutModule } from '@angular/flex-layout';
import { TranslateModule } from '@ngx-translate/core';
import { DataTableModule, PaginationModule, ToolbarModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { MaterialModule } from '../material.module';
import { UploadModule } from '../upload/upload.module';
@@ -33,22 +32,13 @@ import { DocumentListComponent } from './components/document-list.component';
import { EmptyFolderContentDirective } from './components/empty-folder/empty-folder-content.directive';
import { NoPermissionContentDirective } from './components/no-permission/no-permission-content.directive';
import { DocumentActionsService } from './services/document-actions.service';
import { DocumentListService } from './services/document-list.service';
import { FolderActionsService } from './services/folder-actions.service';
import { NodeActionsService } from './services/node-actions.service';
import { CustomResourcesService } from './services/custom-resources.service';
@NgModule({
imports: [
ToolbarModule,
CoreModule.forChild(),
CommonModule,
DataTableModule,
FlexLayoutModule,
MaterialModule,
UploadModule,
TranslateModule,
PaginationModule
UploadModule
],
declarations: [
DocumentListComponent,
@@ -59,13 +49,6 @@ import { CustomResourcesService } from './services/custom-resources.service';
EmptyFolderContentDirective,
NoPermissionContentDirective
],
providers: [
DocumentListService,
FolderActionsService,
DocumentActionsService,
NodeActionsService,
CustomResourcesService
],
exports: [
DocumentListComponent,
ContentColumnComponent,
@@ -18,28 +18,23 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { PermissionListComponent } from './components/permission-list/permission-list.component';
import { AddPermissionComponent } from './components/add-permission/add-permission.component';
import { AddPermissionDialogComponent } from './components/add-permission/add-permission-dialog.component';
import { DataTableModule, DataColumnModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { InheritPermissionDirective } from './components/inherited-button.directive';
import { NodePermissionService } from './services/node-permission.service';
import { NoPermissionTemplateComponent } from './components/permission-list/no-permission.component';
import { NodePermissionDialogService } from './services/node-permission-dialog.service';
import { AddPermissionPanelComponent } from './components/add-permission/add-permission-panel.component';
import { SearchModule } from '../search/search.module';
@NgModule({
imports: [
CoreModule.forChild(),
CommonModule,
FormsModule,
ReactiveFormsModule,
MaterialModule,
TranslateModule,
DataTableModule,
DataColumnModule,
SearchModule
],
declarations: [
@@ -50,11 +45,11 @@ import { SearchModule } from '../search/search.module';
AddPermissionComponent,
AddPermissionDialogComponent
],
providers: [
NodePermissionDialogService,
NodePermissionService
entryComponents: [
AddPermissionPanelComponent,
AddPermissionComponent,
AddPermissionDialogComponent
],
entryComponents: [ AddPermissionPanelComponent, AddPermissionComponent, AddPermissionDialogComponent ],
exports: [
PermissionListComponent,
NoPermissionTemplateComponent,
+2 -5
View File
@@ -18,10 +18,9 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { PipeModule, CoreModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { SearchTriggerDirective } from './components/search-trigger.directive';
@@ -50,13 +49,11 @@ export const ALFRESCO_SEARCH_DIRECTIVES: any[] = [
@NgModule({
imports: [
CoreModule,
CommonModule,
FormsModule,
ReactiveFormsModule,
MaterialModule,
PipeModule,
TranslateModule
CoreModule.forChild()
],
declarations: [
...ALFRESCO_SEARCH_DIRECTIVES,
@@ -18,18 +18,18 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { MaterialModule } from '../material.module';
import { TranslateModule } from '@ngx-translate/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { DropdownSitesComponent } from './sites-dropdown.component';
import { CoreModule } from '@alfresco/adf-core';
@NgModule({
imports: [
CommonModule,
MaterialModule,
TranslateModule,
FormsModule,
ReactiveFormsModule
ReactiveFormsModule,
CoreModule.forChild()
],
exports: [
DropdownSitesComponent
+3 -7
View File
@@ -18,21 +18,20 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { TagActionsComponent } from './tag-actions.component';
import { TagListComponent } from './tag-list.component';
import { TagNodeListComponent } from './tag-node-list.component';
import { TagService } from './services/tag.service';
import { CoreModule } from '@alfresco/adf-core';
@NgModule({
imports: [
CommonModule,
MaterialModule,
TranslateModule,
FormsModule,
ReactiveFormsModule
ReactiveFormsModule,
CoreModule.forChild()
],
exports: [
TagActionsComponent,
@@ -43,9 +42,6 @@ import { TagService } from './services/tag.service';
TagActionsComponent,
TagListComponent,
TagNodeListComponent
],
providers: [
TagService
]
})
export class TagModule {}
@@ -36,7 +36,7 @@ import { ContentModule } from '../content.module';
NoopAnimationsModule,
RouterTestingModule,
CoreModule.forRoot(),
ContentModule
ContentModule.forRoot()
],
providers: [
{ provide: AlfrescoApiService, useClass: AlfrescoApiServiceMock },
+3 -5
View File
@@ -17,7 +17,6 @@
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { FileUploadingDialogComponent } from './components/file-uploading-dialog.component';
@@ -27,15 +26,14 @@ import { UploadButtonComponent } from './components/upload-button.component';
import { UploadVersionButtonComponent } from './components/upload-version-button.component';
import { UploadDragAreaComponent } from './components/upload-drag-area.component';
import { PipeModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { FileDraggableDirective } from './directives/file-draggable.directive';
@NgModule({
imports: [
CoreModule.forChild(),
CommonModule,
MaterialModule,
TranslateModule,
PipeModule
MaterialModule
],
declarations: [
FileDraggableDirective,
@@ -19,18 +19,18 @@ import { CommonModule } from '@angular/common';
import { FormsModule } from '@angular/forms';
import { NgModule } from '@angular/core';
import { MaterialModule } from '../material.module';
import { TranslateModule } from '@ngx-translate/core';
import { VersionUploadComponent } from './version-upload.component';
import { VersionManagerComponent } from './version-manager.component';
import { VersionListComponent } from './version-list.component';
import { UploadModule } from '../upload/upload.module';
import { CoreModule } from '@alfresco/adf-core';
@NgModule({
imports: [
CommonModule,
MaterialModule,
TranslateModule,
CoreModule.forChild(),
UploadModule,
FormsModule
],
@@ -44,7 +44,6 @@ import { UploadModule } from '../upload/upload.module';
VersionUploadComponent,
VersionManagerComponent,
VersionListComponent
],
providers: []
]
})
export class VersionManagerModule {}
@@ -15,10 +15,9 @@
* limitations under the License.
*/
import { DataTableModule, PipeModule } from '@alfresco/adf-core';
import { CoreModule } from '@alfresco/adf-core';
import { CommonModule } from '@angular/common';
import { NgModule } from '@angular/core';
import { TranslateModule } from '@ngx-translate/core';
import { MaterialModule } from '../material.module';
import { WebscriptComponent } from './webscript.component';
@@ -26,10 +25,8 @@ import { WebscriptComponent } from './webscript.component';
@NgModule({
imports: [
CommonModule,
PipeModule,
MaterialModule,
DataTableModule,
TranslateModule
CoreModule.forChild()
],
exports: [
WebscriptComponent