From 0221899bf87b551f6d6cab0784989fe5394b7f22 Mon Sep 17 00:00:00 2001 From: Arpit Date: Mon, 19 Dec 2022 18:27:18 +0530 Subject: [PATCH] [Bugfix/v2-beta] Multipages: Page name should have at-least 1 character (#4983) * fixes: Page handler is also accepting only : but the url should not include blank space * page name and page handler cannot be named with white spaces --- frontend/src/Editor/Editor.jsx | 10 ++++++++++ .../LeftSidebar/SidebarPageSelector/PageHandler.jsx | 9 ++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/frontend/src/Editor/Editor.jsx b/frontend/src/Editor/Editor.jsx index 7c702a51a3..67b96c1694 100644 --- a/frontend/src/Editor/Editor.jsx +++ b/frontend/src/Editor/Editor.jsx @@ -1390,6 +1390,11 @@ class EditorComponent extends React.Component { return; } + if (newHandle.trim().length === 0) { + toast.error('Page handle cannot be empty'); + return; + } + this.setState( { isSaving: true, @@ -1452,6 +1457,11 @@ class EditorComponent extends React.Component { }; renamePage = (pageId, newName) => { + if (newName.trim().length === 0) { + toast.error('Page name cannot be empty'); + return; + } + const newAppDefinition = { ...this.state.appDefinition, pages: { diff --git a/frontend/src/Editor/LeftSidebar/SidebarPageSelector/PageHandler.jsx b/frontend/src/Editor/LeftSidebar/SidebarPageSelector/PageHandler.jsx index 9a5c75bd22..adec7e262b 100644 --- a/frontend/src/Editor/LeftSidebar/SidebarPageSelector/PageHandler.jsx +++ b/frontend/src/Editor/LeftSidebar/SidebarPageSelector/PageHandler.jsx @@ -5,6 +5,7 @@ import { EditModal } from './EditModal'; import { SettingsModal } from './SettingsModal'; import _ from 'lodash'; import SortableList from '@/_components/SortableList'; +import toast from 'react-hot-toast'; export const PageHandler = ({ darkMode, @@ -194,7 +195,13 @@ export const PageHandler = ({ export const AddingPageHandler = ({ addNewPage, setNewPageBeingCreated }) => { const handleAddingNewPage = (pageName) => { - if (pageName) { + if (pageName.trim().length === 0) { + toast('Page name should have atleast 1 character', { + icon: '⚠️', + }); + } + + if (pageName && pageName.trim().length > 0) { addNewPage({ name: pageName, handle: _.kebabCase(pageName.toLowerCase()) }); } setNewPageBeingCreated(false);