plugin-issue2453.ts 1010 B

123456789101112131415161718192021222324252627282930
  1. import { PluginCommonModule, VendurePlugin } from '@vendure/core';
  2. import { apiExtensions } from './api/index';
  3. import { CampaignTranslation } from './entities/campaign-translation.entity';
  4. import { Campaign } from './entities/campaign.entity';
  5. import { collectionCustomFields } from './entities/custom-fields-collection.entity';
  6. import { CampaignService } from './services/campaign.service';
  7. @VendurePlugin({
  8. imports: [PluginCommonModule],
  9. entities: [Campaign, CampaignTranslation],
  10. adminApiExtensions: {
  11. schema: apiExtensions,
  12. },
  13. shopApiExtensions: {
  14. schema: apiExtensions,
  15. },
  16. compatibility: '>=2.0.0',
  17. providers: [CampaignService],
  18. configuration: config => {
  19. config.customFields.Collection.push(...collectionCustomFields);
  20. return config;
  21. },
  22. })
  23. export class PluginIssue2453 {
  24. constructor(private campaignService: CampaignService) {}
  25. async onApplicationBootstrap() {
  26. await this.campaignService.initCampaigns();
  27. }
  28. }