{"version":3,"mappings":"03CAyBO,SAASA,IAAwB,CAChC,MAAAC,EAAS,CAAE,QAAS,EAAG,SAAU,GAAI,qBAAsBC,EAAyB,UACpF,CAAE,KAAMC,EAAM,kBAAAC,GAAsBC,GAAe,EAEnDC,EAAeC,EAAS,IAAMJ,EAAK,MAAM,CAAC,GAAK,IAAI,EACnDK,EAAeD,EAAS,IAAO,cAAAJ,EAAK,OAASA,EAAK,MAAM,QAAUM,EAAAN,EAAK,QAAL,YAAAM,EAAY,MAAM,GAAK,CAAE,IAE1F,OACL,OAAAR,EACA,aAAAK,EACA,aAAAE,EACA,KAAAL,EACA,kBAAAC,CAAA,CAEJ,kICnCA,MAAM,OAAAH,EACJ,aAAAK,EACA,aAAAE,EACA,kBAAAJ,CACA,EAAAJ,GAAA,EAGF,IACE,CAAAU,EAAAC,CAAA,EAAAC,EAAA,IAAAR,EAAAH,CAAA,SAAAS,EAAAC,aAGAE,EAAAC,CAAA,CAAa,+rBCVR,SAASC,GAA0BC,EAA2B,CAAE,SAAU,IAAM,CAC/E,MAAAC,EAAYD,EAAO,UAAY,GAC/BE,EAAOC,EAA4B,EAAE,EACrCC,EAAaC,EAAkB,CAAE,GAAGL,EAAQ,SAAUC,EAAW,EACjEK,EAAQf,EAAoB,IAAMgB,GAAuBH,EAAW,WAAW,MAAM,CAAC,EAE5F,SAASI,EAAerB,EAA8B,CACpDe,EAAK,MAAM,KAAK,GAAIf,GAAQ,CAAG,EACjC,CACA,eAAesB,EAAcxB,EAA2C,GAAIyB,EAAeC,EAAY,GAAO,CAC9FA,GAAAP,EAAW,QAAQ,CAAC,EACrBO,GAAAP,EAAW,oBAAoBQ,GAAiB,IAAI,EAC3D,MAAE,KAAMC,CAAY,QAAMT,EAAW,mBAAmBU,EAAyB7B,EAAQyB,CAAI,GAAK,GACpGG,IACD,CAAAF,GAAaH,EAAeK,CAAO,EACpCF,IAAcT,EAAK,MAAQW,GAK/B,CACe,eAAAE,EAAc9B,EAA2C,GAAI,CACpE,MAAA+B,EAAY,MAAMZ,EAAW,wBAAwB,0BAA0Ba,GAAG,UAAUhC,CAAM,CAAC,GAAI6B,EAAyB7B,CAAM,EAC5I,GAAI,CAAC+B,EACH,OACF,KAAM,CAAE,KAAA7B,CAAK,EAAI+B,GAAmBF,CAAS,GAAK,GAClD7B,GAAQqB,EAAerB,EAAK,MAAQ,CAAE,EACxC,CACO,OACL,UAAAc,EACA,KAAAC,EACA,MAAAI,EACA,WAAAF,EACA,cAAAK,EACA,cAAAM,CAAA,CAEJ,yICnBAI,EAAAC,EAAA,sBAAArB,GAAAsB,GAEA,WAAApB,EAAA,KAAAC,EAAA,MAAAI,EAAA,cAAAS,EAAA,cAAAN,CAAA,EAAAU,IACA,OAAAG,EAAA,eAAAb,CAAA,GACA,CAAAf,EAAAC,CAAA,EAAAC,EAAA,IAAAmB,EAAAK,EAAA,oCAAA1B,EAAAC,g7CCXA,eAAA4B,CAAA,EAAAC,GAAAC,EAAA,EACA,WAAAC,GAAAC,KACAC,EAAA,oBAAAC,EAAA,+BACA,QAAAC,CAAA,EAAAC,GAAAC,EAAA,UAAAC,EAAA,IAEAC,EAAA/B,IAMA,SAAAgC,GAAA,CACED,EAAA,6BACA,iBAAgB,IAAAA,EAAA,wBAC6B,iBACjC,EACX,CAGH,OADAE,EAAA,OACA,GAAAC,EAAA,OAAAF,CAAA","names":["useRecommendComponent","params","ArticleRecomLocationEnum","data","serverInitHandler","LogicRecommend","firstArticle","computed","otherArticle","_a","__temp","__restore","_withAsyncContext","recordError","e","LogicRecommendArticleList","option","PAGE_SIZE","list","ref","pagination","usePaginationNuxt","state","getPaginationListState","updatePageData","clientHandler","page","isRefresh","PaginationStatus","newList","getArticleRecommendList","serverHandler","asyncData","qs","useNuxtAsyncHandle","fn","props","LogicArticleList","__expose","siteMeta","useSite","NEWS_HOME_SITE_META","isDesktop","useDevice","SWIPER_PARAMS","BannerShowLocation","adData","getAdComponentData","AD_KEYS","AD_POSITION","newRecommendRef","refreshFn","useNuxtApp","useRoute"],"sources":["../../../../../src/pages/news/hooks/index.ts","../../../../../src/components/page/news/recommend-article.vue","../../../../../src/logic/article/recommend-list.ts","../../../../../src/components/page/news/recommend-list.vue","../../../../../src/pages/news/index.vue"],"sourcesContent":["import { ArticleRecomLocationEnum } from '~~/src/server/modules/article/type'\r\nimport { LogicRecommend } from '~~/src/logic/rank/recommend'\r\n\r\nexport function useArticleHomePage() {\r\n // swiper right articles\r\n const { params: swiperRightParams, firstArticle, otherArticle, serverInitHandler: recommendComponentInit } = useRecommendComponent()\r\n // 汽车召回\r\n async function initHandle() {\r\n const promise = [recommendComponentInit(swiperRightParams)]\r\n\r\n try {\r\n await Promise.all(promise)\r\n }\r\n catch (error) {\r\n showDialogError(error)\r\n }\r\n }\r\n return {\r\n // swiper right articles\r\n firstArticle,\r\n otherArticle,\r\n initHandle,\r\n }\r\n}\r\n\r\nexport function useRecommendComponent() {\r\n const params = { pageNum: 1, pageSize: 10, articleRecomLocation: ArticleRecomLocationEnum.NEW_HOME }\r\n const { list: data, serverInitHandler } = LogicRecommend()\r\n\r\n const firstArticle = computed(() => data.value[0] || null)\r\n const otherArticle = computed(() => (data.value && data.value.length) ? data.value?.slice(1) : [])\r\n\r\n return {\r\n params,\r\n firstArticle,\r\n otherArticle,\r\n data,\r\n serverInitHandler,\r\n }\r\n}\r\n","\r\n\r\n\r\n","import type { ListState, OmitPageParam, PaginationOption } from '@qcwp/common'\r\nimport { PaginationStatus, getPaginationListState } from '@qcwp/common'\r\nimport { getArticleRecommendList } from '~~/src/server/modules/article'\r\nimport type { ArticleListParams, ArticlePagesResponse } from '~~/src/server/modules/article/type'\r\n\r\nexport function LogicRecommendArticleList(option: PaginationOption = { pageSize: 12 }) {\r\n const PAGE_SIZE = option.pageSize || 12\r\n const list = ref([])\r\n const pagination = usePaginationNuxt({ ...option, pageSize: PAGE_SIZE })\r\n const state = computed(() => getPaginationListState(pagination.pagination.status))\r\n\r\n function updatePageData(data: ArticlePagesResponse[]) {\r\n list.value.push(...(data || []))\r\n }\r\n async function clientHandler(params: OmitPageParam = {}, page?: number, isRefresh = false) {\r\n isRefresh && (pagination.setPage(1))\r\n isRefresh && pagination.setPaginationStatus(PaginationStatus.INIT)\r\n const { list: newList } = await pagination.loadPaginationData(getArticleRecommendList, params, page) || {}\r\n if (newList) {\r\n !isRefresh && updatePageData(newList)\r\n isRefresh && (list.value = newList)\r\n }\r\n // const { list } = await pagination.loadPaginationData(getArticleRecommendList, params, page) || {}\r\n // if (list)\r\n // updatePageData(list)\r\n }\r\n async function serverHandler(params: OmitPageParam = {}) {\r\n const asyncData = await pagination.loadPaginationAsyncData(`ARTICLE_RECOMMEND_LIST_${qs.stringify(params)}`, getArticleRecommendList, params)\r\n if (!asyncData)\r\n return\r\n const { data } = useNuxtAsyncHandle(asyncData) || {}\r\n data && updatePageData(data.list || [])\r\n }\r\n return {\r\n PAGE_SIZE,\r\n list,\r\n state,\r\n pagination,\r\n clientHandler,\r\n serverHandler,\r\n }\r\n}\r\n","\r\n\r\n\r\n\r\n","\r\n\r\n\r\n\r\n\r\n"],"file":"_nuxt/js/pages-news-index-3e4f3713.js"}