synapse-react-client
Version:
[](https://travis-ci.com/Sage-Bionetworks/Synapse-React-Client) [](https://badge.fury.io/js/synaps
93 lines (92 loc) • 3.55 kB
TypeScript
import React from 'react';
import { ColumnModel, ColumnType, SelectColumn } from '../utils/synapseTypes';
import { CardLink, ColumnSpecifiedLink, CommonCardProps, DescriptionConfig, MarkdownLink } from './CardContainerLogic';
export declare type KeyToAlias = {
key: string;
alias?: string;
};
export declare type KeyToAliasMap = {
[index: number]: KeyToAlias;
[index: string]: KeyToAlias;
};
export declare type GenericCardSchema = {
type: string;
title: string;
subTitle?: string;
description?: string;
icon?: string;
imageFileHandleColumnName?: string;
thumbnailRequiresPadding?: boolean;
secondaryLabels?: any[];
link?: string;
dataTypeIconNames?: string;
};
export declare type IconOptions = {
[index: string]: string;
};
export declare type GenericCardProps = {
selectColumns?: SelectColumn[];
columnModels?: ColumnModel[];
facetAliases?: Record<string, string>;
iconOptions?: IconOptions;
isHeader?: boolean;
isAlignToLeftNav?: boolean;
schema: Record<string, number>;
data: string[];
tableEntityConcreteType: string | undefined;
tableId: string | undefined;
columnIconOptions?: {};
} & CommonCardProps;
export declare type GenericCardState = {
hasClickedShowMore: boolean;
};
export declare const CARD_SHORT_DESCRIPTION_CSS = "SRC-short-description";
export declare const CARD_LONG_DESCRIPTION_CSS = "SRC-long-description";
export declare const getCutoff: (summary: string) => {
previewText: string;
};
export declare const getValueOrMultiValue: ({ columnName, value, selectColumns, columnModels, }: {
columnName?: string | undefined;
value?: string | undefined;
selectColumns?: SelectColumn[] | undefined;
columnModels?: ColumnModel[] | undefined;
}) => ValueOrMultiValue;
declare type SynapseCardLabelProps = {
value: string;
columnName: string;
labelLink: CardLink | MarkdownLink | ColumnSpecifiedLink | undefined;
selectColumns: SelectColumn[] | undefined;
columnModels: ColumnModel[] | undefined;
isHeader: boolean;
className?: string;
rowData: string[];
};
export declare const SynapseCardLabel: React.FC<SynapseCardLabelProps>;
declare type ValueOrMultiValue = {
str: string;
strList?: string[];
columnModelType?: ColumnType;
};
export default class GenericCard extends React.Component<GenericCardProps, GenericCardState> {
static contextType: React.Context<import("../utils/SynapseContext").SynapseContextType | undefined>;
constructor(props: GenericCardProps);
getLinkParams(link: string, cardLinkConfig: CardLink | undefined, data: string[] | undefined, schema: any | undefined): {
href: string;
target: string;
};
getCardLinkHref(cardLink: CardLink | undefined, data: string[] | undefined, schema: Record<string, number> | undefined): string | undefined;
getCutoff: (summary: string) => {
previewText: string;
};
toggleShowMore: () => void;
renderTitle: ({ href, target, titleSearchHandle, title, }: {
target: string;
titleSearchHandle: string | undefined;
title: string;
href: string;
}) => JSX.Element;
render(): JSX.Element;
renderLongDescription(description: string, hasClickedShowMore: boolean, descriptionSubTitle: any, descriptionConfig?: DescriptionConfig): React.ReactNode;
renderShortDescription(description: string, hasClickedShowMore: boolean, descriptionSubTitle: any, descriptionConfig?: DescriptionConfig): React.ReactNode;
}
export {};