PromucFlow_constructor/app/client/src/constants/ActionConstants.tsx

66 lines
1.8 KiB
TypeScript
Raw Normal View History

2019-08-29 11:22:09 +00:00
// import ContainerWidget from "../widgets/ContainerWidget"
2019-09-09 09:08:54 +00:00
import { WidgetProps, WidgetCardProps } from "../widgets/BaseWidget";
2019-03-21 17:42:23 +00:00
export type ActionType =
| "UPDATE_CANVAS"
| "FETCH_CANVAS"
2019-03-21 17:42:23 +00:00
| "CLEAR_CANVAS"
| "DROP_WIDGET_CANVAS"
| "REMOVE_WIDGET_CANVAS"
| "LOAD_WIDGET_PANE"
| "FETCH_PAGE"
2019-08-20 13:19:19 +00:00
| "ZOOM_IN_CANVAS"
| "ZOOM_OUT_CANVAS"
| "PUBLISH"
| "UNDO_CANVAS_ACTION"
| "REDO_CANVAS_ACTION"
2019-08-21 12:49:16 +00:00
| "FETCH_WIDGET_CARDS"
| "SUCCESS_FETCHING_WIDGET_CARDS"
| "ERROR_FETCHING_WIDGET_CARDS"
2019-08-26 12:41:21 +00:00
| "ADD_PAGE_WIDGET"
| "REMOVE_PAGE_WIDGET"
| "LOAD_WIDGET_CONFIG";
2019-02-10 15:06:57 +00:00
export const ActionTypes: { [id: string]: ActionType } = {
UPDATE_CANVAS: "UPDATE_CANVAS",
FETCH_CANVAS: "FETCH_CANVAS",
2019-03-21 17:42:23 +00:00
CLEAR_CANVAS: "CLEAR_CANVAS",
FETCH_PAGE: "FETCH_PAGE",
2019-03-21 17:42:23 +00:00
DROP_WIDGET_CANVAS: "DROP_WIDGET_CANVAS",
REMOVE_WIDGET_CANVAS: "REMOVE_WIDGET_CANVAS",
2019-08-20 13:19:19 +00:00
LOAD_WIDGET_PANE: "LOAD_WIDGET_PANE",
ZOOM_IN_CANVAS: "ZOOM_IN_CANVAS",
ZOOM_OUT_CANVAS: "ZOOM_OUT_CANVAS",
UNDO_CANVAS_ACTION: "UNDO_CANVAS_ACTION",
REDO_CANVAS_ACTION: "REDO_CANVAS_ACTION",
2019-09-12 08:11:25 +00:00
LOAD_WIDGET_CONFIG: "LOAD_WIDGET_CONFIG",
2019-08-21 12:49:16 +00:00
PUBLISH: "PUBLISH",
2019-08-26 12:41:21 +00:00
FETCH_WIDGET_CARDS: "FETCH_WIDGET_CARDS",
2019-08-21 12:49:16 +00:00
SUCCESS_FETCHING_WIDGET_CARDS: "SUCCESS_FETCHING_WIDGET_CARDS",
2019-08-26 12:41:21 +00:00
ERROR_FETCHING_WIDGET_CARDS: "ERROR_FETCHING_WIDGET_CARDS",
ADD_PAGE_WIDGET: "ADD_PAGE_WIDGET",
2019-09-09 09:08:54 +00:00
REMOVE_PAGE_WIDGET: "REMOVE_PAGE_WIDGET",
};
export interface ReduxAction<T> {
type: ActionType;
payload: T;
}
export interface LoadCanvasPayload {
pageWidgetId: string;
2019-09-09 09:08:54 +00:00
widgets: { [widgetId: string]: WidgetProps };
}
2019-09-12 08:11:25 +00:00
export interface LoadWidgetConfigPayload {
[widgetId: string]: WidgetProps;
2019-09-12 08:11:25 +00:00
}
export interface LoadWidgetPanePayload {
2019-09-09 09:08:54 +00:00
widgets: WidgetProps[];
2019-03-21 17:42:23 +00:00
}
2019-08-20 13:19:19 +00:00
2019-08-21 12:49:16 +00:00
export interface LoadWidgetCardsPanePayload {
2019-09-09 09:08:54 +00:00
cards: { [id: string]: WidgetCardProps[] };
2019-08-21 12:49:16 +00:00
}