diff --git a/.gitignore b/.gitignore index e6d8abf..e1e14a0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,6 +1,7 @@ node_modules/ dist/ package-lock.json +*.lock *.log.* *.log *.tgz diff --git a/.npmignore b/.npmignore index 85640df..447738f 100644 --- a/.npmignore +++ b/.npmignore @@ -3,6 +3,7 @@ test/ src/ package-lock.json .travis.yml +*.lock *.log.* *.log *.tgz diff --git a/package.json b/package.json index 63abc97..035fdea 100644 --- a/package.json +++ b/package.json @@ -1,22 +1,22 @@ { "name": "cwait", - "version": "1.1.1", + "version": "1.1.2", "description": "Limit number of promises running in parallel", - "main": "dist/index.js", - "typings": "dist/index.d.ts", + "main": "dist/cjs/index.js", + "module": "dist/esm/index.js", + "browser": "dist/umd/index.js", + "typings": "dist/esm/index.d.ts", "scripts": { "tsc": "tsc", - "docts": "docts", - "tslint": "tslint", - "lint": "node src/checkver.js lt 4.1.2 || tslint --type-check -c src/tslint.json -p src/tsconfig.json", - "prepublish": "npm run lint && tsc -p src", + "rollup": "rollup", + "prepublish": "(checkver ge 5.0.0 && tsc -m es6 --outdir dist/esm -p src && rollup -c) || tsc -p src", "test": "tsc -p test && node test/test.js" }, "author": "Juha Järvi", "license": "MIT", "repository": { "type": "git", - "url": "git+https://github.com/charto/cwait.git" + "url": "https://github.com/charto/cwait.git" }, "bugs": { "url": "https://github.com/charto/cwait/issues" @@ -33,11 +33,12 @@ "queue" ], "devDependencies": { - "@types/bluebird": "^3.5.8", - "@types/node": "^8.0.19", - "bluebird": "^3.5.0", - "tslint": "^5.5.0", - "typescript": "^2.4.2" + "@types/bluebird": "^3.5.24", + "@types/node": "^10.12.1", + "autoroll": "0.1.0", + "bluebird": "^3.5.2", + "rollup": "^0.66.6", + "typescript": "^3.1.4" }, "dependencies": { "cdata": "^0.1.1" diff --git a/rollup.config.js b/rollup.config.js new file mode 100644 index 0000000..f935790 --- /dev/null +++ b/rollup.config.js @@ -0,0 +1,8 @@ +module.exports = require('autoroll')( + require('./package.json'), + { + include: [ + 'cdata' + ] + } +); diff --git a/src/TaskQueue.ts b/src/TaskQueue.ts index e0a8012..29b4628 100644 --- a/src/TaskQueue.ts +++ b/src/TaskQueue.ts @@ -1,7 +1,7 @@ // This file is part of cwait, copyright (c) 2015- BusFaster Ltd. // Released under the MIT license, see LICENSE. -import { BinaryHeap } from 'cdata/dist/BinaryHeap'; +import { BinaryHeap } from 'cdata'; import { Task, PromisyClass, tryFinally } from './Task'; diff --git a/src/checkver.js b/src/checkver.js deleted file mode 100644 index 1d49d1e..0000000 --- a/src/checkver.js +++ /dev/null @@ -1,30 +0,0 @@ -var op = process.argv[2].match(/^([gl])([te])$/); -var wanted = (process.argv[3] || '').split('.'); -var version = process.versions.node.split('.'); - -if(!op || wanted.length != 3) { - console.log([ - 'usage:', - process.argv[0].replace(/.*\//, ''), - process.argv[1].replace(/.*\//, ''), - 'op', - 'x.y.z' - ].join(' ')); - - console.log('\nCompare Node.js version.'); - console.log('Following op codes determine whether it must be:\n'); - - console.log('\tgt\tGreater than x.y.z.'); - console.log('\tge\tGreater than or equal to x.y.z.'); - console.log('\tlt\tLess than x.y.z.'); - console.log('\tle\tLess than or equal to x.y.z.'); - - process.exit(1); -} - -for(var i = 0; i < 3; ++i) { - if(+version[i] > +wanted[i]) process.exit(+(op[1] != 'g')); - if(+version[i] < +wanted[i]) process.exit(+(op[1] == 'g')); -} - -process.exit(+(op[2] != 'e')); diff --git a/src/tsconfig.json b/src/tsconfig.json index 98f9740..4b66aa7 100644 --- a/src/tsconfig.json +++ b/src/tsconfig.json @@ -2,16 +2,20 @@ "compileOnSave": true, "compilerOptions": { "declaration": true, - "lib": ["es5", "es2015.collection"], + "declarationDir": "../dist/esm", + "lib": [ "es5", "es2015.collection" ], "module": "commonjs", "moduleResolution": "node", + "noEmitHelpers": true, "noImplicitAny": true, "noImplicitThis": true, - "outDir": "../dist", + "outDir": "../dist/cjs", "removeComments": false, "sourceMap": false, + "strictFunctionTypes": true, "strictNullChecks": true, - "target": "es5" + "target": "es5", + "types": [ "node" ] }, "files": [ "index.ts"