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

60 lines
1.6 KiB
TypeScript
Raw Normal View History

import ContainerWidget from "../widgets/ContainerWidget"
2019-08-21 12:49:16 +00:00
import { IWidgetProps, IWidgetCardProps } 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"
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-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",
REMOVE_PAGE_WIDGET: "REMOVE_PAGE_WIDGET"
}
export interface ReduxAction<T> {
2019-03-21 17:42:23 +00:00
type: ActionType
payload: T
}
export interface LoadCanvasPayload {
2019-03-21 17:42:23 +00:00
pageWidgetId: string
widgets: { [widgetId: string]: IWidgetProps }
}
export interface LoadWidgetPanePayload {
2019-03-21 17:42:23 +00:00
widgets: IWidgetProps[]
}
2019-08-20 13:19:19 +00:00
2019-08-21 12:49:16 +00:00
export interface LoadWidgetCardsPanePayload {
cards: { [id: string] : IWidgetCardProps[] }
}