add 'search' field ; update setFastGPTSem to validate input before storing. (#5230)

* Enhance WeChat login functionality

* Add inviterId

* add 'search' field ; update setFastGPTSem to validate input before storing.

* improve setFastGPTSem validation logic
This commit is contained in:
Zhuangzai fa
2025-07-17 13:48:41 +08:00
committed by GitHub
parent 983137b6c5
commit 986daadfba
3 changed files with 8 additions and 1 deletions

View File

@@ -10,6 +10,7 @@ export type TrackRegisterParams = {
msclkid?: string;
fastgpt_sem?: {
keyword?: string;
search?: string;
} & ShortUrlParams;
sourceDomain?: string;
};

View File

@@ -23,6 +23,7 @@ type MarketingQueryParams = {
bd_vid?: string;
msclkid?: string;
k?: string;
search?: string;
sourceDomain?: string;
utm_source?: string;
utm_medium?: string;
@@ -49,6 +50,7 @@ export const useInitApp = () => {
bd_vid,
msclkid,
k,
search,
sourceDomain,
utm_source,
utm_medium,
@@ -145,7 +147,7 @@ export const useInitApp = () => {
if (utm_workflow) {
setUtmParams(utmParams);
}
setFastGPTSem({ keyword: k, ...utmParams });
setFastGPTSem({ keyword: k, search, ...utmParams });
const newPath = getPathWithoutMarketingParams();
router.replace(newPath);

View File

@@ -68,6 +68,10 @@ export const getFastGPTSem = () => {
};
export const setFastGPTSem = (fastgptSem?: TrackRegisterParams['fastgpt_sem']) => {
if (!fastgptSem) return;
const validEntries = Object.entries(fastgptSem).filter(([_, value]) => !!value);
if (validEntries.length === 0) return;
localStorage.setItem('fastgpt_sem', JSON.stringify(fastgptSem));
};
export const removeFastGPTSem = () => {