Skip to content

Commit

Permalink
feat(sidebar): add SIDEBAR_TITLE and SIDEBAR_SUBTITLE config for cust…
Browse files Browse the repository at this point in the history
…om sidebar information
  • Loading branch information
chenxc committed Jul 15, 2024
1 parent b9d1dca commit 851d2d1
Show file tree
Hide file tree
Showing 3 changed files with 23 additions and 7 deletions.
9 changes: 8 additions & 1 deletion .env.template
Original file line number Diff line number Diff line change
Expand Up @@ -60,4 +60,11 @@ ANTHROPIC_API_VERSION=
ANTHROPIC_URL=

### (optional)
WHITE_WEBDEV_ENDPOINTS=
WHITE_WEBDEV_ENDPOINTS=

### custom sidebar title.(optional)
SIDEBAR_TITLE=

### custom sidebar subtitle.(optional)
SIDEBAR_SUBTITLE=

8 changes: 4 additions & 4 deletions app/components/sidebar.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -30,6 +30,7 @@ import { Link, useNavigate } from "react-router-dom";
import { isIOS, useMobileScreen } from "../utils";
import dynamic from "next/dynamic";
import { showConfirm, showToast } from "./ui-lib";
import { getServerSideConfig } from "../config/server";

const ChatList = dynamic(async () => (await import("./chat-list")).ChatList, {
loading: () => null,
Expand Down Expand Up @@ -130,7 +131,6 @@ function useDragSideBar() {

export function SideBar(props: { className?: string }) {
const chatStore = useChatStore();

// drag side bar
const { onDragStart, shouldNarrow } = useDragSideBar();
const navigate = useNavigate();
Expand All @@ -140,7 +140,7 @@ export function SideBar(props: { className?: string }) {
() => isIOS() && isMobileScreen,
[isMobileScreen],
);

const serverConfig = getServerSideConfig();
useHotKey();

return (
Expand All @@ -155,10 +155,10 @@ export function SideBar(props: { className?: string }) {
>
<div className={styles["sidebar-header"]} data-tauri-drag-region>
<div className={styles["sidebar-title"]} data-tauri-drag-region>
NextChat
{serverConfig.sidebarTitle}
</div>
<div className={styles["sidebar-sub-title"]}>
Build your own AI assistant.
{serverConfig.sidebarSubTitle}
</div>
<div className={styles["sidebar-logo"] + " no-dark"}>
<ChatGptIcon />
Expand Down
13 changes: 11 additions & 2 deletions app/config/server.ts
Original file line number Diff line number Diff line change
Expand Up @@ -55,13 +55,17 @@ declare global {

// custom template for preprocessing user input
DEFAULT_INPUT_TEMPLATE?: string;

// custom sidebar title
SIDEBAR_TITLE?: string;
// custom sidebar sub-title
SIDEBAR_SUB_TITLE?: string;
}
}
}

const ACCESS_CODES = (function getAccessCodes(): Set<string> {
const code = process.env.CODE;

try {
const codes = (code?.split(",") ?? [])
.filter((v) => !!v)
Expand Down Expand Up @@ -125,7 +129,10 @@ export const getServerSideConfig = () => {
const allowedWebDevEndpoints = (
process.env.WHITE_WEBDEV_ENDPOINTS ?? ""
).split(",");

// custom title
const sidebarTitle = process.env.SIDEBAR_TITLE ?? "NextChat";
const sidebarSubTitle =
process.env.SIDEBAR_SUB_TITLE ?? "Build your own AI assistant.";
return {
baseUrl: process.env.BASE_URL,
apiKey: getApiKey(process.env.OPENAI_API_KEY),
Expand Down Expand Up @@ -174,5 +181,7 @@ export const getServerSideConfig = () => {
customModels,
defaultModel,
allowedWebDevEndpoints,
sidebarTitle,
sidebarSubTitle,
};
};

0 comments on commit 851d2d1

Please sign in to comment.