UNPKG

@gooddata/react-components

Version:

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

34 lines (33 loc) 1.63 kB
import * as React from "react"; import { SDK, DataLayer } from "@gooddata/gooddata-js"; import { AFM, Execution } from "@gooddata/typings"; import { IDataSource } from "../../interfaces/DataSource"; export declare type IAdapterFactory = (sdk: SDK, projectId: string) => DataLayer.IAdapter<Execution.IExecutionResponses>; export interface IDataSourceProviderProps { afm: AFM.IAfm; projectId: string; resultSpec?: AFM.IResultSpec; adapterFactory?: IAdapterFactory; sdk?: SDK; [p: string]: any; } export interface IDataSourceProviderState { exportTitle?: string; dataSource: IDataSource; resultSpec?: AFM.IResultSpec; } export interface IDataSourceProviderInjectedProps extends IDataSourceProviderState { updateTotals?: (totals: AFM.ITotalItem[]) => void; } export declare type IDataSourceInfoPromise = Promise<IDataSource>; export declare type IGenerateDefaultDimensionsFunction = (afm: AFM.IAfm) => AFM.IDimension[]; /** * dataSourceProvider * is a function that creates a dataSource and passes it to InnerComponent * @param InnerComponent: React.ComponentClass<T & IDataSourceProviderInjectedProps> * a component that will be pased dataSource prop * @param generateDefaultDimensions - a function that returns default dimensions * @param componentName: string - InnerComponent actual name * @internal */ export declare function dataSourceProvider<T>(InnerComponent: React.ComponentType<T & IDataSourceProviderInjectedProps>, generateDefaultDimensions: IGenerateDefaultDimensionsFunction, componentName: string, exportTitle?: string): React.ComponentClass<IDataSourceProviderProps>;