RedminePublicUrlConverter перенесён в библиотеку event-emitter
This commit is contained in:
parent
99b31164cf
commit
32bc8ace7e
7 changed files with 9 additions and 11 deletions
|
|
@ -2,16 +2,13 @@ import { RedmineTypes } from '@app/event-emitter/models/redmine-types';
|
||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
import { ConfigService } from '@nestjs/config';
|
import { ConfigService } from '@nestjs/config';
|
||||||
|
|
||||||
// TODO: Этот сервис возможно перенести в lib event-emitter
|
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class RedminePublicUrlConverter {
|
export class RedminePublicUrlConverter {
|
||||||
private redminePublicUrlPrefix: string;
|
private redminePublicUrlPrefix: string;
|
||||||
|
|
||||||
constructor(private configService: ConfigService) {
|
constructor(private configService: ConfigService) {
|
||||||
this.redminePublicUrlPrefix = this.configService.get<string>(
|
this.redminePublicUrlPrefix =
|
||||||
'redmineIssueEventEmitterConfig.redmineUrlPublic',
|
this.configService.get<string>('redmineUrlPublic');
|
||||||
);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
convert(issueId: number | string): string {
|
convert(issueId: number | string): string {
|
||||||
|
|
@ -21,6 +21,7 @@ import { EnhancerService } from './issue-enhancers/enhancer.service';
|
||||||
import { ProjectDashboardService } from './project-dashboard/project-dashboard.service';
|
import { ProjectDashboardService } from './project-dashboard/project-dashboard.service';
|
||||||
import { RootIssueSubTreesWidgetService } from './project-dashboard/widgets/root-issue-subtrees.widget.service';
|
import { RootIssueSubTreesWidgetService } from './project-dashboard/widgets/root-issue-subtrees.widget.service';
|
||||||
import { DynamicLoader } from './configs/dynamic-loader';
|
import { DynamicLoader } from './configs/dynamic-loader';
|
||||||
|
import { RedminePublicUrlConverter } from './converters/redmine-public-url.converter';
|
||||||
|
|
||||||
@Module({})
|
@Module({})
|
||||||
export class EventEmitterModule implements OnModuleInit {
|
export class EventEmitterModule implements OnModuleInit {
|
||||||
|
|
@ -46,6 +47,7 @@ export class EventEmitterModule implements OnModuleInit {
|
||||||
ProjectDashboardService,
|
ProjectDashboardService,
|
||||||
RootIssueSubTreesWidgetService,
|
RootIssueSubTreesWidgetService,
|
||||||
DynamicLoader,
|
DynamicLoader,
|
||||||
|
RedminePublicUrlConverter,
|
||||||
],
|
],
|
||||||
exports: [
|
exports: [
|
||||||
EventEmitterService,
|
EventEmitterService,
|
||||||
|
|
@ -63,6 +65,7 @@ export class EventEmitterModule implements OnModuleInit {
|
||||||
ProjectDashboardService,
|
ProjectDashboardService,
|
||||||
RootIssueSubTreesWidgetService,
|
RootIssueSubTreesWidgetService,
|
||||||
DynamicLoader,
|
DynamicLoader,
|
||||||
|
RedminePublicUrlConverter,
|
||||||
],
|
],
|
||||||
controllers: [MainController, UsersController, IssuesController],
|
controllers: [MainController, UsersController, IssuesController],
|
||||||
};
|
};
|
||||||
|
|
|
||||||
|
|
@ -9,7 +9,6 @@ import { switchMap, tap } from 'rxjs';
|
||||||
import { AppController } from './app.controller';
|
import { AppController } from './app.controller';
|
||||||
import { AppService } from './app.service';
|
import { AppService } from './app.service';
|
||||||
import configuration from './configs/app';
|
import configuration from './configs/app';
|
||||||
import { RedminePublicUrlConverter } from './converters/redmine-public-url.converter';
|
|
||||||
import { Changes } from './couchdb-datasources/changes';
|
import { Changes } from './couchdb-datasources/changes';
|
||||||
import { CurrentUserEnhancer } from './issue-enhancers/current-user-enhancer';
|
import { CurrentUserEnhancer } from './issue-enhancers/current-user-enhancer';
|
||||||
import { CustomFieldsEnhancer } from './issue-enhancers/custom-fields-enhancer';
|
import { CustomFieldsEnhancer } from './issue-enhancers/custom-fields-enhancer';
|
||||||
|
|
@ -63,7 +62,6 @@ import { SimpleKanbanBoardController } from './dashboards/simple-kanban-board.co
|
||||||
PersonalNotificationsService,
|
PersonalNotificationsService,
|
||||||
StatusChangeNotificationsService,
|
StatusChangeNotificationsService,
|
||||||
Changes,
|
Changes,
|
||||||
RedminePublicUrlConverter,
|
|
||||||
ChangesCacheWriterService,
|
ChangesCacheWriterService,
|
||||||
TelegramBotService,
|
TelegramBotService,
|
||||||
UserMetaInfoService,
|
UserMetaInfoService,
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@ import { ConfigService } from '@nestjs/config';
|
||||||
import { IssueAndPersonalParsedMessageModel } from 'src/models/issue-and-personal-parsed-message.model';
|
import { IssueAndPersonalParsedMessageModel } from 'src/models/issue-and-personal-parsed-message.model';
|
||||||
import { TelegramBotService } from 'src/telegram-bot/telegram-bot.service';
|
import { TelegramBotService } from 'src/telegram-bot/telegram-bot.service';
|
||||||
import Handlebars from 'handlebars';
|
import Handlebars from 'handlebars';
|
||||||
import { RedminePublicUrlConverter } from 'src/converters/redmine-public-url.converter';
|
import { RedminePublicUrlConverter } from '@app/event-emitter/converters/redmine-public-url.converter';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class PersonalNotificationAdapterService {
|
export class PersonalNotificationAdapterService {
|
||||||
|
|
|
||||||
|
|
@ -4,13 +4,13 @@ import { UsersService } from '@app/event-emitter/users/users.service';
|
||||||
import { TimestampConverter } from '@app/event-emitter/utils/timestamp-converter';
|
import { TimestampConverter } from '@app/event-emitter/utils/timestamp-converter';
|
||||||
import { Injectable, Logger } from '@nestjs/common';
|
import { Injectable, Logger } from '@nestjs/common';
|
||||||
import { ConfigService } from '@nestjs/config';
|
import { ConfigService } from '@nestjs/config';
|
||||||
import { RedminePublicUrlConverter } from 'src/converters/redmine-public-url.converter';
|
|
||||||
import { Change } from 'src/models/change.model';
|
import { Change } from 'src/models/change.model';
|
||||||
import { StatusChangesConfig } from 'src/models/status-changes-config.model';
|
import { StatusChangesConfig } from 'src/models/status-changes-config.model';
|
||||||
import { StatusesConfig } from 'src/models/statuses-config.model';
|
import { StatusesConfig } from 'src/models/statuses-config.model';
|
||||||
import Handlebars from 'handlebars';
|
import Handlebars from 'handlebars';
|
||||||
import { ChangeMessage } from 'src/models/change-message.model';
|
import { ChangeMessage } from 'src/models/change-message.model';
|
||||||
import { Subject } from 'rxjs';
|
import { Subject } from 'rxjs';
|
||||||
|
import { RedminePublicUrlConverter } from '@app/event-emitter/converters/redmine-public-url.converter';
|
||||||
|
|
||||||
@Injectable()
|
@Injectable()
|
||||||
export class StatusChangeNotificationsService {
|
export class StatusChangeNotificationsService {
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,9 @@ import { UNLIMITED } from '@app/event-emitter/consts/consts';
|
||||||
import { RedmineTypes } from '@app/event-emitter/models/redmine-types';
|
import { RedmineTypes } from '@app/event-emitter/models/redmine-types';
|
||||||
import nano from 'nano';
|
import nano from 'nano';
|
||||||
import Handlebars from 'handlebars';
|
import Handlebars from 'handlebars';
|
||||||
import { RedminePublicUrlConverter } from 'src/converters/redmine-public-url.converter';
|
|
||||||
import { EccmConfig } from 'src/models/eccm-config.model';
|
import { EccmConfig } from 'src/models/eccm-config.model';
|
||||||
import { IssuesService } from '@app/event-emitter/issues/issues.service';
|
import { IssuesService } from '@app/event-emitter/issues/issues.service';
|
||||||
|
import { RedminePublicUrlConverter } from '@app/event-emitter/converters/redmine-public-url.converter';
|
||||||
|
|
||||||
// eslint-disable-next-line @typescript-eslint/no-namespace
|
// eslint-disable-next-line @typescript-eslint/no-namespace
|
||||||
export namespace CurrentIssuesEccmReport {
|
export namespace CurrentIssuesEccmReport {
|
||||||
|
|
|
||||||
|
|
@ -1,7 +1,7 @@
|
||||||
|
import { RedminePublicUrlConverter } from '@app/event-emitter/converters/redmine-public-url.converter';
|
||||||
import { Timestamped } from '@app/event-emitter/models/timestamped';
|
import { Timestamped } from '@app/event-emitter/models/timestamped';
|
||||||
import { Injectable } from '@nestjs/common';
|
import { Injectable } from '@nestjs/common';
|
||||||
import nano from 'nano';
|
import nano from 'nano';
|
||||||
import { RedminePublicUrlConverter } from 'src/converters/redmine-public-url.converter';
|
|
||||||
import { DailyEccmUserCommentsService } from './daily-eccm-user-comments.service';
|
import { DailyEccmUserCommentsService } from './daily-eccm-user-comments.service';
|
||||||
import {
|
import {
|
||||||
DailyEccmReport,
|
DailyEccmReport,
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue