2
2
* Copyright SeatGeek
3
3
* Licensed under the terms of the Apache-2.0 license. See LICENSE file in project root for terms.
4
4
*/
5
+ import { LoggerService } from '@backstage/backend-plugin-api' ;
5
6
import { Entity , isUserEntity } from '@backstage/catalog-model' ;
6
7
import { Config } from '@backstage/config' ;
7
8
import { LocationSpec } from '@backstage/plugin-catalog-common' ;
@@ -11,7 +12,6 @@ import type {
11
12
} from '@backstage/plugin-catalog-node' ;
12
13
import { WebClient } from '@slack/web-api' ;
13
14
import { Member } from '@slack/web-api/dist/types/response/UsersListResponse' ;
14
- import { Logger } from 'winston' ;
15
15
16
16
const SLACK_USER_LIMIT = 1000 ;
17
17
@@ -23,7 +23,7 @@ const SLACK_USER_LIMIT = 1000;
23
23
*/
24
24
export class SlackUserProcessor implements CatalogProcessor {
25
25
private readonly slack : WebClient ;
26
- private readonly logger : Logger ;
26
+ private readonly logger : LoggerService ;
27
27
private cacheLoaded : boolean ;
28
28
private userLookup : Map < string , Member > ;
29
29
// guarantee that users are loaded only once
@@ -86,7 +86,10 @@ export class SlackUserProcessor implements CatalogProcessor {
86
86
return this . userLookup ;
87
87
}
88
88
89
- static fromConfig ( config : Config , logger : Logger ) : SlackUserProcessor [ ] {
89
+ static fromConfig (
90
+ config : Config ,
91
+ logger : LoggerService ,
92
+ ) : SlackUserProcessor [ ] {
90
93
const slackToken = config . getOptionalString ( 'slackCatalog.token' ) ;
91
94
if ( ! slackToken ) {
92
95
logger . warn (
@@ -97,7 +100,7 @@ export class SlackUserProcessor implements CatalogProcessor {
97
100
return [ new SlackUserProcessor ( new WebClient ( slackToken ) , logger ) ] ;
98
101
}
99
102
100
- constructor ( slack : WebClient , logger : Logger ) {
103
+ constructor ( slack : WebClient , logger : LoggerService ) {
101
104
this . slack = slack ;
102
105
this . logger = logger ;
103
106
this . userLookup = new Map ( ) ;
0 commit comments