From f0f13aa1dda2927559ccc75f751a95e2e01f991f Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Sun, 22 Jul 2018 15:52:52 +0200 Subject: Move ECSignature type from types package into eth-light-wallet type dec since only used there --- packages/types/CHANGELOG.json | 8 ++++++++ packages/types/src/index.ts | 6 ------ packages/typescript-typings/types/eth-lightwallet/index.d.ts | 8 ++++++-- 3 files changed, 14 insertions(+), 8 deletions(-) diff --git a/packages/types/CHANGELOG.json b/packages/types/CHANGELOG.json index 6189acbbc..ed027e1d0 100644 --- a/packages/types/CHANGELOG.json +++ b/packages/types/CHANGELOG.json @@ -1,4 +1,12 @@ [ + { + "version": "1.0.0-rc.2", + "changes": [ + { + "note": "Remove `ECSignatureBuffer`" + } + ] + }, { "timestamp": 1532043000, "version": "1.0.0-rc.1", diff --git a/packages/types/src/index.ts b/packages/types/src/index.ts index 72e2a726b..a9256befb 100644 --- a/packages/types/src/index.ts +++ b/packages/types/src/index.ts @@ -48,12 +48,6 @@ export interface ECSignature { s: string; } -export interface ECSignatureBuffer { - v: number; - r: Buffer; - s: Buffer; -} - /** * Validator signature components */ diff --git a/packages/typescript-typings/types/eth-lightwallet/index.d.ts b/packages/typescript-typings/types/eth-lightwallet/index.d.ts index 58096e9f4..93daa5041 100644 --- a/packages/typescript-typings/types/eth-lightwallet/index.d.ts +++ b/packages/typescript-typings/types/eth-lightwallet/index.d.ts @@ -1,7 +1,11 @@ // eth-lightwallet declarations -declare module 'eth-lightwallet' { - import { ECSignatureBuffer } from '@0xproject/types'; +interface ECSignatureBuffer { + v: number; + r: Buffer; + s: Buffer; +} +declare module 'eth-lightwallet' { // tslint:disable-next-line:class-name export class signing { public static signTx( -- cgit v1.2.3 From 89b24a21a0833038aa7f79d938502fed84cdb1b0 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Sun, 22 Jul 2018 15:57:47 +0200 Subject: Add bn.js types as dep of `typescript-typings` since they are needed by ethereumjs-utils types --- packages/typescript-typings/package.json | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/typescript-typings/package.json b/packages/typescript-typings/package.json index 8b7a640c9..fb5353a82 100644 --- a/packages/typescript-typings/package.json +++ b/packages/typescript-typings/package.json @@ -26,7 +26,8 @@ "homepage": "https://github.com/0xProject/0x-monorepo/packages/typescript-typings#readme", "dependencies": { "ethereum-types": "^1.0.0", - "bignumber.js": "~4.1.0" + "bignumber.js": "~4.1.0", + "@types/bn.js": "^4.11.0" }, "devDependencies": { "@0xproject/monorepo-scripts": "^1.0.0", -- cgit v1.2.3 From 74483631d09395de248fe97034c059a2a8bb2097 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Sun, 22 Jul 2018 16:22:19 +0200 Subject: Move frontend package types out of typescript-typings since this package will be used in both node and browser contexts --- packages/react-docs/src/globals.d.ts | 2 + packages/react-shared/src/globals.d.ts | 2 + packages/typescript-typings/package.json | 4 +- .../types/react-highlight/index.d.ts | 1 - .../types/react-popper/index.d.ts | 49 --------------------- .../types/react-tooltip/index.d.ts | 1 - packages/website/ts/globals.d.ts | 50 ++++++++++++++++++++++ 7 files changed, 56 insertions(+), 53 deletions(-) delete mode 100644 packages/typescript-typings/types/react-highlight/index.d.ts delete mode 100644 packages/typescript-typings/types/react-popper/index.d.ts delete mode 100644 packages/typescript-typings/types/react-tooltip/index.d.ts diff --git a/packages/react-docs/src/globals.d.ts b/packages/react-docs/src/globals.d.ts index 94e63a32d..12f976a3a 100644 --- a/packages/react-docs/src/globals.d.ts +++ b/packages/react-docs/src/globals.d.ts @@ -1,3 +1,5 @@ +declare module 'react-tooltip'; + declare module '*.json' { const json: any; /* tslint:disable */ diff --git a/packages/react-shared/src/globals.d.ts b/packages/react-shared/src/globals.d.ts index 94e63a32d..b633d045c 100644 --- a/packages/react-shared/src/globals.d.ts +++ b/packages/react-shared/src/globals.d.ts @@ -1,3 +1,5 @@ +declare module 'react-highlight'; + declare module '*.json' { const json: any; /* tslint:disable */ diff --git a/packages/typescript-typings/package.json b/packages/typescript-typings/package.json index fb5353a82..10435ff25 100644 --- a/packages/typescript-typings/package.json +++ b/packages/typescript-typings/package.json @@ -25,9 +25,9 @@ }, "homepage": "https://github.com/0xProject/0x-monorepo/packages/typescript-typings#readme", "dependencies": { - "ethereum-types": "^1.0.0", + "@types/bn.js": "^4.11.0", "bignumber.js": "~4.1.0", - "@types/bn.js": "^4.11.0" + "ethereum-types": "^1.0.0" }, "devDependencies": { "@0xproject/monorepo-scripts": "^1.0.0", diff --git a/packages/typescript-typings/types/react-highlight/index.d.ts b/packages/typescript-typings/types/react-highlight/index.d.ts deleted file mode 100644 index 875721533..000000000 --- a/packages/typescript-typings/types/react-highlight/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'react-highlight'; diff --git a/packages/typescript-typings/types/react-popper/index.d.ts b/packages/typescript-typings/types/react-popper/index.d.ts deleted file mode 100644 index d7dbca17f..000000000 --- a/packages/typescript-typings/types/react-popper/index.d.ts +++ /dev/null @@ -1,49 +0,0 @@ -// Type definitions for react-popper 1.0.0-beta.6 -// Project: https://github.com/gilbarbara/react-joyride - -declare module 'react-popper' { - import * as React from 'react'; - import * as PopperJS from 'popper.js'; - - interface ManagerProps { - children: React.ReactNode; - } - export class Manager extends React.Component {} - - type RefHandler = (ref: HTMLElement | null) => void; - - export interface ReferenceChildrenProps { - ref: RefHandler; - } - - export interface ReferenceProps { - children: (props: ReferenceChildrenProps) => React.ReactNode; - } - export class Reference extends React.Component {} - - export interface PopperArrowProps { - ref: RefHandler; - style: React.CSSProperties; - } - - export type Placement = PopperJS.Placement; - - export interface PopperChildrenProps { - arrowProps: PopperArrowProps; - outOfBoundaries: boolean | null; - placement: PopperJS.Placement; - ref: RefHandler; - scheduleUpdate: () => void; - style: React.CSSProperties; - } - - export interface PopperProps { - children: (props: PopperChildrenProps) => React.ReactNode; - eventsEnabled?: boolean; - modifiers?: PopperJS.Modifiers; - placement?: PopperJS.Placement; - positionFixed?: boolean; - referenceElement?: Element; - } - export class Popper extends React.Component {} -} diff --git a/packages/typescript-typings/types/react-tooltip/index.d.ts b/packages/typescript-typings/types/react-tooltip/index.d.ts deleted file mode 100644 index 98cb6d592..000000000 --- a/packages/typescript-typings/types/react-tooltip/index.d.ts +++ /dev/null @@ -1 +0,0 @@ -declare module 'react-tooltip'; diff --git a/packages/website/ts/globals.d.ts b/packages/website/ts/globals.d.ts index 719c2708a..a63089b51 100644 --- a/packages/website/ts/globals.d.ts +++ b/packages/website/ts/globals.d.ts @@ -3,6 +3,7 @@ declare module 'whatwg-fetch'; declare module 'thenby'; declare module 'react-document-title'; declare module 'react-ga'; +declare module 'react-tooltip'; declare module '*.json' { const json: any; @@ -17,3 +18,52 @@ interface System { import(module: string): Promise; } declare var System: System; + +// Type definitions for react-popper 1.0.0-beta.6 +// Project: https://github.com/gilbarbara/react-joyride +declare module 'react-popper' { + import * as React from 'react'; + import * as PopperJS from 'popper.js'; + + interface ManagerProps { + children: React.ReactNode; + } + export class Manager extends React.Component {} + + type RefHandler = (ref: HTMLElement | null) => void; + + export interface ReferenceChildrenProps { + ref: RefHandler; + } + + export interface ReferenceProps { + children: (props: ReferenceChildrenProps) => React.ReactNode; + } + export class Reference extends React.Component {} + + export interface PopperArrowProps { + ref: RefHandler; + style: React.CSSProperties; + } + + export type Placement = PopperJS.Placement; + + export interface PopperChildrenProps { + arrowProps: PopperArrowProps; + outOfBoundaries: boolean | null; + placement: PopperJS.Placement; + ref: RefHandler; + scheduleUpdate: () => void; + style: React.CSSProperties; + } + + export interface PopperProps { + children: (props: PopperChildrenProps) => React.ReactNode; + eventsEnabled?: boolean; + modifiers?: PopperJS.Modifiers; + placement?: PopperJS.Placement; + positionFixed?: boolean; + referenceElement?: Element; + } + export class Popper extends React.Component {} +} -- cgit v1.2.3 From b325ad17352f9418b6beb2d810b8b0c9c9f7bd23 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Sun, 22 Jul 2018 18:27:36 +0200 Subject: Add additional required tsconfig option for utils package since it now relies on RequestInit & Response types defined in lib.dom.d.ts --- packages/utils/README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/packages/utils/README.md b/packages/utils/README.md index c637c9af5..82421e3ff 100644 --- a/packages/utils/README.md +++ b/packages/utils/README.md @@ -12,6 +12,7 @@ If your project is in [TypeScript](https://www.typescriptlang.org/), add the fol ```json "compilerOptions": { + "lib": ["dom"], "typeRoots": ["node_modules/@0xproject/typescript-typings/types", "node_modules/@types"], } ``` -- cgit v1.2.3 From 4f73b81b9cb421817b56f747c367a02a37f16ce5 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 11:00:27 +0200 Subject: Add troubleshooting section to utils README --- packages/utils/README.md | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/packages/utils/README.md b/packages/utils/README.md index 82421e3ff..c9a2f5846 100644 --- a/packages/utils/README.md +++ b/packages/utils/README.md @@ -12,7 +12,6 @@ If your project is in [TypeScript](https://www.typescriptlang.org/), add the fol ```json "compilerOptions": { - "lib": ["dom"], "typeRoots": ["node_modules/@0xproject/typescript-typings/types", "node_modules/@types"], } ``` @@ -23,6 +22,21 @@ If your project is in [TypeScript](https://www.typescriptlang.org/), add the fol import { addressUtils, bigNumberConfigs, classUtils, intervalUtils, promisify } from '@0xproject/utils'; ``` +## Troubleshooting + +If you are still seeing TS type errors complaining about missing DOM types such as `Response`: + +``` +error TS2304: Cannot find name 'Response'. +``` + +Then you need to explicitly add the `dom` lib to your compiler options in `tsconfig.json`. The `dom` library is included by default, but customizing the `lib` option can cause it to be dropped. + +``` +"compilerOptions": { + "lib": [..., "dom"], +``` + ## Contributing We welcome improvements and fixes from the wider community! To report bugs within this package, please create an issue in this repository. -- cgit v1.2.3 From 51b6f8bc71cf80528299c0378b3f1cec17a41c31 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 11:42:01 +0200 Subject: Revert "Move frontend package types out of typescript-typings since this package will be used in both node and browser contexts" This reverts commit 74483631d09395de248fe97034c059a2a8bb2097. --- packages/react-docs/src/globals.d.ts | 2 - packages/react-shared/src/globals.d.ts | 2 - packages/typescript-typings/package.json | 4 +- .../types/react-highlight/index.d.ts | 1 + .../types/react-popper/index.d.ts | 49 +++++++++++++++++++++ .../types/react-tooltip/index.d.ts | 1 + packages/website/ts/globals.d.ts | 50 ---------------------- 7 files changed, 53 insertions(+), 56 deletions(-) create mode 100644 packages/typescript-typings/types/react-highlight/index.d.ts create mode 100644 packages/typescript-typings/types/react-popper/index.d.ts create mode 100644 packages/typescript-typings/types/react-tooltip/index.d.ts diff --git a/packages/react-docs/src/globals.d.ts b/packages/react-docs/src/globals.d.ts index 12f976a3a..94e63a32d 100644 --- a/packages/react-docs/src/globals.d.ts +++ b/packages/react-docs/src/globals.d.ts @@ -1,5 +1,3 @@ -declare module 'react-tooltip'; - declare module '*.json' { const json: any; /* tslint:disable */ diff --git a/packages/react-shared/src/globals.d.ts b/packages/react-shared/src/globals.d.ts index b633d045c..94e63a32d 100644 --- a/packages/react-shared/src/globals.d.ts +++ b/packages/react-shared/src/globals.d.ts @@ -1,5 +1,3 @@ -declare module 'react-highlight'; - declare module '*.json' { const json: any; /* tslint:disable */ diff --git a/packages/typescript-typings/package.json b/packages/typescript-typings/package.json index 10435ff25..fb5353a82 100644 --- a/packages/typescript-typings/package.json +++ b/packages/typescript-typings/package.json @@ -25,9 +25,9 @@ }, "homepage": "https://github.com/0xProject/0x-monorepo/packages/typescript-typings#readme", "dependencies": { - "@types/bn.js": "^4.11.0", + "ethereum-types": "^1.0.0", "bignumber.js": "~4.1.0", - "ethereum-types": "^1.0.0" + "@types/bn.js": "^4.11.0" }, "devDependencies": { "@0xproject/monorepo-scripts": "^1.0.0", diff --git a/packages/typescript-typings/types/react-highlight/index.d.ts b/packages/typescript-typings/types/react-highlight/index.d.ts new file mode 100644 index 000000000..875721533 --- /dev/null +++ b/packages/typescript-typings/types/react-highlight/index.d.ts @@ -0,0 +1 @@ +declare module 'react-highlight'; diff --git a/packages/typescript-typings/types/react-popper/index.d.ts b/packages/typescript-typings/types/react-popper/index.d.ts new file mode 100644 index 000000000..d7dbca17f --- /dev/null +++ b/packages/typescript-typings/types/react-popper/index.d.ts @@ -0,0 +1,49 @@ +// Type definitions for react-popper 1.0.0-beta.6 +// Project: https://github.com/gilbarbara/react-joyride + +declare module 'react-popper' { + import * as React from 'react'; + import * as PopperJS from 'popper.js'; + + interface ManagerProps { + children: React.ReactNode; + } + export class Manager extends React.Component {} + + type RefHandler = (ref: HTMLElement | null) => void; + + export interface ReferenceChildrenProps { + ref: RefHandler; + } + + export interface ReferenceProps { + children: (props: ReferenceChildrenProps) => React.ReactNode; + } + export class Reference extends React.Component {} + + export interface PopperArrowProps { + ref: RefHandler; + style: React.CSSProperties; + } + + export type Placement = PopperJS.Placement; + + export interface PopperChildrenProps { + arrowProps: PopperArrowProps; + outOfBoundaries: boolean | null; + placement: PopperJS.Placement; + ref: RefHandler; + scheduleUpdate: () => void; + style: React.CSSProperties; + } + + export interface PopperProps { + children: (props: PopperChildrenProps) => React.ReactNode; + eventsEnabled?: boolean; + modifiers?: PopperJS.Modifiers; + placement?: PopperJS.Placement; + positionFixed?: boolean; + referenceElement?: Element; + } + export class Popper extends React.Component {} +} diff --git a/packages/typescript-typings/types/react-tooltip/index.d.ts b/packages/typescript-typings/types/react-tooltip/index.d.ts new file mode 100644 index 000000000..98cb6d592 --- /dev/null +++ b/packages/typescript-typings/types/react-tooltip/index.d.ts @@ -0,0 +1 @@ +declare module 'react-tooltip'; diff --git a/packages/website/ts/globals.d.ts b/packages/website/ts/globals.d.ts index a63089b51..719c2708a 100644 --- a/packages/website/ts/globals.d.ts +++ b/packages/website/ts/globals.d.ts @@ -3,7 +3,6 @@ declare module 'whatwg-fetch'; declare module 'thenby'; declare module 'react-document-title'; declare module 'react-ga'; -declare module 'react-tooltip'; declare module '*.json' { const json: any; @@ -18,52 +17,3 @@ interface System { import(module: string): Promise; } declare var System: System; - -// Type definitions for react-popper 1.0.0-beta.6 -// Project: https://github.com/gilbarbara/react-joyride -declare module 'react-popper' { - import * as React from 'react'; - import * as PopperJS from 'popper.js'; - - interface ManagerProps { - children: React.ReactNode; - } - export class Manager extends React.Component {} - - type RefHandler = (ref: HTMLElement | null) => void; - - export interface ReferenceChildrenProps { - ref: RefHandler; - } - - export interface ReferenceProps { - children: (props: ReferenceChildrenProps) => React.ReactNode; - } - export class Reference extends React.Component {} - - export interface PopperArrowProps { - ref: RefHandler; - style: React.CSSProperties; - } - - export type Placement = PopperJS.Placement; - - export interface PopperChildrenProps { - arrowProps: PopperArrowProps; - outOfBoundaries: boolean | null; - placement: PopperJS.Placement; - ref: RefHandler; - scheduleUpdate: () => void; - style: React.CSSProperties; - } - - export interface PopperProps { - children: (props: PopperChildrenProps) => React.ReactNode; - eventsEnabled?: boolean; - modifiers?: PopperJS.Modifiers; - placement?: PopperJS.Placement; - positionFixed?: boolean; - referenceElement?: Element; - } - export class Popper extends React.Component {} -} -- cgit v1.2.3 From 9a1f0ac8e2a7f8863de39b8650c9628324aa1e33 Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 11:43:01 +0200 Subject: Add dependent types of the react-popper typings --- packages/typescript-typings/package.json | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/typescript-typings/package.json b/packages/typescript-typings/package.json index fb5353a82..ec64547e4 100644 --- a/packages/typescript-typings/package.json +++ b/packages/typescript-typings/package.json @@ -27,7 +27,9 @@ "dependencies": { "ethereum-types": "^1.0.0", "bignumber.js": "~4.1.0", - "@types/bn.js": "^4.11.0" + "@types/bn.js": "^4.11.0", + "@types/react": "16.3.13", + "popper.js": "1.14.3" }, "devDependencies": { "@0xproject/monorepo-scripts": "^1.0.0", -- cgit v1.2.3 From eb6027fba7203daef981309651d2e070d8da763a Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 13:45:43 +0200 Subject: Move hdkey typings to dependencies since it's part of the exported interface --- packages/subproviders/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/subproviders/package.json b/packages/subproviders/package.json index 1aa5514a7..4b6a87fcd 100644 --- a/packages/subproviders/package.json +++ b/packages/subproviders/package.json @@ -47,6 +47,7 @@ "@0xproject/utils": "^1.0.0", "@ledgerhq/hw-app-eth": "^4.3.0", "@ledgerhq/hw-transport-u2f": "^4.3.0", + "@types/hdkey": "^0.7.0", "ethereum-types": "^1.0.0", "bip39": "^2.5.0", "bn.js": "^4.11.8", @@ -66,7 +67,6 @@ "@0xproject/utils": "^1.0.0", "@types/bip39": "^2.4.0", "@types/bn.js": "^4.11.0", - "@types/hdkey": "^0.7.0", "@types/ethereumjs-tx": "^1.0.0", "@types/lodash": "4.14.104", "@types/mocha": "^2.2.42", -- cgit v1.2.3 From f84f8799500bc9dd3050d0fb4d5100423869ce9f Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 14:39:34 +0200 Subject: Stop specifying a specific version of @types/react so there can't be two instances of the type installed --- packages/react-shared/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-shared/package.json b/packages/react-shared/package.json index 008972da9..f406830f9 100644 --- a/packages/react-shared/package.json +++ b/packages/react-shared/package.json @@ -38,7 +38,7 @@ "@types/lodash": "4.14.104", "@types/material-ui": "0.18.0", "@types/node": "^8.0.53", - "@types/react": "16.3.13", + "@types/react": "*", "@types/react-dom": "^16.0.3", "@types/react-scroll": "0.0.31", "@types/is-mobile": "0.3.0", -- cgit v1.2.3 From c7962216e99ce80a51508b08aefce77cf5cb4caa Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 16:02:03 +0200 Subject: Omit verson of react types --- packages/react-docs/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-docs/package.json b/packages/react-docs/package.json index c3853e6ba..820e2123b 100644 --- a/packages/react-docs/package.json +++ b/packages/react-docs/package.json @@ -41,7 +41,7 @@ "@types/lodash": "4.14.104", "@types/material-ui": "0.18.0", "@types/node": "^8.0.53", - "@types/react": "16.3.13", + "@types/react": "*", "@types/react-dom": "^16.0.3", "@types/react-scroll": "0.0.31", "basscss": "^8.0.3", -- cgit v1.2.3 From 9a36e73f4ed62871b2c39d129de0ac2c04aeba2b Mon Sep 17 00:00:00 2001 From: Fabio Berger Date: Mon, 23 Jul 2018 17:35:16 +0200 Subject: Move solidity-parser-antlr type to dependencies since it's used as part of the packages public interface --- packages/sol-cov/package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/sol-cov/package.json b/packages/sol-cov/package.json index 86808bfc1..9c23334a9 100644 --- a/packages/sol-cov/package.json +++ b/packages/sol-cov/package.json @@ -56,6 +56,7 @@ "@0xproject/utils": "^1.0.0", "@0xproject/web3-wrapper": "^1.0.0", "@0xproject/dev-utils": "^1.0.0", + "@types/solidity-parser-antlr": "^0.2.1", "ethereum-types": "^1.0.0", "ethereumjs-util": "^5.1.1", "glob": "^7.1.2", @@ -73,7 +74,6 @@ "@types/istanbul": "^0.4.30", "@types/loglevel": "^1.5.3", "@types/mkdirp": "^0.5.1", - "@types/solidity-parser-antlr": "^0.2.1", "@types/mocha": "^2.2.42", "@types/node": "^8.0.53", "@types/rimraf": "^2.0.2", -- cgit v1.2.3