Skip to content

Commit f86b229

Browse files
authoredFeb 25, 2022
chore(dev): added unused import rule to eslint (#392)
1 parent 24be418 commit f86b229

File tree

16 files changed

+107
-25
lines changed

16 files changed

+107
-25
lines changed
 

‎.eslintrc.js

+10-1
Original file line numberDiff line numberDiff line change
@@ -12,8 +12,17 @@ module.exports = {
1212
sourceType: 'module'
1313
},
1414
ignorePatterns: ['*.js', '**/dist/**'],
15-
plugins: ['eslint-plugin-import', 'eslint-plugin-jsdoc', '@typescript-eslint'],
15+
plugins: [
16+
'eslint-plugin-import',
17+
'eslint-plugin-jsdoc',
18+
'@typescript-eslint',
19+
'eslint-plugin-react',
20+
'unused-imports'
21+
],
1622
rules: {
23+
'react/jsx-uses-react': 'error',
24+
'react/jsx-uses-vars': 'error',
25+
'unused-imports/no-unused-imports': 'error',
1726
'@typescript-eslint/consistent-type-definitions': 'error',
1827
'@typescript-eslint/member-delimiter-style': [
1928
'error',

‎package.json

+2
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,8 @@
6868
"eslint-import-resolver-node": "^0.3.6",
6969
"eslint-plugin-import": "^2.25.4",
7070
"eslint-plugin-jsdoc": "37.7.0",
71+
"eslint-plugin-react": "^7.28.0",
72+
"eslint-plugin-unused-imports": "^2.0.0",
7173
"jest": "^27.4.7",
7274
"jest-dev-server": "^6.0.3",
7375
"mkdirp": "^1.0.4",

‎packages/board/src/chat/chat.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,6 @@ export class Webchat {
3535
}
3636

3737
public async destroy() {
38-
this.socket.disconnect()
38+
await this.socket.disconnect()
3939
}
4040
}

‎packages/board/src/chat/conversation/system.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ export class WebchatConversation extends WebchatSystem {
2626
if (!conversation) {
2727
conversation = await this.socket.createConversation()
2828
} else {
29-
this.socket.switchConversation(conversation.id)
29+
await this.socket.switchConversation(conversation.id)
3030
}
3131

3232
this.storage.set(STORAGE_ID, conversation.id)

‎packages/board/src/chat/user/events.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { Emitter, uuid } from '@botpress/messaging-base'
1+
import { Emitter } from '@botpress/messaging-base'
22
import { UserCredentials } from '@botpress/messaging-socket'
33

44
export enum UserEvents {

‎packages/board/src/chat/user/system.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import { User, uuid } from '@botpress/messaging-base'
21
import { MessagingSocket, UserCredentials } from '@botpress/messaging-socket'
32
import { WebchatSystem } from '../base/system'
43
import { WebchatStorage } from '../storage/system'

‎packages/channels/src/base/stream.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import _ from 'lodash'
2-
import { ChannelContext, IndexChoiceOption } from './context'
2+
import { ChannelContext } from './context'
33
import { ChannelRenderer } from './renderer'
44
import { ChannelSender } from './sender'
55
import { ChannelSendEvent, ChannelService } from './service'

‎packages/channels/src/slack/api.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import {
2-
AckFn,
32
ButtonAction,
43
ReceiverEvent,
54
RespondFn,

‎packages/channels/src/slack/renderers/carousel.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
import { Button } from '@slack/bolt'
2-
import _ from 'lodash'
32
import { v4 as uuidv4 } from 'uuid'
43
import { CarouselContext, CarouselRenderer } from '../../base/renderers/carousel'
54
import { ActionOpenURL, ActionPostback, ActionSaySomething, CardContent } from '../../content/types'

‎packages/channels/src/teams/renderers/dropdown.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { ActivityTypes, CardFactory } from 'botbuilder'
1+
import { CardFactory } from 'botbuilder'
22
import { ChannelRenderer } from '../../base/renderer'
33
import { TeamsContext } from '../context'
44
import { QUICK_REPLY_PREFIX } from './choices'

‎packages/channels/src/telegram/stream.ts

-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import _ from 'lodash'
21
import { ChannelContext } from '../base/context'
32
import { CardToCarouselRenderer } from '../base/renderers/card'
43
import { DropdownToChoicesRenderer } from '../base/renderers/dropdown'

‎packages/client/test/e2e/client.test.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { v4 as uuid, validate as validateUuid } from 'uuid'
2-
import { Conversation, Message, MessagingChannel, MessagingClient, SyncRequest, SyncWebhook, User } from '../../src'
2+
import { Conversation, Message, MessagingChannel, MessagingClient, SyncWebhook, User } from '../../src'
33

44
const FAKE_UUID = uuid()
55
const FAKE_CLIENT_ID = uuid()

‎packages/server/src/user-tokens/service.ts

-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,6 @@ import {
1010
} from '@botpress/messaging-engine'
1111
import crypto from 'crypto'
1212
import { validate as validateUuid, v4 as uuidv4 } from 'uuid'
13-
import yn from 'yn'
1413
import { UserService } from '../users/service'
1514
import { UserTokenTable } from './table'
1615
import { UserToken } from './types'

‎packages/server/test/security/api.test.ts

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,5 @@
1-
import { Conversation, Endpoint, Message, SyncRequest, SyncResult, User } from '@botpress/messaging-base'
2-
import axios, { AxiosError, AxiosRequestConfig, Method } from 'axios'
3-
import _ from 'lodash'
4-
import querystring from 'querystring'
1+
import { Conversation, Endpoint, Message, SyncResult, User } from '@botpress/messaging-base'
2+
import axios, { AxiosError, AxiosRequestConfig } from 'axios'
53
import { v4 as uuid } from 'uuid'
64
import { randStr } from '../integration/utils'
75
import froth from './mocha-froth'

‎packages/server/test/unit/sync.test.ts

-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,3 @@
1-
import { DatabaseService } from '@botpress/messaging-engine'
2-
import cloneDeep from 'lodash/cloneDeep'
3-
41
import { ChannelService } from '../../src/channels/service'
52
import { SyncApi } from '../../src/sync/api'
63

‎yarn.lock

+87-6
Original file line numberDiff line numberDiff line change
@@ -2367,6 +2367,8 @@ __metadata:
23672367
eslint-import-resolver-node: ^0.3.6
23682368
eslint-plugin-import: ^2.25.4
23692369
eslint-plugin-jsdoc: 37.7.0
2370+
eslint-plugin-react: ^7.28.0
2371+
eslint-plugin-unused-imports: ^2.0.0
23702372
jest: ^27.4.7
23712373
jest-dev-server: ^6.0.3
23722374
mkdirp: ^1.0.4
@@ -7460,7 +7462,7 @@ __metadata:
74607462
languageName: node
74617463
linkType: hard
74627464

7463-
"array-includes@npm:^3.0.3, array-includes@npm:^3.1.4":
7465+
"array-includes@npm:^3.0.3, array-includes@npm:^3.1.3, array-includes@npm:^3.1.4":
74647466
version: 3.1.4
74657467
resolution: "array-includes@npm:3.1.4"
74667468
dependencies:
@@ -7514,7 +7516,7 @@ __metadata:
75147516
languageName: node
75157517
linkType: hard
75167518

7517-
"array.prototype.flatmap@npm:^1.2.1":
7519+
"array.prototype.flatmap@npm:^1.2.1, array.prototype.flatmap@npm:^1.2.5":
75187520
version: 1.2.5
75197521
resolution: "array.prototype.flatmap@npm:1.2.5"
75207522
dependencies:
@@ -11229,6 +11231,45 @@ __metadata:
1122911231
languageName: node
1123011232
linkType: hard
1123111233

11234+
"eslint-plugin-react@npm:^7.28.0":
11235+
version: 7.28.0
11236+
resolution: "eslint-plugin-react@npm:7.28.0"
11237+
dependencies:
11238+
array-includes: ^3.1.4
11239+
array.prototype.flatmap: ^1.2.5
11240+
doctrine: ^2.1.0
11241+
estraverse: ^5.3.0
11242+
jsx-ast-utils: ^2.4.1 || ^3.0.0
11243+
minimatch: ^3.0.4
11244+
object.entries: ^1.1.5
11245+
object.fromentries: ^2.0.5
11246+
object.hasown: ^1.1.0
11247+
object.values: ^1.1.5
11248+
prop-types: ^15.7.2
11249+
resolve: ^2.0.0-next.3
11250+
semver: ^6.3.0
11251+
string.prototype.matchall: ^4.0.6
11252+
peerDependencies:
11253+
eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8
11254+
checksum: 90293d0fd53bb1f735ffd32141cdd211fb1120c9f7bbe5342f9e923261a39e52a2b2575d4e46c9cd77d257f42db4a99b8b339689fc5b5c1c26048929f69b1784
11255+
languageName: node
11256+
linkType: hard
11257+
11258+
"eslint-plugin-unused-imports@npm:^2.0.0":
11259+
version: 2.0.0
11260+
resolution: "eslint-plugin-unused-imports@npm:2.0.0"
11261+
dependencies:
11262+
eslint-rule-composer: ^0.3.0
11263+
peerDependencies:
11264+
"@typescript-eslint/eslint-plugin": ^5.0.0
11265+
eslint: ^8.0.0
11266+
peerDependenciesMeta:
11267+
"@typescript-eslint/eslint-plugin":
11268+
optional: true
11269+
checksum: 8aa1e03e75da2a62a354065e0cb8fe370118c6f8d9720a32fe8c1da937de6adb81a4fed7d0d391d115ac9453b49029fb19f970d180a2cf3dba451fd4c20f0dc4
11270+
languageName: node
11271+
linkType: hard
11272+
1123211273
"eslint-rule-composer@npm:^0.3.0":
1123311274
version: 0.3.0
1123411275
resolution: "eslint-rule-composer@npm:0.3.0"
@@ -11396,7 +11437,7 @@ __metadata:
1139611437
languageName: node
1139711438
linkType: hard
1139811439

11399-
"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0":
11440+
"estraverse@npm:^5.1.0, estraverse@npm:^5.2.0, estraverse@npm:^5.3.0":
1140011441
version: 5.3.0
1140111442
resolution: "estraverse@npm:5.3.0"
1140211443
checksum: 072780882dc8416ad144f8fe199628d2b3e7bbc9989d9ed43795d2c90309a2047e6bc5979d7e2322a341163d22cfad9e21f4110597fe487519697389497e4e2b
@@ -15437,6 +15478,16 @@ __metadata:
1543715478
languageName: node
1543815479
linkType: hard
1543915480

15481+
"jsx-ast-utils@npm:^2.4.1 || ^3.0.0":
15482+
version: 3.2.1
15483+
resolution: "jsx-ast-utils@npm:3.2.1"
15484+
dependencies:
15485+
array-includes: ^3.1.3
15486+
object.assign: ^4.1.2
15487+
checksum: dcee22e6382ee5a6bd4187333a44b6420d9d079838119a07055d6e88d137dd0afadc97a2246152b0b65006bd5fc393112dc0cef01956a01a66c1713913953c66
15488+
languageName: node
15489+
linkType: hard
15490+
1544015491
"junk@npm:^3.1.0":
1544115492
version: 3.1.0
1544215493
resolution: "junk@npm:3.1.0"
@@ -17353,7 +17404,7 @@ __metadata:
1735317404
languageName: node
1735417405
linkType: hard
1735517406

17356-
"object.entries@npm:^1.1.0":
17407+
"object.entries@npm:^1.1.0, object.entries@npm:^1.1.5":
1735717408
version: 1.1.5
1735817409
resolution: "object.entries@npm:1.1.5"
1735917410
dependencies:
@@ -17364,7 +17415,7 @@ __metadata:
1736417415
languageName: node
1736517416
linkType: hard
1736617417

17367-
"object.fromentries@npm:^2.0.0 || ^1.0.0":
17418+
"object.fromentries@npm:^2.0.0 || ^1.0.0, object.fromentries@npm:^2.0.5":
1736817419
version: 2.0.5
1736917420
resolution: "object.fromentries@npm:2.0.5"
1737017421
dependencies:
@@ -17386,6 +17437,16 @@ __metadata:
1738617437
languageName: node
1738717438
linkType: hard
1738817439

17440+
"object.hasown@npm:^1.1.0":
17441+
version: 1.1.0
17442+
resolution: "object.hasown@npm:1.1.0"
17443+
dependencies:
17444+
define-properties: ^1.1.3
17445+
es-abstract: ^1.19.1
17446+
checksum: 5c5d0b1b793514609f7a635f3110fbd346e142c9afd2485b802775e1ef6c90e48ff6e8e8744927933370ba30964e21af9c5fcf782b47f34d650aa6b277565330
17447+
languageName: node
17448+
linkType: hard
17449+
1738917450
"object.pick@npm:^1.3.0":
1739017451
version: 1.3.0
1739117452
resolution: "object.pick@npm:1.3.0"
@@ -20258,6 +20319,16 @@ __metadata:
2025820319
languageName: node
2025920320
linkType: hard
2026020321

20322+
"resolve@npm:^2.0.0-next.3":
20323+
version: 2.0.0-next.3
20324+
resolution: "resolve@npm:2.0.0-next.3"
20325+
dependencies:
20326+
is-core-module: ^2.2.0
20327+
path-parse: ^1.0.6
20328+
checksum: f34b3b93ada77d64a6d590c06a83e198f3a827624c4ec972260905fa6c4d612164fbf0200d16d2beefea4ad1755b001f4a9a1293d8fc2322a8f7d6bf692c4ff5
20329+
languageName: node
20330+
linkType: hard
20331+
2026120332
"resolve@patch:resolve@^1.0.0#~builtin<compat/resolve>":
2026220333
version: 1.21.0
2026320334
resolution: "resolve@patch:resolve@npm%3A1.21.0#~builtin<compat/resolve>::version=1.21.0&hash=07638b"
@@ -20281,6 +20352,16 @@ __metadata:
2028120352
languageName: node
2028220353
linkType: hard
2028320354

20355+
"resolve@patch:resolve@^2.0.0-next.3#~builtin<compat/resolve>":
20356+
version: 2.0.0-next.3
20357+
resolution: "resolve@patch:resolve@npm%3A2.0.0-next.3#~builtin<compat/resolve>::version=2.0.0-next.3&hash=07638b"
20358+
dependencies:
20359+
is-core-module: ^2.2.0
20360+
path-parse: ^1.0.6
20361+
checksum: 21684b4d99a4877337cdbd5484311c811b3e8910edb5d868eec85c6e6550b0f570d911f9a384f9e176172d6713f2715bd0b0887fa512cb8c6aeece018de6a9f8
20362+
languageName: node
20363+
linkType: hard
20364+
2028420365
"restore-cursor@npm:^3.1.0":
2028520366
version: 3.1.0
2028620367
resolution: "restore-cursor@npm:3.1.0"
@@ -21505,7 +21586,7 @@ __metadata:
2150521586
languageName: node
2150621587
linkType: hard
2150721588

21508-
"string.prototype.matchall@npm:^4.0.0 || ^3.0.1":
21589+
"string.prototype.matchall@npm:^4.0.0 || ^3.0.1, string.prototype.matchall@npm:^4.0.6":
2150921590
version: 4.0.6
2151021591
resolution: "string.prototype.matchall@npm:4.0.6"
2151121592
dependencies:

0 commit comments

Comments
 (0)
Please sign in to comment.