@gpa-gemstone/common-pages
Version:
Common UI pages for GPA products
54 lines (53 loc) • 1.61 kB
TypeScript
import { Gemstone } from '@gpa-gemstone/application-typings';
interface IProps<T> {
/**
* Attribute used to control what type of files are filtered by default in file explorer
* */
FileTypeAttribute: string;
/**
* Array of available pipelines to use
* */
Pipelines: Gemstone.TSX.Interfaces.IPipeline<T, any>[];
/**
* React Component to be used in the Review Step
* */
ReviewUI: (props: {
Data: T[];
}) => JSX.Element;
/**
* React Component to be used in the Complete Step
* */
CompleteUI?: JSX.Element;
/**
* Index of the steps array in the current pipline
* */
CurrentPipelineStep: number;
/**
* Setter to pass into the pipeline UI Components
* */
SetCurrentPipelineStep: (step: number) => void;
/**
* Step to represent current stage of component
* */
Step: Gemstone.TSX.Types.BulkUploadStep;
/**
* Callback function invoked when the Step prop is set to Complete.
* @param {T[]} records - The processed records.
*/
OnComplete: (records: T[]) => void;
/**
* Callback function to set validation errors during processing.
* @param {string[]} errors - Array of error messages.
*/
SetErrors: (errors: string[]) => void;
/**
* Optional Progress Bar component to replace internal Progress Bar.
*/
ProgressBar?: JSX.Element;
/**
* Optional flag to call OnComplete handler when the review step is hit.
*/
CompleteOnReview?: boolean;
}
export default function BulkUpload<T>(props: IProps<T>): JSX.Element;
export {};