import Taro from '@tarojs/taro'; 
 | 
import { TabBarPageRouterForCheck } from '@/constants'; 
 | 
import { useSystemStore } from '@/stores/modules/system'; 
 | 
import { useAppStore } from '@/stores/modules/app'; 
 | 
import { isInAlipay } from '@/utils/env'; 
 | 
import { useLifeRechargeContext } from '@life-payment/core-vue'; 
 | 
import { getRouterPath } from '@life-payment/utils'; 
 | 
import { pathAddExtraParam } from '@/utils'; 
 | 
  
 | 
export function useSwitchTab() { 
 | 
  const systemStore = useSystemStore(); 
 | 
  
 | 
  const switchTab = (option: Taro.switchTab.Option) => { 
 | 
    const index = Object.values(TabBarPageRouterForCheck).findIndex((x) => option.url.includes(x)); 
 | 
    console.log('index: ', index); 
 | 
    systemStore.setTabIndex(index); 
 | 
    RouteHelper.switchTab(option); 
 | 
  }; 
 | 
  return switchTab; 
 | 
} 
 | 
  
 | 
// export function useFirstEnter() { 
 | 
//   const systemStore = useSystemStore(); 
 | 
//   const { isFirstEnter } = storeToRefs(systemStore); 
 | 
//   console.log('isFirstEnter: ', isFirstEnter); 
 | 
  
 | 
//   onMounted(() => { 
 | 
//     systemStore.setIsFirstEnter(false); 
 | 
//   }); 
 | 
  
 | 
//   return { isFirstEnter }; 
 | 
// } 
 | 
  
 | 
export function useFocus() { 
 | 
  const isFocus = ref(false); 
 | 
  
 | 
  Taro.useDidShow(() => { 
 | 
    isFocus.value = true; 
 | 
  }); 
 | 
  
 | 
  Taro.useDidHide(() => { 
 | 
    isFocus.value = false; 
 | 
  }); 
 | 
  
 | 
  return { 
 | 
    isFocus, 
 | 
  }; 
 | 
} 
 | 
  
 | 
export function useTabRouteEnhance() { 
 | 
  const appStore = useAppStore(); 
 | 
  const { latestRoute } = storeToRefs(appStore); 
 | 
  const { blLifeRecharge } = useLifeRechargeContext(); 
 | 
  const system = useSystemStore(); 
 | 
  
 | 
  const router = Taro.useRouter(); 
 | 
  
 | 
  const channelId = router.params?.channelId ?? ''; 
 | 
  console.log('router: params', router, blLifeRecharge.accountModel.channlesNum); 
 | 
  
 | 
  Taro.useTabItemTap((item) => { 
 | 
    system.setTabIndex(item.index as any); 
 | 
    Taro.reLaunch({ 
 | 
      url: pathAddExtraParam(item.pagePath, { channelId: blLifeRecharge.accountModel.channlesNum }), 
 | 
      success() { 
 | 
        appStore.setLatestRoute(''); 
 | 
      }, 
 | 
    }); 
 | 
  }); 
 | 
  
 | 
  Taro.useDidShow(() => { 
 | 
    const isTabbarPage = Object.values(TabBarPageRouterForCheck).some((x) => 
 | 
      latestRoute.value.toLowerCase().includes(x.toLowerCase()) 
 | 
    ); 
 | 
    // const currentIsTabbarPage = Object.values(TabBarPageRouterForCheck).some((x) => 
 | 
    //   getRouterPath(router.path).toLowerCase().includes(x.toLowerCase()) 
 | 
    // ); 
 | 
    // if (currentIsTabbarPage && blLifeRecharge.accountModel.channlesNum && !channelId) { 
 | 
    //   Taro.reLaunch({ 
 | 
    //     url: pathAddExtraParam(router.path, { channelId: blLifeRecharge.accountModel.channlesNum }), 
 | 
    //     success() { 
 | 
    //       appStore.setLatestRoute(''); 
 | 
    //     }, 
 | 
    //   }); 
 | 
    //   return; 
 | 
    // } 
 | 
    if (isTabbarPage && isInAlipay) { 
 | 
      Taro.reLaunch({ 
 | 
        url: router.path, 
 | 
        success() { 
 | 
          appStore.setLatestRoute(''); 
 | 
        }, 
 | 
      }); 
 | 
    } 
 | 
  }); 
 | 
  
 | 
  Taro.useDidHide(() => { 
 | 
    appStore.setLatestRoute(router.path); 
 | 
  }); 
 | 
} 
 |