PromucFlow_constructor/app/client/src/constants/ActionConstants.tsx
2020-05-07 08:07:29 +00:00

63 lines
1.4 KiB
TypeScript

export type ExecuteActionPayloadEvent = {
type: EventType;
callback?: (result: ExecutionResult) => void;
};
export type ExecutionResult = {
success: boolean;
};
export type ExecuteActionPayload = {
dynamicString: string;
event: ExecuteActionPayloadEvent;
responseData?: any;
};
export enum EventType {
ON_RESET = "ON_RESET",
ON_PAGE_LOAD = "ON_PAGE_LOAD",
ON_PREV_PAGE = "ON_PREV_PAGE",
ON_NEXT_PAGE = "ON_NEXT_PAGE",
ON_ERROR = "ON_ERROR",
ON_SUCCESS = "ON_SUCCESS",
ON_ROW_SELECTED = "ON_ROW_SELECTED",
ON_CLICK = "ON_CLICK",
ON_FILES_SELECTED = "ON_FILES_SELECTED",
ON_HOVER = "ON_HOVER",
ON_TOGGLE = "ON_TOGGLE",
ON_LOAD = "ON_LOAD",
ON_TEXT_CHANGE = "ON_TEXT_CHANGE",
ON_SUBMIT = "ON_SUBMIT",
ON_CHECK_CHANGE = "ON_CHECK_CHANGE",
ON_SELECT = "ON_SELECT",
ON_DATE_SELECTED = "ON_DATE_SELECTED",
ON_DATE_RANGE_SELECTED = "ON_DATE_RANGE_SELECTED",
ON_OPTION_CHANGE = "ON_OPTION_CHANGE",
ON_MARKER_CLICK = "ON_MARKER_CLICK",
ON_CREATE_MARKER = "ON_CREATE_MARKER",
}
export type ActionType =
| "API"
| "QUERY"
| "NAVIGATION"
| "ALERT"
| "JS_FUNCTION"
| "SET_VALUE"
| "DOWNLOAD";
export type DownloadFiletype = "CSV" | "XLS" | "JSON" | "TXT";
export interface PageAction {
id: string;
pluginType: ActionType;
name: string;
jsonPathKeys: string[];
timeoutInMillisecond: number;
}
export interface ExecuteErrorPayload {
actionId: string;
error: any;
}