From ccb952a375652c7efd6fbac3d6ea309bdad7ed5e Mon Sep 17 00:00:00 2001 From: ruru <142723369+ruru-m07@users.noreply.github.com> Date: Sat, 18 May 2024 19:05:00 +0530 Subject: [PATCH 1/2] feat: implement message editing feature --- app/page.tsx | 1 + components/listSuggestion.tsx | 79 +++++++++++++++++++++++++++++++++-- components/ui/button.tsx | 2 +- 3 files changed, 78 insertions(+), 4 deletions(-) diff --git a/app/page.tsx b/app/page.tsx index e43a363..0fb1c2c 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -115,6 +115,7 @@ export default function Home() { ) : (
diff --git a/components/listSuggestion.tsx b/components/listSuggestion.tsx index 61fd26a..f895b44 100644 --- a/components/listSuggestion.tsx +++ b/components/listSuggestion.tsx @@ -1,16 +1,89 @@ -import React from "react"; +import React, { useEffect, useState } from "react"; import MarkdownReader from "./md-components"; +import { CheckIcon, Cross1Icon, Pencil1Icon } from "@radix-ui/react-icons"; +import { Button } from "./ui/button"; +import { Input } from "./ui/input"; const ListSuggestion = ({ suggestions, commitChanges, + submitForm, }: { suggestions: string; commitChanges: string; + submitForm: ( + e: React.FormEvent, + message: string | null + ) => void; }) => { + const [isEditMode, setIsEditMode] = useState(false); + const [updatedMessage, setUpdatedMessage] = useState(commitChanges); + + useEffect(() => { + setIsEditMode(false); + }, [commitChanges, suggestions]); + + const toggelEditMode = () => { + setIsEditMode((pre) => !pre); + }; + return ( -
-

{commitChanges}

+
+ {isEditMode ? ( +
submitForm(e, updatedMessage)} + className="flex gap-2 w-full items-center justify-between " + > + { + setUpdatedMessage(e.target.value); + }} + autoFocus + required + > + + +
+ ) : ( +
+

{commitChanges}

+ +
+ )}
); diff --git a/components/ui/button.tsx b/components/ui/button.tsx index 225e113..032560c 100644 --- a/components/ui/button.tsx +++ b/components/ui/button.tsx @@ -24,7 +24,7 @@ const buttonVariants = cva( default: "h-9 px-4 py-2", sm: "h-8 rounded-md px-3 text-xs", lg: "h-10 rounded-md px-8", - icon: "h-9 w-9", + icon: "h-8 w-8", }, }, defaultVariants: { From 6ac1263bd9ea82ad3fb14447bc4baec831b1831f Mon Sep 17 00:00:00 2001 From: ruru <142723369+ruru-m07@users.noreply.github.com> Date: Sat, 18 May 2024 19:08:43 +0530 Subject: [PATCH 2/2] refactor: format code --- app/layout.tsx | 7 ++++--- app/page.tsx | 8 ++++---- components/emptyScreen.tsx | 20 +++++++++++--------- components/listSuggestion.tsx | 2 +- components/md-components.tsx | 20 ++++++++++---------- components/md/copy-button.tsx | 5 +---- components/ui/dialog.tsx | 10 +++++----- components/ui/toast.tsx | 3 +-- 8 files changed, 37 insertions(+), 38 deletions(-) diff --git a/app/layout.tsx b/app/layout.tsx index e782031..989f034 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -69,8 +69,9 @@ export default function RootLayout({ buttonVariants({ variant: "outline", size: "icon", - className: "rounded-full w-10 h-10 overflow-hidden sm:block hidden", - }) + className: + "rounded-full w-10 h-10 overflow-hidden sm:block hidden", + }), )} > diff --git a/app/page.tsx b/app/page.tsx index 0fb1c2c..eb25a1f 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -27,7 +27,7 @@ export default function Home() { const [error, setError] = React.useState(null); const [commitChanges, setcommitChanges] = React.useState(null); const [commitMessages, setcommitMessages] = React.useState( - null + null, ); const { toast } = useToast(); @@ -62,7 +62,7 @@ export default function Home() { toastVariants({ variant: "destructive", className: "w-fit m-0 p-2 text-xs hover:bg-[#815305]/35", - }) + }), )} onClick={() => handelSubmit({ suggestion })} > @@ -86,7 +86,7 @@ export default function Home() { const submitForm = ( e: React.FormEvent, - message: string | null + message: string | null, ): void => { e.preventDefault(); handelSubmit({ suggestion: message || "" }); @@ -154,7 +154,7 @@ export default function Home() { disabled={isLoading} > {isLoading && } - Generate + Generate
diff --git a/components/emptyScreen.tsx b/components/emptyScreen.tsx index bc46eb6..874252b 100644 --- a/components/emptyScreen.tsx +++ b/components/emptyScreen.tsx @@ -43,15 +43,17 @@ const EmptyScreen = ({ {randomMessage}
- {randomSuggestions.slice(0, suggestionCount).map((suggestion, index) => ( - onSubmit({ suggestion })} - > -

{suggestion}

-
- ))} + {randomSuggestions + .slice(0, suggestionCount) + .map((suggestion, index) => ( + onSubmit({ suggestion })} + > +

{suggestion}

+
+ ))}
diff --git a/components/listSuggestion.tsx b/components/listSuggestion.tsx index f895b44..2b21604 100644 --- a/components/listSuggestion.tsx +++ b/components/listSuggestion.tsx @@ -13,7 +13,7 @@ const ListSuggestion = ({ commitChanges: string; submitForm: ( e: React.FormEvent, - message: string | null + message: string | null, ) => void; }) => { const [isEditMode, setIsEditMode] = useState(false); diff --git a/components/md-components.tsx b/components/md-components.tsx index 0cba319..771b2ac 100644 --- a/components/md-components.tsx +++ b/components/md-components.tsx @@ -22,7 +22,7 @@ const components = {

@@ -31,7 +31,7 @@ const components = {

@@ -40,7 +40,7 @@ const components = {

@@ -49,7 +49,7 @@ const components = {

@@ -58,7 +58,7 @@ const components = {

@@ -67,7 +67,7 @@ const components = {
@@ -125,7 +125,7 @@ const components = { @@ -134,7 +134,7 @@ const components = { @@ -163,7 +163,7 @@ const components = {
@@ -214,7 +214,7 @@ const components = {
       
diff --git a/components/md/copy-button.tsx b/components/md/copy-button.tsx
index 61c7b77..756f0b7 100644
--- a/components/md/copy-button.tsx
+++ b/components/md/copy-button.tsx
@@ -39,10 +39,7 @@ export function CopyButton({