mirror of
https://git.mirrors.martin98.com/https://github.com/langgenius/dify.git
synced 2025-08-11 17:49:02 +08:00
chore: utm (#2180)
This commit is contained in:
parent
95ad06c8c3
commit
0940084fd2
@ -15,6 +15,14 @@ const SwrInitor = ({
|
||||
const searchParams = useSearchParams()
|
||||
const consoleToken = searchParams.get('console_token')
|
||||
const consoleTokenFromLocalStorage = localStorage?.getItem('console_token')
|
||||
const utm = {
|
||||
utm_source: searchParams.get('utm_source') || '',
|
||||
utm_medium: searchParams.get('utm_medium') || '',
|
||||
utm_campaign: searchParams.get('utm_campaign') || '',
|
||||
utm_content: searchParams.get('utm_content') || '',
|
||||
utm_term: searchParams.get('utm_term') || '',
|
||||
}
|
||||
localStorage?.setItem('utm', JSON.stringify(utm))
|
||||
const [init, setInit] = useState(false)
|
||||
|
||||
useEffect(() => {
|
||||
@ -23,7 +31,7 @@ const SwrInitor = ({
|
||||
|
||||
if (consoleToken) {
|
||||
localStorage?.setItem('console_token', consoleToken!)
|
||||
router.replace('/apps', { forceOptimisticNavigation: false })
|
||||
router.replace('/apps', { forceOptimisticNavigation: false } as any)
|
||||
}
|
||||
setInit(true)
|
||||
}, [])
|
||||
|
@ -7,6 +7,7 @@ import {
|
||||
fetchModelList,
|
||||
fetchModelProviders,
|
||||
fetchSupportRetrievalMethods,
|
||||
operationUtm,
|
||||
} from '@/service/common'
|
||||
import {
|
||||
ModelFeatureEnum,
|
||||
@ -97,6 +98,23 @@ export const ProviderContextProvider = ({
|
||||
const [isFetchedPlan, setIsFetchedPlan] = useState(false)
|
||||
const [enableBilling, setEnableBilling] = useState(true)
|
||||
const [enableReplaceWebAppLogo, setEnableReplaceWebAppLogo] = useState(false)
|
||||
|
||||
const handleOperateUtm = () => {
|
||||
let utm
|
||||
try {
|
||||
utm = JSON.parse(localStorage?.getItem('utm') || '{}')
|
||||
}
|
||||
catch (e) {
|
||||
utm = {
|
||||
utm_source: '',
|
||||
utm_medium: '',
|
||||
utm_campaign: '',
|
||||
utm_content: '',
|
||||
utm_term: '',
|
||||
}
|
||||
}
|
||||
operationUtm({ url: '/operation/utm', body: utm })
|
||||
}
|
||||
useEffect(() => {
|
||||
(async () => {
|
||||
const data = await fetchCurrentPlanInfo()
|
||||
@ -105,13 +123,7 @@ export const ProviderContextProvider = ({
|
||||
setEnableReplaceWebAppLogo(data.can_replace_logo)
|
||||
if (enabled) {
|
||||
setPlan(parseCurrentPlan(data))
|
||||
// setPlan(parseCurrentPlan({
|
||||
// ...data,
|
||||
// annotation_quota_limit: {
|
||||
// ...data.annotation_quota_limit,
|
||||
// limit: 10,
|
||||
// },
|
||||
// }))
|
||||
handleOperateUtm()
|
||||
setIsFetchedPlan(true)
|
||||
}
|
||||
})()
|
||||
|
@ -251,3 +251,11 @@ export type ModerationService = (
|
||||
text: string
|
||||
}
|
||||
) => Promise<ModerateResponse>
|
||||
|
||||
export type Utm = {
|
||||
utm_source?: string
|
||||
utm_medium?: string
|
||||
utm_campaign?: string
|
||||
utm_term?: string
|
||||
utm_content?: string
|
||||
}
|
||||
|
@ -20,6 +20,7 @@ import type {
|
||||
ProviderAzureToken,
|
||||
SetupStatusResponse,
|
||||
UserProfileOriginResponse,
|
||||
Utm,
|
||||
} from '@/models/common'
|
||||
import type {
|
||||
UpdateOpenAIKeyResponse,
|
||||
@ -262,3 +263,7 @@ type RetrievalMethodsRes = {
|
||||
export const fetchSupportRetrievalMethods: Fetcher<RetrievalMethodsRes, string> = (url) => {
|
||||
return get<RetrievalMethodsRes>(url)
|
||||
}
|
||||
|
||||
export const operationUtm: Fetcher<CommonResponse, { url: string; body: Utm }> = ({ url, body }) => {
|
||||
return post(url, { body }) as Promise<CommonResponse>
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user