UNPKG

@gooddata/react-components

Version:

GoodData.UI - A powerful JavaScript library for building analytical applications

41 lines (40 loc) 2.06 kB
import * as React from "react"; import { SDK } from "@gooddata/gooddata-js"; import { AFM, Execution } from "@gooddata/typings"; import { IEvents } from "../../../interfaces/Events"; import { IDrillableItem } from "../../../interfaces/DrillEvents"; import { IHeaderPredicate } from "../../../interfaces/HeaderPredicate"; import { IDataSourceProviderInjectedProps } from "../../afm/DataSourceProvider"; import { WrappedComponentProps } from "react-intl"; import { ILoadingProps } from "../../simple/LoadingComponent"; import { IErrorProps } from "../../simple/ErrorComponent"; import { IPushData } from "../../../interfaces/PushData"; import { IChartConfig } from "../../../interfaces/Config"; export declare type IExecutionDataPromise = Promise<Execution.IExecutionResponses>; export interface ICommonVisualizationProps extends IEvents { sdk?: SDK; projectId?: string; locale?: string; drillableItems?: Array<IDrillableItem | IHeaderPredicate>; afterRender?: () => void; pushData?: (data: IPushData) => void; ErrorComponent?: React.ComponentType<IErrorProps>; LoadingComponent?: React.ComponentType<ILoadingProps>; config?: IChartConfig; } export declare type IGetPage = (resultSpec: AFM.IResultSpec, limit: number[], offset: number[]) => Promise<Execution.IExecutionResponses | null>; export interface ILoadingInjectedProps extends WrappedComponentProps { execution: Execution.IExecutionResponses; error?: string; isLoading: boolean; getPage?: IGetPage; onDataTooLarge(): void; onNegativeValues(): void; } export interface IVisualizationLoadingState { error?: string; result?: Execution.IExecutionResponses; isLoading: boolean; } export declare const commonDefaultProps: Partial<ICommonVisualizationProps & IDataSourceProviderInjectedProps>; export declare function visualizationLoadingHOC<T extends ICommonVisualizationProps & IDataSourceProviderInjectedProps>(InnerComponent: React.ComponentClass<T & ILoadingInjectedProps>, autoExecuteDataSource?: boolean): React.ComponentClass<T>;