diff options
author | Brandon Millman <brandon.millman@gmail.com> | 2018-10-03 07:13:16 +0800 |
---|---|---|
committer | Brandon Millman <brandon.millman@gmail.com> | 2018-10-03 07:13:16 +0800 |
commit | 343b922ec11a6108caaf3095e59be0e56d45ee4a (patch) | |
tree | ad38a124853c4cd153f5a290a0dc461447f8c799 /packages/react-docs/src/components/signature_block.tsx | |
parent | 6deb027bdf4e57f8918fd2413f0fdc55311508d3 (diff) | |
parent | f1ecb8c5cb28a0a7ca6f7ad2ff11194091df62a4 (diff) | |
download | dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar.gz dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar.bz2 dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar.lz dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar.xz dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.tar.zst dexon-0x-contracts-343b922ec11a6108caaf3095e59be0e56d45ee4a.zip |
Merge branch 'development' into feature/asset-buyer/improve-asset-buyer-manager
* development: (178 commits)
Change cache key back to repo from repo-built
Change the lint command back
Merge build & install
Remove deps cache all together
Cache all nested node_modules directories
Explicitly specify yarn cache folder
Ignore linter issues
Fix linter issue
Separate deps and built caches
Build tslint rules before running linter
Cache yarn cache directory without node modules
Run linter before prettier as it fails more often
Add yarn cache path
Split CI install and build steps
Move bundle-size out of static tests and don't wait for a build with static tests
Introduce a build:ci command that doesn't build webpack bundles
Measure only one bundle size as they're the same
Fix linter errors
Fix no_website CI builds
Check bundle size on CI
...
Diffstat (limited to 'packages/react-docs/src/components/signature_block.tsx')
-rw-r--r-- | packages/react-docs/src/components/signature_block.tsx | 30 |
1 files changed, 20 insertions, 10 deletions
diff --git a/packages/react-docs/src/components/signature_block.tsx b/packages/react-docs/src/components/signature_block.tsx index 05145dc23..5ec82983a 100644 --- a/packages/react-docs/src/components/signature_block.tsx +++ b/packages/react-docs/src/components/signature_block.tsx @@ -1,9 +1,15 @@ import { AnchorTitle, colors, HeaderSizes, Styles } from '@0xproject/react-shared'; +import { + Parameter, + SolidityMethod, + TypeDefinitionByName, + TypescriptFunction, + TypescriptMethod, +} from '@0xproject/types'; import * as _ from 'lodash'; import * as React from 'react'; import { DocsInfo } from '../docs_info'; -import { Parameter, SolidityMethod, TypeDefinitionByName, TypescriptFunction, TypescriptMethod } from '../types'; import { constants } from '../utils/constants'; import { Comment } from './comment'; @@ -26,7 +32,6 @@ export interface SignatureBlockState { const styles: Styles = { chip: { fontSize: 13, - backgroundColor: colors.lightBlueA700, color: colors.white, height: 11, borderRadius: 14, @@ -44,6 +49,8 @@ export class SignatureBlock extends React.Component<SignatureBlockProps, Signatu public render(): React.ReactNode { const method = this.props.method; + const isFallback = (method as SolidityMethod).isFallback; + const hasExclusivelyNamedParams = !_.isUndefined(_.find(method.parameters, p => !_.isEmpty(p.name))); return ( <div id={`${this.props.sectionName}-${method.name}`} @@ -57,10 +64,11 @@ export class SignatureBlock extends React.Component<SignatureBlockProps, Signatu {(method as TypescriptMethod).isStatic && this._renderChip('Static')} {(method as SolidityMethod).isConstant && this._renderChip('Constant')} {(method as SolidityMethod).isPayable && this._renderChip('Payable')} + {isFallback && this._renderChip('Fallback', colors.lightGreenA700)} <div style={{ lineHeight: 1.3 }}> <AnchorTitle headerSize={HeaderSizes.H3} - title={method.name} + title={isFallback ? '' : method.name} id={`${this.props.sectionName}-${method.name}`} shouldShowAnchor={this.state.shouldShowAnchor} /> @@ -78,6 +86,7 @@ export class SignatureBlock extends React.Component<SignatureBlockProps, Signatu typeDefinitionByName={this.props.typeDefinitionByName} docsInfo={this.props.docsInfo} isInPopover={false} + isFallback={isFallback} /> </code> {(method as TypescriptMethod).source && ( @@ -89,12 +98,13 @@ export class SignatureBlock extends React.Component<SignatureBlockProps, Signatu )} {method.comment && <Comment comment={method.comment} className="py2" />} {method.parameters && - !_.isEmpty(method.parameters) && ( + !_.isEmpty(method.parameters) && + hasExclusivelyNamedParams && ( <div> <h4 className="pb1 thin" style={{ borderBottom: '1px solid #e1e8ed' }}> ARGUMENTS </h4> - {this._renderParameterDescriptions(method.parameters)} + {this._renderParameterDescriptions(method.parameters, method.name)} </div> )} {method.returnComment && ( @@ -108,19 +118,19 @@ export class SignatureBlock extends React.Component<SignatureBlockProps, Signatu </div> ); } - private _renderChip(text: string): React.ReactNode { + private _renderChip(text: string, backgroundColor: string = colors.lightBlueA700): React.ReactNode { return ( - <div className="p1 mr1" style={styles.chip}> + <div className="p1 mr1" style={{ ...styles.chip, backgroundColor }}> {text} </div> ); } - private _renderParameterDescriptions(parameters: Parameter[]): React.ReactNode { - const descriptions = _.map(parameters, parameter => { + private _renderParameterDescriptions(parameters: Parameter[], name: string): React.ReactNode { + const descriptions = _.map(parameters, (parameter: Parameter, i: number) => { const isOptional = parameter.isOptional; return ( <div - key={`param-description-${parameter.name}`} + key={`param-description-${parameter.name}-${name}-${i}`} className="flex pb1 mb2" style={{ borderBottom: '1px solid #f0f4f7' }} > |