mirror of
https://github.com/dadosfera/maestro.git
synced 2026-10-24 22:59:07 +00:00
121 lines
4.6 KiB
TypeScript
121 lines
4.6 KiB
TypeScript
import { Module } from '@nestjs/common';
|
|
import { ClientsModule } from '@nestjs/microservices';
|
|
import { ConfigModule } from '@nestjs/config';
|
|
|
|
import { InputsController } from './modules/inputs/inputs.controller';
|
|
import { TransformationsController } from './modules/transformations/transformations.controller';
|
|
import { OutputsController } from './modules/outputs/outputs.controllers';
|
|
import { PipelinesController } from './modules/pipelines/pipelines.controller';
|
|
import { AuthController } from './modules/auth/auth.controller';
|
|
import { HealthController } from './modules/health/health.controller';
|
|
|
|
import { InputsService } from './modules/inputs/inputs.service';
|
|
import { TransformationsService } from './modules/transformations/transformations.service';
|
|
import { OutputsService } from './modules/outputs/outputs.service';
|
|
import { PipelinesService } from './modules/pipelines/pipelines.service';
|
|
import { HealthService } from './modules/health/health.service';
|
|
|
|
import { InputsClientService } from './clients/inputs/client.service';
|
|
import { TransformationsClientService } from './clients/transformations/client.service';
|
|
import { OutputsClientService } from './clients/outputs/client.service';
|
|
import { PipelinesClientService } from './clients/pipelines/client.service';
|
|
|
|
import { OutputsClientConfiguration } from './clients/outputs/client.config';
|
|
import { TransformationsClientConfiguration } from './clients/transformations/client.config';
|
|
import { InputsClientConfiguration } from './clients/inputs/client.config';
|
|
import { PipelinesClientConfiguration } from './clients/pipelines/client.config';
|
|
import { CatalogController } from './modules/catalog/catalog.controller';
|
|
import { CatalogService } from './modules/catalog/catalog.service';
|
|
import { OauthController } from './modules/oauth/oauth.controller';
|
|
import { getOauthSecrets } from './utils/OauthSecrets';
|
|
import { HubspotStrategy } from './modules/oauth/passport-strategies/hubspot-strategy';
|
|
import { FacebookStrategy } from './modules/oauth/passport-strategies/facebook-strategy';
|
|
import { AuthenticationGuard } from './authentication/authentication.guard';
|
|
import { APP_GUARD } from '@nestjs/core';
|
|
import { GoogleStrategy } from './modules/oauth/passport-strategies/google-strategy';
|
|
import { MailChimpStrategy } from './modules/oauth/passport-strategies/mailchimp-strategy';
|
|
import { SalesforceStrategy } from './modules/oauth/passport-strategies/salesforce-strategy';
|
|
|
|
import { ConnectorModule } from './modules/connector/connector.module';
|
|
import { AuthModule } from './modules/auth/auth.module';
|
|
import { PermissionsModule } from './modules/permissions/permissions.module';
|
|
|
|
import { DadosferaLogger } from 'dadosfera-logs';
|
|
import { TermsOfUseModule } from './modules/termsOfUse/termsOfUse.module';
|
|
import { ConnectionModule } from './modules/connection/connection.module';
|
|
import { ConnectionTestModule } from './modules/connection-test/connection-test.module';
|
|
import { NetworkConfigModule } from './modules/network-config/network-config.module';
|
|
|
|
const inputClient = new InputsClientConfiguration();
|
|
const outputClient = new OutputsClientConfiguration();
|
|
const pipelineClient = new PipelinesClientConfiguration();
|
|
const transformationClient = new TransformationsClientConfiguration();
|
|
|
|
@Module({
|
|
controllers: [
|
|
InputsController,
|
|
TransformationsController,
|
|
OutputsController,
|
|
PipelinesController,
|
|
AuthController,
|
|
HealthController,
|
|
CatalogController,
|
|
OauthController,
|
|
],
|
|
providers: [
|
|
DadosferaLogger,
|
|
{ provide: 'OAUTH_SECRETS', useValue: getOauthSecrets() },
|
|
InputsService,
|
|
TransformationsService,
|
|
OutputsService,
|
|
PipelinesService,
|
|
HealthService,
|
|
InputsClientService,
|
|
TransformationsClientService,
|
|
OutputsClientService,
|
|
PipelinesClientService,
|
|
CatalogService,
|
|
HubspotStrategy,
|
|
FacebookStrategy,
|
|
GoogleStrategy,
|
|
MailChimpStrategy,
|
|
SalesforceStrategy,
|
|
{
|
|
provide: APP_GUARD,
|
|
useClass: AuthenticationGuard,
|
|
},
|
|
],
|
|
imports: [
|
|
ConfigModule.forRoot({
|
|
isGlobal: true,
|
|
}),
|
|
ConnectorModule,
|
|
AuthModule,
|
|
PermissionsModule,
|
|
TermsOfUseModule,
|
|
ConnectionModule,
|
|
NetworkConfigModule,
|
|
ConnectionTestModule,
|
|
|
|
ClientsModule.register([
|
|
{
|
|
name: 'INPUTS_PACKAGE',
|
|
...inputClient.config(),
|
|
},
|
|
{
|
|
name: 'TRANSFORMATIONS_PACKAGE',
|
|
...transformationClient.config(),
|
|
},
|
|
{
|
|
name: 'OUTPUTS_PACKAGE',
|
|
...outputClient.config(),
|
|
},
|
|
{
|
|
name: 'PIPELINES_PACKAGE',
|
|
...pipelineClient.config(),
|
|
},
|
|
]),
|
|
],
|
|
})
|
|
export class AppModule {}
|