diff --git a/app/globals.css b/app/globals.css index 9de647f13..e7167e1bd 100644 --- a/app/globals.css +++ b/app/globals.css @@ -3,176 +3,161 @@ @tailwind utilities; :root { - --foreground-rgb: 0, 0, 0; - --background-start-rgb: 214, 219, 220; - --background-end-rgb: 255, 255, 255; + --foreground-rgb: 0, 0, 0; + --background-start-rgb: 214, 219, 220; + --background-end-rgb: 255, 255, 255; } @media (prefers-color-scheme: dark) { - :root { - --foreground-rgb: 255, 255, 255; - --background-start-rgb: 0, 0, 0; - --background-end-rgb: 0, 0, 0; - } + :root { + --foreground-rgb: 255, 255, 255; + --background-start-rgb: 0, 0, 0; + --background-end-rgb: 0, 0, 0; + } } @layer utilities { - .text-balance { - text-wrap: balance; - } + .text-balance { + text-wrap: balance; + } } @layer base { - :root { - --background: 0 0% 100%; - --foreground: 240 10% 3.9%; - --card: 0 0% 100%; - --card-foreground: 240 10% 3.9%; - --popover: 0 0% 100%; - --popover-foreground: 240 10% 3.9%; - --primary: 240 5.9% 10%; - --primary-foreground: 0 0% 98%; - --secondary: 240 4.8% 95.9%; - --secondary-foreground: 240 5.9% 10%; - --muted: 240 4.8% 95.9%; - --muted-foreground: 240 3.8% 46.1%; - --accent: 240 4.8% 95.9%; - --accent-foreground: 240 5.9% 10%; - --destructive: 0 84.2% 60.2%; - --destructive-foreground: 0 0% 98%; - --border: 240 5.9% 90%; - --input: 240 5.9% 90%; - --ring: 240 10% 3.9%; - --chart-1: 12 76% 61%; - --chart-2: 173 58% 39%; - --chart-3: 197 37% 24%; - --chart-4: 43 74% 66%; - --chart-5: 27 87% 67%; - --radius: 0.5rem; - --sidebar-background: 0 0% 98%; - --sidebar-foreground: 240 5.3% 26.1%; - --sidebar-primary: 240 5.9% 10%; - --sidebar-primary-foreground: 0 0% 98%; - --sidebar-accent: 240 4.8% 95.9%; - --sidebar-accent-foreground: 240 5.9% 10%; - --sidebar-border: 220 13% 91%; - --sidebar-ring: 217.2 91.2% 59.8%; - } - .dark { - --background: 240 10% 3.9%; - --foreground: 0 0% 98%; - --card: 240 10% 3.9%; - --card-foreground: 0 0% 98%; - --popover: 240 10% 3.9%; - --popover-foreground: 0 0% 98%; - --primary: 0 0% 98%; - --primary-foreground: 240 5.9% 10%; - --secondary: 240 3.7% 15.9%; - --secondary-foreground: 0 0% 98%; - --muted: 240 3.7% 15.9%; - --muted-foreground: 240 5% 64.9%; - --accent: 240 3.7% 15.9%; - --accent-foreground: 0 0% 98%; - --destructive: 0 62.8% 30.6%; - --destructive-foreground: 0 0% 98%; - --border: 240 3.7% 15.9%; - --input: 240 3.7% 15.9%; - --ring: 240 4.9% 83.9%; - --chart-1: 220 70% 50%; - --chart-2: 160 60% 45%; - --chart-3: 30 80% 55%; - --chart-4: 280 65% 60%; - --chart-5: 340 75% 55%; - --sidebar-background: 240 5.9% 10%; - --sidebar-foreground: 240 4.8% 95.9%; - --sidebar-primary: 224.3 76.3% 48%; - --sidebar-primary-foreground: 0 0% 100%; - --sidebar-accent: 240 3.7% 15.9%; - --sidebar-accent-foreground: 240 4.8% 95.9%; - --sidebar-border: 240 3.7% 15.9%; - --sidebar-ring: 217.2 91.2% 59.8%; - } + :root { + --background: 0 0% 100%; + --foreground: 224 71.4% 4.1%; + --card: 0 0% 100%; + --card-foreground: 224 71.4% 4.1%; + --popover: 0 0% 100%; + --popover-foreground: 224 71.4% 4.1%; + --primary: 262.1 83.3% 57.8%; + --primary-foreground: 210 20% 98%; + --secondary: 220 14.3% 95.9%; + --secondary-foreground: 220.9 39.3% 11%; + --muted: 220 14.3% 95.9%; + --muted-foreground: 220 8.9% 46.1%; + --accent: 220 14.3% 95.9%; + --accent-foreground: 220.9 39.3% 11%; + --destructive: 0 84.2% 60.2%; + --destructive-foreground: 210 20% 98%; + --border: 220 13% 91%; + --input: 220 13% 91%; + --ring: 262.1 83.3% 57.8%; + --radius: 0.5rem; + --chart-1: 12 76% 61%; + --chart-2: 173 58% 39%; + --chart-3: 197 37% 24%; + --chart-4: 43 74% 66%; + --chart-5: 27 87% 67%; + } + + .dark { + --background: 224 71.4% 4.1%; + --foreground: 210 20% 98%; + --card: 224 71.4% 4.1%; + --card-foreground: 210 20% 98%; + --popover: 224 71.4% 4.1%; + --popover-foreground: 210 20% 98%; + --primary: 263.4 70% 50.4%; + --primary-foreground: 210 20% 98%; + --secondary: 215 27.9% 16.9%; + --secondary-foreground: 210 20% 98%; + --muted: 215 27.9% 16.9%; + --muted-foreground: 217.9 10.6% 64.9%; + --accent: 215 27.9% 16.9%; + --accent-foreground: 210 20% 98%; + --destructive: 0 62.8% 30.6%; + --destructive-foreground: 210 20% 98%; + --border: 215 27.9% 16.9%; + --input: 215 27.9% 16.9%; + --ring: 263.4 70% 50.4%; + --chart-1: 220 70% 50%; + --chart-2: 160 60% 45%; + --chart-3: 30 80% 55%; + --chart-4: 280 65% 60%; + --chart-5: 340 75% 55%; + } } @layer base { - * { - @apply border-border; - } - - body { - @apply bg-background text-foreground; - } - - @font-face { - font-family: "geist"; - font-style: normal; - font-weight: 100 900; - src: url(/fonts/geist.woff2) format("woff2"); - } - - @font-face { - font-family: "geist-mono"; - font-style: normal; - font-weight: 100 900; - src: url(/fonts/geist-mono.woff2) format("woff2"); - } + * { + @apply border-border; + } + + body { + @apply bg-background text-foreground; + } + + @font-face { + font-family: 'geist'; + font-style: normal; + font-weight: 100 900; + src: url(/fonts/geist.woff2) format('woff2'); + } + + @font-face { + font-family: 'geist-mono'; + font-style: normal; + font-weight: 100 900; + src: url(/fonts/geist-mono.woff2) format('woff2'); + } } .skeleton { - * { - pointer-events: none !important; - } - - *[class^="text-"] { - color: transparent; - @apply rounded-md bg-foreground/20 select-none animate-pulse; - } - - .skeleton-bg { - @apply bg-foreground/10; - } - - .skeleton-div { - @apply bg-foreground/20 animate-pulse; - } + * { + pointer-events: none !important; + } + + *[class^='text-'] { + color: transparent; + @apply rounded-md bg-foreground/20 select-none animate-pulse; + } + + .skeleton-bg { + @apply bg-foreground/10; + } + + .skeleton-div { + @apply bg-foreground/20 animate-pulse; + } } .ProseMirror { - outline: none; + outline: none; } .cm-editor, .cm-gutters { - @apply bg-background dark:bg-zinc-800 outline-none selection:bg-zinc-900 !important; + @apply bg-background dark:bg-zinc-800 outline-none selection:bg-zinc-900 !important; } .ͼo.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .ͼo.cm-selectionBackground, .ͼo.cm-content::selection { - @apply bg-zinc-200 dark:bg-zinc-900 !important; + @apply bg-zinc-200 dark:bg-zinc-900 !important; } .cm-activeLine, .cm-activeLineGutter { - @apply bg-transparent !important; + @apply bg-transparent !important; } .cm-activeLine { - @apply rounded-r-sm !important; + @apply rounded-r-sm !important; } .cm-lineNumbers { - @apply min-w-7; + @apply min-w-7; } .cm-foldGutter { - @apply min-w-3; + @apply min-w-3; } .cm-lineNumbers .cm-activeLineGutter { - @apply rounded-l-sm !important; + @apply rounded-l-sm !important; } .suggestion-highlight { - @apply bg-blue-200 hover:bg-blue-300 dark:hover:bg-blue-400/50 dark:text-blue-50 dark:bg-blue-500/40; + @apply bg-blue-200 hover:bg-blue-300 dark:hover:bg-blue-400/50 dark:text-blue-50 dark:bg-blue-500/40; } diff --git a/components/app-sidebar.tsx b/components/app-sidebar.tsx index 5b08bb58c..4abc359b0 100644 --- a/components/app-sidebar.tsx +++ b/components/app-sidebar.tsx @@ -35,7 +35,7 @@ export function AppSidebar({ user }: { user: User | undefined }) { className="flex flex-row gap-3 items-center" > - Chatbot + Conversations diff --git a/components/chat-header.tsx b/components/chat-header.tsx index 8a4d69e98..76f3e415b 100644 --- a/components/chat-header.tsx +++ b/components/chat-header.tsx @@ -12,6 +12,7 @@ import { useSidebar } from './ui/sidebar'; import { memo } from 'react'; import { Tooltip, TooltipContent, TooltipTrigger } from './ui/tooltip'; import { VisibilityType, VisibilitySelector } from './visibility-selector'; +import Image from 'next/image'; function PureChatHeader({ chatId, @@ -52,12 +53,12 @@ function PureChatHeader({ )} - {!isReadonly && ( + {/* {!isReadonly && ( - )} + )} */} {!isReadonly && ( )} - + ); } diff --git a/components/messages.tsx b/components/messages.tsx index 4ba90b253..18e5e0479 100644 --- a/components/messages.tsx +++ b/components/messages.tsx @@ -38,7 +38,7 @@ function PureMessages({ ref={messagesContainerRef} className="flex flex-col min-w-0 gap-6 flex-1 overflow-y-scroll pt-4" > - {/* {messages.length === 0 && } */} + {messages.length === 0 && } {messages.map((message, index) => ( { return ( @@ -13,39 +11,35 @@ export const Overview = () => { exit={{ opacity: 0, scale: 0.98 }} transition={{ delay: 0.5 }} > -
-

- - + - -

-

- This is an{' '} - - open source - {' '} - chatbot template built with Next.js and the AI SDK by Vercel. It uses - the{' '} - streamText{' '} - function in the server and the{' '} - useChat hook - on the client to create a seamless chat experience. -

-

- You can learn more about the AI SDK by visiting the{' '} - - docs - - . -

+
+ {/* Left Section: Image */} +
+ Lemme Robot +
+ + {/* Right Section: Text */} +
+

Welcome to Lemme

+

+ I'm your AI assistant at HumanGood, here to help you navigate + our organization. Need info on company policies, IT support, HR + guidelines, or departmental procedures? +

+

+ Just ask! I'll provide quick, accurate answers from our + employee handbook and internal processes. +

+

+ While I can't access personal data like paystubs, I'm here + to make your workday easier with instant HumanGood knowledge. +

+

How can I assist you today?

+
); diff --git a/components/sidebar-history.tsx b/components/sidebar-history.tsx index 6aa18c03f..ea8e8d08f 100644 --- a/components/sidebar-history.tsx +++ b/components/sidebar-history.tsx @@ -109,7 +109,7 @@ const PureChatItem = ({ >
- Private + Personal
{visibilityType === 'private' ? ( @@ -123,7 +123,7 @@ const PureChatItem = ({ >
- Public + Shared
{visibilityType === 'public' ? : null} @@ -275,7 +275,7 @@ export function SidebarHistory({ user }: { user: User | undefined }) { lastWeek: [], lastMonth: [], older: [], - } as GroupedChats, + } as GroupedChats ); }; diff --git a/components/suggested-actions.tsx b/components/suggested-actions.tsx index b2d14d63d..e0cda313f 100644 --- a/components/suggested-actions.tsx +++ b/components/suggested-actions.tsx @@ -9,31 +9,31 @@ interface SuggestedActionsProps { chatId: string; append: ( message: Message | CreateMessage, - chatRequestOptions?: ChatRequestOptions, + chatRequestOptions?: ChatRequestOptions ) => Promise; } function PureSuggestedActions({ chatId, append }: SuggestedActionsProps) { const suggestedActions = [ { - title: 'What are the advantages', - label: 'of using Next.js?', - action: 'What are the advantages of using Next.js?', + title: 'Help me write an essay', + label: `about software engineering`, + action: `Help me write an essay about software engineering`, }, { - title: 'Write code to', - label: `demonstrate djikstra's algorithm`, - action: `Write code to demonstrate djikstra's algorithm`, + title: 'Write some code', + label: 'to generate random values and chart them', + action: 'Generate random values and chart them using code', }, { - title: 'Help me write an essay', - label: `about silicon valley`, - action: `Help me write an essay about silicon valley`, + title: 'Teach me how to', + label: "solve a Rubik's Cube", + action: "Provide a step-by-step guide on how to solve a Rubik's Cube", }, { - title: 'What is the weather', - label: 'in San Francisco?', - action: 'What is the weather in San Francisco?', + title: 'Recommend a recipe', + label: 'for dinner tonight', + action: 'Suggest an easy and delicious recipe for dinner tonight', }, ]; diff --git a/components/visibility-selector.tsx b/components/visibility-selector.tsx index 7fd405906..24336dbb6 100644 --- a/components/visibility-selector.tsx +++ b/components/visibility-selector.tsx @@ -28,13 +28,13 @@ const visibilities: Array<{ }> = [ { id: 'private', - label: 'Private', + label: 'Personal', description: 'Only you can access this chat', icon: , }, { id: 'public', - label: 'Public', + label: 'Shared', description: 'Anyone with the link can access this chat', icon: , }, diff --git a/public/images/hg-logo.png b/public/images/hg-logo.png new file mode 100644 index 000000000..09a469a1d Binary files /dev/null and b/public/images/hg-logo.png differ diff --git a/public/images/lemme.png b/public/images/lemme.png new file mode 100644 index 000000000..6280a703b Binary files /dev/null and b/public/images/lemme.png differ