diff --git a/src/frontend/app/administration/administration.module.ts b/src/frontend/app/administration/administration.module.ts index 02883eded9eb92edf25f4bb1e1075a53f076ebf6..8dbd52df005c96ace1ea6e4783ec76e810a4c5c5 100755 --- a/src/frontend/app/administration/administration.module.ts +++ b/src/frontend/app/administration/administration.module.ts @@ -3,152 +3,152 @@ import { NgModule } from '@angular/core'; import { SharedModule } from '../app-common.module'; import { AdministrationRoutingModule } from './administration-routing.module'; -import { NgxChartsModule } from '@swimlane/ngx-charts'; +// import { NgxChartsModule } from '@swimlane/ngx-charts'; import { DocumentViewerModule } from '../viewer/document-viewer.module'; -import { AdministrationComponent } from './home/administration.component'; -import { UsersAdministrationComponent, UsersAdministrationRedirectModalComponent } from './user/users-administration.component'; import { AccountLinkComponent } from './user/account-link/account-link.component'; -import { GroupsAdministrationComponent, GroupsAdministrationRedirectModalComponent } from './group/groups-administration.component'; -import { UserAdministrationComponent, UserAdministrationRedirectModalComponent } from './user/user-administration.component'; -import { GroupAdministrationComponent } from './group/group-administration.component'; -import { IndexingAdministrationComponent } from './group/indexing/indexing-administration.component'; -import { BasketsAdministrationComponent } from './basket/baskets-administration.component'; +import { ActionAdministrationComponent } from './action/action-administration.component'; +import { ActionsAdministrationComponent } from './action/actions-administration.component'; +import { AlfrescoAdministrationComponent } from './alfresco/alfresco-administration.component'; +import { AlfrescoListAdministrationComponent } from './alfresco/alfresco-list-administration.component'; import { BasketAdministrationComponent, BasketAdministrationSettingsModalComponent, BasketAdministrationGroupListModalComponent } from './basket/basket-administration.component'; -import { EntitiesAdministrationComponent, EntitiesAdministrationRedirectModalComponent } from './entity/entities-administration.component'; -import { DiffusionModelsAdministrationComponent } from './diffusionModel/diffusionModels-administration.component'; +import { BasketsAdministrationComponent } from './basket/baskets-administration.component'; +import { ContactDuplicateComponent } from './contact/contact-duplicate/contact-duplicate.component'; +import { ContactExportComponent } from './contact/list/export/contact-export.component'; +import { ContactsCustomFieldsAdministrationComponent } from './contact/customField/contacts-custom-fields-administration.component'; +import { ContactsGroupAdministrationComponent } from './contact/group/contacts-group-administration.component'; +import { ContactsGroupsAdministrationComponent } from './contact/group/contacts-groups-administration.component'; +import { ContactsListAdministrationComponent, ContactsListAdministrationRedirectModalComponent } from './contact/list/contacts-list-administration.component'; +import { ContactsPageAdministrationComponent } from './contact/page/contacts-page-administration.component'; +import { ContactsParametersAdministrationComponent } from './contact/parameter/contacts-parameters-administration.component'; +import { CustomFieldsAdministrationComponent } from './customField/custom-fields-administration.component'; import { DiffusionModelAdministrationComponent } from './diffusionModel/diffusionModel-administration.component'; +import { DiffusionModelsAdministrationComponent } from './diffusionModel/diffusionModels-administration.component'; +import { DocserverAdministrationComponent } from './docserver/docserver-administration.component'; +import { DocserversAdministrationComponent } from './docserver/docservers-administration.component'; import { DoctypesAdministrationComponent, DoctypesAdministrationRedirectModalComponent } from './doctype/doctypes-administration.component'; -import { StatusesAdministrationComponent } from './status/statuses-administration.component'; -import { StatusAdministrationComponent } from './status/status-administration.component'; -import { ActionsAdministrationComponent } from './action/actions-administration.component'; -import { ActionAdministrationComponent } from './action/action-administration.component'; -import { ParametersAdministrationComponent } from './parameter/parameters-administration.component'; -import { ParameterAdministrationComponent } from './parameter/parameter-administration.component'; -import { PrioritiesAdministrationComponent } from './priority/priorities-administration.component'; -import { PriorityAdministrationComponent } from './priority/priority-administration.component'; +import { EntitiesAdministrationComponent, EntitiesAdministrationRedirectModalComponent } from './entity/entities-administration.component'; +import { GroupAdministrationComponent } from './group/group-administration.component'; +import { GroupsAdministrationComponent, GroupsAdministrationRedirectModalComponent } from './group/groups-administration.component'; import { HistoryAdministrationComponent } from './history/history-administration.component'; import { HistoryBatchAdministrationComponent } from './history/batch/history-batch-administration.component'; -import { UpdateStatusAdministrationComponent } from './updateStatus/update-status-administration.component'; -import { NotificationsAdministrationComponent } from './notification/notifications-administration.component'; +import { IndexingAdministrationComponent } from './group/indexing/indexing-administration.component'; +import { IndexingModelAdministrationComponent } from './indexingModel/indexing-model-administration.component'; +import { IndexingModelsAdministrationComponent } from './indexingModel/indexing-models-administration.component'; +import { ListAdministrationComponent } from './basket/list/list-administration.component'; +import { ManageDuplicateComponent } from './contact/contact-duplicate/manage-duplicate/manage-duplicate.component'; import { NotificationAdministrationComponent } from './notification/notification-administration.component'; -import { ContactsGroupsAdministrationComponent } from './contact/group/contacts-groups-administration.component'; -import { ContactsGroupAdministrationComponent } from './contact/group/contacts-group-administration.component'; -import { ContactsParametersAdministrationComponent } from './contact/parameter/contacts-parameters-administration.component'; -import { VersionsUpdateAdministrationComponent } from './versionUpdate/versions-update-administration.component'; -import { DocserversAdministrationComponent } from './docserver/docservers-administration.component'; -import { DocserverAdministrationComponent } from './docserver/docserver-administration.component'; -import { TemplatesAdministrationComponent } from './template/templates-administration.component'; -import { TemplateAdministrationComponent, TemplateAdministrationCheckEntitiesModalComponent } from './template/template-administration.component'; +import { NotificationsAdministrationComponent } from './notification/notifications-administration.component'; +import { ParameterAdministrationComponent } from './parameter/parameter-administration.component'; +import { ParametersAdministrationComponent } from './parameter/parameters-administration.component'; +import { PrioritiesAdministrationComponent } from './priority/priorities-administration.component'; +import { PriorityAdministrationComponent } from './priority/priority-administration.component'; import { SecuritiesAdministrationComponent } from './security/securities-administration.component'; import { SendmailAdministrationComponent } from './sendmail/sendmail-administration.component'; -import { ListAdministrationComponent } from './basket/list/list-administration.component'; -import { ShippingsAdministrationComponent } from './shipping/shippings-administration.component'; import { ShippingAdministrationComponent } from './shipping/shipping-administration.component'; -import { CustomFieldsAdministrationComponent } from './customField/custom-fields-administration.component'; -import { IndexingModelAdministrationComponent } from './indexingModel/indexing-model-administration.component'; -import { IndexingModelsAdministrationComponent } from './indexingModel/indexing-models-administration.component'; -import { ContactsListAdministrationComponent, ContactsListAdministrationRedirectModalComponent } from './contact/list/contacts-list-administration.component'; -import { ContactsCustomFieldsAdministrationComponent } from './contact/customField/contacts-custom-fields-administration.component'; -import { ContactsPageAdministrationComponent } from './contact/page/contacts-page-administration.component'; -import { TagsAdministrationComponent } from './tag/tags-administration.component'; +import { ShippingsAdministrationComponent } from './shipping/shippings-administration.component'; +import { StatusAdministrationComponent } from './status/status-administration.component'; +import { StatusesAdministrationComponent } from './status/statuses-administration.component'; import { TagAdministrationComponent } from './tag/tag-administration.component'; +import { TagsAdministrationComponent } from './tag/tags-administration.component'; +import { TemplateAdministrationComponent, TemplateAdministrationCheckEntitiesModalComponent } from './template/template-administration.component'; import { TemplateFileEditorModalComponent } from './template/templateFileEditorModal/template-file-editor-modal.component'; -import { AlfrescoListAdministrationComponent } from './alfresco/alfresco-list-administration.component'; -import { AlfrescoAdministrationComponent } from './alfresco/alfresco-administration.component'; -import { ContactDuplicateComponent } from './contact/contact-duplicate/contact-duplicate.component'; -import { ManageDuplicateComponent } from './contact/contact-duplicate/manage-duplicate/manage-duplicate.component'; -import { ContactExportComponent } from './contact/list/export/contact-export.component'; +import { TemplatesAdministrationComponent } from './template/templates-administration.component'; +import { UpdateStatusAdministrationComponent } from './updateStatus/update-status-administration.component'; +import { UserAdministrationComponent, UserAdministrationRedirectModalComponent } from './user/user-administration.component'; +import { VersionsUpdateAdministrationComponent } from './versionUpdate/versions-update-administration.component'; +import { AdministrationComponent } from './home/administration.component'; import { DocumentFormModule } from '../document-form.module'; +import { UsersAdministrationComponent, UsersAdministrationRedirectModalComponent } from './user/users-administration.component'; @NgModule({ imports: [ SharedModule, - NgxChartsModule, + // NgxChartsModule, DocumentFormModule, AdministrationRoutingModule, DocumentViewerModule ], declarations: [ - AdministrationComponent, - UsersAdministrationComponent, - UserAdministrationComponent, - GroupsAdministrationComponent, - GroupAdministrationComponent, - IndexingAdministrationComponent, - BasketsAdministrationComponent, + AccountLinkComponent, + ActionAdministrationComponent, + ActionsAdministrationComponent, + AlfrescoAdministrationComponent, + AlfrescoListAdministrationComponent, BasketAdministrationComponent, + BasketAdministrationGroupListModalComponent, + BasketAdministrationSettingsModalComponent, + BasketsAdministrationComponent, + ContactDuplicateComponent, + ContactExportComponent, + ContactsCustomFieldsAdministrationComponent, + ContactsGroupAdministrationComponent, + ContactsGroupsAdministrationComponent, + ContactsListAdministrationComponent, + ContactsListAdministrationRedirectModalComponent, + ContactsPageAdministrationComponent, + ContactsParametersAdministrationComponent, + CustomFieldsAdministrationComponent, + DiffusionModelAdministrationComponent, + DiffusionModelsAdministrationComponent, + DocserverAdministrationComponent, + DocserversAdministrationComponent, DoctypesAdministrationComponent, + DoctypesAdministrationRedirectModalComponent, EntitiesAdministrationComponent, - StatusesAdministrationComponent, - StatusAdministrationComponent, - ActionsAdministrationComponent, - ActionAdministrationComponent, - ParametersAdministrationComponent, - ParameterAdministrationComponent, - PrioritiesAdministrationComponent, - PriorityAdministrationComponent, + EntitiesAdministrationRedirectModalComponent, + GroupAdministrationComponent, + GroupsAdministrationComponent, + GroupsAdministrationRedirectModalComponent, HistoryAdministrationComponent, HistoryBatchAdministrationComponent, - UpdateStatusAdministrationComponent, - ContactsGroupsAdministrationComponent, - ContactsGroupAdministrationComponent, - ContactsParametersAdministrationComponent, - NotificationsAdministrationComponent, + IndexingAdministrationComponent, + IndexingModelAdministrationComponent, + IndexingModelsAdministrationComponent, + ListAdministrationComponent, + ManageDuplicateComponent, NotificationAdministrationComponent, - UsersAdministrationRedirectModalComponent, - UserAdministrationRedirectModalComponent, - EntitiesAdministrationRedirectModalComponent, - GroupsAdministrationRedirectModalComponent, - BasketAdministrationSettingsModalComponent, - BasketAdministrationGroupListModalComponent, - DoctypesAdministrationRedirectModalComponent, - DiffusionModelsAdministrationComponent, - DiffusionModelAdministrationComponent, - VersionsUpdateAdministrationComponent, - DocserversAdministrationComponent, - DocserverAdministrationComponent, - TemplatesAdministrationComponent, - TemplateAdministrationComponent, + NotificationsAdministrationComponent, + ParameterAdministrationComponent, + ParametersAdministrationComponent, + PrioritiesAdministrationComponent, + PriorityAdministrationComponent, SecuritiesAdministrationComponent, SendmailAdministrationComponent, - ListAdministrationComponent, - TemplateAdministrationCheckEntitiesModalComponent, - ShippingsAdministrationComponent, ShippingAdministrationComponent, - AccountLinkComponent, - CustomFieldsAdministrationComponent, - IndexingModelAdministrationComponent, - IndexingModelsAdministrationComponent, - ContactsListAdministrationComponent, - ContactsListAdministrationRedirectModalComponent, - ContactsCustomFieldsAdministrationComponent, - ContactsPageAdministrationComponent, - TagsAdministrationComponent, + ShippingsAdministrationComponent, + StatusAdministrationComponent, + StatusesAdministrationComponent, TagAdministrationComponent, + TagsAdministrationComponent, + TemplateAdministrationCheckEntitiesModalComponent, + TemplateAdministrationComponent, TemplateFileEditorModalComponent, - AlfrescoAdministrationComponent, - AlfrescoListAdministrationComponent, - ContactDuplicateComponent, - ManageDuplicateComponent, - ContactExportComponent, + TemplatesAdministrationComponent, + UpdateStatusAdministrationComponent, + UserAdministrationComponent, + UserAdministrationRedirectModalComponent, + VersionsUpdateAdministrationComponent, + AdministrationComponent, + UsersAdministrationComponent, + UsersAdministrationRedirectModalComponent, ], entryComponents: [ - UsersAdministrationRedirectModalComponent, - UserAdministrationRedirectModalComponent, - EntitiesAdministrationRedirectModalComponent, - GroupsAdministrationRedirectModalComponent, - BasketAdministrationSettingsModalComponent, + AccountLinkComponent, BasketAdministrationGroupListModalComponent, - DoctypesAdministrationRedirectModalComponent, + BasketAdministrationSettingsModalComponent, + ContactExportComponent, ContactsListAdministrationRedirectModalComponent, + DoctypesAdministrationRedirectModalComponent, + EntitiesAdministrationRedirectModalComponent, + GroupsAdministrationRedirectModalComponent, + ManageDuplicateComponent, TemplateAdministrationCheckEntitiesModalComponent, - AccountLinkComponent, TemplateFileEditorModalComponent, - ManageDuplicateComponent, - ContactExportComponent + UserAdministrationRedirectModalComponent, + UsersAdministrationRedirectModalComponent, ], }) export class AdministrationModule { } diff --git a/src/frontend/app/app-common.module.ts b/src/frontend/app/app-common.module.ts index 508b4d5c898ac7d25575749d37d037f3ff306bf7..93f9428757ecb59228a686c0c2bb9beaad1d2bf1 100755 --- a/src/frontend/app/app-common.module.ts +++ b/src/frontend/app/app-common.module.ts @@ -7,6 +7,7 @@ import { FormsModule, ReactiveFormsModule } from '@angular/forms'; import { RouterModule } from '@angular/router'; import { DragDropModule } from '@angular/cdk/drag-drop'; + /*PLUGINS IMPORTS*/ import { AppServiceModule } from './app-service.module'; import { NotificationModule } from '../service/notification/notification.module'; @@ -145,7 +146,8 @@ import { LinkedResourceListComponent } from './linkedResource/linked-resource-li FolderMenuComponent, FolderActionListComponent, LinkedResourceListComponent, - AppServiceModule + AppServiceModule, + NotificationModule ], providers: [], entryComponents: [ diff --git a/src/frontend/app/app-material.module.ts b/src/frontend/app/app-material.module.ts index e8a7ad83d48e1fc53794855ad3e7c805b4acbee3..d87a152b8b9997684b7e2989279a41a2e48c6ba1 100755 --- a/src/frontend/app/app-material.module.ts +++ b/src/frontend/app/app-material.module.ts @@ -1,6 +1,7 @@ // import { LANG } from '../app/translate.component'; import { NativeDateAdapter, DateAdapter, MAT_DATE_FORMATS, MAT_DATE_LOCALE } from "@angular/material/core"; +@Injectable() export class AppDateAdapter extends NativeDateAdapter { // lang: any = LANG; parse(value: any): Date | null { @@ -52,7 +53,7 @@ export const APP_DATE_FORMATS = }; -import { NgModule } from '@angular/core'; +import { NgModule, Injectable } from '@angular/core'; import { DndModule } from 'ng2-dnd'; import { MatAutocompleteModule } from '@angular/material/autocomplete'; import { MatBadgeModule } from '@angular/material/badge'; diff --git a/src/frontend/app/app-routing.module.ts b/src/frontend/app/app-routing.module.ts index 47238692f6e406aa45e5a983261a6b7e7b656c9e..9cd86e8649460588b607dc182ba94828e113ca0e 100755 --- a/src/frontend/app/app-routing.module.ts +++ b/src/frontend/app/app-routing.module.ts @@ -1,5 +1,6 @@ import { NgModule } from '@angular/core'; import { RouterModule, Routes, PreloadAllModules } from '@angular/router'; +import { AppGuard } from '../service/app.guard'; import { ActivateUserComponent } from './activate-user.component'; import { PasswordModificationComponent } from './login/passwordModification/password-modification.component'; @@ -8,13 +9,18 @@ import { AboutUsComponent } from './about-us.component'; import { HomeComponent } from './home/home.component'; import { SaveNumericPackageComponent } from './save-numeric-package.component'; import { PrintSeparatorComponent } from './separator/print-separator/print-separator.component'; -import { AppGuard } from '../service/app.guard'; import { ForgotPasswordComponent } from './login/forgotPassword/forgotPassword.component'; import { ResetPasswordComponent } from './login/resetPassword/reset-password.component'; -import { LoginComponent } from './login/login.component'; import { DocumentViewerPageComponent } from './viewer/page/document-viewer-page.component'; +import { LoginComponent } from './login/login.component'; +import { SignatureBookComponent } from './signature-book.component'; +import { FollowedDocumentListComponent } from './home/followed-list/followed-document-list.component'; +import { FolderDocumentListComponent } from './folder/document-list/folder-document-list.component'; +import { BasketListComponent } from './list/basket-list.component'; + const routes: Routes = [ + { path: 'resources/:resId/content', canActivate: [AppGuard], component: DocumentViewerPageComponent }, { path: 'install', loadChildren: () => import('./installer/installer.module').then(m => m.InstallerModule) @@ -23,38 +29,25 @@ const routes: Routes = [ path: 'administration', loadChildren: () => import('./administration/administration.module').then(m => m.AdministrationModule) }, - { path: 'login', component: LoginComponent }, + { path: 'signatureBook/users/:userId/groups/:groupId/baskets/:basketId/resources/:resId', canActivate: [AppGuard], component: SignatureBookComponent }, + { path: 'followed', canActivate: [AppGuard], component: FollowedDocumentListComponent }, + { path: 'saveNumericPackage', canActivate: [AppGuard], component: SaveNumericPackageComponent }, + { path: 'separators/print', canActivate: [AppGuard], component: PrintSeparatorComponent }, + { path: 'forgot-password', component: ForgotPasswordComponent }, + { path: 'reset-password', component: ResetPasswordComponent }, { path: 'activate-user', component: ActivateUserComponent }, { path: 'password-modification', component: PasswordModificationComponent }, + { path: 'folders/:folderId', canActivate: [AppGuard], component: FolderDocumentListComponent }, { path: 'profile', canActivate: [AppGuard], component: ProfileComponent }, { path: 'about-us', canActivate: [AppGuard], component: AboutUsComponent }, { path: 'home', canActivate: [AppGuard], component: HomeComponent }, + { path: 'basketList/users/:userSerialId/groups/:groupSerialId/baskets/:basketId', canActivate: [AppGuard], component: BasketListComponent }, + { path: 'login', canActivate: [AppGuard], component: LoginComponent }, { - path: 'basketList/users/:userSerialId/groups/:groupSerialId/baskets/:basketId', - loadChildren: () => import('./list/list.module').then(m => m.ListModule) - }, - { - path: '', - loadChildren: () => import('./process/process.module').then(m => m.ProcessModule) + path: '**', + redirectTo: 'home', + pathMatch: 'full' }, - { - path: 'folders/:folderId', - loadChildren: () => import('./folder/folder.module').then(m => m.FolderModule) - }, - { path: 'saveNumericPackage', canActivate: [AppGuard], component: SaveNumericPackageComponent }, - { path: 'separators/print', canActivate: [AppGuard], component: PrintSeparatorComponent }, - { - path: 'signatureBook/users/:userId/groups/:groupId/baskets/:basketId/resources/:resId', - loadChildren: () => import('./signature-book.module').then(m => m.SignatureBookModule) - }, - { path: 'forgot-password', component: ForgotPasswordComponent }, - { path: 'reset-password', component: ResetPasswordComponent }, - { - path: 'followed', - loadChildren: () => import('./home/followed-list/followed-document.module').then(m => m.FollowedDocumentModule) - }, - { path: 'resources/:resId/content', canActivate: [AppGuard], component: DocumentViewerPageComponent }, - { path: '**', redirectTo: 'home', pathMatch: 'full' } ]; @NgModule({ imports: [ diff --git a/src/frontend/app/app-service.module.ts b/src/frontend/app/app-service.module.ts index d431aef1a0a2ebdcdb6ee0c6ad0baa16746ff9ef..b2c57bbd73490552c9d16d3724717003d3e2d1d7 100644 --- a/src/frontend/app/app-service.module.ts +++ b/src/frontend/app/app-service.module.ts @@ -32,13 +32,14 @@ import { SortPipe } from '../plugins/sorting.pipe'; FullDatePipe, SafeHtmlPipe, SecureUrlPipe, - SortPipe + SortPipe, ], entryComponents: [ ], providers: [ LatinisePipe, CookieService, + SortPipe ], }) -export class AppServiceModule { } +export class AppServiceModule {} diff --git a/src/frontend/app/app.component.ts b/src/frontend/app/app.component.ts index 013573253a0214fd0d1873045e1ba9f6fe430949..cb9de7893ad16ef7307b7d8876e84bc3eec15609 100755 --- a/src/frontend/app/app.component.ts +++ b/src/frontend/app/app.component.ts @@ -7,7 +7,6 @@ import { AppService } from '../service/app.service'; import { MatSidenav } from '@angular/material/sidenav'; import { LangService } from '../service/app-lang.service'; import { HttpClient } from '@angular/common/http'; -import { map } from 'rxjs/internal/operators/map'; import { AuthService } from '../service/auth.service'; /** Custom options the configure the tooltip's default show/hide delays. */ @@ -37,9 +36,8 @@ export class AppComponent implements OnInit { sanitizer: DomSanitizer, public appService: AppService, public headerService: HeaderService, - private authService: AuthService + private authService: AuthService, ) { - iconReg.addSvgIcon('maarchLogo', sanitizer.bypassSecurityTrustResourceUrl('../rest/images?image=onlyLogo')); iconReg.addSvgIcon('maarchLogoFull', sanitizer.bypassSecurityTrustResourceUrl('../rest/images?image=logo')); iconReg.addSvgIcon('maarchLogoWhite', sanitizer.bypassSecurityTrustResourceUrl('assets/logo_only_white.svg')); @@ -49,7 +47,7 @@ export class AppComponent implements OnInit { } - async ngOnInit(): Promise<void> { + ngOnInit() { this.headerService.hideSideBar = true; this.headerService.sideNavLeft = this.snavLeft; } diff --git a/src/frontend/app/app.module.ts b/src/frontend/app/app.module.ts index dd76bf7886f46a0a79c339c8fa56cf15851111e2..04de70a1f1a0a420e4223ca7c696708bdc7b1f91 100755 --- a/src/frontend/app/app.module.ts +++ b/src/frontend/app/app.module.ts @@ -1,10 +1,15 @@ -import { NgModule } from '@angular/core'; +import { NgModule, Injectable } from '@angular/core'; import { SharedModule } from './app-common.module'; +import { AppRoutingModule } from './app-routing.module'; +import { ProcessModule } from './process/process.module'; +import { DocumentViewerModule } from './viewer/document-viewer.module'; +import { AppListModule } from './app-list.module'; + + import { BrowserModule, HammerGestureConfig, HAMMER_GESTURE_CONFIG } from '@angular/platform-browser'; import { BrowserAnimationsModule } from '@angular/platform-browser/animations'; - import { HttpClientModule, HTTP_INTERCEPTORS } from '@angular/common/http'; import { AuthInterceptor } from '../service/auth-interceptor.service'; @@ -14,49 +19,38 @@ import { PrivilegeService } from '../service/privileges.service'; import { ActionsService } from './actions/actions.service'; import { AppComponent } from './app.component'; -import { AppRoutingModule } from './app-routing.module'; - -import { LoginComponent } from './login/login.component'; -import { ProfileComponent } from './profile.component'; import { AboutUsComponent } from './about-us.component'; -import { HomeComponent } from './home/home.component'; -import { MaarchParapheurListComponent } from './home/maarch-parapheur/maarch-parapheur-list.component'; - -import { PasswordModificationComponent, InfoChangePasswordModalComponent, } from './login/passwordModification/password-modification.component'; -import { SaveNumericPackageComponent } from './save-numeric-package.component'; import { ActivateUserComponent } from './activate-user.component'; - +import { AddAvisModelModalComponent } from './avis/addAvisModel/add-avis-model-modal.component'; +import { AddPrivateIndexingModelModalComponent } from './indexation/private-indexing-model/add-private-indexing-model-modal.component'; +import { AddVisaModelModalComponent } from './visa/addVisaModel/add-visa-model-modal.component'; +import { AttachmentCreateComponent } from './attachments/attachment-create/attachment-create.component'; +import { AttachmentPageComponent } from './attachments/attachments-page/attachment-page.component'; +import { BasketListComponent } from './list/basket-list.component'; +import { ContactModalComponent } from './administration/contact/modal/contact-modal.component'; +import { ContactResourceModalComponent } from './contact/contact-resource/modal/contact-resource-modal.component'; +import { DocumentViewerPageComponent } from './viewer/page/document-viewer-page.component'; +import { FolderCreateModalComponent } from './folder/folder-create-modal/folder-create-modal.component'; +import { FolderDocumentListComponent } from './folder/document-list/folder-document-list.component'; import { FolderPinnedComponent } from './folder/folder-pinned/folder-pinned.component'; import { FolderTreeComponent } from './folder/folder-tree.component'; -import { PanelFolderComponent } from './folder/panel/panel-folder.component'; import { FolderUpdateComponent } from './folder/folder-update/folder-update.component'; - -import { DocumentViewerModule } from './viewer/document-viewer.module'; -import { PrintSeparatorComponent } from './separator/print-separator/print-separator.component'; - +import { FollowedDocumentListComponent } from './home/followed-list/followed-document-list.component'; import { ForgotPasswordComponent } from './login/forgotPassword/forgotPassword.component'; +import { HomeComponent } from './home/home.component'; +import { LoginComponent } from './login/login.component'; +import { MaarchParapheurListComponent } from './home/maarch-parapheur/maarch-parapheur-list.component'; +import { PanelFolderComponent } from './folder/panel/panel-folder.component'; +import { PasswordModificationComponent, InfoChangePasswordModalComponent, } from './login/passwordModification/password-modification.component'; +import { PrintSeparatorComponent } from './separator/print-separator/print-separator.component'; +import { ProfileComponent } from './profile.component'; +import { RedirectIndexingModelComponent } from './administration/indexingModel/redirectIndexingModel/redirect-indexing-model.component'; import { ResetPasswordComponent } from './login/resetPassword/reset-password.component'; - -import { AttachmentPageComponent } from './attachments/attachments-page/attachment-page.component'; -import { AttachmentCreateComponent } from './attachments/attachment-create/attachment-create.component'; - -import { AddPrivateIndexingModelModalComponent } from './indexation/private-indexing-model/add-private-indexing-model-modal.component'; - -import { ContactResourceModalComponent } from './contact/contact-resource/modal/contact-resource-modal.component'; -import { ContactModalComponent } from './administration/contact/modal/contact-modal.component'; - +import { SaveNumericPackageComponent } from './save-numeric-package.component'; +import { SignatureBookComponent } from './signature-book.component'; import { VisaWorkflowModalComponent } from './visa/modal/visa-workflow-modal.component'; -import { AddVisaModelModalComponent } from './visa/addVisaModel/add-visa-model-modal.component'; -import { AddAvisModelModalComponent } from './avis/addAvisModel/add-avis-model-modal.component'; - -import { DocumentViewerModalComponent } from './viewer/modal/document-viewer-modal.component'; - -import { FolderCreateModalComponent } from './folder/folder-create-modal/folder-create-modal.component'; -import { DocumentViewerPageComponent } from './viewer/page/document-viewer-page.component'; - -import { RedirectIndexingModelComponent } from './administration/indexingModel/redirectIndexingModel/redirect-indexing-model.component'; - +@Injectable() export class MyHammerConfig extends HammerGestureConfig { overrides = <any>{ 'pinch': { enable: false }, @@ -71,53 +65,60 @@ export class MyHammerConfig extends HammerGestureConfig { HttpClientModule, SharedModule, AppRoutingModule, - DocumentViewerModule + DocumentViewerModule, + ProcessModule, + AppListModule, ], declarations: [ AppComponent, - LoginComponent, - ProfileComponent, AboutUsComponent, - HomeComponent, - MaarchParapheurListComponent, - PasswordModificationComponent, - SaveNumericPackageComponent, - InfoChangePasswordModalComponent, ActivateUserComponent, - PrintSeparatorComponent, + AddAvisModelModalComponent, + AddPrivateIndexingModelModalComponent, + AddVisaModelModalComponent, + AttachmentCreateComponent, + AttachmentPageComponent, + BasketListComponent, + ContactModalComponent, + ContactResourceModalComponent, + DocumentViewerPageComponent, + FolderCreateModalComponent, + FolderDocumentListComponent, FolderPinnedComponent, FolderTreeComponent, - PanelFolderComponent, FolderUpdateComponent, + FollowedDocumentListComponent, ForgotPasswordComponent, + HomeComponent, + InfoChangePasswordModalComponent, + LoginComponent, + MaarchParapheurListComponent, + PanelFolderComponent, + PasswordModificationComponent, + PrintSeparatorComponent, + ProfileComponent, + RedirectIndexingModelComponent, ResetPasswordComponent, - AttachmentPageComponent, - AttachmentCreateComponent, - AddPrivateIndexingModelModalComponent, - ContactResourceModalComponent, - ContactModalComponent, + SaveNumericPackageComponent, + SignatureBookComponent, VisaWorkflowModalComponent, - AddVisaModelModalComponent, - AddAvisModelModalComponent, - DocumentViewerModalComponent, - FolderCreateModalComponent, - DocumentViewerPageComponent, - RedirectIndexingModelComponent, + ], + exports : [ + SharedModule ], entryComponents: [ - InfoChangePasswordModalComponent, - FolderUpdateComponent, + AddAvisModelModalComponent, AddPrivateIndexingModelModalComponent, - AttachmentPageComponent, + AddVisaModelModalComponent, AttachmentCreateComponent, - ContactResourceModalComponent, + AttachmentPageComponent, ContactModalComponent, - VisaWorkflowModalComponent, - AddVisaModelModalComponent, - AddAvisModelModalComponent, - DocumentViewerModalComponent, + ContactResourceModalComponent, FolderCreateModalComponent, + FolderUpdateComponent, + InfoChangePasswordModalComponent, RedirectIndexingModelComponent, + VisaWorkflowModalComponent, ], providers: [{ provide: HTTP_INTERCEPTORS, useClass: AuthInterceptor, multi: true }, FiltersListService, FoldersService, ActionsService, PrivilegeService, { provide: HAMMER_GESTURE_CONFIG, diff --git a/src/frontend/app/folder/folder-routing.module.ts b/src/frontend/app/folder/folder-routing.module.ts deleted file mode 100644 index e1c173af0979fe11085abae0808ca72d626fc61f..0000000000000000000000000000000000000000 --- a/src/frontend/app/folder/folder-routing.module.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; - -import { FolderDocumentListComponent } from './document-list/folder-document-list.component'; -import { AppGuard } from '../../service/app.guard'; - -const routes: Routes = [ - { - path: '', - canActivate: [AppGuard], - component: FolderDocumentListComponent - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class FolderRoutingModule {} diff --git a/src/frontend/app/folder/folder.module.ts b/src/frontend/app/folder/folder.module.ts deleted file mode 100644 index 365de0096a6f34a3429e3033b60a180e206691a8..0000000000000000000000000000000000000000 --- a/src/frontend/app/folder/folder.module.ts +++ /dev/null @@ -1,24 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { SharedModule } from '../app-common.module'; -import { AppListModule } from '../app-list.module'; - -import { FolderRoutingModule } from './folder-routing.module'; - -import { FolderDocumentListComponent } from './document-list/folder-document-list.component'; - - -@NgModule({ - imports: [ - SharedModule, - AppListModule, - FolderRoutingModule - ], - declarations: [ - FolderDocumentListComponent, - ], - entryComponents: [ - - ] -}) -export class FolderModule { } diff --git a/src/frontend/app/home/followed-list/followed-document-routing.module.ts b/src/frontend/app/home/followed-list/followed-document-routing.module.ts deleted file mode 100644 index 8b6125b74f03d505c9a955d4672939294a4bbdd6..0000000000000000000000000000000000000000 --- a/src/frontend/app/home/followed-list/followed-document-routing.module.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; - -import { FollowedDocumentListComponent } from './followed-document-list.component'; -import { AppGuard } from '../../../service/app.guard'; - -const routes: Routes = [ - { - path: '', - canActivate: [AppGuard], - component: FollowedDocumentListComponent - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class FollowedDcumentRoutingModule {} diff --git a/src/frontend/app/home/followed-list/followed-document.module.ts b/src/frontend/app/home/followed-list/followed-document.module.ts deleted file mode 100644 index cd17216ca748a5883450a0b4d2cf00f05236b8f3..0000000000000000000000000000000000000000 --- a/src/frontend/app/home/followed-list/followed-document.module.ts +++ /dev/null @@ -1,23 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { SharedModule } from '../../app-common.module'; -import { AppListModule } from '../../app-list.module'; - -import { FollowedDcumentRoutingModule } from './followed-document-routing.module'; - -import { FollowedDocumentListComponent } from './followed-document-list.component'; - -@NgModule({ - imports: [ - SharedModule, - AppListModule, - FollowedDcumentRoutingModule - ], - declarations: [ - FollowedDocumentListComponent - ], - entryComponents: [ - - ] -}) -export class FollowedDocumentModule { } diff --git a/src/frontend/app/list/list-routing.module.ts b/src/frontend/app/list/list-routing.module.ts deleted file mode 100644 index e1129270e037070ac3bf12215142855ee8781ec4..0000000000000000000000000000000000000000 --- a/src/frontend/app/list/list-routing.module.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; - -import { BasketListComponent } from './basket-list.component'; -import { AppGuard } from '../../service/app.guard'; - -const routes: Routes = [ - { - path: '', - canActivate: [AppGuard], - component: BasketListComponent - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class ListRoutingModule {} diff --git a/src/frontend/app/list/list.module.ts b/src/frontend/app/list/list.module.ts deleted file mode 100644 index a6a52dad991aedd816851f727109b0fe3240b195..0000000000000000000000000000000000000000 --- a/src/frontend/app/list/list.module.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { SharedModule } from '../app-common.module'; -import { AppListModule } from '../app-list.module'; - -import { BasketListComponent } from './basket-list.component'; - -import { ListRoutingModule } from './list-routing.module'; - -@NgModule({ - imports: [ - SharedModule, - AppListModule, - ListRoutingModule, - ], - declarations: [ - BasketListComponent, - ], - entryComponents: [ - ] -}) -export class ListModule { } diff --git a/src/frontend/app/process/process-routing.module.ts b/src/frontend/app/process/process-routing.module.ts index 31307cb40e241c0344580eb745e6cad7d6f350c8..8aec719e0c3bcbde3797b2c4676603d50a52020b 100644 --- a/src/frontend/app/process/process-routing.module.ts +++ b/src/frontend/app/process/process-routing.module.ts @@ -6,11 +6,6 @@ import { IndexationComponent } from '../indexation/indexation.component'; import { AppGuard, AfterProcessGuard } from '../../service/app.guard'; const routes: Routes = [ - { - path: 'indexing/:groupId', - canActivate: [AppGuard], - component: IndexationComponent - }, { path: 'process/users/:userSerialId/groups/:groupSerialId/baskets/:basketId/resId/:resId', canActivate: [AppGuard], @@ -22,7 +17,12 @@ const routes: Routes = [ canActivate: [AppGuard], canDeactivate: [AfterProcessGuard], component: ProcessComponent - } + }, + { + path: 'indexing/:groupId', + canActivate: [AppGuard], + component: IndexationComponent + }, ]; @NgModule({ diff --git a/src/frontend/app/signature-book-routing.module.ts b/src/frontend/app/signature-book-routing.module.ts deleted file mode 100644 index 6046b98617056a5d03021e7666e64f0e313906aa..0000000000000000000000000000000000000000 --- a/src/frontend/app/signature-book-routing.module.ts +++ /dev/null @@ -1,19 +0,0 @@ -import { NgModule } from '@angular/core'; -import { Routes, RouterModule } from '@angular/router'; - -import { SignatureBookComponent } from './signature-book.component'; -import { AppGuard } from '../service/app.guard'; - -const routes: Routes = [ - { - path: '', - canActivate: [AppGuard], - component: SignatureBookComponent - } -]; - -@NgModule({ - imports: [RouterModule.forChild(routes)], - exports: [RouterModule], -}) -export class SignatureBookRoutingModule {} diff --git a/src/frontend/app/signature-book.module.ts b/src/frontend/app/signature-book.module.ts deleted file mode 100644 index 7cc22b982baaf54aace5ca58e829f1d623a9f0d0..0000000000000000000000000000000000000000 --- a/src/frontend/app/signature-book.module.ts +++ /dev/null @@ -1,22 +0,0 @@ -import { NgModule } from '@angular/core'; - -import { SharedModule } from './app-common.module'; - -import { SignatureBookRoutingModule } from './signature-book-routing.module'; -import { SignatureBookComponent } from './signature-book.component'; -import { NoteModule } from './notes/note.module'; -import { DocumentViewerModule } from './viewer/document-viewer.module'; - -@NgModule({ - imports: [ - SharedModule, - SignatureBookRoutingModule, - NoteModule, - DocumentViewerModule - ], - declarations: [SignatureBookComponent], - entryComponents: [ - - ] -}) -export class SignatureBookModule { } diff --git a/src/frontend/app/viewer/document-viewer.module.ts b/src/frontend/app/viewer/document-viewer.module.ts index 5625684923ed3424fb80670390edd99927f693e0..23e3a942215280f2f622dc3a91554d8496b7ad81 100644 --- a/src/frontend/app/viewer/document-viewer.module.ts +++ b/src/frontend/app/viewer/document-viewer.module.ts @@ -3,6 +3,8 @@ import { NgModule } from '@angular/core'; import { SharedModule } from '../app-common.module'; import { DocumentViewerComponent } from './document-viewer.component'; +import { DocumentViewerModalComponent } from './modal/document-viewer-modal.component'; + import { EcplOnlyofficeViewerComponent } from '../../plugins/onlyoffice-api-js/onlyoffice-viewer.component'; import { PdfViewerModule } from 'ng2-pdf-viewer'; @@ -14,7 +16,8 @@ import { PdfViewerModule } from 'ng2-pdf-viewer'; ], declarations: [ DocumentViewerComponent, - EcplOnlyofficeViewerComponent + EcplOnlyofficeViewerComponent, + DocumentViewerModalComponent ], exports: [ PdfViewerModule, @@ -22,6 +25,7 @@ import { PdfViewerModule } from 'ng2-pdf-viewer'; DocumentViewerComponent, ], entryComponents: [ + DocumentViewerModalComponent ] }) export class DocumentViewerModule { } diff --git a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js index 4430d40df39bff492bafcb67de5792c0ca6e013a..68839360cf3913aadb43fb9203f37d76240b9788 100644 --- a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js +++ b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-api.js @@ -643,7 +643,7 @@ var onlyofficetesturl = ''; return '5.4.2'; }; - MessageDispatcher = function(fn, scope) { + var MessageDispatcher = function(fn, scope) { var _fn = fn, _scope = scope || window, eventFn = function(msg) { diff --git a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts index 11313ad9ee76c55eedfacf8f55a9597401833e95..ad85fe5c98d142e200caa53a41ec9a18ce067aed 100644 --- a/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts +++ b/src/frontend/plugins/onlyoffice-api-js/onlyoffice-viewer.component.ts @@ -17,7 +17,7 @@ import { MatDialogRef, MatDialog } from '@angular/material/dialog'; import { HeaderService } from '../../service/header.service'; import { Subject } from 'rxjs/internal/Subject'; import { of } from 'rxjs/internal/observable/of'; -import { NotificationService } from '../../service/notification/notification.service.js'; +import { NotificationService } from '../../service/notification/notification.service'; declare var $: any; declare var DocsAPI: any; diff --git a/src/frontend/service/app.guard.ts b/src/frontend/service/app.guard.ts index 96d1f8f2e02990a49a484c2677aba03b5fd8e708..ae6bdfbab0e240a2c661faf2b88f9cde79bffb3f 100644 --- a/src/frontend/service/app.guard.ts +++ b/src/frontend/service/app.guard.ts @@ -32,7 +32,8 @@ export class AppGuard implements CanActivate { ) { } canActivate(route: ActivatedRouteSnapshot, state: RouterStateSnapshot): Observable<any> { - console.clear(); + const urlArr = state.url.replace(/^\/+|\/+$/g, '').split('/') + console.log('== ROUTE GUARD =='); this.headerService.resetSideNavSelection(); @@ -65,12 +66,13 @@ export class AppGuard implements CanActivate { if (this.headerService.user.status === 'ABS') { return this.router.navigate(['/activate-user']); } else { - if (route.url.map((url: any) => url.path).filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { + if (urlArr.filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { + this.headerService.hideSideBar = true; } else { this.headerService.hideSideBar = false; } - if (route.url.map((url: any) => url.path).filter((url: any) => url === 'administration').length > 0 || route.url.map((url: any) => url.path).filter((url: any) => url === 'profile').length > 0) { + if (urlArr.filter((url: any) => url === 'administration').length > 0 || urlArr.filter((url: any) => url === 'profile').length > 0) { this.headerService.sideBarAdmin = true; } else { this.headerService.sideBarAdmin = false; @@ -95,12 +97,12 @@ export class AppGuard implements CanActivate { this.router.navigate(['/activate-user']); return of(false); } else { - if (route.url.map((url: any) => url.path).filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { + if (urlArr.filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { this.headerService.hideSideBar = true; } else { this.headerService.hideSideBar = false; } - if (route.url.map((url: any) => url.path).filter((url: any) => url === 'administration').length > 0 || route.url.map((url: any) => url.path).filter((url: any) => url === 'profile').length > 0) { + if (urlArr.filter((url: any) => url === 'administration').length > 0 || urlArr.filter((url: any) => url === 'profile').length > 0) { this.headerService.sideBarAdmin = true; } else { this.headerService.sideBarAdmin = false; @@ -165,12 +167,12 @@ export class AppGuard implements CanActivate { if (this.headerService.user.status === 'ABS') { return this.router.navigate(['/activate-user']); } else { - if (route.url.map((url: any) => url.path).filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { + if (urlArr.filter((url: any) => ['signatureBook', 'content'].indexOf(url) > -1).length > 0) { this.headerService.hideSideBar = true; } else { this.headerService.hideSideBar = false; } - if (route.url.map((url: any) => url.path).filter((url: any) => url === 'administration').length > 0 || route.url.map((url: any) => url.path).filter((url: any) => url === 'profile').length > 0) { + if (urlArr.filter((url: any) => url === 'administration').length > 0 || urlArr.filter((url: any) => url === 'profile').length > 0) { this.headerService.sideBarAdmin = true; } else { this.headerService.sideBarAdmin = false; diff --git a/src/frontend/service/app.service.ts b/src/frontend/service/app.service.ts index acda2375a32887e0a12449b8979701c14a4813cf..869f3276c79be62d9ed8a43574206dd76a35c3f5 100644 --- a/src/frontend/service/app.service.ts +++ b/src/frontend/service/app.service.ts @@ -1,5 +1,4 @@ -import { Injectable, ChangeDetectorRef } from '@angular/core'; -import { MediaMatcher } from '@angular/cdk/layout'; +import { Injectable } from '@angular/core'; @Injectable({ providedIn: 'root' @@ -11,17 +10,14 @@ export class AppService { currentUser: any; - constructor(changeDetectorRef: ChangeDetectorRef, media: MediaMatcher) { - this.mobileQuery = media.matchMedia('(max-width: 768px)'); + constructor() { + /*this.mobileQuery = media.matchMedia('(max-width: 768px)'); this._mobileQueryListener = () => changeDetectorRef.detectChanges(); - this.mobileQuery.addListener(this._mobileQueryListener); - } - - initService() { - + this.mobileQuery.addListener(this._mobileQueryListener);*/ } getViewMode() { + return false; if (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)) { return true; } else { @@ -29,7 +25,7 @@ export class AppService { } } - ngOnDestroy(): void { + /*ngOnDestroy(): void { this.mobileQuery.removeListener(this._mobileQueryListener); - } + }*/ } diff --git a/src/frontend/tsconfig.app.json b/src/frontend/tsconfig.app.json index 86601eefd4e599abe43d751e8b604bfb18e2393f..e5652e102dd94fcf9f67277096c12a29332baf5d 100755 --- a/src/frontend/tsconfig.app.json +++ b/src/frontend/tsconfig.app.json @@ -4,17 +4,14 @@ "outDir": "../out-tsc/app", "baseUrl": "../../apps/maarch_entreprise/", }, - "angularCompilerOptions": { - "enableIvy": false - }, "files": [ "main.ts", "polyfills.ts" ], - "exclude": [ - "../../node_modules/*" - ], "include": [ "../../src/frontend/**/*.d.ts" + ], + "exclude": [ + "../../src/**/*.spec.ts" ] } diff --git a/src/frontend/tsconfig.json b/src/frontend/tsconfig.json index 30b0a9b27f77283e805f61b9dd66b1b489c820c4..e80e8cc892384a9a4511330d5e7e2f1eba925370 100755 --- a/src/frontend/tsconfig.json +++ b/src/frontend/tsconfig.json @@ -1,16 +1,23 @@ { + "compileOnSave": false, "compilerOptions": { - "target": "es5", - "module": "commonjs", - "moduleResolution": "node", - "sourceMap": false, - "emitDecoratorMetadata": true, + "baseUrl": "./", + "outDir": "./dist/out-tsc", + "sourceMap": true, + "declaration": false, + "downlevelIteration": true, "experimentalDecorators": true, - "lib": [ "es2015", "dom" ], - "noImplicitAny": true, - "suppressImplicitAnyIndexErrors": true + "module": "esnext", + "moduleResolution": "node", + "importHelpers": true, + "target": "es2015", + "lib": [ + "es2018", + "dom" + ] }, - "exclude": [ - "../../node_modules" - ] -} + "angularCompilerOptions": { + "fullTemplateTypeCheck": true, + "strictInjectionParameters": true + } +} \ No newline at end of file