Skip to content

Commit 7a2a727

Browse files
author
Morgan Touverey Quilling
committed
chore(package, typescript): add typescript and tslint configuration(s)
1 parent 88451fd commit 7a2a727

File tree

4 files changed

+118
-4
lines changed

4 files changed

+118
-4
lines changed

package.json

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@
1010
],
1111
"main": "lib/index.js",
1212
"module": "mjs/index.mjs",
13+
"types": "lib/index.d.ts",
1314
"repository": {
1415
"type": "git",
1516
"url": "https://github.com/graphql-compose/graphql-compose-mongoose.git"
@@ -39,6 +40,8 @@
3940
"mongoose": ">=4.0.0 || >=5.0.0"
4041
},
4142
"devDependencies": {
43+
"@types/graphql": "^0.13.4",
44+
"@types/mongoose": "^5.2.4",
4245
"babel-cli": "^6.26.0",
4346
"babel-core": "^6.26.3",
4447
"babel-eslint": "^8.2.6",
@@ -66,7 +69,9 @@
6669
"prettier": "^1.13.7",
6770
"request": "^2.87.0",
6871
"rimraf": "^2.6.2",
69-
"semantic-release": "^15.7.2"
72+
"semantic-release": "^15.7.2",
73+
"tslint": "^5.11.0",
74+
"typescript": "^3.0.1"
7075
},
7176
"config": {
7277
"commitizen": {
@@ -86,11 +91,15 @@
8691
"build-mjs": "rimraf mjs && BABEL_ENV=mjs babel src --ignore __tests__,__mocks__ -d mjs && yarn build-mjs-rename && COPY_TO_FOLDER=mjs npm run build-flow",
8792
"build-mjs-rename": "find ./mjs -name \"*.js\" -exec bash -c 'mv \"$1\" \"${1%.js}\".mjs' - '{}' \\;",
8893
"build-flow": "echo `$1` && find ./src -name '*.js' -not -path '*/__*' | while read filepath; do cp $filepath `echo ./${COPY_TO_FOLDER:-lib}$filepath | sed 's/.\\/src\\//\\//g'`.flow; done",
94+
"build-ts": "find ./src -name '*.d.ts' -not -path '*/__*' | while read filepath; do cp $filepath `echo ./${COPY_TO_FOLDER:-lib}$filepath | sed 's/.\\/src\\//\\//g'`; done",
8995
"watch": "jest --watch",
9096
"coverage": "jest --coverage --maxWorkers 2",
91-
"lint": "eslint --ext .js ./src",
97+
"lint": "npm run eslint && npm run tslint",
98+
"eslint": "eslint --ext .js ./src",
99+
"tslint": "tslint -p . \"src/**/*.d.ts\"",
100+
"tscheck": "tsc",
92101
"flow": "./node_modules/.bin/flow",
93-
"test": "npm run coverage && npm run lint && npm run flow",
102+
"test": "npm run coverage && npm run lint && npm run flow && npm run tscheck",
94103
"link": "yarn build && yarn link graphql-compose && yarn link graphql-compose-connection && yarn link mongoose && yarn link",
95104
"unlink": "yarn unlink graphql-compose && yarn unlink graphql-compose-connection && yarn unlink mongoose && yarn add graphql-compose graphql-compose-connection mongoose --dev",
96105
"semantic-release": "semantic-release"

tsconfig.json

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"compilerOptions": {
3+
"target": "esnext",
4+
"module": "commonjs",
5+
"strict": true,
6+
"lib": ["es2017", "esnext.asynciterable"]
7+
},
8+
"include": ["src/**/*.d.ts"],
9+
"exclude": [
10+
"./node_modules"
11+
]
12+
}

tslint.json

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
{
2+
"defaultSeverity": "error",
3+
"extends": [
4+
"tslint:recommended"
5+
],
6+
"jsRules": {},
7+
"rules": {
8+
"quotemark": [true, "single"],
9+
"trailing-comma": [false],
10+
"ordered-imports": false,
11+
"member-ordering": [true, { "order": "fields-first" }],
12+
"variable-name": false,
13+
"interface-name": [true, "never-prefix"],
14+
"no-reference-import": false,
15+
"interface-over-type-literal": false
16+
},
17+
"rulesDirectory": []
18+
}

yarn.lock

Lines changed: 76 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,40 @@
166166
into-stream "^3.1.0"
167167
lodash "^4.17.4"
168168

169+
"@types/bson@*":
170+
version "1.0.11"
171+
resolved "https://registry.yarnpkg.com/@types/bson/-/bson-1.0.11.tgz#c95ad69bb0b3f5c33b4bb6cc86d86cafb273335c"
172+
dependencies:
173+
"@types/node" "*"
174+
175+
"@types/events@*":
176+
version "1.2.0"
177+
resolved "https://registry.yarnpkg.com/@types/events/-/events-1.2.0.tgz#81a6731ce4df43619e5c8c945383b3e62a89ea86"
178+
179+
"@types/graphql@^0.13.4":
180+
version "0.13.4"
181+
resolved "https://registry.yarnpkg.com/@types/graphql/-/graphql-0.13.4.tgz#55ae9c29f0fd6b85ee536f5c72b4769d5c5e06b1"
182+
183+
"@types/mongodb@*":
184+
version "3.1.3"
185+
resolved "https://registry.yarnpkg.com/@types/mongodb/-/mongodb-3.1.3.tgz#73a2dba96cc10e9c9b0670a1a34a0caefe2c6c37"
186+
dependencies:
187+
"@types/bson" "*"
188+
"@types/events" "*"
189+
"@types/node" "*"
190+
191+
"@types/mongoose@^5.2.4":
192+
version "5.2.4"
193+
resolved "https://registry.yarnpkg.com/@types/mongoose/-/mongoose-5.2.4.tgz#ad66ba1d7bff5d854c35ee88a00cdda0df2acd70"
194+
dependencies:
195+
"@types/events" "*"
196+
"@types/mongodb" "*"
197+
"@types/node" "*"
198+
199+
"@types/node@*":
200+
version "10.5.7"
201+
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.5.7.tgz#960d9feb3ade2233bcc9843c918d740b4f78a7cf"
202+
169203
JSONStream@^1.0.4:
170204
version "1.3.1"
171205
resolved "https://registry.yarnpkg.com/JSONStream/-/JSONStream-1.3.1.tgz#707f761e01dae9e16f1bcf93703b78c70966579a"
@@ -1274,7 +1308,7 @@ buffer@^3.0.1:
12741308
ieee754 "^1.1.4"
12751309
isarray "^1.0.0"
12761310

1277-
builtin-modules@^1.0.0:
1311+
builtin-modules@^1.0.0, builtin-modules@^1.1.1:
12781312
version "1.1.1"
12791313
resolved "https://registry.yarnpkg.com/builtin-modules/-/builtin-modules-1.1.1.tgz#270f076c5a72c02f5b65a47df94c5fe3a278892f"
12801314

@@ -1500,6 +1534,10 @@ commander@^2.11.0:
15001534
version "2.11.0"
15011535
resolved "https://registry.yarnpkg.com/commander/-/commander-2.11.0.tgz#157152fd1e7a6c8d98a5b715cf376df928004563"
15021536

1537+
commander@^2.12.1:
1538+
version "2.17.1"
1539+
resolved "https://registry.yarnpkg.com/commander/-/commander-2.17.1.tgz#bd77ab7de6de94205ceacc72f1716d29f20a77bf"
1540+
15031541
commander@~2.8.1:
15041542
version "2.8.1"
15051543
resolved "https://registry.yarnpkg.com/commander/-/commander-2.8.1.tgz#06be367febfda0c330aa1e2a072d3dc9762425d4"
@@ -5001,6 +5039,12 @@ resolve@^1.2.0:
50015039
dependencies:
50025040
path-parse "^1.0.5"
50035041

5042+
resolve@^1.3.2:
5043+
version "1.8.1"
5044+
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.8.1.tgz#82f1ec19a423ac1fbd080b0bab06ba36e84a7a26"
5045+
dependencies:
5046+
path-parse "^1.0.5"
5047+
50045048
resolve@^1.6.0:
50055049
version "1.7.1"
50065050
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.7.1.tgz#aadd656374fd298aee895bc026b8297418677fd3"
@@ -5635,6 +5679,33 @@ trim-right@^1.0.1:
56355679
version "1.0.1"
56365680
resolved "https://registry.yarnpkg.com/trim-right/-/trim-right-1.0.1.tgz#cb2e1203067e0c8de1f614094b9fe45704ea6003"
56375681

5682+
tslib@^1.8.0, tslib@^1.8.1:
5683+
version "1.9.3"
5684+
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.9.3.tgz#d7e4dd79245d85428c4d7e4822a79917954ca286"
5685+
5686+
tslint@^5.11.0:
5687+
version "5.11.0"
5688+
resolved "https://registry.yarnpkg.com/tslint/-/tslint-5.11.0.tgz#98f30c02eae3cde7006201e4c33cb08b48581eed"
5689+
dependencies:
5690+
babel-code-frame "^6.22.0"
5691+
builtin-modules "^1.1.1"
5692+
chalk "^2.3.0"
5693+
commander "^2.12.1"
5694+
diff "^3.2.0"
5695+
glob "^7.1.1"
5696+
js-yaml "^3.7.0"
5697+
minimatch "^3.0.4"
5698+
resolve "^1.3.2"
5699+
semver "^5.3.0"
5700+
tslib "^1.8.0"
5701+
tsutils "^2.27.2"
5702+
5703+
tsutils@^2.27.2:
5704+
version "2.29.0"
5705+
resolved "https://registry.yarnpkg.com/tsutils/-/tsutils-2.29.0.tgz#32b488501467acbedd4b85498673a0812aca0b99"
5706+
dependencies:
5707+
tslib "^1.8.1"
5708+
56385709
tunnel-agent@^0.6.0:
56395710
version "0.6.0"
56405711
resolved "https://registry.yarnpkg.com/tunnel-agent/-/tunnel-agent-0.6.0.tgz#27a5dea06b36b04a0a9966774b290868f0fc40fd"
@@ -5651,6 +5722,10 @@ type-check@~0.3.2:
56515722
dependencies:
56525723
prelude-ls "~1.1.2"
56535724

5725+
typescript@^3.0.1:
5726+
version "3.0.1"
5727+
resolved "https://registry.yarnpkg.com/typescript/-/typescript-3.0.1.tgz#43738f29585d3a87575520a4b93ab6026ef11fdb"
5728+
56545729
uglify-js@^2.6:
56555730
version "2.8.29"
56565731
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-2.8.29.tgz#29c5733148057bb4e1f75df35b7a9cb72e6a59dd"

0 commit comments

Comments
 (0)