UNPKG

stitch-ui

Version:

77 lines (67 loc) 2.29 kB
import { createAction } from "redux-act"; import { makeAsyncActions, asyncActionExecutor } from "../util"; const NAME = "push/"; export const setNewMessageError = createAction(`${NAME}set msg error`); export const setNewMessageTopic = createAction(`${NAME}set msg topic`); export const setNewMessageText = createAction(`${NAME}set msg text`); export const setNewMessageLabel = createAction(`${NAME}set msg label`); export const executePushPipelineActions = makeAsyncActions( `${NAME}execute push pipeline` ); export const createMessageActions = makeAsyncActions(`${NAME}create message`); export const saveMessageActions = makeAsyncActions(`${NAME}save message`); export const loadMessagesActions = makeAsyncActions(`${NAME}load messages`); export const deleteMessageActions = makeAsyncActions(`${NAME}delete message`); export const setMessageStatusActions = makeAsyncActions( `${NAME}set message status` ); export const executePushPipeline = asyncActionExecutor( executePushPipelineActions, (client, groupId, appId, pipeline) => () => client .apps(groupId) .app(appId) .sandbox() .executePipeline(pipeline, null, { systemUser: "1" }), true ); export const createMessage = asyncActionExecutor( createMessageActions, (client, groupId, appId, message) => () => client.apps(groupId).app(appId).messages().create(message), true ); export const saveMessage = asyncActionExecutor( saveMessageActions, (client, groupId, appId, messageId, message) => () => client .apps(groupId) .app(appId) .messages() .message(messageId) .update(message), true ); export const deleteMessage = asyncActionExecutor( deleteMessageActions, (client, groupId, appId, messageId) => () => client.apps(groupId).app(appId).messages().message(messageId).remove(), true ); export const loadMessages = asyncActionExecutor( loadMessagesActions, (client, groupId, appId, query) => () => client.apps(groupId).app(appId).messages().list(query), true ); export const setMessageStatus = asyncActionExecutor( setMessageStatusActions, (client, groupId, appId, messageId, type) => () => client .apps(groupId) .app(appId) .messages() .message(messageId) .setSaveType(type), true );