aboutsummaryrefslogtreecommitdiffstats
path: root/packages
diff options
context:
space:
mode:
authorLeonid <logvinov.leon@gmail.com>2018-01-13 09:03:22 +0800
committerGitHub <noreply@github.com>2018-01-13 09:03:22 +0800
commit62e3feeb94bcbd8dd32cba24a0270b4afabce7e8 (patch)
treee8bd328d39709345da4c494e0d1dfd6d506130f8 /packages
parenta95049450346459c5e6a211464e94fc4f702cebb (diff)
parent3cb310122e7410a17f9d5131d564e5c332f0aa1c (diff)
downloaddexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar.gz
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar.bz2
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar.lz
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar.xz
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.tar.zst
dexon-sol-tools-62e3feeb94bcbd8dd32cba24a0270b4afabce7e8.zip
Merge pull request #319 from 0xProject/feature/final-monorepo
Import last TS packages into the monorepo
Diffstat (limited to 'packages')
-rw-r--r--packages/0x.js/scripts/postpublish.js24
-rw-r--r--packages/0x.js/src/globals.d.ts2
-rw-r--r--packages/0x.js/webpack.config.js4
-rw-r--r--packages/abi-gen/scripts/postpublish.js5
-rw-r--r--packages/assert/scripts/postpublish.js5
-rw-r--r--packages/chai-as-promised-typescript-typings/CHANGELOG.md3
-rw-r--r--packages/chai-as-promised-typescript-typings/README.md43
-rw-r--r--packages/chai-as-promised-typescript-typings/index.d.ts268
-rw-r--r--packages/chai-as-promised-typescript-typings/package.json21
-rw-r--r--packages/chai-as-promised-typescript-typings/scripts/postpublish.js15
-rw-r--r--packages/chai-as-promised-typescript-typings/tslint.json3
-rw-r--r--packages/chai-typescript-typings/CHANGELOG.md3
-rw-r--r--packages/chai-typescript-typings/README.md43
-rw-r--r--packages/chai-typescript-typings/index.d.ts1254
-rw-r--r--packages/chai-typescript-typings/package.json16
-rw-r--r--packages/chai-typescript-typings/scripts/postpublish.js15
-rw-r--r--packages/chai-typescript-typings/tslint.json3
-rw-r--r--packages/connect/scripts/postpublish.js19
-rw-r--r--packages/dev-utils/scripts/postpublish.js15
-rw-r--r--packages/json-schemas/scripts/postpublish.js5
-rw-r--r--packages/kovan-faucets/scripts/postpublish.js15
-rw-r--r--packages/kovan-faucets/src/ts/error_reporter.ts4
-rw-r--r--packages/monorepo-scripts/scripts/postpublish.js15
-rw-r--r--packages/subproviders/src/globals.d.ts2
-rw-r--r--packages/web3-typescript-typings/package.json6
-rw-r--r--packages/web3-typescript-typings/scripts/postpublish.js15
26 files changed, 1782 insertions, 41 deletions
diff --git a/packages/0x.js/scripts/postpublish.js b/packages/0x.js/scripts/postpublish.js
index 28484a8bd..1be964478 100644
--- a/packages/0x.js/scripts/postpublish.js
+++ b/packages/0x.js/scripts/postpublish.js
@@ -8,26 +8,21 @@ const S3BucketPath = 's3://0xjs-docs-jsons/';
let tag;
let version;
-postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
.then(function(result) {
tag = result.tag;
version = result.version;
- const releaseName = postpublish_utils.getReleaseName(subPackageName, version);
- const assets = [
- __dirname + '/../_bundles/index.js',
- __dirname + '/../_bundles/index.min.js',
- ];
- return postpublish_utils.publishReleaseNotes(tag, releaseName, assets);
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, version);
+ const assets = [__dirname + '/../_bundles/index.js', __dirname + '/../_bundles/index.min.js'];
+ return postpublish_utils.publishReleaseNotes(tag, releaseName, assets);
})
.then(function(release) {
console.log('POSTPUBLISH: Release successful, generating docs...');
const jsonFilePath = __dirname + '/../' + postpublish_utils.generatedDocsDirectoryName + '/index.json';
- return execAsync(
- 'JSON_FILE_PATH=' + jsonFilePath + ' PROJECT_DIR=' + __dirname + '/.. yarn docs:json',
- {
- cwd,
- }
- );
+ return execAsync('JSON_FILE_PATH=' + jsonFilePath + ' PROJECT_DIR=' + __dirname + '/.. yarn docs:json', {
+ cwd,
+ });
})
.then(function(result) {
if (result.stderr !== '') {
@@ -39,6 +34,7 @@ postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
return execAsync('S3_URL=' + s3Url + ' yarn upload_docs_json', {
cwd,
});
- }).catch (function(err) {
+ })
+ .catch(function(err) {
throw err;
});
diff --git a/packages/0x.js/src/globals.d.ts b/packages/0x.js/src/globals.d.ts
index dc2b02305..ff8e00b69 100644
--- a/packages/0x.js/src/globals.d.ts
+++ b/packages/0x.js/src/globals.d.ts
@@ -1,5 +1,3 @@
-/// <reference types='chai-typescript-typings' />
-/// <reference types='chai-as-promised-typescript-typings' />
declare module 'web3_beta';
declare module 'chai-bignumber';
declare module 'dirty-chai';
diff --git a/packages/0x.js/webpack.config.js b/packages/0x.js/webpack.config.js
index 61a7e4196..2c1fe81a7 100644
--- a/packages/0x.js/webpack.config.js
+++ b/packages/0x.js/webpack.config.js
@@ -7,10 +7,10 @@ const path = require('path');
const production = process.env.NODE_ENV === 'production';
let entry = {
- 'index': './src/index.ts',
+ index: './src/index.ts',
};
if (production) {
- entry = _.assign({}, entry, {'index.min': './src/index.ts'});
+ entry = _.assign({}, entry, { 'index.min': './src/index.ts' });
}
module.exports = {
diff --git a/packages/abi-gen/scripts/postpublish.js b/packages/abi-gen/scripts/postpublish.js
index 7fa452b08..16d67e03f 100644
--- a/packages/abi-gen/scripts/postpublish.js
+++ b/packages/abi-gen/scripts/postpublish.js
@@ -3,12 +3,13 @@ const packageJSON = require('../package.json');
const subPackageName = packageJSON.name;
-postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
.then(function(result) {
const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
const assets = [];
return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
})
- .catch (function(err) {
+ .catch(function(err) {
throw err;
});
diff --git a/packages/assert/scripts/postpublish.js b/packages/assert/scripts/postpublish.js
index 7fa452b08..16d67e03f 100644
--- a/packages/assert/scripts/postpublish.js
+++ b/packages/assert/scripts/postpublish.js
@@ -3,12 +3,13 @@ const packageJSON = require('../package.json');
const subPackageName = packageJSON.name;
-postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
.then(function(result) {
const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
const assets = [];
return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
})
- .catch (function(err) {
+ .catch(function(err) {
throw err;
});
diff --git a/packages/chai-as-promised-typescript-typings/CHANGELOG.md b/packages/chai-as-promised-typescript-typings/CHANGELOG.md
new file mode 100644
index 000000000..8c52570da
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/CHANGELOG.md
@@ -0,0 +1,3 @@
+# CHANGELOG
+
+## v0.x.x - _TBD, 2018_
diff --git a/packages/chai-as-promised-typescript-typings/README.md b/packages/chai-as-promised-typescript-typings/README.md
new file mode 100644
index 000000000..72784ef53
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/README.md
@@ -0,0 +1,43 @@
+## chai-as-promised-typescript-typings
+
+Fork of type definitions for chai-as-promised that includes changes made by dirty-chai
+
+## Installation
+
+```bash
+yarn add -D chai-as-promised-typescript-typings
+```
+
+## Usage
+
+Add the following line within an `include` section of your `tsconfig.json`
+
+```json
+"./node_modules/chai-as-promised-typescript-typings/index.d.ts"
+```
+
+## Contributing
+
+We strongly encourage that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.
+
+Please read our [contribution guidelines](../../CONTRIBUTING.md) before getting started.
+
+### Install Dependencies
+
+If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
+
+```bash
+yarn config set workspaces-experimental true
+```
+
+Then install dependencies
+
+```bash
+yarn install
+```
+
+### Lint
+
+```bash
+yarn lint
+```
diff --git a/packages/chai-as-promised-typescript-typings/index.d.ts b/packages/chai-as-promised-typescript-typings/index.d.ts
new file mode 100644
index 000000000..ba6dabdcc
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/index.d.ts
@@ -0,0 +1,268 @@
+// Type definitions for chai-as-promised
+// Project: https://github.com/domenic/chai-as-promised/
+// Definitions by: jt000 <https://github.com/jt000>, Yuki Kokubun <https://github.com/Kuniwak>
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+declare module 'chai-as-promised' {
+ function chaiAsPromised(chai: any, utils: any): void;
+ namespace chaiAsPromised {
+
+ }
+ export = chaiAsPromised;
+}
+
+// tslint:disable:no-namespace ban-types member-ordering
+declare namespace Chai {
+ // For BDD API
+ interface Assertion extends LanguageChains, NumericComparison, TypeComparison {
+ eventually: PromisedAssertion;
+ fulfilled: PromisedAssertion;
+ become(expected: any): PromisedAssertion;
+ rejected(): PromisedAssertion;
+ rejectedWith(expected: any, message?: string | RegExp): PromisedAssertion;
+ notify(fn: Function): PromisedAssertion;
+ }
+
+ // Eventually does not have .then(), but PromisedAssertion have.
+ interface Eventually extends PromisedLanguageChains, PromisedNumericComparison, PromisedTypeComparison {
+ // From chai-as-promised
+ become(expected: PromiseLike<any>): PromisedAssertion;
+ fulfilled: PromisedAssertion;
+ rejected: () => PromisedAssertion;
+ rejectedWith(expected: any, message?: string | RegExp): PromisedAssertion;
+ notify(fn: Function): PromisedAssertion;
+
+ // From chai
+ not: PromisedAssertion;
+ deep: PromisedDeep;
+ all: PromisedKeyFilter;
+ a: PromisedTypeComparison;
+ an: PromisedTypeComparison;
+ include: PromisedInclude;
+ contain: PromisedInclude;
+ ok: PromisedAssertion;
+ true: () => PromisedAssertion;
+ false: () => PromisedAssertion;
+ null: PromisedAssertion;
+ undefined: PromisedAssertion;
+ exist: PromisedAssertion;
+ empty: PromisedAssertion;
+ arguments: PromisedAssertion;
+ Arguments: PromisedAssertion;
+ equal: PromisedEqual;
+ equals: PromisedEqual;
+ eq: PromisedEqual;
+ eql: PromisedEqual;
+ eqls: PromisedEqual;
+ property: PromisedProperty;
+ ownProperty: PromisedOwnProperty;
+ haveOwnProperty: PromisedOwnProperty;
+ length: PromisedLength;
+ lengthOf: PromisedLength;
+ match(regexp: RegExp | string, message?: string): PromisedAssertion;
+ string(string: string, message?: string): PromisedAssertion;
+ keys: PromisedKeys;
+ key(string: string): PromisedAssertion;
+ throw: PromisedThrow;
+ throws: PromisedThrow;
+ Throw: PromisedThrow;
+ respondTo(method: string, message?: string): PromisedAssertion;
+ itself: PromisedAssertion;
+ satisfy(matcher: Function, message?: string): PromisedAssertion;
+ closeTo(expected: number, delta: number, message?: string): PromisedAssertion;
+ members: PromisedMembers;
+ }
+
+ interface PromisedAssertion extends Eventually, PromiseLike<any> {}
+
+ interface PromisedLanguageChains {
+ eventually: Eventually;
+
+ // From chai
+ to: PromisedAssertion;
+ be: PromisedAssertion;
+ been: PromisedAssertion;
+ is: PromisedAssertion;
+ that: PromisedAssertion;
+ which: PromisedAssertion;
+ and: PromisedAssertion;
+ has: PromisedAssertion;
+ have: PromisedAssertion;
+ with: PromisedAssertion;
+ at: PromisedAssertion;
+ of: PromisedAssertion;
+ same: PromisedAssertion;
+ }
+
+ interface PromisedNumericComparison {
+ above: PromisedNumberComparer;
+ gt: PromisedNumberComparer;
+ greaterThan: PromisedNumberComparer;
+ least: PromisedNumberComparer;
+ gte: PromisedNumberComparer;
+ below: PromisedNumberComparer;
+ lt: PromisedNumberComparer;
+ lessThan: PromisedNumberComparer;
+ most: PromisedNumberComparer;
+ lte: PromisedNumberComparer;
+ within(start: number, finish: number, message?: string): PromisedAssertion;
+ }
+
+ type PromisedNumberComparer = (value: number, message?: string) => PromisedAssertion;
+
+ interface PromisedTypeComparison {
+ (type: string, message?: string): PromisedAssertion;
+ instanceof: PromisedInstanceOf;
+ instanceOf: PromisedInstanceOf;
+ }
+
+ type PromisedInstanceOf = (constructor: Object, message?: string) => PromisedAssertion;
+
+ interface PromisedDeep {
+ equal: PromisedEqual;
+ include: PromisedInclude;
+ property: PromisedProperty;
+ }
+
+ interface PromisedKeyFilter {
+ keys: PromisedKeys;
+ }
+
+ type PromisedEqual = (value: any, message?: string) => PromisedAssertion;
+
+ type PromisedProperty = (name: string, value?: any, message?: string) => PromisedAssertion;
+
+ type PromisedOwnProperty = (name: string, message?: string) => PromisedAssertion;
+
+ interface PromisedLength extends PromisedLanguageChains, PromisedNumericComparison {
+ (length: number, message?: string): PromisedAssertion;
+ }
+
+ interface PromisedInclude {
+ (value: Object | string | number, message?: string): PromisedAssertion;
+ keys: PromisedKeys;
+ members: PromisedMembers;
+ all: PromisedKeyFilter;
+ }
+
+ interface PromisedKeys {
+ (...keys: string[]): PromisedAssertion;
+ (keys: any[]): PromisedAssertion;
+ }
+
+ interface PromisedThrow {
+ (): PromisedAssertion;
+ (expected: string | RegExp, message?: string): PromisedAssertion;
+ (constructor: Error | Function, expected?: string | RegExp, message?: string): PromisedAssertion;
+ }
+
+ type PromisedMembers = (set: any[], message?: string) => PromisedAssertion;
+
+ // For Assert API
+ interface Assert {
+ eventually: PromisedAssert;
+ isFulfilled(promise: PromiseLike<any>, message?: string): PromiseLike<void>;
+ becomes(promise: PromiseLike<any>, expected: any, message?: string): PromiseLike<void>;
+ doesNotBecome(promise: PromiseLike<any>, expected: any, message?: string): PromiseLike<void>;
+ isRejected(promise: PromiseLike<any>, message?: string): PromiseLike<void>;
+ isRejected(promise: PromiseLike<any>, expected: any | RegExp, message?: string): PromiseLike<void>;
+ notify(fn: Function): PromiseLike<void>;
+ }
+
+ export interface PromisedAssert {
+ fail(actual?: any, expected?: any, msg?: string, operator?: string): PromiseLike<void>;
+
+ ok(val: any, msg?: string): PromiseLike<void>;
+ notOk(val: any, msg?: string): PromiseLike<void>;
+
+ equal(act: any, exp: any, msg?: string): PromiseLike<void>;
+ notEqual(act: any, exp: any, msg?: string): PromiseLike<void>;
+
+ strictEqual(act: any, exp: any, msg?: string): PromiseLike<void>;
+ notStrictEqual(act: any, exp: any, msg?: string): PromiseLike<void>;
+
+ deepEqual(act: any, exp: any, msg?: string): PromiseLike<void>;
+ notDeepEqual(act: any, exp: any, msg?: string): PromiseLike<void>;
+
+ isTrue(val: any, msg?: string): PromiseLike<void>;
+ isFalse(val: any, msg?: string): PromiseLike<void>;
+
+ isNull(val: any, msg?: string): PromiseLike<void>;
+ isNotNull(val: any, msg?: string): PromiseLike<void>;
+
+ isUndefined(val: any, msg?: string): PromiseLike<void>;
+ isDefined(val: any, msg?: string): PromiseLike<void>;
+
+ isFunction(val: any, msg?: string): PromiseLike<void>;
+ isNotFunction(val: any, msg?: string): PromiseLike<void>;
+
+ isObject(val: any, msg?: string): PromiseLike<void>;
+ isNotObject(val: any, msg?: string): PromiseLike<void>;
+
+ isArray(val: any, msg?: string): PromiseLike<void>;
+ isNotArray(val: any, msg?: string): PromiseLike<void>;
+
+ isString(val: any, msg?: string): PromiseLike<void>;
+ isNotString(val: any, msg?: string): PromiseLike<void>;
+
+ isNumber(val: any, msg?: string): PromiseLike<void>;
+ isNotNumber(val: any, msg?: string): PromiseLike<void>;
+
+ isBoolean(val: any, msg?: string): PromiseLike<void>;
+ isNotBoolean(val: any, msg?: string): PromiseLike<void>;
+
+ typeOf(val: any, type: string, msg?: string): PromiseLike<void>;
+ notTypeOf(val: any, type: string, msg?: string): PromiseLike<void>;
+
+ instanceOf(val: any, type: Function, msg?: string): PromiseLike<void>;
+ notInstanceOf(val: any, type: Function, msg?: string): PromiseLike<void>;
+
+ include(exp: string | any[], inc: any, msg?: string): PromiseLike<void>;
+
+ notInclude(exp: string | any[], inc: any, msg?: string): PromiseLike<void>;
+
+ match(exp: any, re: RegExp, msg?: string): PromiseLike<void>;
+ notMatch(exp: any, re: RegExp, msg?: string): PromiseLike<void>;
+
+ property(obj: Object, prop: string, msg?: string): PromiseLike<void>;
+ notProperty(obj: Object, prop: string, msg?: string): PromiseLike<void>;
+ deepProperty(obj: Object, prop: string, msg?: string): PromiseLike<void>;
+ notDeepProperty(obj: Object, prop: string, msg?: string): PromiseLike<void>;
+
+ propertyVal(obj: Object, prop: string, val: any, msg?: string): PromiseLike<void>;
+ propertyNotVal(obj: Object, prop: string, val: any, msg?: string): PromiseLike<void>;
+
+ deepPropertyVal(obj: Object, prop: string, val: any, msg?: string): PromiseLike<void>;
+ deepPropertyNotVal(obj: Object, prop: string, val: any, msg?: string): PromiseLike<void>;
+
+ lengthOf(exp: any, len: number, msg?: string): PromiseLike<void>;
+ // alias frenzy
+ throw(fn: Function, msg?: string): PromiseLike<void>;
+ throw(fn: Function, regExp: RegExp): PromiseLike<void>;
+ throw(fn: Function, errType: Function, msg?: string): PromiseLike<void>;
+ throw(fn: Function, errType: Function, regExp: RegExp): PromiseLike<void>;
+
+ throws(fn: Function, msg?: string): PromiseLike<void>;
+ throws(fn: Function, regExp: RegExp): PromiseLike<void>;
+ throws(fn: Function, errType: Function, msg?: string): PromiseLike<void>;
+ throws(fn: Function, errType: Function, regExp: RegExp): PromiseLike<void>;
+
+ Throw(fn: Function, msg?: string): PromiseLike<void>;
+ Throw(fn: Function, regExp: RegExp): PromiseLike<void>;
+ Throw(fn: Function, errType: Function, msg?: string): PromiseLike<void>;
+ Throw(fn: Function, errType: Function, regExp: RegExp): PromiseLike<void>;
+
+ doesNotThrow(fn: Function, msg?: string): PromiseLike<void>;
+ doesNotThrow(fn: Function, regExp: RegExp): PromiseLike<void>;
+ doesNotThrow(fn: Function, errType: Function, msg?: string): PromiseLike<void>;
+ doesNotThrow(fn: Function, errType: Function, regExp: RegExp): PromiseLike<void>;
+
+ operator(val: any, operator: string, val2: any, msg?: string): PromiseLike<void>;
+ closeTo(act: number, exp: number, delta: number, msg?: string): PromiseLike<void>;
+
+ sameMembers(set1: any[], set2: any[], msg?: string): PromiseLike<void>;
+ includeMembers(set1: any[], set2: any[], msg?: string): PromiseLike<void>;
+
+ ifError(val: any, msg?: string): PromiseLike<void>;
+ }
+}
diff --git a/packages/chai-as-promised-typescript-typings/package.json b/packages/chai-as-promised-typescript-typings/package.json
new file mode 100644
index 000000000..6ef4184b0
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/package.json
@@ -0,0 +1,21 @@
+{
+ "name": "chai-as-promised-typescript-typings",
+ "version": "0.0.3",
+ "description": "Typescript type definitions for chai-as-promised",
+ "main": "index.d.ts",
+ "types": "index.d.ts",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/0xProject/0x.js.git"
+ },
+ "author": "Fabio Berger",
+ "contributors": ["Leonid Logvinov <logvinov.leon@gmail.com>"],
+ "license": "Apache-2.0",
+ "bugs": {
+ "url": "https://github.com/0xProject/0x.js/issues"
+ },
+ "homepage": "https://github.com/0xProject/0x.js/packages/chai-as-promised-typescript-typings#readme",
+ "dependencies": {
+ "chai-typescript-typings": "^0.0.0"
+ }
+}
diff --git a/packages/chai-as-promised-typescript-typings/scripts/postpublish.js b/packages/chai-as-promised-typescript-typings/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });
diff --git a/packages/chai-as-promised-typescript-typings/tslint.json b/packages/chai-as-promised-typescript-typings/tslint.json
new file mode 100644
index 000000000..9a93a1f74
--- /dev/null
+++ b/packages/chai-as-promised-typescript-typings/tslint.json
@@ -0,0 +1,3 @@
+{
+ "extends": ["tslint-config-0xproject"]
+}
diff --git a/packages/chai-typescript-typings/CHANGELOG.md b/packages/chai-typescript-typings/CHANGELOG.md
new file mode 100644
index 000000000..8c52570da
--- /dev/null
+++ b/packages/chai-typescript-typings/CHANGELOG.md
@@ -0,0 +1,3 @@
+# CHANGELOG
+
+## v0.x.x - _TBD, 2018_
diff --git a/packages/chai-typescript-typings/README.md b/packages/chai-typescript-typings/README.md
new file mode 100644
index 000000000..9bd0574d1
--- /dev/null
+++ b/packages/chai-typescript-typings/README.md
@@ -0,0 +1,43 @@
+## chai-typescript-typings
+
+Fork of type definitions for chai that includes changes made by dirty-chai
+
+## Installation
+
+```bash
+yarn add -D chai-typescript-typings
+```
+
+## Usage
+
+Add the following line within an `include` section of your `tsconfig.json`
+
+```json
+"./node_modules/chai-typescript-typings/index.d.ts"
+```
+
+## Contributing
+
+We strongly encourage that the community help us make improvements and determine the future direction of the protocol. To report bugs within this package, please create an issue in this repository.
+
+Please read our [contribution guidelines](../../CONTRIBUTING.md) before getting started.
+
+### Install Dependencies
+
+If you don't have yarn workspaces enabled (Yarn < v1.0) - enable them:
+
+```bash
+yarn config set workspaces-experimental true
+```
+
+Then install dependencies
+
+```bash
+yarn install
+```
+
+### Lint
+
+```bash
+yarn lint
+```
diff --git a/packages/chai-typescript-typings/index.d.ts b/packages/chai-typescript-typings/index.d.ts
new file mode 100644
index 000000000..8b3e4c079
--- /dev/null
+++ b/packages/chai-typescript-typings/index.d.ts
@@ -0,0 +1,1254 @@
+// Type definitions for chai 4.0.0
+// Project: http://chaijs.com/
+// Definitions by: Jed Mao <https://github.com/jedmao/>,
+// Bart van der Schoor <https://github.com/Bartvds>,
+// Andrew Brown <https://github.com/AGBrown>,
+// Olivier Chevet <https://github.com/olivr70>,
+// Matt Wistrand <https://github.com/mwistrand>,
+// Josh Goldberg <https://github.com/joshuakgoldberg>
+// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
+
+// <reference types="assertion-error"/>
+
+// tslint:disable:no-namespace member-ordering ban-types unified-signatures variable-name callable-types
+declare namespace Chai {
+ interface ChaiStatic {
+ expect: ExpectStatic;
+ should(): Should;
+ /**
+ * Provides a way to extend the internals of Chai
+ */
+ use(fn: (chai: any, utils: any) => void): ChaiStatic;
+ assert: AssertStatic;
+ config: Config;
+ AssertionError: typeof AssertionError;
+ version: string;
+ }
+
+ export interface ExpectStatic extends AssertionStatic {
+ fail(actual?: any, expected?: any, message?: string, operator?: Operator): void;
+ }
+
+ export interface AssertStatic extends Assert {}
+
+ type AssertionStatic = (target: any, message?: string) => Assertion;
+
+ export type Operator = string; // "==" | "===" | ">" | ">=" | "<" | "<=" | "!=" | "!==";
+
+ export type OperatorComparable = boolean | null | number | string | undefined | Date;
+
+ interface ShouldAssertion {
+ equal(value1: any, value2: any, message?: string): void;
+ Throw: ShouldThrow;
+ throw: ShouldThrow;
+ exist(value: any, message?: string): void;
+ }
+
+ interface Should extends ShouldAssertion {
+ not: ShouldAssertion;
+ fail(actual: any, expected: any, message?: string, operator?: Operator): void;
+ }
+
+ interface ShouldThrow {
+ (actual: Function): void;
+ (actual: Function, expected: string | RegExp, message?: string): void;
+ (actual: Function, constructor: Error | Function, expected?: string | RegExp, message?: string): void;
+ }
+
+ interface Assertion extends LanguageChains, NumericComparison, TypeComparison {
+ not: Assertion;
+ deep: Deep;
+ nested: Nested;
+ any: KeyFilter;
+ all: KeyFilter;
+ a: TypeComparison;
+ an: TypeComparison;
+ include: Include;
+ includes: Include;
+ contain: Include;
+ contains: Include;
+ ok: Assertion;
+ true: () => Assertion;
+ false: () => Assertion;
+ null: () => Assertion;
+ undefined: () => Assertion;
+ NaN: Assertion;
+ exist: Assertion;
+ empty: Assertion;
+ arguments: Assertion;
+ Arguments: Assertion;
+ equal: Equal;
+ equals: Equal;
+ eq: Equal;
+ eql: Equal;
+ eqls: Equal;
+ property: Property;
+ ownProperty: OwnProperty;
+ haveOwnProperty: OwnProperty;
+ ownPropertyDescriptor: OwnPropertyDescriptor;
+ haveOwnPropertyDescriptor: OwnPropertyDescriptor;
+ length: Length;
+ lengthOf: Length;
+ match: Match;
+ matches: Match;
+ string(string: string, message?: string): Assertion;
+ keys: Keys;
+ key(string: string): Assertion;
+ throw: (message?: string) => Assertion;
+ throws: Throw;
+ Throw: Throw;
+ respondTo: RespondTo;
+ respondsTo: RespondTo;
+ itself: Assertion;
+ satisfy: Satisfy;
+ satisfies: Satisfy;
+ closeTo: CloseTo;
+ approximately: CloseTo;
+ members: Members;
+ increase: PropertyChange;
+ increases: PropertyChange;
+ decrease: PropertyChange;
+ decreases: PropertyChange;
+ change: PropertyChange;
+ changes: PropertyChange;
+ extensible: Assertion;
+ sealed: Assertion;
+ frozen: Assertion;
+ oneOf(list: any[], message?: string): Assertion;
+ }
+
+ interface LanguageChains {
+ to: Assertion;
+ be: Assertion;
+ been: Assertion;
+ is: Assertion;
+ that: Assertion;
+ which: Assertion;
+ and: Assertion;
+ has: Assertion;
+ have: Assertion;
+ with: Assertion;
+ at: Assertion;
+ of: Assertion;
+ same: Assertion;
+ }
+
+ interface NumericComparison {
+ above: NumberComparer;
+ gt: NumberComparer;
+ greaterThan: NumberComparer;
+ least: NumberComparer;
+ gte: NumberComparer;
+ below: NumberComparer;
+ lt: NumberComparer;
+ lessThan: NumberComparer;
+ most: NumberComparer;
+ lte: NumberComparer;
+ within(start: number, finish: number, message?: string): Assertion;
+ }
+
+ interface NumberComparer {
+ (value: number, message?: string): Assertion;
+ }
+
+ interface TypeComparison {
+ (type: string, message?: string): Assertion;
+ instanceof: InstanceOf;
+ instanceOf: InstanceOf;
+ }
+
+ interface InstanceOf {
+ (constructor: Object, message?: string): Assertion;
+ }
+
+ interface CloseTo {
+ (expected: number, delta: number, message?: string): Assertion;
+ }
+
+ interface Nested {
+ include: Include;
+ property: Property;
+ members: Members;
+ }
+
+ interface Deep {
+ equal: Equal;
+ equals: Equal;
+ eq: Equal;
+ include: Include;
+ property: Property;
+ members: Members;
+ }
+
+ interface KeyFilter {
+ keys: Keys;
+ }
+
+ interface Equal {
+ (value: any, message?: string): Assertion;
+ }
+
+ interface Property {
+ (name: string, value?: any, message?: string): Assertion;
+ }
+
+ interface OwnProperty {
+ (name: string, message?: string): Assertion;
+ }
+
+ interface OwnPropertyDescriptor {
+ (name: string, descriptor: PropertyDescriptor, message?: string): Assertion;
+ (name: string, message?: string): Assertion;
+ }
+
+ interface Length extends LanguageChains, NumericComparison {
+ (length: number, message?: string): Assertion;
+ }
+
+ interface Include {
+ (value: Object | string | number, message?: string): Assertion;
+ keys: Keys;
+ members: Members;
+ any: KeyFilter;
+ all: KeyFilter;
+ }
+
+ interface Match {
+ (regexp: RegExp | string, message?: string): Assertion;
+ }
+
+ interface Keys {
+ (...keys: string[]): Assertion;
+ (keys: any[]): Assertion;
+ (keys: Object): Assertion;
+ }
+
+ interface Throw {
+ (): Assertion;
+ (expected: string, message?: string): Assertion;
+ (expected: RegExp, message?: string): Assertion;
+ (constructor: Error, expected?: string, message?: string): Assertion;
+ (constructor: Error, expected?: RegExp, message?: string): Assertion;
+ (constructor: Function, expected?: string, message?: string): Assertion;
+ (constructor: Function, expected?: RegExp, message?: string): Assertion;
+ }
+
+ interface RespondTo {
+ (method: string, message?: string): Assertion;
+ }
+
+ interface Satisfy {
+ (matcher: Function, message?: string): Assertion;
+ }
+
+ interface Members {
+ (set: any[], message?: string): Assertion;
+ }
+
+ interface PropertyChange {
+ (object: Object, property: string, message?: string): Assertion;
+ }
+
+ export interface Assert {
+ /**
+ * @param expression Expression to test for truthiness.
+ * @param message Message to display on error.
+ */
+ (expression: any, message?: string): void;
+
+ /**
+ * Throws a failure.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ * @param operator Comparison operator, if not strict equality.
+ * @remarks Node.js assert module-compatible.
+ */
+ fail<T>(actual?: T, expected?: T, message?: string, operator?: Operator): void;
+
+ /**
+ * Asserts that object is truthy.
+ *
+ * @type T Type of object.
+ * @param object Object to test.
+ * @param message Message to display on error.
+ */
+ isOk<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that object is truthy.
+ *
+ * @type T Type of object.
+ * @param object Object to test.
+ * @param message Message to display on error.
+ */
+ ok<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that object is falsy.
+ *
+ * @type T Type of object.
+ * @param object Object to test.
+ * @param message Message to display on error.
+ */
+ isNotOk<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that object is falsy.
+ *
+ * @type T Type of object.
+ * @param object Object to test.
+ * @param message Message to display on error.
+ */
+ notOk<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts non-strict equality (==) of actual and expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ equal<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts non-strict inequality (==) of actual and expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ notEqual<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts strict equality (===) of actual and expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ strictEqual<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts strict inequality (==) of actual and expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ notStrictEqual<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts that actual is deeply equal to expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ deepEqual<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts that actual is not deeply equal to expected.
+ *
+ * @type T Type of the objects.
+ * @param actual Actual value.
+ * @param expected Potential expected value.
+ * @param message Message to display on error.
+ */
+ notDeepEqual<T>(actual: T, expected: T, message?: string): void;
+
+ /**
+ * Asserts valueToCheck is strictly greater than (>) valueToBeAbove.
+ *
+ * @param valueToCheck Actual value.
+ * @param valueToBeAbove Minimum Potential expected value.
+ * @param message Message to display on error.
+ */
+ isAbove(valueToCheck: number, valueToBeAbove: number, message?: string): void;
+
+ /**
+ * Asserts valueToCheck is greater than or equal to (>=) valueToBeAtLeast.
+ *
+ * @param valueToCheck Actual value.
+ * @param valueToBeAtLeast Minimum Potential expected value.
+ * @param message Message to display on error.
+ */
+ isAtLeast(valueToCheck: number, valueToBeAtLeast: number, message?: string): void;
+
+ /**
+ * Asserts valueToCheck is strictly less than (<) valueToBeBelow.
+ *
+ * @param valueToCheck Actual value.
+ * @param valueToBeBelow Minimum Potential expected value.
+ * @param message Message to display on error.
+ */
+ isBelow(valueToCheck: number, valueToBeBelow: number, message?: string): void;
+
+ /**
+ * Asserts valueToCheck is greater than or equal to (>=) valueToBeAtMost.
+ *
+ * @param valueToCheck Actual value.
+ * @param valueToBeAtMost Minimum Potential expected value.
+ * @param message Message to display on error.
+ */
+ isAtMost(valueToCheck: number, valueToBeAtMost: number, message?: string): void;
+
+ /**
+ * Asserts that value is true.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isTrue<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is false.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isFalse<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not true.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotTrue<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not false.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotFalse<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is null.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNull<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not null.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotNull<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not null.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNaN<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not null.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotNaN<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is undefined.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isUndefined<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not undefined.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isDefined<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is a function.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isFunction<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not a function.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotFunction<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is an object of type 'Object'
+ * (as revealed by Object.prototype.toString).
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ * @remarks The assertion does not match subclassed objects.
+ */
+ isObject<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not an object of type 'Object'
+ * (as revealed by Object.prototype.toString).
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotObject<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is an array.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isArray<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not an array.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotArray<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is a string.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isString<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not a string.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotString<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is a number.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNumber<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not a number.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotNumber<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is a boolean.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isBoolean<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value is not a boolean.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param message Message to display on error.
+ */
+ isNotBoolean<T>(value: T, message?: string): void;
+
+ /**
+ * Asserts that value's type is name, as determined by Object.prototype.toString.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param name Potential expected type name of value.
+ * @param message Message to display on error.
+ */
+ typeOf<T>(value: T, name: string, message?: string): void;
+
+ /**
+ * Asserts that value's type is not name, as determined by Object.prototype.toString.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param name Potential expected type name of value.
+ * @param message Message to display on error.
+ */
+ notTypeOf<T>(value: T, name: string, message?: string): void;
+
+ /**
+ * Asserts that value is an instance of constructor.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param constructor Potential expected contructor of value.
+ * @param message Message to display on error.
+ */
+ instanceOf<T>(value: T, constructor: Function, message?: string): void;
+
+ /**
+ * Asserts that value is not an instance of constructor.
+ *
+ * @type T Type of value.
+ * @param value Actual value.
+ * @param constructor Potential expected contructor of value.
+ * @param message Message to display on error.
+ */
+ notInstanceOf<T>(value: T, type: Function, message?: string): void;
+
+ /**
+ * Asserts that haystack includes needle.
+ *
+ * @param haystack Container string.
+ * @param needle Potential expected substring of haystack.
+ * @param message Message to display on error.
+ */
+ include(haystack: string, needle: string, message?: string): void;
+
+ /**
+ * Asserts that haystack includes needle.
+ *
+ * @type T Type of values in haystack.
+ * @param haystack Container array.
+ * @param needle Potential value contained in haystack.
+ * @param message Message to display on error.
+ */
+ include<T>(haystack: T[], needle: T, message?: string): void;
+
+ /**
+ * Asserts that haystack does not include needle.
+ *
+ * @param haystack Container string.
+ * @param needle Potential expected substring of haystack.
+ * @param message Message to display on error.
+ */
+ notInclude(haystack: string, needle: any, message?: string): void;
+
+ /**
+ * Asserts that haystack does not include needle.
+ *
+ * @type T Type of values in haystack.
+ * @param haystack Container array.
+ * @param needle Potential value contained in haystack.
+ * @param message Message to display on error.
+ */
+ notInclude(haystack: any[], needle: any, message?: string): void;
+
+ /**
+ * Asserts that value matches the regular expression regexp.
+ *
+ * @param value Actual value.
+ * @param regexp Potential match of value.
+ * @param message Message to display on error.
+ */
+ match(value: string, regexp: RegExp, message?: string): void;
+
+ /**
+ * Asserts that value does not match the regular expression regexp.
+ *
+ * @param value Actual value.
+ * @param regexp Potential match of value.
+ * @param message Message to display on error.
+ */
+ notMatch(expected: any, regexp: RegExp, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property.
+ *
+ * @type T Type of object.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param message Message to display on error.
+ */
+ property<T>(object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property.
+ *
+ * @type T Type of object.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param message Message to display on error.
+ */
+ notProperty<T>(object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property, which can be a string
+ * using dot- and bracket-notation for deep reference.
+ *
+ * @type T Type of object.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param message Message to display on error.
+ */
+ deepProperty<T>(object: T, property: string, message?: string): void;
+
+ /**
+ * Asserts that object does not have a property named by property, which can be a
+ * string using dot- and bracket-notation for deep reference.
+ *
+ * @type T Type of object.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param message Message to display on error.
+ */
+ notDeepProperty<T>(object: T, property: string, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property with value given by value.
+ *
+ * @type T Type of object.
+ * @type V Type of value.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param value Potential expected property value.
+ * @param message Message to display on error.
+ */
+ propertyVal<T, V>(object: T, property: string /* keyof T */, value: V, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property with value given by value.
+ *
+ * @type T Type of object.
+ * @type V Type of value.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param value Potential expected property value.
+ * @param message Message to display on error.
+ */
+ propertyNotVal<T, V>(object: T, property: string /* keyof T */, value: V, message?: string): void;
+
+ /**
+ * Asserts that object has a property named by property, which can be a string
+ * using dot- and bracket-notation for deep reference.
+ *
+ * @type T Type of object.
+ * @type V Type of value.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param value Potential expected property value.
+ * @param message Message to display on error.
+ */
+ deepPropertyVal<T, V>(object: T, property: string, value: V, message?: string): void;
+
+ /**
+ * Asserts that object does not have a property named by property, which can be a
+ * string using dot- and bracket-notation for deep reference.
+ *
+ * @type T Type of object.
+ * @type V Type of value.
+ * @param object Container object.
+ * @param property Potential contained property of object.
+ * @param value Potential expected property value.
+ * @param message Message to display on error.
+ */
+ deepPropertyNotVal<T, V>(object: T, property: string, value: V, message?: string): void;
+
+ /**
+ * Asserts that object has a length property with the expected value.
+ *
+ * @type T Type of object.
+ * @param object Container object.
+ * @param length Potential expected length of object.
+ * @param message Message to display on error.
+ */
+ lengthOf<T extends { readonly length?: number }>(object: T, length: number, message?: string): void;
+
+ /**
+ * Asserts that fn will throw an error.
+ *
+ * @param fn Function that may throw.
+ * @param message Message to display on error.
+ */
+ throw(fn: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param regExp Potential expected message match.
+ * @param message Message to display on error.
+ */
+ throw(fn: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ throw(fn: Function, constructor: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor
+ * and an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ throw(fn: Function, constructor: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that fn will throw an error.
+ *
+ * @param fn Function that may throw.
+ * @param message Message to display on error.
+ */
+ throws(fn: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param regExp Potential expected message match.
+ * @param message Message to display on error.
+ */
+ throws(fn: Function, regExp: RegExp, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ throws(fn: Function, errType: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor
+ * and an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ throws(fn: Function, errType: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that fn will throw an error.
+ *
+ * @param fn Function that may throw.
+ * @param message Message to display on error.
+ */
+ Throw(fn: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param regExp Potential expected message match.
+ * @param message Message to display on error.
+ */
+ Throw(fn: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ Throw(fn: Function, errType: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor
+ * and an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ Throw(fn: Function, errType: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that fn will not throw an error.
+ *
+ * @param fn Function that may throw.
+ * @param message Message to display on error.
+ */
+ doesNotThrow(fn: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param regExp Potential expected message match.
+ * @param message Message to display on error.
+ */
+ doesNotThrow(fn: Function, regExp: RegExp): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ doesNotThrow(fn: Function, errType: Function, message?: string): void;
+
+ /**
+ * Asserts that function will throw an error that is an instance of constructor
+ * and an error with message matching regexp.
+ *
+ * @param fn Function that may throw.
+ * @param constructor Potential expected error constructor.
+ * @param message Message to display on error.
+ */
+ doesNotThrow(fn: Function, errType: Function, regExp: RegExp): void;
+
+ /**
+ * Compares two values using operator.
+ *
+ * @param val1 Left value during comparison.
+ * @param operator Comparison operator.
+ * @param val2 Right value during comparison.
+ * @param message Message to display on error.
+ */
+ operator(val1: OperatorComparable, operator: Operator, val2: OperatorComparable, message?: string): void;
+
+ /**
+ * Asserts that the target is equal to expected, to within a +/- delta range.
+ *
+ * @param actual Actual value
+ * @param expected Potential expected value.
+ * @param delta Maximum differenced between values.
+ * @param message Message to display on error.
+ */
+ closeTo(actual: number, expected: number, delta: number, message?: string): void;
+
+ /**
+ * Asserts that the target is equal to expected, to within a +/- delta range.
+ *
+ * @param actual Actual value
+ * @param expected Potential expected value.
+ * @param delta Maximum differenced between values.
+ * @param message Message to display on error.
+ */
+ approximately(act: number, exp: number, delta: number, message?: string): void;
+
+ /**
+ * Asserts that set1 and set2 have the same members. Order is not take into account.
+ *
+ * @type T Type of set values.
+ * @param set1 Actual set of values.
+ * @param set2 Potential expected set of values.
+ * @param message Message to display on error.
+ */
+ sameMembers<T>(set1: T[], set2: T[], message?: string): void;
+
+ /**
+ * Asserts that set1 and set2 have the same members using deep equality checking.
+ * Order is not take into account.
+ *
+ * @type T Type of set values.
+ * @param set1 Actual set of values.
+ * @param set2 Potential expected set of values.
+ * @param message Message to display on error.
+ */
+ sameDeepMembers<T>(set1: T[], set2: T[], message?: string): void;
+
+ /**
+ * Asserts that subset is included in superset. Order is not take into account.
+ *
+ * @type T Type of set values.
+ * @param superset Actual set of values.
+ * @param subset Potential contained set of values.
+ * @param message Message to display on error.
+ */
+ includeMembers<T>(superset: T[], subset: T[], message?: string): void;
+
+ /**
+ * Asserts that subset is included in superset using deep equality checking.
+ * Order is not take into account.
+ *
+ * @type T Type of set values.
+ * @param superset Actual set of values.
+ * @param subset Potential contained set of values.
+ * @param message Message to display on error.
+ */
+ includeDeepMembers<T>(superset: T[], subset: T[], message?: string): void;
+
+ /**
+ * Asserts that non-object, non-array value inList appears in the flat array list.
+ *
+ * @type T Type of list values.
+ * @param inList Value expected to be in the list.
+ * @param list List of values.
+ * @param message Message to display on error.
+ */
+ oneOf<T>(inList: T, list: T[], message?: string): void;
+
+ /**
+ * Asserts that a function changes the value of a property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected to be modified.
+ * @param message Message to display on error.
+ */
+ changes<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that a function does not change the value of a property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected not to be modified.
+ * @param message Message to display on error.
+ */
+ doesNotChange<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that a function increases an object property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected to be increased.
+ * @param message Message to display on error.
+ */
+ increases<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that a function does not increase an object property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected not to be increased.
+ * @param message Message to display on error.
+ */
+ doesNotIncrease<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that a function decreases an object property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected to be decreased.
+ * @param message Message to display on error.
+ */
+ decreases<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts that a function does not decrease an object property.
+ *
+ * @type T Type of object.
+ * @param modifier Function to run.
+ * @param object Container object.
+ * @param property Property of object expected not to be decreased.
+ * @param message Message to display on error.
+ */
+ doesNotDecrease<T>(modifier: Function, object: T, property: string /* keyof T */, message?: string): void;
+
+ /**
+ * Asserts if value is not a false value, and throws if it is a true value.
+ *
+ * @type T Type of object.
+ * @param object Actual value.
+ * @param message Message to display on error.
+ * @remarks This is added to allow for chai to be a drop-in replacement for
+ * Node’s assert class.
+ */
+ ifError<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is extensible (can have new properties added to it).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isExtensible<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is extensible (can have new properties added to it).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ extensible<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not extensible.
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isNotExtensible<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not extensible.
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ notExtensible<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is sealed (can have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isSealed<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is sealed (can have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ sealed<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not sealed.
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isNotSealed<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not sealed.
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ notSealed<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is frozen (cannot have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isFrozen<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is frozen (cannot have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ frozen<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not frozen (cannot have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ isNotFrozen<T>(object: T, message?: string): void;
+
+ /**
+ * Asserts that object is not frozen (cannot have new properties added to it
+ * and its existing properties cannot be removed).
+ *
+ * @type T Type of object
+ * @param object Actual value.
+ * @param message Message to display on error.
+ */
+ notFrozen<T>(object: T, message?: string): void;
+ }
+
+ export interface Config {
+ /**
+ * Default: false
+ */
+ includeStack: boolean;
+
+ /**
+ * Default: true
+ */
+ showDiff: boolean;
+
+ /**
+ * Default: 40
+ */
+ truncateThreshold: number;
+ }
+
+ export class AssertionError {
+ constructor(message: string, _props?: any, ssf?: Function);
+ public name: string;
+ public message: string;
+ public showDiff: boolean;
+ public stack: string;
+ }
+}
+
+declare const chai: Chai.ChaiStatic;
+
+declare module 'chai' {
+ export = chai;
+}
+
+interface Object {
+ should: Chai.Assertion;
+}
diff --git a/packages/chai-typescript-typings/package.json b/packages/chai-typescript-typings/package.json
new file mode 100644
index 000000000..71040b554
--- /dev/null
+++ b/packages/chai-typescript-typings/package.json
@@ -0,0 +1,16 @@
+{
+ "name": "chai-typescript-typings",
+ "version": "0.0.1",
+ "description": "Typescript type definitions for chai",
+ "main": "index.d.ts",
+ "types": "index.d.ts",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/0xProject/0x.js.git"
+ },
+ "license": "Apache-2.0",
+ "bugs": {
+ "url": "https://github.com/0xProject/0x.js/issues"
+ },
+ "homepage": "https://github.com/0xProject/0x.js/packages/chai-typescript-typings#readme"
+}
diff --git a/packages/chai-typescript-typings/scripts/postpublish.js b/packages/chai-typescript-typings/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/chai-typescript-typings/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });
diff --git a/packages/chai-typescript-typings/tslint.json b/packages/chai-typescript-typings/tslint.json
new file mode 100644
index 000000000..9a93a1f74
--- /dev/null
+++ b/packages/chai-typescript-typings/tslint.json
@@ -0,0 +1,3 @@
+{
+ "extends": ["tslint-config-0xproject"]
+}
diff --git a/packages/connect/scripts/postpublish.js b/packages/connect/scripts/postpublish.js
index e6a2cc065..24384b228 100644
--- a/packages/connect/scripts/postpublish.js
+++ b/packages/connect/scripts/postpublish.js
@@ -8,22 +8,20 @@ const S3BucketPath = 's3://connect-docs-jsons/';
let tag;
let version;
-postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
.then(function(result) {
tag = result.tag;
version = result.version;
- const releaseName = postpublish_utils.getReleaseName(subPackageName, version);
- return postpublish_utils.publishReleaseNotes(tag, releaseName);
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, version);
+ return postpublish_utils.publishReleaseNotes(tag, releaseName);
})
.then(function(release) {
console.log('POSTPUBLISH: Release successful, generating docs...');
const jsonFilePath = __dirname + '/../' + postpublish_utils.generatedDocsDirectoryName + '/index.json';
- return execAsync(
- 'JSON_FILE_PATH=' + jsonFilePath + ' PROJECT_DIR=' + __dirname + '/.. yarn docs:json',
- {
- cwd,
- }
- );
+ return execAsync('JSON_FILE_PATH=' + jsonFilePath + ' PROJECT_DIR=' + __dirname + '/.. yarn docs:json', {
+ cwd,
+ });
})
.then(function(result) {
if (result.stderr !== '') {
@@ -35,6 +33,7 @@ postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
return execAsync('S3_URL=' + s3Url + ' yarn upload_docs_json', {
cwd,
});
- }).catch (function(err) {
+ })
+ .catch(function(err) {
throw err;
});
diff --git a/packages/dev-utils/scripts/postpublish.js b/packages/dev-utils/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/dev-utils/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });
diff --git a/packages/json-schemas/scripts/postpublish.js b/packages/json-schemas/scripts/postpublish.js
index 7fa452b08..16d67e03f 100644
--- a/packages/json-schemas/scripts/postpublish.js
+++ b/packages/json-schemas/scripts/postpublish.js
@@ -3,12 +3,13 @@ const packageJSON = require('../package.json');
const subPackageName = packageJSON.name;
-postpublish_utils.getLatestTagAndVersionAsync(subPackageName)
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
.then(function(result) {
const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
const assets = [];
return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
})
- .catch (function(err) {
+ .catch(function(err) {
throw err;
});
diff --git a/packages/kovan-faucets/scripts/postpublish.js b/packages/kovan-faucets/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/kovan-faucets/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });
diff --git a/packages/kovan-faucets/src/ts/error_reporter.ts b/packages/kovan-faucets/src/ts/error_reporter.ts
index c9d09a99e..6865d3893 100644
--- a/packages/kovan-faucets/src/ts/error_reporter.ts
+++ b/packages/kovan-faucets/src/ts/error_reporter.ts
@@ -12,9 +12,9 @@ export const errorReporter = {
rollbar.handleUncaughtExceptions(configs.ROLLBAR_ACCESS_KEY);
- process.on('unhandledRejection', (err: Error) => {
+ process.on('unhandledRejection', async (err: Error) => {
utils.consoleLog(`Uncaught exception ${err}. Stack: ${err.stack}`);
- this.report(err);
+ await this.reportAsync(err);
process.exit(1);
});
},
diff --git a/packages/monorepo-scripts/scripts/postpublish.js b/packages/monorepo-scripts/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/monorepo-scripts/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });
diff --git a/packages/subproviders/src/globals.d.ts b/packages/subproviders/src/globals.d.ts
index 97fc34734..53457fa24 100644
--- a/packages/subproviders/src/globals.d.ts
+++ b/packages/subproviders/src/globals.d.ts
@@ -1,5 +1,3 @@
-/// <reference types='chai-typescript-typings' />
-/// <reference types='chai-as-promised-typescript-typings' />
declare module 'dirty-chai';
declare module 'es6-promisify';
diff --git a/packages/web3-typescript-typings/package.json b/packages/web3-typescript-typings/package.json
index 8b3d716a3..c16e9ac31 100644
--- a/packages/web3-typescript-typings/package.json
+++ b/packages/web3-typescript-typings/package.json
@@ -9,15 +9,15 @@
},
"repository": {
"type": "git",
- "url": "git+https://github.com/0xProject/web3-typescript-typings.git"
+ "url": "git+https://github.com/0xProject/0x.js.git"
},
"author": "Fabio Berger",
"contributors": ["Leonid Logvinov <logvinov.leon@gmail.com>"],
"license": "Apache-2.0",
"bugs": {
- "url": "https://github.com/0xProject/web3-typescript-typings/issues"
+ "url": "https://github.com/0xProject/0x.js/issues"
},
- "homepage": "https://github.com/0xProject/web3-typescript-typings#readme",
+ "homepage": "https://github.com/0xProject/0x.js/packages/web3-typescript-typings#readme",
"devDependencies": {
"@types/bignumber.js": "^4.0.2",
"tslint": "^5.5.0",
diff --git a/packages/web3-typescript-typings/scripts/postpublish.js b/packages/web3-typescript-typings/scripts/postpublish.js
new file mode 100644
index 000000000..16d67e03f
--- /dev/null
+++ b/packages/web3-typescript-typings/scripts/postpublish.js
@@ -0,0 +1,15 @@
+const postpublish_utils = require('../../../scripts/postpublish_utils');
+const packageJSON = require('../package.json');
+
+const subPackageName = packageJSON.name;
+
+postpublish_utils
+ .getLatestTagAndVersionAsync(subPackageName)
+ .then(function(result) {
+ const releaseName = postpublish_utils.getReleaseName(subPackageName, result.version);
+ const assets = [];
+ return postpublish_utils.publishReleaseNotes(result.tag, releaseName, assets);
+ })
+ .catch(function(err) {
+ throw err;
+ });