| 
					
				 | 
			
			
				@@ -3,12 +3,15 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { createContext, useContext, useContextSelector } from 'use-context-selector' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import useSWR from 'swr' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { useEffect, useState } from 'react' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import dayjs from 'dayjs' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { useTranslation } from 'react-i18next' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   fetchModelList, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   fetchModelProviders, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   fetchSupportRetrievalMethods, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } from '@/service/common' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  CurrentSystemQuotaTypeEnum, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ModelStatusEnum, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   ModelTypeEnum, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 } from '@/app/components/header/account-setting/model-provider-page/declarations' 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -18,6 +21,7 @@ import { Plan, type UsagePlanInfo } from '@/app/components/billing/type' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { fetchCurrentPlanInfo } from '@/service/billing' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { parseCurrentPlan } from '@/app/components/billing/utils' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 import { defaultPlan } from '@/app/components/billing/config' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import Toast from '@/app/components/base/toast' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				 type ProviderContextState = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   modelProviders: ModelProvider[] 
			 | 
		
	
	
		
			
				| 
					
				 | 
			
			
				@@ -110,6 +114,32 @@ export const ProviderContextProvider = ({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     fetchPlan() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   }, []) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  const { t } = useTranslation() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  useEffect(() => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (localStorage.getItem('anthropic_quota_notice') === 'true') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (dayjs().isAfter(dayjs('2025-03-10'))) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    if (providersData?.data && providersData.data.length > 0) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const anthropic = providersData.data.find(provider => provider.provider === 'anthropic') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (anthropic && anthropic.system_configuration.current_quota_type === CurrentSystemQuotaTypeEnum.trial) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        const quota = anthropic.system_configuration.quota_configurations.find(item => item.quota_type === anthropic.system_configuration.current_quota_type) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (quota && quota.is_valid && quota.quota_used < quota.quota_limit) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          Toast.notify({ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            type: 'info', 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            message: t('common.provider.anthropicHosted.trialQuotaTip'), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            duration: 6000, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            onClose: () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              localStorage.setItem('anthropic_quota_notice', 'true') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, [providersData, t]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				   return ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				     <ProviderContext.Provider value={{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				       modelProviders: providersData?.data || [], 
			 |