aboutsummaryrefslogtreecommitdiffstats
path: root/packages/website/ts/pages/documentation/method_signature.tsx
diff options
context:
space:
mode:
authorFabio Berger <me@fabioberger.com>2017-12-22 05:45:22 +0800
committerGitHub <noreply@github.com>2017-12-22 05:45:22 +0800
commite884eb9882246398eb576b809e2d18e589ec5f51 (patch)
tree241b630db5044974cc17130f149ca64728d9c619 /packages/website/ts/pages/documentation/method_signature.tsx
parentcb3582289ff94857d5956bbd71dbf68ee3f42ecf (diff)
parente01c0f054d2dbb043aec8b4cb8e1c47f83bd5eb9 (diff)
downloaddexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar.gz
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar.bz2
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar.lz
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar.xz
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.tar.zst
dexon-sol-tools-e884eb9882246398eb576b809e2d18e589ec5f51.zip
Merge pull request #288 from 0xProject/fix/docLinks
Fix doc anchor link collisions
Diffstat (limited to 'packages/website/ts/pages/documentation/method_signature.tsx')
-rw-r--r--packages/website/ts/pages/documentation/method_signature.tsx20
1 files changed, 16 insertions, 4 deletions
diff --git a/packages/website/ts/pages/documentation/method_signature.tsx b/packages/website/ts/pages/documentation/method_signature.tsx
index df3b61814..366d4c13e 100644
--- a/packages/website/ts/pages/documentation/method_signature.tsx
+++ b/packages/website/ts/pages/documentation/method_signature.tsx
@@ -3,9 +3,11 @@ import * as React from 'react';
import {DocsInfo} from 'ts/pages/documentation/docs_info';
import {Type} from 'ts/pages/documentation/type';
import {Parameter, SolidityMethod, TypeDefinitionByName, TypescriptMethod} from 'ts/types';
+import {constants} from 'ts/utils/constants';
interface MethodSignatureProps {
method: TypescriptMethod|SolidityMethod;
+ sectionName: string;
shouldHideMethodName?: boolean;
shouldUseArrowSyntax?: boolean;
typeDefinitionByName?: TypeDefinitionByName;
@@ -18,14 +20,19 @@ const defaultProps = {
};
export const MethodSignature: React.SFC<MethodSignatureProps> = (props: MethodSignatureProps) => {
- const parameters = renderParameters(props.method, props.docsInfo, props.typeDefinitionByName);
+ const sectionName = constants.TYPES_SECTION_NAME;
+ const parameters = renderParameters(
+ props.method, props.docsInfo, sectionName, props.typeDefinitionByName,
+ );
const paramString = _.reduce(parameters, (prev: React.ReactNode, curr: React.ReactNode) => {
return [prev, ', ', curr];
});
const methodName = props.shouldHideMethodName ? '' : props.method.name;
const typeParameterIfExists = _.isUndefined((props.method as TypescriptMethod).typeParameter) ?
undefined :
- renderTypeParameter(props.method, props.docsInfo, props.typeDefinitionByName);
+ renderTypeParameter(
+ props.method, props.docsInfo, sectionName, props.typeDefinitionByName,
+ );
return (
<span>
{props.method.callPath}{methodName}{typeParameterIfExists}({paramString})
@@ -34,6 +41,7 @@ export const MethodSignature: React.SFC<MethodSignatureProps> = (props: MethodSi
{props.method.returnType &&
<Type
type={props.method.returnType}
+ sectionName={sectionName}
typeDefinitionByName={props.typeDefinitionByName}
docsInfo={props.docsInfo}
/>
@@ -45,7 +53,8 @@ export const MethodSignature: React.SFC<MethodSignatureProps> = (props: MethodSi
MethodSignature.defaultProps = defaultProps;
function renderParameters(
- method: TypescriptMethod|SolidityMethod, docsInfo: DocsInfo, typeDefinitionByName?: TypeDefinitionByName,
+ method: TypescriptMethod|SolidityMethod, docsInfo: DocsInfo,
+ sectionName: string, typeDefinitionByName?: TypeDefinitionByName,
) {
const parameters = method.parameters;
const params = _.map(parameters, (p: Parameter) => {
@@ -53,6 +62,7 @@ function renderParameters(
const type = (
<Type
type={p.type}
+ sectionName={sectionName}
typeDefinitionByName={typeDefinitionByName}
docsInfo={docsInfo}
/>
@@ -67,7 +77,8 @@ function renderParameters(
}
function renderTypeParameter(
- method: TypescriptMethod, docsInfo: DocsInfo, typeDefinitionByName?: TypeDefinitionByName,
+ method: TypescriptMethod, docsInfo: DocsInfo,
+ sectionName: string, typeDefinitionByName?: TypeDefinitionByName,
) {
const typeParameter = method.typeParameter;
const typeParam = (
@@ -75,6 +86,7 @@ function renderTypeParameter(
{`<${typeParameter.name} extends `}
<Type
type={typeParameter.type}
+ sectionName={sectionName}
typeDefinitionByName={typeDefinitionByName}
docsInfo={docsInfo}
/>