From ab39f5584a057061b22f1dfd4bbc78ba8184fa79 Mon Sep 17 00:00:00 2001 From: Dody Date: Tue, 9 Apr 2024 23:22:22 +0700 Subject: [PATCH] feat: better wording at phone edit --- src/sale/sale.common.ts | 17 ++++++++++++----- .../scene/profile/phone/phone_edit.scene.ts | 11 ++++++----- 2 files changed, 18 insertions(+), 10 deletions(-) diff --git a/src/sale/sale.common.ts b/src/sale/sale.common.ts index 1e3442e..7ee2ffe 100644 --- a/src/sale/sale.common.ts +++ b/src/sale/sale.common.ts @@ -7,16 +7,23 @@ import { FALLBACK_MESSAGE } from './sale.constant'; type Hideable = B & { hide?: boolean }; type HideableIKBtn = Hideable; -const extra = (keyboard: HideableIKBtn[][]): ExtraEditMessageText => { +const extraWithoutKeyboard = (): ExtraEditMessageText => { return { parse_mode: 'MarkdownV2', link_preview_options: { is_disabled: true, }, - reply_markup: Markup.inlineKeyboard(keyboard).reply_markup, }; }; +const extraWithKeyboard = ( + keyboard: HideableIKBtn[][], +): ExtraEditMessageText => { + return Object.assign(extraWithoutKeyboard(), { + reply_markup: Markup.inlineKeyboard(keyboard).reply_markup, + }); +}; + export const leaveScene = (ctx: SceneContext): void => { sendMessageWithoutKeyboard(ctx, FALLBACK_MESSAGE); ctx.scene.leave(); @@ -28,13 +35,13 @@ export const sendMessageWithKeyboard = async ( keyboard: HideableIKBtn[][], ): Promise => { await (ctx.callbackQuery - ? ctx.editMessageText(message, extra(keyboard)) - : ctx.reply(message, extra(keyboard))); + ? ctx.editMessageText(message, extraWithKeyboard(keyboard)) + : ctx.reply(message, extraWithKeyboard(keyboard))); }; export const sendMessageWithoutKeyboard = ( ctx: SceneContext, message: string, ): void => { - ctx.reply(message); + ctx.reply(message, extraWithoutKeyboard()); }; diff --git a/src/sale/scene/profile/phone/phone_edit.scene.ts b/src/sale/scene/profile/phone/phone_edit.scene.ts index 89df8a8..5341552 100644 --- a/src/sale/scene/profile/phone/phone_edit.scene.ts +++ b/src/sale/scene/profile/phone/phone_edit.scene.ts @@ -7,7 +7,7 @@ import { Message, } from 'nestjs-telegraf'; import { SceneContext } from 'telegraf/scenes'; -import { Markup, Scenes } from 'telegraf'; +import { Markup } from 'telegraf'; import { sendMessageWithKeyboard, sendMessageWithoutKeyboard, @@ -37,10 +37,11 @@ export class PhoneEditScene { @Hears(/.+/) onFallback(@Ctx() ctx: SceneContext, @Message() msg: { text: string }): void { this.saleService.editPhone(ctx.from!.id.toString(), msg.text); - sendMessageWithoutKeyboard( - ctx, - `Successfuly edited the phone with ${msg.text}!`, - ); + + let message = `✅ Success\n\n`; + message += `Your phone number has been successfully edited to \`${msg.text}\`\\.`; + sendMessageWithoutKeyboard(ctx, message); + ctx.scene.enter('PROFILE_SCENE'); } }