aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website
diff options
context:
space:
mode:
Diffstat (limited to 'packages/website')
-rw-r--r--packages/website/md/docs/0xjs/1.0.0/async.md (renamed from packages/website/md/docs/0xjs/async.md)0
-rw-r--r--packages/website/md/docs/0xjs/1.0.0/errors.md (renamed from packages/website/md/docs/0xjs/errors.md)0
-rw-r--r--packages/website/md/docs/0xjs/1.0.0/installation.md (renamed from packages/website/md/docs/0xjs/installation.md)0
-rw-r--r--packages/website/md/docs/0xjs/1.0.0/introduction.md (renamed from packages/website/md/docs/0xjs/introduction.md)0
-rw-r--r--packages/website/md/docs/0xjs/1.0.0/versioning.md (renamed from packages/website/md/docs/0xjs/versioning.md)0
-rw-r--r--packages/website/md/docs/0xjs/2.0.0/introduction.md3
-rw-r--r--packages/website/md/docs/0xjs/2.0.0/versioning.md1
-rw-r--r--packages/website/md/docs/connect/1.0.0/installation.md (renamed from packages/website/md/docs/connect/installation.md)0
-rw-r--r--packages/website/md/docs/connect/1.0.0/introduction.md (renamed from packages/website/md/docs/connect/introduction.md)0
-rw-r--r--packages/website/md/docs/json_schemas/1.0.0/installation.md (renamed from packages/website/md/docs/json_schemas/installation.md)0
-rw-r--r--packages/website/md/docs/json_schemas/1.0.0/introduction.md (renamed from packages/website/md/docs/json_schemas/introduction.md)2
-rw-r--r--packages/website/md/docs/json_schemas/1.0.0/schemas.md (renamed from packages/website/md/docs/json_schemas/schemas.md)0
-rw-r--r--packages/website/md/docs/json_schemas/1.0.0/usage.md (renamed from packages/website/md/docs/json_schemas/usage.md)0
-rw-r--r--packages/website/md/docs/order_utils/1.0.0/installation.md (renamed from packages/website/md/docs/order_utils/installation.md)0
-rw-r--r--packages/website/md/docs/order_utils/1.0.0/introduction.md (renamed from packages/website/md/docs/order_utils/introduction.md)0
-rw-r--r--packages/website/md/docs/smart_contracts/1.0.0/introduction.md (renamed from packages/website/md/docs/smart_contracts/introduction.md)0
-rw-r--r--packages/website/md/docs/sol_cov/usage.md4
-rw-r--r--packages/website/package.json18
-rw-r--r--packages/website/ts/blockchain.ts33
-rw-r--r--packages/website/ts/components/dialogs/eth_weth_conversion_dialog.tsx6
-rw-r--r--packages/website/ts/components/dialogs/send_dialog.tsx40
-rw-r--r--packages/website/ts/components/flash_messages/asset_send_completed.tsx (renamed from packages/website/ts/components/flash_messages/token_send_completed.tsx)14
-rw-r--r--packages/website/ts/components/inputs/eth_amount_input.tsx3
-rw-r--r--packages/website/ts/components/send_button.tsx14
-rw-r--r--packages/website/ts/components/token_balances.tsx23
-rw-r--r--packages/website/ts/components/wallet/wrap_ether_item.tsx8
-rw-r--r--packages/website/ts/containers/connect_documentation.ts12
-rw-r--r--packages/website/ts/containers/ethereum_types_documentation.ts8
-rw-r--r--packages/website/ts/containers/inputs/eth_amount_input.ts36
-rw-r--r--packages/website/ts/containers/json_schemas_documentation.ts20
-rw-r--r--packages/website/ts/containers/order_utils_documentation.ts12
-rw-r--r--packages/website/ts/containers/smart_contracts_documentation.ts8
-rw-r--r--packages/website/ts/containers/sol_compiler_documentation.ts14
-rw-r--r--packages/website/ts/containers/sol_cov_documentation.ts14
-rw-r--r--packages/website/ts/containers/subproviders_documentation.ts14
-rw-r--r--packages/website/ts/containers/web3_wrapper_documentation.ts12
-rw-r--r--packages/website/ts/containers/zero_ex_js_documentation.ts35
-rw-r--r--packages/website/ts/utils/doc_utils.ts3
-rw-r--r--packages/website/ts/utils/utils.ts2
39 files changed, 238 insertions, 121 deletions
diff --git a/packages/website/md/docs/0xjs/async.md b/packages/website/md/docs/0xjs/1.0.0/async.md
index 8abaef331..8abaef331 100644
--- a/packages/website/md/docs/0xjs/async.md
+++ b/packages/website/md/docs/0xjs/1.0.0/async.md
diff --git a/packages/website/md/docs/0xjs/errors.md b/packages/website/md/docs/0xjs/1.0.0/errors.md
index e97973ccf..e97973ccf 100644
--- a/packages/website/md/docs/0xjs/errors.md
+++ b/packages/website/md/docs/0xjs/1.0.0/errors.md
diff --git a/packages/website/md/docs/0xjs/installation.md b/packages/website/md/docs/0xjs/1.0.0/installation.md
index ac0a47699..ac0a47699 100644
--- a/packages/website/md/docs/0xjs/installation.md
+++ b/packages/website/md/docs/0xjs/1.0.0/installation.md
diff --git a/packages/website/md/docs/0xjs/introduction.md b/packages/website/md/docs/0xjs/1.0.0/introduction.md
index 008376d33..008376d33 100644
--- a/packages/website/md/docs/0xjs/introduction.md
+++ b/packages/website/md/docs/0xjs/1.0.0/introduction.md
diff --git a/packages/website/md/docs/0xjs/versioning.md b/packages/website/md/docs/0xjs/1.0.0/versioning.md
index 6bcaa5b4d..6bcaa5b4d 100644
--- a/packages/website/md/docs/0xjs/versioning.md
+++ b/packages/website/md/docs/0xjs/1.0.0/versioning.md
diff --git a/packages/website/md/docs/0xjs/2.0.0/introduction.md b/packages/website/md/docs/0xjs/2.0.0/introduction.md
new file mode 100644
index 000000000..b98aeef38
--- /dev/null
+++ b/packages/website/md/docs/0xjs/2.0.0/introduction.md
@@ -0,0 +1,3 @@
+<b>**NOTE:** Release candidate versions are meant to work with V2 of 0x protocol. To interact with V1, select a 0.X version.</b>
+
+Welcome to the [0x.js](https://github.com/0xProject/0x-monorepo) documentation! 0x.js is a Javascript library for interacting with the 0x protocol. With it, you can easily make calls to the 0x smart contracts as well as any token adhering to the token standards supported by the protocol (currently ERC20 & ERC721). Functionality includes generating, signing, filling and cancelling orders, verifying an orders signature, setting or checking a users ERC20/ERC721 token balance/allowance and much more.
diff --git a/packages/website/md/docs/0xjs/2.0.0/versioning.md b/packages/website/md/docs/0xjs/2.0.0/versioning.md
new file mode 100644
index 000000000..7f2b6fee9
--- /dev/null
+++ b/packages/website/md/docs/0xjs/2.0.0/versioning.md
@@ -0,0 +1 @@
+Since v1.0.0, this package adheres to the [Semantic Versioning 2.0.0](http://semver.org/) specification. The library's public interface includes all the methods, properties and types included in the documentation. We will publish with a major version bump for any breaking change to the public interface, use a minor version bump when introducing new features in a backwards-compatible way, and patch versions when introducing backwards-compatible bug fixes. Because of this, we recommend you import `0x.js` with a caret `^2.0.0` to take advantage of non-breaking bug fixes.
diff --git a/packages/website/md/docs/connect/installation.md b/packages/website/md/docs/connect/1.0.0/installation.md
index 950bf92ca..950bf92ca 100644
--- a/packages/website/md/docs/connect/installation.md
+++ b/packages/website/md/docs/connect/1.0.0/installation.md
diff --git a/packages/website/md/docs/connect/introduction.md b/packages/website/md/docs/connect/1.0.0/introduction.md
index 4e3039442..4e3039442 100644
--- a/packages/website/md/docs/connect/introduction.md
+++ b/packages/website/md/docs/connect/1.0.0/introduction.md
diff --git a/packages/website/md/docs/json_schemas/installation.md b/packages/website/md/docs/json_schemas/1.0.0/installation.md
index 50a37bae1..50a37bae1 100644
--- a/packages/website/md/docs/json_schemas/installation.md
+++ b/packages/website/md/docs/json_schemas/1.0.0/installation.md
diff --git a/packages/website/md/docs/json_schemas/introduction.md b/packages/website/md/docs/json_schemas/1.0.0/introduction.md
index a27f4b521..cc777b1a8 100644
--- a/packages/website/md/docs/json_schemas/introduction.md
+++ b/packages/website/md/docs/json_schemas/1.0.0/introduction.md
@@ -1,3 +1,5 @@
+<b>**NOTE:** Release candidate versions are meant to work with V2 of 0x protocol. To interact with V1, select a 0.X version.</b>
+
Welcome to the [@0xproject/json-schemas](https://github.com/0xProject/0x-monorepo/tree/development/packages/json-schemas) documentation! This package provides JSON schemas for validating 0x Protocol & Standard Relayer API data structures. It provides both the raw JSON schemas and a schema validator class to interact with them from a JS project.
If you are not using a Javascript-based language for your project, you can copy-paste the JSON schemas within this package and use them together with a [JSON Schema](http://json-schema.org/) implementation in your [language of choice](http://json-schema.org/implementations.html) (e.g Python, Haskell, Go, C, C++, Rust, Ruby, Scala, etc...).
diff --git a/packages/website/md/docs/json_schemas/schemas.md b/packages/website/md/docs/json_schemas/1.0.0/schemas.md
index fcf5d8df6..fcf5d8df6 100644
--- a/packages/website/md/docs/json_schemas/schemas.md
+++ b/packages/website/md/docs/json_schemas/1.0.0/schemas.md
diff --git a/packages/website/md/docs/json_schemas/usage.md b/packages/website/md/docs/json_schemas/1.0.0/usage.md
index 68b801153..68b801153 100644
--- a/packages/website/md/docs/json_schemas/usage.md
+++ b/packages/website/md/docs/json_schemas/1.0.0/usage.md
diff --git a/packages/website/md/docs/order_utils/installation.md b/packages/website/md/docs/order_utils/1.0.0/installation.md
index 68a7cf960..68a7cf960 100644
--- a/packages/website/md/docs/order_utils/installation.md
+++ b/packages/website/md/docs/order_utils/1.0.0/installation.md
diff --git a/packages/website/md/docs/order_utils/introduction.md b/packages/website/md/docs/order_utils/1.0.0/introduction.md
index d5f3f2925..d5f3f2925 100644
--- a/packages/website/md/docs/order_utils/introduction.md
+++ b/packages/website/md/docs/order_utils/1.0.0/introduction.md
diff --git a/packages/website/md/docs/smart_contracts/introduction.md b/packages/website/md/docs/smart_contracts/1.0.0/introduction.md
index 566a573b6..566a573b6 100644
--- a/packages/website/md/docs/smart_contracts/introduction.md
+++ b/packages/website/md/docs/smart_contracts/1.0.0/introduction.md
diff --git a/packages/website/md/docs/sol_cov/usage.md b/packages/website/md/docs/sol_cov/usage.md
index 433cfad96..c747005fb 100644
--- a/packages/website/md/docs/sol_cov/usage.md
+++ b/packages/website/md/docs/sol_cov/usage.md
@@ -8,7 +8,7 @@ In order to use `CoverageSubprovider` with your favorite framework you need to p
### Sol-compiler
-If you are generating your artifacts with [@0xproject/sol-compiler](LINK) you can use the `SolCompilerArtifactsAdapter` we've implemented for you.
+If you are generating your artifacts with [@0xproject/sol-compiler](https://0xproject.com/docs/sol-compiler) you can use the `SolCompilerArtifactsAdapter` we've implemented for you.
```typescript
import { SolCompilerArtifactsAdapter } from '@0xproject/sol-cov';
@@ -19,7 +19,7 @@ const artifactsAdapter = new SolCompilerArtifactsAdapter(artifactsPath, contract
### Truffle
-If your project is using [Truffle](LINK), we've written a `TruffleArtifactsAdapter`for you.
+If your project is using [Truffle](https://truffleframework.com/), we've written a `TruffleArtifactsAdapter`for you.
```typescript
import { TruffleArtifactAdapter } from '@0xproject/sol-cov';
diff --git a/packages/website/package.json b/packages/website/package.json
index 80e49cd70..99fd7cff3 100644
--- a/packages/website/package.json
+++ b/packages/website/package.json
@@ -1,13 +1,13 @@
{
"name": "@0xproject/website",
- "version": "0.0.38",
+ "version": "0.0.39",
"engines": {
"node": ">=6.12"
},
"private": true,
"description": "Website and 0x portal dapp",
"scripts": {
- "build": "NODE_ENV=production webpack; exit 0;",
+ "build": "NODE_ENV=production node --max_old_space_size=8192 ../../node_modules/.bin/webpack; exit 0;",
"clean": "shx rm -f public/bundle*",
"lint": "tslint --project . 'ts/**/*.ts' 'ts/**/*.tsx'",
"watch_without_deps": "webpack-dev-server --content-base public --https",
@@ -22,14 +22,14 @@
"license": "Apache-2.0",
"dependencies": {
"@0xproject/contract-wrappers": "^0.0.5",
- "@0xproject/order-utils": "^0.0.8",
- "@0xproject/react-docs": "^0.0.15",
- "@0xproject/react-shared": "^0.2.2",
- "@0xproject/subproviders": "^0.10.5",
+ "@0xproject/order-utils": "^0.0.9",
+ "@0xproject/react-docs": "^1.0.0",
+ "@0xproject/react-shared": "^0.2.3",
+ "@0xproject/subproviders": "^1.0.0",
"@0xproject/types": "^0.8.1",
- "@0xproject/typescript-typings": "^0.4.2",
- "@0xproject/utils": "^0.7.2",
- "@0xproject/web3-wrapper": "^0.7.2",
+ "@0xproject/typescript-typings": "^0.4.3",
+ "@0xproject/utils": "^1.0.0",
+ "@0xproject/web3-wrapper": "^1.0.0",
"accounting": "^0.4.1",
"basscss": "^8.0.3",
"blockies": "^0.0.2",
diff --git a/packages/website/ts/blockchain.ts b/packages/website/ts/blockchain.ts
index 88461f8a9..45994be5f 100644
--- a/packages/website/ts/blockchain.ts
+++ b/packages/website/ts/blockchain.ts
@@ -35,7 +35,7 @@ import * as moment from 'moment';
import * as React from 'react';
import contract = require('truffle-contract');
import { BlockchainWatcher } from 'ts/blockchain_watcher';
-import { TokenSendCompleted } from 'ts/components/flash_messages/token_send_completed';
+import { AssetSendCompleted } from 'ts/components/flash_messages/asset_send_completed';
import { TransactionSubmitted } from 'ts/components/flash_messages/transaction_submitted';
import { trackedTokenStorage } from 'ts/local_storage/tracked_token_storage';
import { tradeHistoryStorage } from 'ts/local_storage/trade_history_storage';
@@ -276,6 +276,32 @@ export class Blockchain {
);
await this._showEtherScanLinkAndAwaitTransactionMinedAsync(txHash);
}
+ public async sendAsync(toAddress: string, amountInBaseUnits: BigNumber): Promise<void> {
+ utils.assert(this._doesUserAddressExist(), BlockchainCallErrs.UserHasNoAssociatedAddresses);
+ const transaction = {
+ from: this._userAddressIfExists,
+ to: toAddress,
+ value: amountInBaseUnits,
+ gasPrice: this._defaultGasPrice,
+ };
+ this._showFlashMessageIfLedger();
+ const txHash = await this._web3Wrapper.sendTransactionAsync(transaction);
+ await this._showEtherScanLinkAndAwaitTransactionMinedAsync(txHash);
+ const etherScanLinkIfExists = sharedUtils.getEtherScanLinkIfExists(
+ txHash,
+ this.networkId,
+ EtherscanLinkSuffixes.Tx,
+ );
+ this._dispatcher.showFlashMessage(
+ React.createElement(AssetSendCompleted, {
+ etherScanLinkIfExists,
+ toAddress,
+ amountInBaseUnits,
+ decimals: constants.DECIMAL_PLACES_ETH,
+ symbol: constants.ETHER_SYMBOL,
+ }),
+ );
+ }
public async transferAsync(token: Token, toAddress: string, amountInBaseUnits: BigNumber): Promise<void> {
utils.assert(!_.isUndefined(this._contractWrappers), 'ContractWrappers must be instantiated.');
utils.assert(this._doesUserAddressExist(), BlockchainCallErrs.UserHasNoAssociatedAddresses);
@@ -297,11 +323,12 @@ export class Blockchain {
EtherscanLinkSuffixes.Tx,
);
this._dispatcher.showFlashMessage(
- React.createElement(TokenSendCompleted, {
+ React.createElement(AssetSendCompleted, {
etherScanLinkIfExists,
- token,
toAddress,
amountInBaseUnits,
+ decimals: token.decimals,
+ symbol: token.symbol,
}),
);
}
diff --git a/packages/website/ts/components/dialogs/eth_weth_conversion_dialog.tsx b/packages/website/ts/components/dialogs/eth_weth_conversion_dialog.tsx
index 7b09cc92c..5f4bf8519 100644
--- a/packages/website/ts/components/dialogs/eth_weth_conversion_dialog.tsx
+++ b/packages/website/ts/components/dialogs/eth_weth_conversion_dialog.tsx
@@ -1,15 +1,13 @@
import { colors } from '@0xproject/react-shared';
import { BigNumber } from '@0xproject/utils';
-import { Web3Wrapper } from '@0xproject/web3-wrapper';
import * as _ from 'lodash';
import Dialog from 'material-ui/Dialog';
import FlatButton from 'material-ui/FlatButton';
import * as React from 'react';
import { Blockchain } from 'ts/blockchain';
-import { EthAmountInput } from 'ts/components/inputs/eth_amount_input';
import { TokenAmountInput } from 'ts/components/inputs/token_amount_input';
+import { EthAmountInput } from 'ts/containers/inputs/eth_amount_input';
import { Side, Token } from 'ts/types';
-import { constants } from 'ts/utils/constants';
interface EthWethConversionDialogProps {
blockchain: Blockchain;
@@ -78,7 +76,6 @@ export class EthWethConversionDialog extends React.Component<
? 'Convert your Ether into a tokenized, tradable form.'
: "Convert your Wrapped Ether back into it's native form.";
const isWrappedVersion = this.props.direction === Side.Receive;
- const etherBalanceInEth = Web3Wrapper.toUnitAmount(this.props.etherBalanceInWei, constants.DECIMAL_PLACES_ETH);
return (
<div>
<div className="pb2">{explanation}</div>
@@ -106,7 +103,6 @@ export class EthWethConversionDialog extends React.Component<
/>
) : (
<EthAmountInput
- balance={etherBalanceInEth}
amount={this.state.value}
onChange={this._onValueChange.bind(this)}
shouldCheckBalance={true}
diff --git a/packages/website/ts/components/dialogs/send_dialog.tsx b/packages/website/ts/components/dialogs/send_dialog.tsx
index 8a98fdf69..c1179dbd0 100644
--- a/packages/website/ts/components/dialogs/send_dialog.tsx
+++ b/packages/website/ts/components/dialogs/send_dialog.tsx
@@ -6,6 +6,7 @@ import * as React from 'react';
import { Blockchain } from 'ts/blockchain';
import { AddressInput } from 'ts/components/inputs/address_input';
import { TokenAmountInput } from 'ts/components/inputs/token_amount_input';
+import { EthAmountInput } from 'ts/containers/inputs/eth_amount_input';
import { Token } from 'ts/types';
interface SendDialogProps {
@@ -15,7 +16,7 @@ interface SendDialogProps {
onComplete: (recipient: string, value: BigNumber) => void;
onCancelled: () => void;
isOpen: boolean;
- token: Token;
+ asset: Token | 'ETH';
lastForceTokenStateRefetch: number;
}
@@ -58,23 +59,23 @@ export class SendDialog extends React.Component<SendDialogProps, SendDialogState
);
}
private _renderSendDialogBody(): React.ReactNode {
- return (
- <div className="mx-auto" style={{ maxWidth: 300 }}>
- <div style={{ height: 80 }}>
- <AddressInput
- initialAddress={this.state.recipient}
- updateAddress={this._onRecipientChange.bind(this)}
- isRequired={true}
- label={'Recipient address'}
- hintText={'Address'}
- />
- </div>
+ const input =
+ this.props.asset === 'ETH' ? (
+ <EthAmountInput
+ label="Amount to send"
+ shouldShowIncompleteErrs={this.state.shouldShowIncompleteErrs}
+ shouldCheckBalance={true}
+ shouldShowErrs={true}
+ onChange={this._onValueChange.bind(this)}
+ amount={this.state.value}
+ />
+ ) : (
<TokenAmountInput
blockchain={this.props.blockchain}
userAddress={this.props.userAddress}
networkId={this.props.networkId}
label="Amount to send"
- token={this.props.token}
+ token={this.props.asset}
shouldShowIncompleteErrs={this.state.shouldShowIncompleteErrs}
shouldCheckBalance={true}
shouldCheckAllowance={false}
@@ -82,6 +83,19 @@ export class SendDialog extends React.Component<SendDialogProps, SendDialogState
amount={this.state.value}
lastForceTokenStateRefetch={this.props.lastForceTokenStateRefetch}
/>
+ );
+ return (
+ <div className="mx-auto" style={{ maxWidth: 300 }}>
+ <div style={{ height: 80 }}>
+ <AddressInput
+ initialAddress={this.state.recipient}
+ updateAddress={this._onRecipientChange.bind(this)}
+ isRequired={true}
+ label="Recipient address'"
+ hintText="Address"
+ />
+ </div>
+ {input}
</div>
);
}
diff --git a/packages/website/ts/components/flash_messages/token_send_completed.tsx b/packages/website/ts/components/flash_messages/asset_send_completed.tsx
index f3f1ea2fc..f76e05fe1 100644
--- a/packages/website/ts/components/flash_messages/token_send_completed.tsx
+++ b/packages/website/ts/components/flash_messages/asset_send_completed.tsx
@@ -3,30 +3,30 @@ import { BigNumber } from '@0xproject/utils';
import { Web3Wrapper } from '@0xproject/web3-wrapper';
import * as _ from 'lodash';
import * as React from 'react';
-import { Token } from 'ts/types';
import { utils } from 'ts/utils/utils';
-interface TokenSendCompletedProps {
+interface AssetSendCompletedProps {
etherScanLinkIfExists?: string;
- token: Token;
toAddress: string;
amountInBaseUnits: BigNumber;
+ decimals: number;
+ symbol: string;
}
-interface TokenSendCompletedState {}
+interface AssetSendCompletedState {}
-export class TokenSendCompleted extends React.Component<TokenSendCompletedProps, TokenSendCompletedState> {
+export class AssetSendCompleted extends React.Component<AssetSendCompletedProps, AssetSendCompletedState> {
public render(): React.ReactNode {
const etherScanLink = !_.isUndefined(this.props.etherScanLinkIfExists) && (
<a style={{ color: colors.white }} href={`${this.props.etherScanLinkIfExists}`} target="_blank">
Verify on Etherscan
</a>
);
- const amountInUnits = Web3Wrapper.toUnitAmount(this.props.amountInBaseUnits, this.props.token.decimals);
+ const amountInUnits = Web3Wrapper.toUnitAmount(this.props.amountInBaseUnits, this.props.decimals);
const truncatedAddress = utils.getAddressBeginAndEnd(this.props.toAddress);
return (
<div>
- {`Sent ${amountInUnits} ${this.props.token.symbol} to ${truncatedAddress}: `}
+ {`Sent ${amountInUnits} ${this.props.symbol} to ${truncatedAddress}: `}
{etherScanLink}
</div>
);
diff --git a/packages/website/ts/components/inputs/eth_amount_input.tsx b/packages/website/ts/components/inputs/eth_amount_input.tsx
index 552d4277a..3a7905442 100644
--- a/packages/website/ts/components/inputs/eth_amount_input.tsx
+++ b/packages/website/ts/components/inputs/eth_amount_input.tsx
@@ -28,14 +28,13 @@ export class EthAmountInput extends React.Component<EthAmountInputProps, EthAmou
public static defaultProps: Partial<EthAmountInputProps> = {
shouldShowErrs: true,
shouldShowUnderline: true,
- style: { height: 63 },
};
public render(): React.ReactNode {
const amount = this.props.amount
? Web3Wrapper.toUnitAmount(this.props.amount, constants.DECIMAL_PLACES_ETH)
: undefined;
return (
- <div className="flex overflow-hidden" style={this.props.style}>
+ <div className="flex" style={this.props.style}>
<BalanceBoundedInput
label={this.props.label}
balance={this.props.balance}
diff --git a/packages/website/ts/components/send_button.tsx b/packages/website/ts/components/send_button.tsx
index ac55d430b..107983dee 100644
--- a/packages/website/ts/components/send_button.tsx
+++ b/packages/website/ts/components/send_button.tsx
@@ -12,7 +12,7 @@ import { utils } from 'ts/utils/utils';
interface SendButtonProps {
userAddress: string;
networkId: number;
- token: Token;
+ asset: Token | 'ETH';
dispatcher: Dispatcher;
blockchain: Blockchain;
onError: () => void;
@@ -51,7 +51,7 @@ export class SendButton extends React.Component<SendButtonProps, SendButtonState
isOpen={this.state.isSendDialogVisible}
onComplete={this._onSendAmountSelectedAsync.bind(this)}
onCancelled={this._toggleSendDialog.bind(this)}
- token={this.props.token}
+ asset={this.props.asset}
lastForceTokenStateRefetch={this.props.lastForceTokenStateRefetch}
/>
</div>
@@ -67,10 +67,14 @@ export class SendButton extends React.Component<SendButtonProps, SendButtonState
isSending: true,
});
this._toggleSendDialog();
- const token = this.props.token;
try {
- await this.props.blockchain.transferAsync(token, recipient, value);
- await this.props.refetchTokenStateAsync(token.address);
+ if (this.props.asset === 'ETH') {
+ await this.props.blockchain.sendAsync(recipient, value);
+ } else {
+ const token = this.props.asset;
+ await this.props.blockchain.transferAsync(token, recipient, value);
+ await this.props.refetchTokenStateAsync(token.address);
+ }
} catch (err) {
const errMsg = `${err}`;
if (_.includes(errMsg, BlockchainCallErrs.UserHasNoAssociatedAddresses)) {
diff --git a/packages/website/ts/components/token_balances.tsx b/packages/website/ts/components/token_balances.tsx
index c8d80702b..550438e76 100644
--- a/packages/website/ts/components/token_balances.tsx
+++ b/packages/website/ts/components/token_balances.tsx
@@ -204,11 +204,8 @@ export class TokenBalances extends React.Component<TokenBalancesProps, TokenBala
<TableHeaderColumn>Currency</TableHeaderColumn>
<TableHeaderColumn>Balance</TableHeaderColumn>
<TableRowColumn className="sm-hide xs-hide" style={stubColumnStyle} />
- {isTestNetwork && (
- <TableHeaderColumn style={{ paddingLeft: 3 }}>
- {isSmallScreen ? 'Faucet' : 'Request from faucet'}
- </TableHeaderColumn>
- )}
+ {isTestNetwork && <TableHeaderColumn style={{ paddingLeft: 3 }}>Action</TableHeaderColumn>}
+ <TableHeaderColumn>Send</TableHeaderColumn>
</TableRow>
</TableHeader>
<TableBody displayRowCheckbox={false}>
@@ -235,6 +232,20 @@ export class TokenBalances extends React.Component<TokenBalancesProps, TokenBala
/>
</TableRowColumn>
)}
+ <TableRowColumn>
+ <SendButton
+ userAddress={this.props.userAddress}
+ networkId={this.props.networkId}
+ blockchain={this.props.blockchain}
+ dispatcher={this.props.dispatcher}
+ asset="ETH"
+ onError={this._onSendFailed.bind(this)}
+ lastForceTokenStateRefetch={this.props.lastForceTokenStateRefetch}
+ // This is not necessary for ETH.
+ // tslint:disable:jsx-no-lambda
+ refetchTokenStateAsync={() => undefined}
+ />
+ </TableRowColumn>
</TableRow>
</TableBody>
</Table>
@@ -402,7 +413,7 @@ export class TokenBalances extends React.Component<TokenBalancesProps, TokenBala
networkId={this.props.networkId}
blockchain={this.props.blockchain}
dispatcher={this.props.dispatcher}
- token={token}
+ asset={token}
onError={this._onSendFailed.bind(this)}
lastForceTokenStateRefetch={this.props.lastForceTokenStateRefetch}
refetchTokenStateAsync={this._refetchTokenStateAsync.bind(this, token.address)}
diff --git a/packages/website/ts/components/wallet/wrap_ether_item.tsx b/packages/website/ts/components/wallet/wrap_ether_item.tsx
index fcab5d1dd..54ace7ae2 100644
--- a/packages/website/ts/components/wallet/wrap_ether_item.tsx
+++ b/packages/website/ts/components/wallet/wrap_ether_item.tsx
@@ -6,9 +6,9 @@ import FlatButton from 'material-ui/FlatButton';
import * as React from 'react';
import { Blockchain } from 'ts/blockchain';
-import { EthAmountInput } from 'ts/components/inputs/eth_amount_input';
import { TokenAmountInput } from 'ts/components/inputs/token_amount_input';
import { Container } from 'ts/components/ui/container';
+import { EthAmountInput } from 'ts/containers/inputs/eth_amount_input';
import { Dispatcher } from 'ts/redux/dispatcher';
import { colors } from 'ts/style/colors';
import { BlockchainCallErrs, Side, Token } from 'ts/types';
@@ -87,13 +87,8 @@ export class WrapEtherItem extends React.Component<WrapEtherItemProps, WrapEther
};
}
public render(): React.ReactNode {
- const etherBalanceInEth = Web3Wrapper.toUnitAmount(
- this.props.userEtherBalanceInWei,
- constants.DECIMAL_PLACES_ETH,
- );
const isWrappingEth = this.props.direction === Side.Deposit;
const topLabelText = isWrappingEth ? 'Convert ETH into WETH 1:1' : 'Convert WETH into ETH 1:1';
-
return (
<Container className="flex" backgroundColor={colors.walletFocusedItemBackground} paddingTop="25px">
<div>{this._renderIsEthConversionHappeningSpinner()} </div>
@@ -103,7 +98,6 @@ export class WrapEtherItem extends React.Component<WrapEtherItemProps, WrapEther
<div style={styles.inputContainer}>
{isWrappingEth ? (
<EthAmountInput
- balance={etherBalanceInEth}
amount={this.state.currentInputAmount}
hintText="0.00"
onChange={this._onValueChange.bind(this)}
diff --git a/packages/website/ts/containers/connect_documentation.ts b/packages/website/ts/containers/connect_documentation.ts
index f939ef0df..abf419347 100644
--- a/packages/website/ts/containers/connect_documentation.ts
+++ b/packages/website/ts/containers/connect_documentation.ts
@@ -10,8 +10,8 @@ import { constants } from 'ts/utils/constants';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/connect/introduction');
-const InstallationMarkdown = require('md/docs/connect/installation');
+const IntroMarkdownV1 = require('md/docs/connect/1.0.0/introduction');
+const InstallationMarkdownV1 = require('md/docs/connect/1.0.0/installation');
/* tslint:enable:no-var-requires */
const connectDocSections = {
@@ -34,9 +34,11 @@ const docsInfoConfig: DocsInfoConfig = {
webSocketOrderbookChannel: [connectDocSections.webSocketOrderbookChannel],
types: [connectDocSections.types],
},
- sectionNameToMarkdown: {
- [connectDocSections.introduction]: IntroMarkdown,
- [connectDocSections.installation]: InstallationMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [connectDocSections.introduction]: IntroMarkdownV1,
+ [connectDocSections.installation]: InstallationMarkdownV1,
+ },
},
sectionNameToModulePath: {
[connectDocSections.httpClient]: ['"src/http_client"'],
diff --git a/packages/website/ts/containers/ethereum_types_documentation.ts b/packages/website/ts/containers/ethereum_types_documentation.ts
index 285438835..0be8dd3bc 100644
--- a/packages/website/ts/containers/ethereum_types_documentation.ts
+++ b/packages/website/ts/containers/ethereum_types_documentation.ts
@@ -30,9 +30,11 @@ const docsInfoConfig: DocsInfoConfig = {
install: [docSections.installation],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdown,
+ [docSections.installation]: InstallationMarkdown,
+ },
},
sectionNameToModulePath: {
[docSections.types]: ['"index"'],
diff --git a/packages/website/ts/containers/inputs/eth_amount_input.ts b/packages/website/ts/containers/inputs/eth_amount_input.ts
new file mode 100644
index 000000000..9ef903b55
--- /dev/null
+++ b/packages/website/ts/containers/inputs/eth_amount_input.ts
@@ -0,0 +1,36 @@
+import { BigNumber } from '@0xproject/utils';
+import { Web3Wrapper } from '@0xproject/web3-wrapper';
+import * as React from 'react';
+import { connect } from 'react-redux';
+import { State } from 'ts/redux/reducer';
+import { ValidatedBigNumberCallback } from 'ts/types';
+import { constants } from 'ts/utils/constants';
+
+import { EthAmountInput as EthAmountInputComponent } from 'ts/components/inputs/eth_amount_input';
+
+interface EthAmountInputProps {
+ label?: string;
+ amount?: BigNumber;
+ hintText?: string;
+ onChange: ValidatedBigNumberCallback;
+ onErrorMsgChange?: (errorMsg: React.ReactNode) => void;
+ shouldShowIncompleteErrs: boolean;
+ shouldCheckBalance: boolean;
+ shouldShowErrs?: boolean;
+ shouldShowUnderline?: boolean;
+ style?: React.CSSProperties;
+ labelStyle?: React.CSSProperties;
+ inputHintStyle?: React.CSSProperties;
+}
+
+interface ConnectedState {
+ balance: BigNumber;
+}
+
+const mapStateToProps = (state: State, _ownProps: EthAmountInputProps): ConnectedState => ({
+ balance: Web3Wrapper.toUnitAmount(state.userEtherBalanceInWei, constants.DECIMAL_PLACES_ETH),
+});
+
+export const EthAmountInput: React.ComponentClass<EthAmountInputProps> = connect(mapStateToProps)(
+ EthAmountInputComponent,
+);
diff --git a/packages/website/ts/containers/json_schemas_documentation.ts b/packages/website/ts/containers/json_schemas_documentation.ts
index 67740d4c6..523777114 100644
--- a/packages/website/ts/containers/json_schemas_documentation.ts
+++ b/packages/website/ts/containers/json_schemas_documentation.ts
@@ -9,10 +9,10 @@ import { DocPackages } from 'ts/types';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/json_schemas/introduction');
-const InstallationMarkdown = require('md/docs/json_schemas/installation');
-const UsageMarkdown = require('md/docs/json_schemas/usage');
-const SchemasMarkdown = require('md/docs/json_schemas/schemas');
+const IntroMarkdownV1 = require('md/docs/json_schemas/1.0.0/introduction');
+const InstallationMarkdownV1 = require('md/docs/json_schemas/1.0.0/installation');
+const UsageMarkdownV1 = require('md/docs/json_schemas/1.0.0/usage');
+const SchemasMarkdownV1 = require('md/docs/json_schemas/1.0.0/schemas');
/* tslint:enable:no-var-requires */
const docSections = {
@@ -35,11 +35,13 @@ const docsInfoConfig: DocsInfoConfig = {
schemaValidator: [docSections.schemaValidator],
schemas: [docSections.schemas],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
- [docSections.schemas]: SchemasMarkdown,
- [docSections.usage]: UsageMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ [docSections.schemas]: SchemasMarkdownV1,
+ [docSections.usage]: UsageMarkdownV1,
+ },
},
sectionNameToModulePath: {
[docSections.schemaValidator]: ['"json-schemas/src/schema_validator"'],
diff --git a/packages/website/ts/containers/order_utils_documentation.ts b/packages/website/ts/containers/order_utils_documentation.ts
index 37b7f2273..c6570f514 100644
--- a/packages/website/ts/containers/order_utils_documentation.ts
+++ b/packages/website/ts/containers/order_utils_documentation.ts
@@ -10,8 +10,8 @@ import { constants } from 'ts/utils/constants';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/order_utils/introduction');
-const InstallationMarkdown = require('md/docs/order_utils/installation');
+const IntroMarkdownV1 = require('md/docs/order_utils/1.0.0/introduction');
+const InstallationMarkdownV1 = require('md/docs/order_utils/1.0.0/installation');
/* tslint:enable:no-var-requires */
const docSections = {
@@ -32,9 +32,11 @@ const docsInfoConfig: DocsInfoConfig = {
usage: [docSections.usage],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ },
},
sectionNameToModulePath: {
[docSections.usage]: [
diff --git a/packages/website/ts/containers/smart_contracts_documentation.ts b/packages/website/ts/containers/smart_contracts_documentation.ts
index c88c3b365..b0a712477 100644
--- a/packages/website/ts/containers/smart_contracts_documentation.ts
+++ b/packages/website/ts/containers/smart_contracts_documentation.ts
@@ -10,7 +10,7 @@ import { DocPackages, SmartContractDocSections as Sections } from 'ts/types';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/smart_contracts/introduction');
+const IntroMarkdownV1 = require('md/docs/smart_contracts/1.0.0/introduction');
/* tslint:enable:no-var-requires */
const docsInfoConfig: DocsInfoConfig = {
@@ -22,8 +22,10 @@ const docsInfoConfig: DocsInfoConfig = {
introduction: [Sections.Introduction],
contracts: [Sections.Exchange, Sections.TokenRegistry, Sections.ZRXToken, Sections.TokenTransferProxy],
},
- sectionNameToMarkdown: {
- [Sections.Introduction]: IntroMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [Sections.Introduction]: IntroMarkdownV1,
+ },
},
sections: {
Introduction: Sections.Introduction,
diff --git a/packages/website/ts/containers/sol_compiler_documentation.ts b/packages/website/ts/containers/sol_compiler_documentation.ts
index 8720e2c1d..b289c8f34 100644
--- a/packages/website/ts/containers/sol_compiler_documentation.ts
+++ b/packages/website/ts/containers/sol_compiler_documentation.ts
@@ -9,8 +9,8 @@ import { DocPackages } from 'ts/types';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/sol-compiler/introduction');
-const InstallationMarkdown = require('md/docs/sol-compiler/installation');
+const IntroMarkdownV1 = require('md/docs/sol-compiler/introduction');
+const InstallationMarkdownV1 = require('md/docs/sol-compiler/installation');
const UsageMarkdown = require('md/docs/sol-compiler/usage');
/* tslint:enable:no-var-requires */
@@ -34,10 +34,12 @@ const docsInfoConfig: DocsInfoConfig = {
compiler: [docSections.compiler],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
- [docSections.usage]: UsageMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ [docSections.usage]: UsageMarkdown,
+ },
},
sectionNameToModulePath: {
[docSections.compiler]: ['"sol-compiler/src/compiler"'],
diff --git a/packages/website/ts/containers/sol_cov_documentation.ts b/packages/website/ts/containers/sol_cov_documentation.ts
index a8009071f..d78c450ed 100644
--- a/packages/website/ts/containers/sol_cov_documentation.ts
+++ b/packages/website/ts/containers/sol_cov_documentation.ts
@@ -9,8 +9,8 @@ import { DocPackages } from 'ts/types';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/sol_cov/introduction');
-const InstallationMarkdown = require('md/docs/sol_cov/installation');
+const IntroMarkdownV1 = require('md/docs/sol_cov/introduction');
+const InstallationMarkdownV1 = require('md/docs/sol_cov/installation');
const UsageMarkdown = require('md/docs/sol_cov/usage');
/* tslint:enable:no-var-requires */
@@ -40,10 +40,12 @@ const docsInfoConfig: DocsInfoConfig = {
'truffle-artifact-adapter': [docSections.truffleArtifactAdapter],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
- [docSections.usage]: UsageMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ [docSections.usage]: UsageMarkdown,
+ },
},
sectionNameToModulePath: {
[docSections.coverageSubprovider]: ['"sol-cov/src/coverage_subprovider"'],
diff --git a/packages/website/ts/containers/subproviders_documentation.ts b/packages/website/ts/containers/subproviders_documentation.ts
index 567f6a37e..0e9150d7b 100644
--- a/packages/website/ts/containers/subproviders_documentation.ts
+++ b/packages/website/ts/containers/subproviders_documentation.ts
@@ -10,8 +10,8 @@ import { constants } from 'ts/utils/constants';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/subproviders/introduction');
-const InstallationMarkdown = require('md/docs/subproviders/installation');
+const IntroMarkdownV1 = require('md/docs/subproviders/introduction');
+const InstallationMarkdownV1 = require('md/docs/subproviders/installation');
const LedgerNodeHidMarkdown = require('md/docs/subproviders/ledger_node_hid');
/* tslint:enable:no-var-requires */
@@ -57,10 +57,12 @@ const docsInfoConfig: DocsInfoConfig = {
['nonceTracker-subprovider']: [docSections.nonceTrackerSubprovider],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
- [docSections.ledgerNodeHid]: LedgerNodeHidMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ [docSections.ledgerNodeHid]: LedgerNodeHidMarkdown,
+ },
},
sectionNameToModulePath: {
[docSections.subprovider]: ['"subproviders/src/subproviders/subprovider"'],
diff --git a/packages/website/ts/containers/web3_wrapper_documentation.ts b/packages/website/ts/containers/web3_wrapper_documentation.ts
index b04a83ac4..8d98d9476 100644
--- a/packages/website/ts/containers/web3_wrapper_documentation.ts
+++ b/packages/website/ts/containers/web3_wrapper_documentation.ts
@@ -10,8 +10,8 @@ import { constants } from 'ts/utils/constants';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/web3_wrapper/introduction');
-const InstallationMarkdown = require('md/docs/web3_wrapper/installation');
+const IntroMarkdownV1 = require('md/docs/web3_wrapper/introduction');
+const InstallationMarkdownV1 = require('md/docs/web3_wrapper/installation');
/* tslint:enable:no-var-requires */
const docSections = {
@@ -32,9 +32,11 @@ const docsInfoConfig: DocsInfoConfig = {
web3Wrapper: [docSections.web3Wrapper],
types: [docSections.types],
},
- sectionNameToMarkdown: {
- [docSections.introduction]: IntroMarkdown,
- [docSections.installation]: InstallationMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [docSections.introduction]: IntroMarkdownV1,
+ [docSections.installation]: InstallationMarkdownV1,
+ },
},
sectionNameToModulePath: {
[docSections.web3Wrapper]: ['"web3-wrapper/src/web3_wrapper"'],
diff --git a/packages/website/ts/containers/zero_ex_js_documentation.ts b/packages/website/ts/containers/zero_ex_js_documentation.ts
index 9d3be56f5..6be54595d 100644
--- a/packages/website/ts/containers/zero_ex_js_documentation.ts
+++ b/packages/website/ts/containers/zero_ex_js_documentation.ts
@@ -10,11 +10,14 @@ import { constants } from 'ts/utils/constants';
import { Translate } from 'ts/utils/translate';
/* tslint:disable:no-var-requires */
-const IntroMarkdown = require('md/docs/0xjs/introduction');
-const InstallationMarkdown = require('md/docs/0xjs/installation');
-const AsyncMarkdown = require('md/docs/0xjs/async');
-const ErrorsMarkdown = require('md/docs/0xjs/errors');
-const versioningMarkdown = require('md/docs/0xjs/versioning');
+const IntroMarkdownV1 = require('md/docs/0xjs/1.0.0/introduction');
+const InstallationMarkdownV1 = require('md/docs/0xjs/1.0.0/installation');
+const AsyncMarkdownV1 = require('md/docs/0xjs/1.0.0/async');
+const ErrorsMarkdownV1 = require('md/docs/0xjs/1.0.0/errors');
+const versioningMarkdownV1 = require('md/docs/0xjs/1.0.0/versioning');
+
+const IntroMarkdownV2 = require('md/docs/0xjs/2.0.0/introduction');
+const versioningMarkdownV2 = require('md/docs/0xjs/2.0.0/versioning');
/* tslint:enable:no-var-requires */
const zeroExJsDocSections = {
@@ -54,12 +57,22 @@ const docsInfoConfig: DocsInfoConfig = {
orderWatcher: [zeroExJsDocSections.orderWatcher],
types: [zeroExJsDocSections.types],
},
- sectionNameToMarkdown: {
- [zeroExJsDocSections.introduction]: IntroMarkdown,
- [zeroExJsDocSections.installation]: InstallationMarkdown,
- [zeroExJsDocSections.async]: AsyncMarkdown,
- [zeroExJsDocSections.errors]: ErrorsMarkdown,
- [zeroExJsDocSections.versioning]: versioningMarkdown,
+ sectionNameToMarkdownByVersion: {
+ '0.0.1': {
+ [zeroExJsDocSections.introduction]: IntroMarkdownV1,
+ [zeroExJsDocSections.installation]: InstallationMarkdownV1,
+ [zeroExJsDocSections.async]: AsyncMarkdownV1,
+ [zeroExJsDocSections.errors]: ErrorsMarkdownV1,
+ [zeroExJsDocSections.versioning]: versioningMarkdownV1,
+ },
+ '1.0.0-rc.1': {
+ [zeroExJsDocSections.introduction]: IntroMarkdownV2,
+ [zeroExJsDocSections.versioning]: versioningMarkdownV2,
+ // These are the same as for V1
+ [zeroExJsDocSections.installation]: InstallationMarkdownV1,
+ [zeroExJsDocSections.async]: AsyncMarkdownV1,
+ [zeroExJsDocSections.errors]: ErrorsMarkdownV1,
+ },
},
sectionNameToModulePath: {
[zeroExJsDocSections.zeroEx]: ['"0x.js/src/0x"', '"src/0x"'],
diff --git a/packages/website/ts/utils/doc_utils.ts b/packages/website/ts/utils/doc_utils.ts
index 1627b9b0c..b9084bba7 100644
--- a/packages/website/ts/utils/doc_utils.ts
+++ b/packages/website/ts/utils/doc_utils.ts
@@ -1,6 +1,5 @@
import { DoxityDocObj, TypeDocNode } from '@0xproject/react-docs';
import { fetchAsync, logUtils } from '@0xproject/utils';
-import findVersions = require('find-versions');
import * as _ from 'lodash';
import { S3FileObject, VersionToFilePath } from 'ts/types';
import convert = require('xml-js');
@@ -10,7 +9,7 @@ export const docUtils = {
const versionFilePaths = await docUtils.getVersionFileNamesAsync(s3DocJsonRoot, folderName);
const versionToFilePath: VersionToFilePath = {};
_.each(versionFilePaths, filePath => {
- const [version] = findVersions(filePath);
+ const version = filePath.split('/v')[1].replace('.json', '');
versionToFilePath[version] = filePath;
});
return versionToFilePath;
diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts
index e656d5963..439af5e4b 100644
--- a/packages/website/ts/utils/utils.ts
+++ b/packages/website/ts/utils/utils.ts
@@ -334,7 +334,7 @@ export const utils = {
return utils.isDogfood() ? configs.BACKEND_BASE_STAGING_URL : configs.BACKEND_BASE_PROD_URL;
},
isDevelopment(): boolean {
- return _.includes(configs.DOMAINS_DEVELOPMENT, window.location.origin);
+ return _.includes(configs.DOMAINS_DEVELOPMENT, window.location.host);
},
isStaging(): boolean {
return _.includes(window.location.href, configs.DOMAIN_STAGING);