Forráskód Böngészése

feat: close #1626 hide context prompts in mask config

Yidadaa 1 éve
szülő
commit
6d8c7ba140
5 módosított fájl, 41 hozzáadás és 14 törlés
  1. 3 1
      app/components/chat.tsx
  2. 28 12
      app/components/mask.tsx
  3. 4 0
      app/locales/cn.ts
  4. 5 1
      app/locales/en.ts
  5. 1 0
      app/store/mask.ts

+ 3 - 1
app/components/chat.tsx

@@ -585,7 +585,9 @@ export function Chat() {
     inputRef.current?.focus();
   };
 
-  const context: RenderMessage[] = session.mask.context.slice();
+  const context: RenderMessage[] = session.mask.hideContext
+    ? []
+    : session.mask.context.slice();
 
   const accessStore = useAccessStore();
 

+ 28 - 12
app/components/mask.tsx

@@ -104,25 +104,41 @@ export function MaskConfig(props: {
           ></input>
         </ListItem>
         <ListItem
-          title={Locale.Mask.Config.Sync.Title}
-          subTitle={Locale.Mask.Config.Sync.SubTitle}
+          title={Locale.Mask.Config.HideContext.Title}
+          subTitle={Locale.Mask.Config.HideContext.SubTitle}
         >
           <input
             type="checkbox"
-            checked={props.mask.syncGlobalConfig}
+            checked={props.mask.hideContext}
             onChange={(e) => {
-              if (
-                e.currentTarget.checked &&
-                confirm(Locale.Mask.Config.Sync.Confirm)
-              ) {
-                props.updateMask((mask) => {
-                  mask.syncGlobalConfig = e.currentTarget.checked;
-                  mask.modelConfig = { ...globalConfig.modelConfig };
-                });
-              }
+              props.updateMask((mask) => {
+                mask.hideContext = e.currentTarget.checked;
+              });
             }}
           ></input>
         </ListItem>
+        {props.shouldSyncFromGlobal ? (
+          <ListItem
+            title={Locale.Mask.Config.Sync.Title}
+            subTitle={Locale.Mask.Config.Sync.SubTitle}
+          >
+            <input
+              type="checkbox"
+              checked={props.mask.syncGlobalConfig}
+              onChange={(e) => {
+                if (
+                  e.currentTarget.checked &&
+                  confirm(Locale.Mask.Config.Sync.Confirm)
+                ) {
+                  props.updateMask((mask) => {
+                    mask.syncGlobalConfig = e.currentTarget.checked;
+                    mask.modelConfig = { ...globalConfig.modelConfig };
+                  });
+                }
+              }}
+            ></input>
+          </ListItem>
+        ) : null}
       </List>
 
       <List>

+ 4 - 0
app/locales/cn.ts

@@ -210,6 +210,10 @@ const cn = {
         SubTitle: "当前对话是否使用全局模型设置",
         Confirm: "当前对话的自定义设置将会被自动覆盖,确认启用全局设置?",
       },
+      HideContext: {
+        Title: "隐藏预设对话",
+        SubTitle: "隐藏后预设对话不会出现在聊天界面",
+      },
     },
   },
   NewChat: {

+ 5 - 1
app/locales/en.ts

@@ -213,6 +213,10 @@ const en: RequiredLocaleType = {
         SubTitle: "Use global config in this chat",
         Confirm: "Confirm to override custom config with global config?",
       },
+      HideContext: {
+        Title: "Hide Context Prompts",
+        SubTitle: "Do not show in-context prompts in chat",
+      },
     },
   },
   NewChat: {
@@ -221,7 +225,7 @@ const en: RequiredLocaleType = {
     Title: "Pick a Mask",
     SubTitle: "Chat with the Soul behind the Mask",
     More: "Find More",
-    NotShow: "Not Show Again",
+    NotShow: "Dont Show Again",
     ConfirmNoShow: "Confirm to disable?You can enable it in settings later.",
   },
 

+ 1 - 0
app/store/mask.ts

@@ -10,6 +10,7 @@ export type Mask = {
   id: number;
   avatar: string;
   name: string;
+  hideContext?: boolean;
   context: ChatMessage[];
   syncGlobalConfig?: boolean;
   modelConfig: ModelConfig;