Skip to content

Commit

Permalink
remove only action buttons from blocks while hiding quick replies but…
Browse files Browse the repository at this point in the history
…tons
  • Loading branch information
murtaza98 committed Jun 14, 2021
1 parent b054982 commit 0138a7c
Showing 1 changed file with 12 additions and 4 deletions.
16 changes: 12 additions & 4 deletions lib/Message.ts
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
import { IModify, IRead } from '@rocket.chat/apps-engine/definition/accessors';
import { IApp } from '@rocket.chat/apps-engine/definition/IApp';
import { IVisitor } from '@rocket.chat/apps-engine/definition/livechat';
import { BlockElementType, IButtonElement, TextObjectType } from '@rocket.chat/apps-engine/definition/uikit';
import { BlockElementType, BlockType, IActionsBlock, IBlock, IButtonElement, TextObjectType } from '@rocket.chat/apps-engine/definition/uikit';
import { IUser } from '@rocket.chat/apps-engine/definition/users';
import { AppSetting } from '../config/Settings';
import { ActionIds } from '../enum/ActionIds';
Expand Down Expand Up @@ -37,8 +37,8 @@ export const createDialogflowMessage = async (app: IApp, rid: string, read: IRea

const blocks = modify.getCreator().getBlockBuilder();

blocks.addSectionBlock({
text: blocks.newMarkdownTextObject(text)
blocks.addSectionBlock({
text: blocks.newMarkdownTextObject(text),
});

blocks.addActionsBlock({
Expand Down Expand Up @@ -139,6 +139,14 @@ export const createLivechatMessage = async (app: IApp, rid: string, read: IRead,

export const deleteAllActionBlocks = async (modify: IModify, appUser: IUser, msgId: string): Promise<void> => {
const msgBuilder = await modify.getUpdater().message(msgId, appUser);
msgBuilder.setEditor(appUser).setBlocks(modify.getCreator().getBlockBuilder().getBlocks());

const withoutActionBlocks: Array<IBlock> = msgBuilder.getBlocks().filter(
(block) => (!(
block.type === BlockType.ACTIONS &&
(block as IActionsBlock).elements.some((element) => (element.type === BlockElementType.BUTTON))
)
));

msgBuilder.setEditor(appUser).setBlocks(withoutActionBlocks);
return modify.getUpdater().finish(msgBuilder);
};

0 comments on commit 0138a7c

Please sign in to comment.