diff --git a/README.md b/README.md index 0d5e1df..680d325 100644 --- a/README.md +++ b/README.md @@ -163,4 +163,4 @@ Here are some links to examples and documentation: [issues-shield]: https://img.shields.io/github/issues/RocketChat/Apps.Notion?style=for-the-badge [issues-url]: https://github.com/RocketChat/Apps.Notion/issues [license-shield]: https://img.shields.io/github/license/RocketChat/Apps.Notion?style=for-the-badge -[license-url]: https://github.com/RocketChat/Apps.Notion/blob/master/LICENSE.txt +[license-url]: https://github.com/RocketChat/Apps.Notion/blob/master/LICENSE.txt \ No newline at end of file diff --git a/enum/OAuth2.ts b/enum/OAuth2.ts index 369fd67..641be14 100644 --- a/enum/OAuth2.ts +++ b/enum/OAuth2.ts @@ -8,10 +8,10 @@ export enum OAuth2Locator { export enum OAuth2Content { success = "https://github-production-user-asset-6210df.s3.amazonaws.com/65061890/243671111-9964efff-3b23-4223-aadd-5f4be441037c.svg", failed = "https://open.rocket.chat/assets/logo.png", - NOT_CONNECTED_MESSAGE = `👋 You are not connected to **Workspace**!`, - NOT_CONNECTED_MESSAGE_WITH_INFO = `👋 Connect to workspace to access \`pages\` & \`database\``, + NOT_CONNECTED_MESSAGE = `You are not connected to **Workspace**!`, + NOT_CONNECTED_MESSAGE_WITH_INFO = `Connect to workspace to access \`pages\` & \`database\``, CONNECT_TO_WORKSPACE = "Connect to Workspace", - CREDENTIALS_MISSING_USER = `🚫 Something Went Wrong, Please Contact the Admin!`, + CREDENTIALS_MISSING_USER = `Something Went Wrong, Please Contact the Admin!`, CREDENTIALS_MISSING_ADMIN = `Please Configure the App and Ensure the \`SiteUrl\` is correct in the Server Settings. \xa0\xa0• Go to **NotionApp** Settings and add \`ClientId\` and \`ClientSecret\` Generated from a Notion Public Integration `, diff --git a/enum/messages.ts b/enum/messages.ts index 33a6b86..8f27952 100644 --- a/enum/messages.ts +++ b/enum/messages.ts @@ -8,21 +8,21 @@ export enum Messages { • use \`/notion share\` to share pages `, - HELPER_TEXT = `:wave: Need some help with \`/notion\`?`, + HELPER_TEXT = `Need some help with \`/notion\`?`, } export enum OnInstallContent { - PREVIEW_TITLE = "[**📖 Notion App**](https://github.com/RocketChat/Apps.Notion/)", - PREVIEW_DESCRIPTION = "**🙌 Installed and Rollin' on your Server!**", - PREVIEW_CONTEXT = "[**🤝 Support's Page**](https://github.com/RocketChat/Apps.Notion/issues)", + PREVIEW_TITLE = "[**Notion App**](https://github.com/RocketChat/Apps.Notion/)", + PREVIEW_DESCRIPTION = "**Installed and Rollin' on your Server!**", + PREVIEW_CONTEXT = "[**Support's Page**](https://github.com/RocketChat/Apps.Notion/issues)", PREVIEW_IMAGE = "https://upload.wikimedia.org/wikipedia/commons/e/e9/Notion-logo.svg", - WELCOMING_MESSAGE = `🔧 Setting up the Notion App is a breeze! Create a [**Notion Public Integration**](https://developers.notion.com/docs/authorization#how-to-make-an-integration-public) and Just head over to the App Settings, Provide your credentials. - 🎉 You're all set to experience the seamless integration of Notion and RocketChat. - ✨ Need some help getting started? Just type \`/notion help\` to access our comprehensive command list. - 💌 We love hearing from you! If you have any suggestions, questions, or just want to share your thoughts, simply tap on the **Support's Page** in Preview. - 🌟 Let's streamline your productivity and collaboration together. Enjoy the journey! + WELCOMING_MESSAGE = `Setting up the Notion App is a breeze! Create a [**Notion Public Integration**](https://developers.notion.com/docs/authorization#how-to-make-an-integration-public) and Just head over to the App Settings, Provide your credentials. + You're all set to experience the seamless integration of Notion and RocketChat. + Need some help getting started? Just type \`/notion help\` to access our comprehensive command list. + We love hearing from you! If you have any suggestions, questions, or just want to share your thoughts, simply tap on the **Support's Page** in Preview. + Let's streamline your productivity and collaboration together. Enjoy the journey! Thanks for choosing \`Notion App\` `, - WELCOME_TEXT = `Welcome to **Notion App** in RocketChat! 🙌`, + WELCOME_TEXT = `Welcome to **Notion App** in RocketChat! `, } diff --git a/i18n/en.json b/i18n/en.json index df5eb48..bd7acfe 100644 --- a/i18n/en.json +++ b/i18n/en.json @@ -6,7 +6,7 @@ "CredentialsSettings": "Authorization Settings", "NotionCommandParams": "connect | disconnect | workspace | create | schema | comment", "NotionCommandDescription": "Create Notion pages and database from Rocket.Chat", - "CommentOnPagesLabel": "💬 Comment on Page", - "SendToPageLabel": "📝 Send to Page", - "SendToNewPageLabel": "📢 Send to New Page" + "CommentOnPagesLabel": "Comment on Page", + "SendToPageLabel": "Send to Page", + "SendToNewPageLabel": "Send to New Page" } diff --git a/src/authorization/OAuth2Client.ts b/src/authorization/OAuth2Client.ts index 8c7581e..4bbd4ed 100644 --- a/src/authorization/OAuth2Client.ts +++ b/src/authorization/OAuth2Client.ts @@ -37,7 +37,7 @@ export class OAuth2Client implements IOAuth2Client { return; } - const message = `Hey **${sender.username}**!👋 Connect your Notion Workspace`; + const message = `Hey **${sender.username}**! Connect your Notion Workspace`; const blocks = await getConnectBlock( this.app, message, @@ -66,7 +66,7 @@ export class OAuth2Client implements IOAuth2Client { if (tokenInfo) { await oAuthStorage.disconnectUserFromCurrentWorkspace(userId); - const message = `👋 You are disconnected from the Workspace **${tokenInfo.workspace_name}**`; + const message = `You are disconnected from the Workspace **${tokenInfo.workspace_name}**`; await sendNotification(read, modify, sender, room, { message }); return; } diff --git a/src/handlers/ExecuteViewSubmitHandler.ts b/src/handlers/ExecuteViewSubmitHandler.ts index cb2f2d5..05a9d5f 100644 --- a/src/handlers/ExecuteViewSubmitHandler.ts +++ b/src/handlers/ExecuteViewSubmitHandler.ts @@ -218,7 +218,7 @@ export class ExecuteViewSubmitHandler { if (response instanceof Error) { this.app.getLogger().error(response); - message = `🚫 Something went wrong while creating Database in **${workspace_name}**.`; + message = `Something went wrong while creating Database in **${workspace_name}**.`; await sendNotification(this.read, this.modify, user, room, { message: message, @@ -226,7 +226,7 @@ export class ExecuteViewSubmitHandler { } else { const name: string = response.name; const link: string = response.link; - message = `✨ Your Database [**${name}**](${link}) is created successfully in **${workspace_name}**.`; + message = `Your Database [**${name}**](${link}) is created successfully in **${workspace_name}**.`; await sendNotificationWithAttachments( this.read, @@ -341,6 +341,7 @@ export class ExecuteViewSubmitHandler { const parentType: string = parent.type; if (parentType.includes(NotionObjectTypes.PAGE_ID)) { + return this.handleCreationOfPage( tokenInfo, room, @@ -349,7 +350,7 @@ export class ExecuteViewSubmitHandler { Objects as IPage ); } - + return this.handleCreationOfRecord( tokenInfo, room, @@ -384,10 +385,10 @@ export class ExecuteViewSubmitHandler { if (createdPage instanceof Error) { this.app.getLogger().error(createdPage.message); - message = `🚫 Something went wrong while creating page in **${workspace_name}**.`; + message = `Something went wrong while creating page in **${workspace_name}**.`; } else { const { name, link, title, pageId } = createdPage; - message = `✨ Your Page [**${title}**](${link}) is created successfully as a subpage in **${name}**.`; + message = `Your Page [**${title}**](${link}) is created successfully as a subpage in **${name}**.`; const preserveMessage = await modalInteraction.getInputElementState( ActionButton.SEND_TO_NEW_PAGE_MESSAGE_ACTION @@ -410,7 +411,7 @@ export class ExecuteViewSubmitHandler { if (appendBlock instanceof Error) { this.app.getLogger().error(appendBlock.message); - message = `🚫 Something went wrong while appending message in **${workspace_name}**.`; + message = `Something went wrong while appending message in **${workspace_name}**.`; await sendNotification(this.read, this.modify, user, room, { message, }); @@ -430,7 +431,7 @@ export class ExecuteViewSubmitHandler { )) as ICredential; const messageLink = `${siteUrl}/${urlPath}/${displayName}?msg=${id}`; - const preserveText = `📝 Created New Page [**${title}**](${link}) and Preserved Following [Message](${messageLink}) `; + const preserveText = `Created New Page [**${title}**](${link}) and Preserved Following [Message](${messageLink}) `; await sendMessage( this.read, @@ -487,13 +488,13 @@ export class ExecuteViewSubmitHandler { if (createdRecord instanceof Error) { this.app.getLogger().error(createdRecord.message); - message = `🚫 Something went wrong while creating record in **${workspace_name}**.`; + message = `Something went wrong while creating record in **${workspace_name}**.`; await sendNotification(this.read, this.modify, user, room, { message, }); } else { const { info } = database; - const databasename = info.name; + const databasename = info.name.replace("📚 ", ""); const databaselink = info.link; const title: string = state?.[NotionPageOrRecord.TITLE_BLOCK]?.[ @@ -501,7 +502,7 @@ export class ExecuteViewSubmitHandler { ]; const { fields, url, pageId } = createdRecord; - message = `✨ Created [**${title}**](${url}) in [**${databasename}**](${databaselink})`; + message = `Created [**${title}**](${url}) in [**${databasename}**](${databaselink})`; const messageId = await sendMessageWithAttachments( this.read, @@ -533,7 +534,7 @@ export class ExecuteViewSubmitHandler { if (appendBlock instanceof Error) { this.app.getLogger().error(appendBlock.message); - message = `🚫 Something went wrong while appending message in **${workspace_name}**.`; + message = `Something went wrong while appending message in **${workspace_name}**.`; await sendNotification(this.read, this.modify, user, room, { message, }); @@ -554,7 +555,7 @@ export class ExecuteViewSubmitHandler { )) as ICredential; const messageLink = `${siteUrl}/${urlPath}/${displayName}?msg=${id}`; - const preserveText = `📝 Created [**${title}**](${url}) Page and Preserved Following [Message](${messageLink}) `; + const preserveText = `Created [**${title}**](${url}) Page and Preserved Following [Message](${messageLink}) `; await sendMessage( this.read, @@ -814,7 +815,7 @@ export class ExecuteViewSubmitHandler { const { name, parent, url } = pageInfo; - const message = `✨ Sharing [**${name}**](${url}) from **${workspace_name}**`; + const message = `Sharing [**${name}**](${url}) from **${workspace_name}**`; await sendMessage(this.read, this.modify, user, room, { message, @@ -878,7 +879,7 @@ export class ExecuteViewSubmitHandler { if (appendBlock instanceof Error) { this.app.getLogger().error(appendBlock.message); - const message = `🚫 Something went wrong while appending message in **${workspace_name}**.`; + const message = `Something went wrong while appending message in **${workspace_name}**.`; await sendNotification(this.read, this.modify, user, room, { message, }); @@ -913,7 +914,7 @@ export class ExecuteViewSubmitHandler { )) as ICredential; const messageLink = `${siteUrl}/${urlPath}/${displayName}?msg=${id}`; - const preserveText = `📝 Preserved Following [Message](${messageLink}) in [**${name}**](${url}) `; + const preserveText = `Preserved Following [Message](${messageLink}) in [**${name}**](${url}) `; await sendMessage( this.read, diff --git a/src/helper/getConnectLayout.ts b/src/helper/getConnectLayout.ts index 85b1e64..ad9b9f3 100644 --- a/src/helper/getConnectLayout.ts +++ b/src/helper/getConnectLayout.ts @@ -21,8 +21,8 @@ export function getConnectPreview( : undefined; const thumb = workspace_icon_url ? { url: workspace_icon_url } : undefined; const title = [ - `**📚 [**${workspace_name}**](${Notion.WEBSITE_URL})**`, - "**👋 Connected to Workspace**", + `** [**${workspace_name}**](${Notion.WEBSITE_URL})**`, + "**Connected to Workspace**", ]; const description = [""]; const avatarElement = elementBuilder.addImage({ diff --git a/src/helper/getSelectDatabaseLayout.ts b/src/helper/getSelectDatabaseLayout.ts index cb142cc..0e43253 100644 --- a/src/helper/getSelectDatabaseLayout.ts +++ b/src/helper/getSelectDatabaseLayout.ts @@ -13,7 +13,7 @@ export function getSelectDatabaseLayout( const { workspace_icon, owner } = tokenInfo; const { name, avatar_url } = owner.user; - const database_name = properties.name; + const database_name = properties.name.replace("📚 ", ""); const database_url = properties.link; const elementBuilder = new ElementBuilder(appId); @@ -26,7 +26,7 @@ export function getSelectDatabaseLayout( : undefined; const thumb = workspace_icon_url ? { url: workspace_icon_url } : undefined; const title = [ - `**📋 Database Name**`, + `**Database Name**`, `[**${database_name}**](${database_url})`, ]; const description = [""]; diff --git a/src/lib/NotionSDK.ts b/src/lib/NotionSDK.ts index 618033a..ec8ef49 100644 --- a/src/lib/NotionSDK.ts +++ b/src/lib/NotionSDK.ts @@ -132,7 +132,7 @@ export class NotionSDK implements INotionSDK { } } - private async getPageObjectFromResults(item): Promise { + private async getPageObjectFromResults(item, emoji:boolean = false): Promise { const typesWithTitleProperty = [ NotionObjectTypes.WORKSPACE.toString(), NotionObjectTypes.PAGE_ID.toString(), @@ -145,7 +145,7 @@ export class NotionSDK implements INotionSDK { const pageName: string = properties.title.title[0]?.text?.content || NotionObjectTypes.UNTITLED; - return this.returnPage(pageName, pageId); + return this.returnPage(pageName, pageId, emoji); } // title property either be at first or last position @@ -161,7 +161,7 @@ export class NotionSDK implements INotionSDK { const name: string = properties[firstColumn].title[0]?.text?.content || NotionObjectTypes.UNTITLED; - return this.returnPage(name, pageId); + return this.returnPage(name, pageId, emoji); } //title at last position and has subpage @@ -172,15 +172,15 @@ export class NotionSDK implements INotionSDK { const name: string = properties[lastColumn].title[0]?.text?.content || NotionObjectTypes.UNTITLED; - return this.returnPage(name, pageId); + return this.returnPage(name, pageId, emoji); } return null; } - private returnPage(name: string, page_id: string): IPage { + private returnPage(name: string, page_id: string, emoji:boolean = false): IPage { return { - name: `📄 ${name}`, + name: `${emoji ? "📄" : ""} ${name}`, parent: { type: NotionObjectTypes.PAGE_ID, page_id, @@ -520,7 +520,8 @@ export class NotionSDK implements INotionSDK { const objectType: string = item?.[NotionObjectTypes.OBJECT]; if (objectType.includes(NotionObjectTypes.PAGE)) { const pageObject = await this.getPageObjectFromResults( - item + item, + true ); if (pageObject) { @@ -528,7 +529,7 @@ export class NotionSDK implements INotionSDK { } } else { const databaseObject = - await this.getDatabaseObjectFromResults(item); + await this.getDatabaseObjectFromResults(item, true); result.push(databaseObject); } @@ -540,7 +541,7 @@ export class NotionSDK implements INotionSDK { } } - private async getDatabaseObjectFromResults(item): Promise { + private async getDatabaseObjectFromResults(item, emoji:boolean = false): Promise { const databaseNameTitleObject = item?.[NotionObjectTypes.TITLE]; const name: string = databaseNameTitleObject.length ? databaseNameTitleObject[0]?.plain_text @@ -549,7 +550,7 @@ export class NotionSDK implements INotionSDK { return { info: { - name: `📚 ${name}`, + name: `${emoji ? "📚":""} ${name}`, link: item?.url, }, parent: { @@ -565,8 +566,9 @@ export class NotionSDK implements INotionSDK { prop: IPageProperties ): Promise<(INotionPage & { pageId: string }) | Error> { try { - const { name, parent } = page; + const { parent } = page; const { title } = prop; + const name = page.name.replace("📄", ""); const data = { parent,