Commit 986daadf by Zhuangzai fa Committed by GitHub

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
parent 983137b6
...@@ -10,6 +10,7 @@ export type TrackRegisterParams = { ...@@ -10,6 +10,7 @@ export type TrackRegisterParams = {
msclkid?: string; msclkid?: string;
fastgpt_sem?: { fastgpt_sem?: {
keyword?: string; keyword?: string;
search?: string;
} & ShortUrlParams; } & ShortUrlParams;
sourceDomain?: string; sourceDomain?: string;
}; };
...@@ -23,6 +23,7 @@ type MarketingQueryParams = { ...@@ -23,6 +23,7 @@ type MarketingQueryParams = {
bd_vid?: string; bd_vid?: string;
msclkid?: string; msclkid?: string;
k?: string; k?: string;
search?: string;
sourceDomain?: string; sourceDomain?: string;
utm_source?: string; utm_source?: string;
utm_medium?: string; utm_medium?: string;
...@@ -49,6 +50,7 @@ export const useInitApp = () => { ...@@ -49,6 +50,7 @@ export const useInitApp = () => {
bd_vid, bd_vid,
msclkid, msclkid,
k, k,
search,
sourceDomain, sourceDomain,
utm_source, utm_source,
utm_medium, utm_medium,
...@@ -145,7 +147,7 @@ export const useInitApp = () => { ...@@ -145,7 +147,7 @@ export const useInitApp = () => {
if (utm_workflow) { if (utm_workflow) {
setUtmParams(utmParams); setUtmParams(utmParams);
} }
setFastGPTSem({ keyword: k, ...utmParams }); setFastGPTSem({ keyword: k, search, ...utmParams });
const newPath = getPathWithoutMarketingParams(); const newPath = getPathWithoutMarketingParams();
router.replace(newPath); router.replace(newPath);
......
...@@ -68,6 +68,10 @@ export const getFastGPTSem = () => { ...@@ -68,6 +68,10 @@ export const getFastGPTSem = () => {
}; };
export const setFastGPTSem = (fastgptSem?: TrackRegisterParams['fastgpt_sem']) => { export const setFastGPTSem = (fastgptSem?: TrackRegisterParams['fastgpt_sem']) => {
if (!fastgptSem) return; if (!fastgptSem) return;
const validEntries = Object.entries(fastgptSem).filter(([_, value]) => !!value);
if (validEntries.length === 0) return;
localStorage.setItem('fastgpt_sem', JSON.stringify(fastgptSem)); localStorage.setItem('fastgpt_sem', JSON.stringify(fastgptSem));
}; };
export const removeFastGPTSem = () => { export const removeFastGPTSem = () => {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment