diff --git a/.gitignore b/.gitignore index d08c926e..2e00463e 100644 --- a/.gitignore +++ b/.gitignore @@ -81,3 +81,6 @@ typings/ # Package lock package-lock.json + +# Incremental TypeScript Support +index.js \ No newline at end of file diff --git a/.travis.yml b/.travis.yml index 37d1a085..48e95250 100644 --- a/.travis.yml +++ b/.travis.yml @@ -29,6 +29,8 @@ jobs: env: global: secure: t0A5/Fk1Qj8WkAk0ZuQqpFjrpINV6gfL+d1fXgq03EOAG/7FEyyz+AKkYaLT6avp26VWBzLgEoWC3RNmWD0v1/Ruckb95YpQcb5e4JotAce1ZsHgGTgx0UO146tkyGvXBw6MmO2nX2O/sHzkmyR6rlKkBi9LEKokJ9OFd6fi9nNtksgUDxkqNlNTu100fIQAV2RcN47C6iUx+gJIa+H/8QX/Cz02MyheXLe8a763wMQapz5GHrk2KuVY6FpylcAlSi2so+PjEGfKq3MWaQnTPkevkRDLtGcecVtFAq/0VbvoKc97PHoVT0x+nf48k1gj2VnQtYj6EVB74yRvqM9KkNOsfAQ0z9zF5wXMRs11SZywSViLQsnD9Ue6eYbYmodOKn4DFlLtoRyLBUspzLuoL76lERGe2cHU+Ebz2Nb9jL88o+SjfGrSJQEJU7SLZLbzJ7T/3SspWcAlo+Fo9UTCOB4/yL22Yge/SWQkdd1orBhohpjpyrU9Z1+IRvVoU1EICr04zSFUwEwn6Yxbt0ArgTZBEf11bf+YpCo+rBXNAd+XbZ79PGOEppFb+Hxrt9i1S1RnesDJnwC0k7cswU55Rv5gcNCo9lC+N4ZwS5y+5r6DsBfB+12YdsFORFyNbClECro1ODv4STf3rBBnjL8+ziPFjP4d4OwiGY+vG8bvLXY= +before_script: + - npm run build script: - if [ "$TRAVIS_PULL_REQUEST" == "false" ]; then npm run coverage-publish; else npm test; fi diff --git a/index.js b/index.ts similarity index 100% rename from index.js rename to index.ts diff --git a/package-lock.json b/package-lock.json index c276e0f3..78010982 100644 --- a/package-lock.json +++ b/package-lock.json @@ -324,6 +324,12 @@ "integrity": "sha512-rr+OQyAjxze7GgWrSaJwydHStIhHq2lvY3BOC2Mj7KnzI7XK0Uw1TOOdI9lDoajEbSWLiYgoo4f1R51erQfhPQ==", "dev": true }, + "@types/node": { + "version": "13.13.5", + "resolved": "https://registry.npmjs.org/@types/node/-/node-13.13.5.tgz", + "integrity": "sha512-3ySmiBYJPqgjiHA7oEaIo2Rzz0HrOZ7yrNO5HWyaE5q0lQ3BppDZ3N53Miz8bw2I7gh1/zir2MGVZBvpb1zq9g==", + "dev": true + }, "JSONStream": { "version": "1.3.5", "resolved": "https://registry.npmjs.org/JSONStream/-/JSONStream-1.3.5.tgz", @@ -5036,6 +5042,12 @@ "is-typedarray": "^1.0.0" } }, + "typescript": { + "version": "3.8.3", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-3.8.3.tgz", + "integrity": "sha512-MYlEfn5VrLNsgudQTVJeNaQFUAI7DkhnOjdpAp4T+ku1TfQClewlbSuTVHiA+8skNBgaf02TL/kLOvig4y3G8w==", + "dev": true + }, "uglify-js": { "version": "3.9.1", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.9.1.tgz", diff --git a/package.json b/package.json index 5811aa47..6d1daca1 100644 --- a/package.json +++ b/package.json @@ -7,6 +7,8 @@ "lint": "standardx", "fix": "standardx --fix", "pretest": "npm run lint", + "build": "tsc --project tsconfig.json", + "watch": "tsc --project tsconfig.json --watch", "test": "mocha test/**/*.js", "coverage": "nyc --reporter=lcov --reporter=text npm run test", "precoverage-publish": "npm run coverage", @@ -92,15 +94,17 @@ "uuid": "~8.0.0" }, "devDependencies": { + "@types/node": "^13.13.5", "chai": "~4.2.0", - "mocha": "~7.1.1", - "nock": "~12.0.3", - "nyc": "~15.0.0", "eslint-config-standard": "^14.1.1", "eslint-plugin-import": "^2.20.2", "eslint-plugin-node": "^11.1.0", + "mocha": "~7.1.1", + "nock": "~12.0.3", + "nyc": "~15.0.0", + "standard-version": "^7.1.0", "standardx": "^5.0.0", - "standard-version": "^7.1.0" + "typescript": "^3.8.3" }, "publishConfig": { "access": "public" diff --git a/tsconfig.json b/tsconfig.json new file mode 100644 index 00000000..ad06cf2c --- /dev/null +++ b/tsconfig.json @@ -0,0 +1,13 @@ +{ + "compileOnSave": true, + "compilerOptions": { + "target": "es2016", + "lib": ["ESNext"], + "strict": true, + "moduleResolution": "node", + "module": "commonjs" + }, + "include": [ + "index.ts", + ] +} \ No newline at end of file