perf: multi language

This commit is contained in:
Junyan Qin
2025-05-15 10:40:36 +08:00
parent a9f4dc517a
commit 347da6142e
12 changed files with 80 additions and 24 deletions
@@ -138,7 +138,18 @@ export default function HomeSidebar({
<SidebarChild
onClick={() => {
// open docs.langbot.app
window.open('https://docs.langbot.app', '_blank');
const language = localStorage.getItem('langbot_language');
if (language === 'zh-Hans') {
window.open(
'https://docs.langbot.app/zh/insight/guide.html',
'_blank',
);
} else {
window.open(
'https://docs.langbot.app/en/insight/guide.html',
'_blank',
);
}
}}
isSelected={false}
icon={
@@ -1,4 +1,5 @@
import styles from './HomeSidebar.module.css';
import { I18nText } from '@/app/infra/entities/api';
export interface ISidebarChildVO {
id: string;
@@ -6,7 +7,7 @@ export interface ISidebarChildVO {
name: string;
route: string;
description: string;
helpLink: string;
helpLink: I18nText;
}
export class SidebarChildVO {
@@ -15,7 +16,7 @@ export class SidebarChildVO {
name: string;
route: string;
description: string;
helpLink: string;
helpLink: I18nText;
constructor(props: ISidebarChildVO) {
this.id = props.id;
@@ -22,7 +22,10 @@ export const sidebarConfigList = [
),
route: '/home/bots',
description: t('bots.description'),
helpLink: 'https://docs.langbot.app/zh/deploy/platforms/readme.html',
helpLink: {
en_US: 'https://docs.langbot.app/en/deploy/platforms/readme.html',
zh_Hans: 'https://docs.langbot.app/zh/deploy/platforms/readme.html',
},
}),
new SidebarChildVO({
id: 'models',
@@ -39,7 +42,10 @@ export const sidebarConfigList = [
),
route: '/home/models',
description: t('models.description'),
helpLink: 'https://docs.langbot.app/zh/deploy/models/readme.html',
helpLink: {
en_US: 'https://docs.langbot.app/en/deploy/models/readme.html',
zh_Hans: 'https://docs.langbot.app/zh/deploy/models/readme.html',
},
}),
new SidebarChildVO({
id: 'pipelines',
@@ -56,7 +62,10 @@ export const sidebarConfigList = [
),
route: '/home/pipelines',
description: t('pipelines.description'),
helpLink: 'https://docs.langbot.app/zh/deploy/pipelines/readme.html',
helpLink: {
en_US: 'https://docs.langbot.app/en/deploy/pipelines/readme.html',
zh_Hans: 'https://docs.langbot.app/zh/deploy/pipelines/readme.html',
},
}),
new SidebarChildVO({
id: 'plugins',
@@ -73,6 +82,9 @@ export const sidebarConfigList = [
),
route: '/home/plugins',
description: t('plugins.description'),
helpLink: 'https://docs.langbot.app/zh/plugin/plugin-intro.html',
helpLink: {
en_US: 'https://docs.langbot.app/en/plugin/plugin-intro.html',
zh_Hans: 'https://docs.langbot.app/zh/plugin/plugin-intro.html',
},
}),
];
@@ -1,4 +1,6 @@
import { i18nObj } from '@/i18n/I18nProvider';
import styles from './HomeTittleBar.module.css';
import { I18nText } from '@/app/infra/entities/api';
export default function HomeTitleBar({
title,
@@ -7,7 +9,7 @@ export default function HomeTitleBar({
}: {
title: string;
subtitle: string;
helpLink: string;
helpLink: I18nText;
}) {
return (
<div className={`${styles.titleBarContainer}`}>
@@ -15,7 +17,7 @@ export default function HomeTitleBar({
<div className={`${styles.subtitleText}`}>
{subtitle}
<span className={`${styles.helpLink}`}>
<a href={helpLink} target="_blank" rel="noopener noreferrer">
<a href={i18nObj(helpLink)} target="_blank" rel="noopener noreferrer">
<svg
className="w-[1rem] h-[1rem]"
xmlns="http://www.w3.org/2000/svg"