Refactor docs to be more declarative, put all hard-coded doc-related data in one place so it easier to add new doc pages
This commit is contained in:
@@ -1,11 +1,13 @@
|
||||
import * as _ from 'lodash';
|
||||
import * as React from 'react';
|
||||
import {DocsInfo} from 'ts/pages/documentation/docs_info';
|
||||
import {MethodSignature} from 'ts/pages/documentation/method_signature';
|
||||
import {Type} from 'ts/pages/documentation/type';
|
||||
import {CustomType, TypeDocTypes} from 'ts/types';
|
||||
|
||||
interface InterfaceProps {
|
||||
type: CustomType;
|
||||
docsInfo: DocsInfo;
|
||||
}
|
||||
|
||||
export function Interface(props: InterfaceProps) {
|
||||
@@ -15,11 +17,12 @@ export function Interface(props: InterfaceProps) {
|
||||
<span key={`property-${property.name}-${property.type}-${type.name}`}>
|
||||
{property.name}:{' '}
|
||||
{property.type.typeDocType !== TypeDocTypes.Reflection ?
|
||||
<Type type={property.type} /> :
|
||||
<Type type={property.type} docsInfo={props.docsInfo} /> :
|
||||
<MethodSignature
|
||||
method={property.type.method}
|
||||
shouldHideMethodName={true}
|
||||
shouldUseArrowSyntax={true}
|
||||
docsInfo={props.docsInfo}
|
||||
/>
|
||||
},
|
||||
</span>
|
||||
@@ -30,7 +33,7 @@ export function Interface(props: InterfaceProps) {
|
||||
const is = type.indexSignature;
|
||||
const param = (
|
||||
<span key={`indexSigParams-${is.keyName}-${is.keyType}-${type.name}`}>
|
||||
{is.keyName}: <Type type={is.keyType} />
|
||||
{is.keyName}: <Type type={is.keyType} docsInfo={props.docsInfo} />
|
||||
</span>
|
||||
);
|
||||
properties.push((
|
||||
|
Reference in New Issue
Block a user