argos/dmp-frontend/src/app/core/core-service.module.ts

122 lines
5.5 KiB
TypeScript
Raw Normal View History

import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';
2019-01-18 18:03:45 +01:00
import { CookieService } from 'ngx-cookie-service';
2020-12-10 14:29:24 +01:00
import { AdminAuthGuard } from './admin-auth-guard.service';
2019-01-18 18:03:45 +01:00
import { AuthGuard } from './auth-guard.service';
import { AuthService } from './services/auth/auth.service';
2020-12-10 14:29:24 +01:00
import { ContactSupportService } from './services/contact-support/contact-support.service';
2019-01-18 18:03:45 +01:00
import { CultureService } from './services/culture/culture-service';
2020-12-10 14:29:24 +01:00
import { LanguageInfoService } from './services/culture/language-info-service';
2019-01-18 18:03:45 +01:00
import { DashboardService } from './services/dashboard/dashboard.service';
2023-12-29 16:04:16 +01:00
import { DepositService } from './services/deposit/deposit.service';
import { DescriptionTemplateTypeService } from './services/description-template-type/description-template-type.service';
import { DmpBlueprintService } from './services/dmp/dmp-blueprint.service';
2023-12-29 16:04:16 +01:00
import { DmpService } from './services/dmp/dmp.service';
import { BaseHttpV2Service } from './services/http/base-http-v2.service';
2020-12-10 14:29:24 +01:00
import { LanguageService } from './services/language/language.service';
import { LockService } from './services/lock/lock.service';
2019-01-18 18:03:45 +01:00
import { LoggingService } from './services/logging/logging-service';
import { UiNotificationService } from './services/notification/ui-notification-service';
import { ProgressIndicationService } from './services/progress-indication/progress-indication-service';
import { TimezoneService } from './services/timezone/timezone-service';
import { CollectionUtils } from './services/utilities/collection-utils.service';
import { TypeUtils } from './services/utilities/type-utils.service';
import { SpecialAuthGuard } from './special-auth-guard.service';
2023-10-18 09:31:57 +02:00
//import { KeycloakService } from 'keycloak-angular';
2023-12-29 16:04:16 +01:00
import { CanDeactivateGuard } from '@app/library/deactivate/can-deactivate.guard';
import { HttpErrorHandlingService } from '@common/modules/errors/error-handling/http-error-handling.service';
import { FilterService } from '@common/modules/text-filter/filter-service';
2023-11-24 17:42:23 +01:00
import { DescriptionTemplateService } from './services/description-template/description-template.service';
2023-12-29 16:04:16 +01:00
import { DescriptionService } from './services/description/description.service';
import { FileTransformerService } from './services/file-transformer/file-transformer.service';
2023-10-11 16:53:12 +02:00
import { PrincipalService } from './services/http/principal.service';
2023-12-29 16:04:16 +01:00
import { LanguageHttpService } from './services/language/language.http.service';
import { MaintenanceService } from './services/maintenance/maintenance.service';
import { NotificationTemplateService } from './services/notification-template/notification-template.service';
2023-11-24 17:42:23 +01:00
import { ReferenceTypeService } from './services/reference-type/reference-type.service';
2023-10-27 17:56:19 +02:00
import { ReferenceService } from './services/reference/reference.service';
2023-10-18 09:31:57 +02:00
import { SupportiveMaterialService } from './services/supportive-material/supportive-material.service';
2023-12-29 16:04:16 +01:00
import { TagService } from './services/tag/tag.service';
2023-11-24 17:42:23 +01:00
import { TenantService } from './services/tenant/tenant.service';
import { UserSettingsHttpService } from './services/user-settings/user-settings-http.service';
import { UserSettingsService } from './services/user-settings/user-settings.service';
2023-11-24 17:42:23 +01:00
import { UserService } from './services/user/user.service';
2023-10-25 16:47:48 +02:00
import { FileUtils } from './services/utilities/file-utils.service';
2023-10-27 17:56:19 +02:00
import { QueryParamsService } from './services/utilities/query-params.service';
2023-12-29 16:04:16 +01:00
import { FileTransformerHttpService } from './services/file-transformer/file-transformer.http.service';
2024-01-08 17:32:07 +01:00
import { InAppNotificationService } from './services/inapp-notification/inapp-notification.service';
2024-01-11 16:59:27 +01:00
import { NotificationService } from './services/notification/notification-service';
2024-02-20 13:58:16 +01:00
import { SemanticsService } from './services/semantic/semantics.service';
2024-02-26 18:40:31 +01:00
import { PrefillingSourceService } from './services/prefilling-source/prefilling-source.service';
2024-03-28 17:41:28 +01:00
import { VisibilityRulesService } from '@app/ui/description/editor/description-form/visibility-rules/visibility-rules.service';
2019-01-18 18:03:45 +01:00
//
//
// This is shared module that provides all the services. Its imported only once on the AppModule.
//
//
@NgModule({
})
export class CoreServiceModule {
constructor(@Optional() @SkipSelf() parentModule: CoreServiceModule) {
if (parentModule) {
throw new Error(
'CoreModule is already loaded. Import it in the AppModule only');
}
}
2021-09-24 20:52:14 +02:00
static forRoot(): ModuleWithProviders<CoreServiceModule> {
2019-01-18 18:03:45 +01:00
return {
ngModule: CoreServiceModule,
providers: [
AuthService,
CookieService,
2023-10-05 10:41:11 +02:00
BaseHttpV2Service,
AdminAuthGuard,
SpecialAuthGuard,
2019-01-18 18:03:45 +01:00
AuthGuard,
CultureService,
TimezoneService,
TypeUtils,
CollectionUtils,
UiNotificationService,
ProgressIndicationService,
LoggingService,
DashboardService,
2023-12-29 16:04:16 +01:00
DepositService,
DmpBlueprintService,
ContactSupportService,
LanguageService,
LockService,
2023-10-11 16:53:12 +02:00
PrincipalService,
2023-10-18 09:31:57 +02:00
SupportiveMaterialService,
LanguageInfoService,
DescriptionTemplateTypeService,
HttpErrorHandlingService,
QueryParamsService,
UserSettingsService,
UserSettingsHttpService,
2023-10-25 16:47:48 +02:00
FilterService,
2023-10-27 17:56:19 +02:00
FileUtils,
ReferenceService,
DescriptionTemplateService,
2023-11-22 17:01:58 +01:00
ReferenceTypeService,
2023-11-24 17:42:23 +01:00
TenantService,
2023-11-27 17:22:13 +01:00
UserService,
2023-11-29 14:26:40 +01:00
LanguageHttpService,
2023-12-29 16:04:16 +01:00
DmpService,
DescriptionService,
2023-12-19 18:08:17 +01:00
MaintenanceService,
2023-12-28 16:18:49 +01:00
NotificationTemplateService,
TagService,
2023-12-29 16:04:16 +01:00
CanDeactivateGuard,
FileTransformerService,
2024-01-08 17:32:07 +01:00
FileTransformerHttpService,
2024-01-11 16:59:27 +01:00
InAppNotificationService,
2024-02-20 13:58:16 +01:00
NotificationService,
2024-02-26 18:40:31 +01:00
SemanticsService,
2024-03-28 17:41:28 +01:00
PrefillingSourceService,
VisibilityRulesService
2019-01-18 18:03:45 +01:00
],
};
}
}