import { MwIconLoaderService, MwNotificationService } from 'projects/core/src//services'; import { SharedMfeService } from '@mw-shared-mfe'; import { MwHttpService } from 'projects/core/src//http'; import { MwAppConfigService } from 'projects/core/src//config'; import { MwUserService, MwUserApiService, MwCompanyService, UserActionGuard, MwCompanyApiService, MwUserAccessService, } from 'projects/core/src//auth'; export const SharedMfeProviders = [ { provide: MwHttpService, useFactory: (sharedServices: SharedMfeService) => { return sharedServices.httpService; }, deps: [SharedMfeService], }, { provide: MwAppConfigService, useFactory: (sharedServices: SharedMfeService) => sharedServices.configService, deps: [SharedMfeService], }, { provide: MwUserService, useFactory: (sharedServices: SharedMfeService) => sharedServices.userService, deps: [SharedMfeService], }, { provide: MwUserAccessService, useFactory: (sharedServices: SharedMfeService) => sharedServices.userAccessService, deps: [SharedMfeService], }, { provide: MwUserApiService, useFactory: (sharedServices: SharedMfeService) => sharedServices.userApiService, deps: [SharedMfeService], }, { provide: MwIconLoaderService, useFactory: (sharedServices: SharedMfeService) => sharedServices.iconLoader, deps: [SharedMfeService], }, { provide: MwCompanyApiService, useFactory: (sharedServices: SharedMfeService) => sharedServices.companyApiService, deps: [SharedMfeService], }, { provide: MwCompanyService, useFactory: (sharedServices: SharedMfeService) => sharedServices.companyService, deps: [SharedMfeService], }, { provide: MwNotificationService, useFactory: (sharedServices: SharedMfeService) => sharedServices.notificationService, deps: [SharedMfeService], }, UserActionGuard, ];