{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./src/assets/icon/16_back_to_top.png","webpack:///./src/assets/icon/64_time.png","webpack:///./src/assets/icon/48_more_grey_down.png","webpack:///./src/data/im/constant.js","webpack:///./src/assets/icon/28_consult_green.png","webpack:///./src/assets/icon/48_notice_brown.png","webpack:///./src/assets/icon/48_compare_white.png","webpack:///../fangchan-base/request/index.js","webpack:///./src/assets/icon/56_bell_action_vip.png","webpack:///./src/components/views/common_img.vue?8bbe","webpack:///./src/components/gft/gft-search-wrap.vue?fcb0","webpack:///./src/assets/icon/48_more_primary.png","webpack:///./src/components/views/tip_dlg.vue?a4c5","webpack:///./src/components/views/tip_dlg.vue","webpack:///./src/components/views/tip_dlg.vue?caa7","webpack:///./src/components/views/tip_dlg.vue?f51b","webpack:///./src/assets/home-tabs/loan.png","webpack:///./src/assets/icon/24_audio_clock.png","webpack:///./src/assets/icon/40_bell.png","webpack:///./src/components/mixins/building_ranking.js","webpack:///./src/assets/icon/56_del.png","webpack:///./src/assets/icon/40_label_register.png","webpack:///./src/assets/icon/48_love_white.png","webpack:///./src/assets/icon/40_consult.png","webpack:///./src/assets/icon/48_more_brown.png","webpack:///./src/assets/home-tabs/taxes_calculate.png","webpack:///./src/assets/icon/48_more_white.png","webpack:///./src/assets/icon/right-i.png","webpack:///./src/common/utils/watchProps.js","webpack:///./src/assets/icon/32_del.png","webpack:///./src/assets/icon/48_building_white.png","webpack:///./src/assets/home-tabs/政策合集.png","webpack:///./src/assets/icon/32_help.png","webpack:///./src/assets/icon/24_link.png","webpack:///./src/assets/icon/64_customer_discount.png","webpack:///./src/utils/api/shared.js","webpack:///./src/utils/api/catch.js","webpack:///./src/utils/api/interceptor.js","webpack:///./src/utils/api/promise.js","webpack:///./src/utils/api/protocol.js","webpack:///./src/utils/api/params.js","webpack:///./src/utils/api/index.js","webpack:///./src/utils/api/request.js","webpack:///./src/utils/wx.js","webpack:///./src/assets/icons/smile.png","webpack:///./src/assets/home-tabs/guide.png","webpack:///./src/assets/icon/40_like_actions.png","webpack:///./src/_base/log.js","webpack:///./src/assets/home/banner/red-bag-act.png","webpack:///./src/assets/icon/40_comment_small.png","webpack:///./src/assets/icon/32_question_white.png","webpack:///./src/assets/icon/48_history.png","webpack:///./src/assets/icon/48_share_black.png","webpack:///./src/assets/icon/32_change.png","webpack:///./src/assets/icon/48_notice_white.png","webpack:///./src/components/views/fc_icon.vue?ac87","webpack:///./src/assets/icon/48_notice_normal_vip.png","webpack:///./src/plugins/global_data.js","webpack:///./src/assets/icon/40_delete.png","webpack:///./src/components/gft/gft-search-loading.vue?573d","webpack:///./src/assets/icon/48_notice_actions_vip.png","webpack:///./src/assets/icon/48_list_white.png","webpack:///./src/utils/log.js","webpack:///./src/assets/icon/64_personal_icons.png","webpack:///./src/assets/icon/48_download_white.png","webpack:///./src/assets/home/banner sync ^\\.\\/.*\\.png$","webpack:///./src/components/business/house_item.vue?654e","webpack:///./src/components/gft/gft-modal.vue?2b5d","webpack:///./src/assets/icon/48_share_map.png","webpack:///./src/assets/icon/32_more_primary.png","webpack:///./src/components/views/common_tabs.vue?1841","webpack:///./src/components/views/common_tabs.vue","webpack:///./src/components/views/common_tabs.vue?d6b0","webpack:///./src/components/views/common_tabs.vue?8f09","webpack:///./src/assets/icon/32_search.png","webpack:///./src/utils/local_data.js","webpack:///./src/assets/home-tabs/building_rank.png","webpack:///./src/assets/icon/32_more_white.png","webpack:///./src/assets/home-tabs/购房必看.png","webpack:///./src/utils/rem.js","webpack:///./src/assets/icon/40_coments.png","webpack:///./src/common/mixins/pull_up.js","webpack:///./src/components/fangchan/fangchan-common-article.vue?4c36","webpack:///./src/assets/home-tabs/computer.png","webpack:///./src/assets/home-tabs/prepayment_calc.png","webpack:///./src/components/business/img_wrap.vue?aed2","webpack:///./src/assets/home/banner/weixin-official.png","webpack:///./src/assets/home-tabs/查复核顺序.png","webpack:///./src/assets/icon/48_share_white.png","webpack:///./src/assets/icon/32_video.png","webpack:///../fangchan-base/extend/timeline.js","webpack:///./src/assets/home-tabs/航拍看房.png","webpack:///./src/assets/icon/20_refresh.png","webpack:///./src/assets/icon/48_search_primary.png","webpack:///./src/assets/icon/32_more_org.png","webpack:///./src/assets/icon/48_search.png","webpack:///./src/App.vue?9bd4","webpack:///./src/App.vue","webpack:///./src/App.vue?7dbf","webpack:///./src/App.vue?c6da","webpack:///./src/store/index.js","webpack:///./src/components/views/fc_icon.vue?64f8","webpack:///./src/components/views/fc_icon.vue","webpack:///./src/components/views/fc_icon.vue?a77f","webpack:///./src/components/views/fc_icon.vue?d5b9","webpack:///./src/components/views/picker.vue?d6db","webpack:///./src/components/views/picker.vue","webpack:///./src/components/views/picker.vue?18dd","webpack:///./src/components/views/picker.vue?1b40","webpack:///./src/components/views/date_picker.vue?a78e","webpack:///./src/components/views/date_picker.vue","webpack:///./src/components/views/date_picker.vue?cac4","webpack:///./src/components/views/date_picker.vue?4e46","webpack:///./src/plugins/global_utils.js","webpack:///./src/plugins/watch_route.js","webpack:///./src/components/gft/gft-tabs.vue?c6c0","webpack:///./src/components/gft/gft-tabs.vue","webpack:///./src/components/gft/gft-tabs.vue?deb9","webpack:///./src/components/gft/gft-tabs.vue?1aec","webpack:///./src/components/gft/gft-overlay.vue?4482","webpack:///./src/components/gft/gft-overlay.vue","webpack:///./src/components/gft/gft-overlay.vue?4e82","webpack:///./src/components/gft/gft-overlay.vue?7948","webpack:///./src/components/gft/gft-search-input.vue?f60e","webpack:///./src/components/gft/gft-search-input.vue","webpack:///./src/components/gft/gft-search-input.vue?af4d","webpack:///./src/components/gft/gft-search-input.vue?4e8c","webpack:///./src/components/gft/gft-search-input-wrap.vue?e1c8","webpack:///./src/components/gft/gft-search-input-wrap.vue","webpack:///./src/components/gft/gft-search-input-wrap.vue?2109","webpack:///./src/components/gft/gft-search-input-wrap.vue?f8f0","webpack:///./src/components/gft/gft-search-wrap.vue?2faa","webpack:///./src/components/gft/gft-search-wrap.vue","webpack:///./src/components/gft/gft-search-wrap.vue?f51c","webpack:///./src/components/gft/gft-search-wrap.vue?7de4","webpack:///./src/components/gft/gft-search-loading.vue?acb7","webpack:///./src/components/gft/gft-search-loading.vue?b615","webpack:///./src/components/gft/gft-modal.vue?f5dd","webpack:///./src/components/gft/gft-modal.vue","webpack:///./src/components/gft/gft-modal.vue?ea8f","webpack:///./src/components/gft/gft-modal.vue?2ce4","webpack:///./src/components/fangchan/fangchan-slogan.vue?635c","webpack:///./src/components/fangchan/fangchan-slogan.vue","webpack:///./src/components/fangchan/fangchan-slogan.vue?81b1","webpack:///./src/components/fangchan/fangchan-slogan.vue?8e0c","webpack:///./src/components/fangchan/fangchan-disclaimer.vue?db56","webpack:///./src/components/fangchan/fangchan-disclaimer.vue","webpack:///./src/components/fangchan/fangchan-disclaimer.vue?0182","webpack:///./src/components/fangchan/fangchan-disclaimer.vue?0d22","webpack:///./src/components/fangchan/fangchan-head-img.vue?181d","webpack:///./src/components/fangchan/fangchan-head-img.vue","webpack:///./src/components/fangchan/fangchan-head-img.vue?629b","webpack:///./src/components/fangchan/fangchan-head-img.vue?0d30","webpack:///./src/components/fangchan/fangchan-float-question.vue?e4d8","webpack:///./src/components/fangchan/fangchan-float-question.vue","webpack:///./src/components/fangchan/fangchan-float-question.vue?3cd9","webpack:///./src/components/fangchan/fangchan-float-question.vue?8680","webpack:///./src/components/fangchan/fangchan-consultant-promise.vue?8aea","webpack:///./src/components/fangchan/fangchan-consultant-promise.vue","webpack:///./src/components/fangchan/fangchan-consultant-promise.vue?4cb5","webpack:///./src/components/fangchan/fangchan-consultant-promise.vue?08d8","webpack:///./src/components/fangchan/fangchan-common-article.vue?5dea","webpack:///./src/components/fangchan/fangchan-common-article.vue","webpack:///./src/components/fangchan/fangchan-common-article.vue?39d3","webpack:///./src/components/fangchan/fangchan-common-article.vue?e5a1","webpack:///./src/components/fangchan/fangchan-empty-box.vue?05e6","webpack:///./src/components/fangchan/fangchan-empty-box.vue","webpack:///./src/components/fangchan/fangchan-empty-box.vue?65f1","webpack:///./src/components/fangchan/fangchan-empty-box.vue?b3cc","webpack:///./src/main.js","webpack:///./src/views/home/_consultants.vue?458b","webpack:///./src/views/home/_consultants.vue","webpack:///./src/views/home/_consultants.vue?4890","webpack:///./src/views/home/_consultants.vue?557f","webpack:///../fangchan-base/cdn/index.js","webpack:///./src/App.vue?d60c","webpack:///./src/assets/home-tabs/nconv.png","webpack:///./src/assets/icon/40_agree.png","webpack:///./src/components/views/common_img.vue?54b1","webpack:///./src/components/views/common_img.vue","webpack:///./src/components/views/common_img.vue?ba50","webpack:///./src/components/views/common_img.vue?b8c8","webpack:///./src/common/utils/map_view_data.js","webpack:///./src/common/utils/ajax.js","webpack:///./src/assets/icon/40_pen.png","webpack:///./src/assets/icon/40_agree_checked.png","webpack:///./src/assets/qr.jpg","webpack:///./src/assets/icon/48_consult_green.png","webpack:///./src/assets/icon/40_checkbox_selected.png","webpack:///./src/assets/icon/48_share_org.png","webpack:///./src/assets/icon/40_hot.png","webpack:///./src/assets/home-tabs/vr看房.png","webpack:///./src/components/gft/gft-search-input.vue?053d","webpack:///./src/assets/icon/48_comment.png","webpack:///./src/assets/icon/48_more_grey_up.png","webpack:///./src/assets/icon/28_list.png","webpack:///./src/components/gft/gft-overlay.vue?8754","webpack:///./src/assets/icon/48_like_normal.png","webpack:///./src/assets/icon/48_phone_green.png","webpack:///./src/assets/icon/28_calc.png","webpack:///./src/components/business/img_wrap.vue?43a2","webpack:///./src/components/business/img_wrap.vue","webpack:///./src/components/business/img_wrap.vue?de41","webpack:///./src/components/business/img_wrap.vue?eed8","webpack:///./src/assets/icon/33_audio_i.png","webpack:///./src/assets/icon/40_white_browse.png","webpack:///./src/components/views/loading.vue?1b7e","webpack:///./src/assets/home-tabs/first_payment.png","webpack:///./src/components/views/loading.vue?7536","webpack:///./src/components/views/loading.vue","webpack:///./src/components/views/loading.vue?ad37","webpack:///./src/components/views/loading.vue?2a61","webpack:///./src/components/views/bottom_tip.vue?4154","webpack:///./src/components/views/bottom_tip.vue","webpack:///./src/components/views/bottom_tip.vue?7235","webpack:///./src/components/views/bottom_tip.vue?f03e","webpack:///./src/assets/icon/32_more_link.png","webpack:///./src/assets/icon/56_bell_action.png","webpack:///./src/utils/wx_api.js","webpack:///./src/components/gft/gft-tabs.vue?9cc4","webpack:///./src/assets/home-tabs/find.png","webpack:///./src/assets/icon/48_horn.png","webpack:///./src/components/fangchan/fangchan-float-question.vue?4fd7","webpack:///./src/assets/icon/40_label_complete.png","webpack:///./src/assets/icon/48_notice_actions.png","webpack:///./src/assets/icon/48_share_green.png","webpack:///./src/assets/home-tabs sync ^\\.\\/.*\\.png$","webpack:///./src/assets/icon sync ^\\.\\/.*\\.png$","webpack:///./src/common/utils/check_comment.js","webpack:///./src/service/index.js","webpack:///./src/assets/icon/48_building_bank.png","webpack:///./src/assets/icon/48_love_normal.png","webpack:///../fangchan-base/extend/index.js","webpack:///./src/assets/icon/40_block.png","webpack:///./src/common/utils/getUserInfo.js","webpack:///./src/components/business/little_house_item.vue?8836","webpack:///./src/components/business/little_house_item.vue","webpack:///./src/components/business/little_house_item.vue?af34","webpack:///./src/components/business/little_house_item.vue?0462","webpack:///./src/assets/icon/40_address_blue.png","webpack:///./src/assets/home-tabs/check.png","webpack:///./src/components/business/_house_item_utils.js","webpack:///./src/components/fangchan/fangchan-common-tabs.vue?1cc2","webpack:///./src/assets/icon/40_like_normal.png","webpack:///./src/assets/icon/32_triangle.png","webpack:///./src/components/views/tip_dlg.vue?e754","webpack:///./src/data/user_info.js","webpack:///./src/views/home/index.vue?dc13","webpack:///./src/views/home/_swiper.vue?2a76","webpack:///./src/views/home/utils.js","webpack:///./src/views/home/_swiper.vue","webpack:///./src/views/home/_swiper.vue?0a33","webpack:///./src/views/home/_swiper.vue?a46e","webpack:///./src/views/home/_top_tabs.vue?56b7","webpack:///./src/views/home/_top_tabs.vue","webpack:///./src/views/home/_top_tabs.vue?1b8c","webpack:///./src/views/home/_top_tabs.vue?1cc3","webpack:///./src/views/home/_list_entry.vue?d7fa","webpack:///./src/views/home/_list_entry.vue","webpack:///./src/views/home/_list_entry.vue?45a0","webpack:///./src/views/home/_list_entry.vue?9ab0","webpack:///./src/views/home/_col_1_3.vue?bc86","webpack:///./src/views/home/_col_1_3.vue","webpack:///./src/views/home/_col_1_3.vue?65bb","webpack:///./src/views/home/_col_1_3.vue?df4c","webpack:///./src/views/home/_list_3.vue?0a66","webpack:///./src/views/home/_list_3.vue","webpack:///./src/views/home/_list_3.vue?8fc1","webpack:///./src/views/home/_list_3.vue?523c","webpack:///./src/views/home/_mixins/list.js","webpack:///./src/views/home/index.vue","webpack:///./src/views/home/index.vue?6f87","webpack:///./src/views/home/index.vue?71f4","webpack:///./src/router/building.js","webpack:///./src/router/tools.js","webpack:///./src/router/packageA.js","webpack:///./src/router/packageB.js","webpack:///./src/router/personal_package.js","webpack:///./src/router/list.js","webpack:///./src/router/chat.js","webpack:///./src/router/activity_a.js","webpack:///./src/router/consultants.js","webpack:///./src/router/index.js","webpack:///./src/components/views/common_tabs.vue?7e4a","webpack:///./src/assets/icon/64_down_payment.png","webpack:///./src/assets/icon/40_del.png","webpack:///./src/assets/icon/40_bus_disable_color.png","webpack:///./src/views/home/_list_entry.vue?b74f","webpack:///./src/components/page_wrap.vue?816b","webpack:///./src/components/page_wrap.vue","webpack:///./src/components/page_wrap.vue?3def","webpack:///./src/components/page_wrap.vue?67f3","webpack:///./src/assets/icon/32_question.png","webpack:///./src/views/home/_swiper.vue?7a1e","webpack:///./src/assets/home-tabs/inherit.png","webpack:///./src/common/utils/check.js","webpack:///./src/components/views/date_picker.vue?719c","webpack:///./src/components/business/house_item.vue?6a1d","webpack:///./src/components/business/house_item.vue","webpack:///./src/components/business/house_item.vue?25c2","webpack:///./src/components/business/house_item.vue?6d21","webpack:///./src/components/fangchan/fangchan-disclaimer.vue?cc63","webpack:///./src/assets/icon/40_address_yellow.png","webpack:///./src/assets/icon/32_triangle_primary.png","webpack:///./src/service/public.js","webpack:///./src/assets/icon/40_address_bank.png","webpack:///./src/assets/icon/48_notice_actions_brown.png","webpack:///./src/utils/wx-http-axios.js","webpack:///./src/utils/request.js","webpack:///./src/assets/icon/32_vr.png","webpack:///./src/assets/icon/40_checkbox_unselected.png","webpack:///./src/components/views/picker.vue?50f7","webpack:///./src/assets/icon/32_down.png","webpack:///./src/assets/home-tabs/house_purchase.png","webpack:///./src/assets/home-tabs/购房流程.png","webpack:///./src/assets/home-tabs/provident_fund.png","webpack:///./src/components/business/little_house_item.vue?1b35","webpack:///./src/assets/icon/48_like_actions.png","webpack:///./src/assets/icon/48_love_actions.png","webpack:///./src/assets/icon/40_popular.png","webpack:///./src/assets/icon/64_building_share.png","webpack:///./src/service/homepage.js","webpack:///./src/data/im/index.js","webpack:///./src/assets/icon/40_label_wait.png","webpack:///./src/assets/icon/40_bus_primary_color.png","webpack:///./src/assets/icon/32_720.png","webpack:///../fangchan-base/index.js","webpack:///./src/assets/icon/40_advice.png","webpack:///./src/components/fangchan/fangchan-slogan.vue?5738","webpack:///./src/assets/icon/40_address_grey.png","webpack:///./src/constant.js","webpack:///./src/assets/icon/40_ridiobox_unselected.png","webpack:///./src/assets/icon/48_write_white.png","webpack:///./src/assets/icon/32_risk.png","webpack:///./src/assets/icon/40_label_wait_org.png","webpack:///./src/common/mixins/goConsultant.js","webpack:///./src/assets/icon/56_bell_normal.png","webpack:///./src/views/home/_top_tabs.vue?3644","webpack:///./src/config.js","webpack:///./src/assets/icon/48_list_bank.png","webpack:///./src/assets/icon/48_more_grey.png","webpack:///./src/components/fangchan/fangchan-consultant-promise.vue?8dd2","webpack:///./src/common/mixins/callConsultant.js","webpack:///./src/assets/icon/40_home_white.png","webpack:///../fangchan-base/utils/cloud.js","webpack:///./src/assets/icon/48_comment_small.png","webpack:///../fangchan-base/utils/index.js","webpack:///./src/utils/wxafuzz.js","webpack:///./src/utils/index.js","webpack:///./src/assets/icon/64_call.png","webpack:///./src/assets/icon/40_address_brown.png","webpack:///./src/assets/home/banner/nconv.png","webpack:///./src/assets/home-tabs/dora.png","webpack:///./src/views/home/index.vue?7774","webpack:///./src/components/fangchan/fangchan-empty-box.vue?9447","webpack:///./src/assets/icon/40_more_grey.png","webpack:///./src/utils/cookie.js","webpack:///./src/components/fangchan/fangchan-head-img.vue?e69f","webpack:///./src/assets/icon/48_building_black.png","webpack:///./src/assets/icon/32_search_black.png","webpack:///./src/assets/icon/32_up.png","webpack:///./src/views/home/_consultants.vue?b9b6","webpack:///./src/components/views/bottom_tip.vue?56ee","webpack:///./src/assets/icon/32_more.png","webpack:///./src/components/views/lazy_load_mixin.js","webpack:///./src/components/fangchan/fangchan-common-tabs.vue?1f0f","webpack:///./src/components/fangchan/fangchan-common-tabs.vue","webpack:///./src/components/fangchan/fangchan-common-tabs.vue?9fe5","webpack:///./src/components/fangchan/fangchan-common-tabs.vue?0d8f"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","jsonpScriptSrc","p","exports","module","l","e","promises","cssChunks","Promise","resolve","reject","href","fullhref","existingLinkTags","document","getElementsByTagName","tag","dataHref","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","head","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice","MAX_DATETIME_SEGMENT","IM_PAGE_SIZE","DEFAULT_HEADIMG","LOGIN_STATUS","DONE","DOING","NONE","PAGE_TO_KEY","LOGIN_STORE","retry_count","doing","req_queue","start","wait","res","finish","fail","can_retry","MAX_401_COUNT","RESET_401_DELAY","RELOGIN_401","reset","add","check","reachLimit","render","_vm","this","_h","$createElement","_c","_self","staticClass","class","className","_v","_s","title","domProps","content","on","confirm","_e","toggleDlg","staticRenderFns","methods","$emit","show","props","String","Boolean","default","show_confirm","component","computed","type_name","item","building_ranking","ranking_type","comments","views","follows","obj","properties","forEach","defaultValue","privateName","watcherName","watcher","set","watchers","keys","Array","isArray","isFn","v","_toString","toString","toRawType","val","isPlainObject","a","_hasOwnProperty","hasOwn","tryCatchFramework","fn","arguments","tryCatch","SYNC_API_RE","TASK_APIS","ASYNC_API","CALLBACK_API_RE","isSyncApi","test","indexOf","isCallbackApi","isTaskApi","finally","callback","constructor","reason","method","OPTIONS","GET","HEAD","POST","PUT","DELETE","TRACE","CONNECT","dataType","JSON","responseType","TEXT","ARRAYBUFFER","encode","encodeURIComponent","stringifyQuery","url","str","split","hash","query","search","filter","stringify","map","join","validator","params","toUpperCase","values","ArrayBuffer","required","header","find","toLowerCase","withCredentials","Number","validateParam","paramTypes","paramsData","paramOptions","absent","booleanIndex","getTypeIndex","paramDefault","assertParam","valid","expectedTypes","assertedType","assertType","expectedType","getInvalidTypeMessage","simpleCheckRE","getType","byteLength","match","isSameType","b","len","receivedType","expectedValue","styleValue","receivedValue","isExplicable","isBoolean","explicitTypes","some","elem","args","invokeCallbackHandlerFail","apiName","callbackId","errMsg","invokeCallbackHandler","callbackApiParamTypes","Function","IGNORE_KEYS","validateParams","protocol","paramTypeObj","paramsDataObj","paramsDataLength","paramType","index","beforeValidate","invokeCallbackId","invokeCallbacks","createKeepAliveApiCallback","invokeCallbackName","keepAlive","getKeepAliveApiCallback","startsWith","replace","createApiCallback","extras","assign","apiCallbacks","param","success","cancel","complete","hasSuccess","hasFail","hasCancel","hasComplete","wrapperCallbacks","extra","beforeSuccess","afterSuccess","beforeFail","afterFail","beforeCancel","afterCancel","beforeAll","afterAll","invokeCallback","errDetail","spaceIndex","substr","createInvokeCallback","wrapperExtras","protocolOptions","wrapper","invokeMethod","argsObj","RequestTask","xhr","_xhr","abort","parseHeaders","headers","headersObject","headersArray","contentType","body","bodyArray","XMLHttpRequest","requestTask","open","log","setRequestHeader","timer","onabort","invoke","statusCode","status","responseText","response","parse","getAllResponseHeaders","send","toast_el","preview_el","preview_img_el","preview_overlay_el","checkTfsm","navigator","userAgent","checkTfBank","VUE_APP_TYPE","process","stop_move_class","addEventListener","stop_move","classname","preventDefault","stopPropagation","passive","showToast","opt","duration","icon","innerHTML","style","display","copyByDomId","id","opacity","curNode","querySelector","innerText","dataset","attr","range","createRange","selectNode","getSelection","removeAllRanges","addRange","execCommand","parentElement","hideToast","hidePreviewImage","previewImage","current","position","top","left","transform","width","maxHeight","height","overflow","margin","showLoading","hideLoading","makePhoneCall","phoneNumber","eshimin","phoneCall","num","onResponse","location","downloadImg","saveImage","imgStr","tf","photo","saveImageToAlbum","catch","download","click","navigateTo","router","path","redirectTo","navigateBack","detal","go","getSystemInfoSync","windowWidth","documentElement","clientWidth","system","pixelRatio","devicePixelRatio","APP_MODE","CITY","enabled_log","sendCtmEvtLog","evt_name","d_paras","sendUserLog","d_key","d_event","options","city","user","WX_API","getStorageSync","task","wx","d_src","d_user","uid","UserLog","viewBuilding","building_id","scene","buildingAudios","viewBuildingSunlight","building_name","viewBuildingVr","vr_link","viewPage","page","viewCustomBuilding","buildingId","viewConsultant","consultantId","callConsultant","copyConsultant","contactConsultant","searchHouse","searchWord","ids","substring","regSearch","lnSearch","click_feeds_article","click_discuss_group","vanke_banner","click_article","install","_Vue","mixin","app_type","$checkPostAuth","getElementById","$checkUserLogging","App_User","tag_list","isProd","pageName","adIndex","LocalData","fetch","userLogin","evaluate_2nd_hand","errorLog","msg","imgErrorLog","other","requestErrorLog","msgStr","otherStr","requestProfileLog","segments","slow_reason","is_slow_request","time","webpackContext","req","webpackContextResolve","_l","tab","active","selected","bottom_active","tabs","attrs","onChange","currentTarget","scroll","every","storage","Cookie","getItem","setItem","sPath","remove","handleHistory","history","pastIndex","unshift","pop","addHistory","setStorageSync","token","localStorage","removeItem","filter_search","result_search","review_search","second_hand_search","BaseSize","setRem","htmlWidth","sacle","htmlDom","fontSize","Math","min","onresize","getScrollTop","scrollTop","pageYOffset","getClientHeight","clientHeight","innerHeight","getScrollHeight","max","scrollHeight","mounted","checkPagePullUp","destroyed","removeEventListener","scroll_to_bottom","onPullUp","extendShareTimeline","getQuery","reg","RegExp","arr","decodeURIComponent","getOptFromShareApp","imageUrl","timelineImage","query_str","sub_page","wrapPage","wrapComponent","Page","Component","tabar_page","is_tabbar_page","hideQr","directives","rawName","expression","is_home","inited","$route","includes","$sendCtmEvtLog","checkSessionStatus","Vue","use","Vuex","Store","state","mutations","actions","staticStyle","mixins","lazy_load_mixin","require","matched","size","toggleList","_t","show_list","$event","select","hide","watch","handler","old","$nextTick","moveScroll","immediate","list","rangeKey","$el","$active_el","scrollIntoView","year","selectYear","month","selectMonth","day","selectDay","formatNumber","stop","step","from","_","date","Date","getFullYear","getMonth","getDay","end","fields","vals","show_month_list","show_day_list","year_list","month_list","day_list","$active_els","querySelectorAll","$item","changeDate","$showCallModal","event_name","$errorLog","$wx","beforeDestroy","theme","scroll_into_view","marginRight","rotate","is_rotate","getMore","detail","view_id","virtualHost","focus","placeholder","disabled","confirmType","placeholderClass","placeholderStyle","onConfirm","onFocus","onBlur","composing","keyword","autoFocus","latest","selectsOptions","selectedItem","showSearch","showLocation","showShare","showSelects","shareType","shareLog","locationLog","changeSelected","resetKeyword","onSubmit","slot","model","$$v","themes","openLocation","tabLog","how_search_loading","_m","textAlign","cancelText","confirmText","showCancel","showConfirm","goDisclaimer","headimg_wrap_style","img_style","pendant_url","head_style","headimg_url","DEFAULT_TOP_SPARE","DEFAULT_HEIGHT","pendant_size","headimg_size","use_open","height_radio","toFixed","round","questions","lazy_load","fold","dlg_style","toggleFold","unfold","btn_style","jump_link","pages","getCurrentPages","route","goDetail","show_type_label","content_body","category","label","auth_headimg","author","hide_share","image_url","headimgurl","published_date","jump_path","article_url","content_type","$root","__route__","PAGES_MAP","components","CommonImg","auction_id","paddingTop","img_src","desc","IMG_STATE","empty_building","empty_page","VanDatetimePicker","Swipe","SwipeItem","PageWrap","FcIcon","CommonTabs","TipDlg","ListLoading","Picker","DatePicker","BottomTip","FangchanHeadImg","GftTabs","GftOverlay","GftSearchInput","GftSearchInputWrap","GftSearchWrap","GftSearchLoading","GftModal","FangchanCommonTabs","FangchanSlogan","FangchanDisclaimer","FangchanConsultantPromise","FangchanCommonArticle","FangchanEmptyBox","FangchanFloatQuestion","Navigation","VueAwesomeSwiper","WatchRoute","GlobalUtils","GlobalData","config","productionTip","store","h","App","$mount","excellent_consultants","goCardFromExcellenct","building_zone","weixin_headimgurl","honour_title","onConsult","goConsultant","call_consultant","is_index","CONSULATANT_CARD_IS_CALL","openChat","CDN_PATH","DEFAULT_PATH","OLD_CITIES","resovle","getTime","requestCity","getInitHomePage","opts","default_config","config_path","getConfig","page_instance","shadowClass","auto","webp","can_load_img","onLoaded","handleImgError","MAX_ERROR_COUNT","getLittleUrl","compressRatio","handleImgSize","error_count","mp","instance","img","shadow","getBuildingUrl","house","usage","handleHouseUrl","checkBuildingPhoneAuth","building","activities","handleBusinessHouses","houses","handleCommentUrl","is_support_webp","enable_webp","size_w","size_h","format","handleBuidingBanner","handleBuidingMiniBanner","handlePhotoUrl","show_default","handleWxHeadimg","filterData","whilte_keys","handleTag","tag2class","class_name","tags","tag_class","tag_type","getTags","hide_status","dataStatus","data_status","rules","sort","handleViewCount","view_count","handlePrice","price_desc_arr","customized_price","price_desc","getTag","zone","mapHouseItem","houseItemData","status_tags","visit_reservation_tip","tips","visit_reservation","vr_resource","vr_photo_url","comment_href","cover_photo_url","surplus_img_url","date_with_status","reduce","min_price","max_price","mapHouseDetail","current_houses","handleHomeHouses","photo_url","listpage_order","handleBannerHref","log_id","handleCol3","handleHouseViewData","col_1","col_3","handleSurplusItemHref","handleSurplusItem","banner","APP_NAME","buildingHref","consultant_group_id","getBannerOpenType","handleBanner","banners","open_type","handleFloatDlg","mapHomePage","homepage_banner","dashboard","hot","forthcoming_sale","homepage_popup","latest_opening","latest_lot_number","homepage_middle_banner","surplus","interceptors","axios","gft_interceptors","gft_axios","normal_interceptors","normal_axios","SessionStatus","session_doing","_cb_list","addListener","cb","startSession","finishSession","SESSION_MAP","param_name","session_path","resetToken","initRequest","initGftRequest","session","post","reauth","share_info","extension","toLocaleString","jsapi_params","appId","appid","timestamp","signature","jsApiList","nonce","init","genInitRequest","genInitResponse","token_name","requestInfo","respData","meta","FALLBACK_KEY","OPEN_CODE","fuzz_key","setKey","CLOSE_CODE","resetKey","setJscode","initResponse","initGftResponse","genMethod","func","promseFunc","genAPIMethod","apiType","getAxiosMethod","put","del","V1","V2","V3","V4","FC","getV1","postV1","putV1","delV1","getV2","putV2","postV2","getV4","postV4","getGFTAxiosMethod","getGFT","postGFT","delGFT","getHeadimg","checkShowVr","video_urls","common_utils","system_info","page_title","updateTip","showModal","getSystemInfo","login","checkSession","getJscode","warn","getFile","filePath","getFileSystemManager","readFile","uploadImg","formData","store_dir","uploadFile","error_message","image_ssl_url","uploadAudio","HOST","audio_url","setClipboardData","windowHeight","getImgInfo","Image","downloadFile","setTitle","show_app_name","chooseImage","option","errorTip","tempFilePaths","getStorage","setStorage","observerRelativeViewPort","selector","relativeOpt","createIntersectionObserver","ob","relativeToViewport","observe","authorize","scope","getLocation","checkComment","rule","logging_in","getSmsCaptcha","mobile","getBuildings","per","DEFAULT_PER","items","getHomePage","getBuilding","house_id","getHotHouses","hotpage_banner","getBuildingComments","getBuildingCommentDetail","getCommentDetail","getCommentsReply","newBuildingComment","postBuildingComment","getCommunityTopics","getCommunityTopicsDetail","getTopicsComments","postTopicsComment","getUserNums","addUserNum","getUserResult","houseId","userId","getResult","getRegResult","getLpdResult","getLrdResult","syncInfo","report","form_id","getUserInfo","getCustomerServiceStaff","getUserInfoByShareBy","share_by","share_page","updateUserInfo","getZones","getUserPoints","share","action_type","getPointsStore","getComments","postComment","likeComment","delLikedComment","getChangeLog","version","verifyQualication","verify_type","getLnDetail","ln_number","register_number","updateConsultant","getMyConsultant","editMyConsultant","getConsultants","score_top_3_consultants","getConsultant","getConsultantHistory","likeConsultant","liked","getConsultantViewers","getConsultantScore","getHouseNames","getWxArticles","getMyFavourite","addMyFavourite","delMyFavourite","addFollow","delFollow","getMsg","readAllMsg","tab_name","readAllTimMsg","readTimSession","getNewMsgLen","unread_message_counts","viewTip","createBlog","getFeeds","getFeed","share_by_consultant_uid","deleteFeed","initFeedEdit","getRecommendation","limit","getBrand","getConsultantFeeds","consultant_id","likeFeed","getFeedComments","addFeedComments","getPopup","interestingEvent","sessionId","endSession","getSessions","readTimMsg","msgs","_json","delTimMsg","setTimTop","getCaptchas","updateWxUserInfo","rawData","user_info","nickName","trim","getLoanType","bankClients","bankClientsMaxLoanAmount","getLuckyDrawData","getFootPrint","getNoticeStatus","setNoticeStatus","setBlockStatus","extendApp","global","navigate","UserInfo","userInfo","Service","failTip","isAuthed","askAuth","askAuthNavigator","goLink","comment_count","ImgWrap","checkPlanarGraph","formatSuffix","jscode","GLOBAL_USER_DATA","subscribeProperties","customerServiceInfo","officialCustomerService","customerServiceStaffLoading","_customerServiceCbs","_fetchCbs","loading","setNickname","nickname","listenCustomerService","setCustomerService","customerService","subscribed_weixins","offical_weixin_subscribed","weixin_subscribed","consultant_weixin_subscribed","weixin_phone_number","fetchUser","addFetchCbs","resolveFetchCbs","userinfo","fetchCustomerServiceStaff","CustomerService","refreshCustomerServiceStaff","getFromUserCache","getFromUser","cunsultant_customer_service","official_customer_service","customer_service_info","is_consultant","activity_menus","ref","tapSwiper","img_url","getIcon","getBanner","swiper_list","changeSwiper","link","text","getScroll","marginLeft","slide_bar_width","show_slide","checkslide","rowIcon","cows","ceil","dashboard_list","row","ratio","slide_width","tab_width","scrollLeft","scrollWidth","percent","critical","pic","HouseItem","LittleHouseItem","$router","selected_tab","no_more","changeTab","getList","fix_tab","BUILDING_STATUS","bottom_list","offsetTop","building_scroll_top","scrollTo","list_mixin","pull_up_mixin","TopTabs","TopSwiper","ListEntry","Col1_3","List3","Consultants","surplus_loading","bottom_config","pullText","triggerText","loadingText","doneText","failText","loadedStayTime","stayDistance","triggerDistance","getData","HomeService","getDashboard","getHot","today_opening","getSurplus","getRecommendBuilding","page_loading","getRecommendBuildings","exclude_targetable_ids","getHotIds","new_items","prev","VueRouter","routes","Home","base","scrollBehavior","to","savedPosition","x","y","addRoutes","building_routes","tools_routes","packageA_routes","packageB_routes","personal_package_routes","activity_a_routes","list_routes","chat","consultants_routes","updated","activated","has_own_timeline","checkIdCard","card","checkMobile","center","zone_section","hide_date","unit","price","goComments","lottery_probabilities","lottery","isArrayEmpty","just_view","interesting_id","pos_name","pos","is_hot","getRecommendConsultant","getPhonePosition","getPhoneCall","getSceneQr","like","likeMethod","likeable_type","likeable_id","generateSubMsg","v1Method","msgType","targetType","message_type","targetable_type","targetable_id","subMsg","getSubMsg","delSubMsg","addRecommendationClass","getSmsCaptchas","phone_auth_error_num","postWeixinPhone","iv","encryptedData","addConsultantClient","readQuestionHints","readHints","readEventHints","readable_id","readable_type","checkUrl","getHouseLoanCalc","getNcovZones","follow","followed","followMethod","followUrl","followable_type","followable_id","checkWords","postBusinessCooperations","RequestMQ","mq","running","MAX_REQUEST","random","next","me","newone","enableHttp2","oldComplete","deepClone","proto","getPrototypeOf","baseURL","fuzz","prepare","done","configCb","prepareCb","doneCb","configure","before","errorCb","beforeCb","cloneConf","k","req_info","FUZZ_HOST","GFT_HOST","NORMAL_HOST","VUE_APP_NORMAL_HOST","common_headers","NO_FUZZ_OPTIONS","http","getService","STATUS","getRecommend","getBanners","getFloatDlg","tim","current_user_data","peer_identifier","peer_headimgurl","peer_nickname","BUILDING_STORE","recommend_aqr_id","is_redirect","entrance","log_name","layout_id","auto_send_msg","IM_STORE","IM_STATE","session_loading","sdk_ready","im_login","message_changed","message_changed_timestamp","refresh_timestamp","loaded_chat_len","retryInit","initIM","TIM","SDKAppID","setLogLevel","EVENT","SDK_READY","chatListLoaded","SDK_NOT_READY","app_show","listenSessionUpdate","initMsgListener","ERROR","handleMessages","payload","isRead","conversationID","ID","sequence","isPeerRead","ext","msgStyle","isSend","flow","isSendCard","headimg","mini_headimg","datetime","is_read","formatTime","phone","copyText","audio","parseInt","layout_image","checkNewMsgs","chatsMap","new_msgs","chat_len","show_date","last_msg","timLogin","userID","userSig","im_err","timLogout","logout","receivedMsgHandler","off","MESSAGE_RECEIVED","MESSAGE_READ_BY_PEER","login_loading","identifier","user_sign","getSessionContent","last_messsage","msg_style","MSG_DEFAULT_MAP","building_price_report","invite","building_card","msg_content","getSessionItem","show_content","created_time","chatList","checkUnique","chat_id","loaded_page","messaged_changed","getUnread","list_inited","CONVERSATION_LIST_UPDATED","is_changed","conversation","unreadCount","unread_messages_count","IM","checkUnread","getMessages","getMessageList","count","nextReqMessageID","messageList","handledMessageList","prev_datetime","concat","resetChatMapByConversation","createTextMsg","createCustomMessage","conversationType","TYPES","CONV_C2C","creatReportMsg","creatStickerMsg","description","createImgMsg","createAudioMsg","createBuildingCardMsg","createInviteCardMsg","createLocationMsg","sendMsg","check_sensitive","removeSensitiveMsg","PublicService","check_rs","sendMessage","readMsg","session_id","newMsgs","from_account","msg_random","msg_seq","msg_time","chat_store","setMessageRead","TimSendMsg","unread_tim_messages_count","show_unread","readAudioMsg","messageID","readAll","getConversationList","conversationList","delChat","setChatTop","topped","readChat","destroy","imError","setBlock","cdn","utils","cloud","LEVEL_MAP","gold","silver","copper","MEDAL_TYPE","ROOKIE","GREAT","PHONE","MSG","EXPERT","LEARNED","CUSTOMER_SOURCE_TYPES","CALL","CUSTOMER_SOURCE_MAP","BUILDING_RANK_MAP","C_MP_SERVICE","navToConsultant","goCard","tip_content","callConsultantById","TIMEOUT_CODES","SENSITIVE_CODE","MAX_ERR_COUNT","SUCCESS_CODE","msgCheck","callFunction","errCode","is_cloud_err","imgCheck","CAPTURE_DATE","listenCaptureScreen","onUserCaptureScreen","showMsg","floor","current_time","is_expired","getKey","encryptKey","extraKey","getLatestUserKey","fallback_key","orig_content_type","data_s","buf","Uint8Array","fromCharCode","encrypt","plainText","Base64","Utf8","textHex","cipherText","AES","CryptoJSCore","CBC","Pkcs7","decrypt","decode","resp","raws","resp_data","err_msg","padStart","handleSeconds","seconds","minutes","formatTimeStr","second_time","min_time","hour_time","day_time","day_str","spare_time","hour","hour_str","min_str","second","second_str","getDate","getHours","minute","getMinutes","getSeconds","t1","t2","accSub","arg1","arg2","r1","r2","pow","formatRate","rate","rates","suffix","formatNumberInput","isNaN","debounce","sKey","cookie","sValue","sExpires","vEnd","Infinity","toGMTString","sDomain","bSecure","hasItem","clearItems","cookies","eqPos","getMixin"],"mappings":"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","file":"js/app.8573e2e1.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t\"app\": 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t\"app\": 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"js/\" + ({\"about~building\":\"about~building\",\"building\":\"building\",\"about~packageB~tabbar~tools\":\"about~packageB~tabbar~tools\",\"about~packageB~tabbar\":\"about~packageB~tabbar\",\"about\":\"about\",\"packageB~tabbar\":\"packageB~tabbar\",\"packageB\":\"packageB\",\"tabbar\":\"tabbar\",\"packageA~tools\":\"packageA~tools\",\"tools\":\"tools\",\"activity_a\":\"activity_a\",\"chat\":\"chat\",\"consultants\":\"consultants\",\"guide\":\"guide\",\"list\":\"list\",\"material\":\"material\",\"mp\":\"mp\",\"order_check\":\"order_check\",\"packageA\":\"packageA\",\"personal_package\":\"personal_package\",\"protocal\":\"protocal\"}[chunkId]||chunkId) + \".\" + {\"about~building\":\"b799c40d\",\"building\":\"7f91de76\",\"about~packageB~tabbar~tools\":\"d87769a5\",\"about~packageB~tabbar\":\"f71704b9\",\"about\":\"c59fa98e\",\"packageB~tabbar\":\"115d3326\",\"packageB\":\"1f5d50d3\",\"tabbar\":\"252e623b\",\"packageA~tools\":\"873102fc\",\"tools\":\"c339e218\",\"activity_a\":\"1512c7fb\",\"chat\":\"0b98913d\",\"consultants\":\"4d8c4223\",\"guide\":\"9c50e7c9\",\"list\":\"b0a19e25\",\"material\":\"a1a627b5\",\"mp\":\"af5225e7\",\"order_check\":\"9ac98322\",\"packageA\":\"d469931d\",\"personal_package\":\"36cb69e8\",\"protocal\":\"97e223b9\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"about~building\":1,\"building\":1,\"about~packageB~tabbar~tools\":1,\"about~packageB~tabbar\":1,\"about\":1,\"packageB\":1,\"tabbar\":1,\"packageA~tools\":1,\"tools\":1,\"activity_a\":1,\"chat\":1,\"consultants\":1,\"guide\":1,\"list\":1,\"material\":1,\"mp\":1,\"order_check\":1,\"packageA\":1,\"personal_package\":1,\"protocal\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"css/\" + ({\"about~building\":\"about~building\",\"building\":\"building\",\"about~packageB~tabbar~tools\":\"about~packageB~tabbar~tools\",\"about~packageB~tabbar\":\"about~packageB~tabbar\",\"about\":\"about\",\"packageB~tabbar\":\"packageB~tabbar\",\"packageB\":\"packageB\",\"tabbar\":\"tabbar\",\"packageA~tools\":\"packageA~tools\",\"tools\":\"tools\",\"activity_a\":\"activity_a\",\"chat\":\"chat\",\"consultants\":\"consultants\",\"guide\":\"guide\",\"list\":\"list\",\"material\":\"material\",\"mp\":\"mp\",\"order_check\":\"order_check\",\"packageA\":\"packageA\",\"personal_package\":\"personal_package\",\"protocal\":\"protocal\"}[chunkId]||chunkId) + \".\" + {\"about~building\":\"0fee257d\",\"building\":\"4b1a4ee3\",\"about~packageB~tabbar~tools\":\"31b2518b\",\"about~packageB~tabbar\":\"dbc924cf\",\"about\":\"3f61b608\",\"packageB~tabbar\":\"31d6cfe0\",\"packageB\":\"50418720\",\"tabbar\":\"91c94260\",\"packageA~tools\":\"03562fe8\",\"tools\":\"a21c0cc6\",\"activity_a\":\"91b5272e\",\"chat\":\"61f8e572\",\"consultants\":\"9e0e80c5\",\"guide\":\"e8990955\",\"list\":\"f7b7598f\",\"material\":\"a4d70697\",\"mp\":\"f5d7062f\",\"order_check\":\"a6fe8392\",\"packageA\":\"36f2b05a\",\"personal_package\":\"e207cb69\",\"protocal\":\"4fcfee55\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,\"chunk-vendors\"]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAEqADAAQAAAABAAAAEgAAAACaqbJVAAABOUlEQVQ4EYWSPU4DMRCF35gNSqBOyQk4AhU0SOnSUSLR03EKJApOAB1dOiSqVDkCJ0iZhhT8iCwYzxhr7axnMtL+ed58nn1jghUvt4f42LsQycHPE85v3jU5aQkw5LO5hP8di4bcCqP2QYPVQTmEARwMNGB90DaEu+BI3SmwElSDJF+sXNinA+0QSleGJoIMgQDym6KlYjrK/+ccrTPC7O4qjOSoOpHn+zE27UyKB80Uk+s4QV7IOwMtHRx9BauWvTMSIXN4fyLXpp2D11LwEL73H6U2MDqzk4CfHeQYRK+S8j6+D5rTorP/uj5oG8KFHNyRAStBNUjyxcqFfTrQDqF0ZWgiyBAIIL8pWuoZq5iZs2o1Ts6JYWIBSB/sG2/IE+XacNYcPNZhYSGJZGwqsJ6sHY7OpBZ4+wNJEhLm1g4negAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/64_time.6f6635e7.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAAD////MzMzNzc3Pz8/Q0NDNzc3MzMz0pcRiAAAAB3RSTlMABKqhJSaXkoZQ0QAAAIRJREFUSMftzLsNg0AQRdG1bDm2TAVEpBBRAikBBVADH732EQjpEqxeSsDcbHZnToqi6EENbjz7qrmOhcbMUqfpx/SqtGaXVDL9pSWz9NZOAalOxPtOAXFBfHDgqTzEl4GgHARlICggRwEZCshQQIYCMhSQoYAcdUCeaucD8n36FEXR/W1xwS2eMuEZuQAAAABJRU5ErkJggg==\"","export const MAX_DATETIME_SEGMENT = 10 * 60 * 1000\n\nexport const IM_PAGE_SIZE = 30\n\nexport const DEFAULT_HEADIMG = 'https://cdn.vip-wifi.com/fangchan/img/personal_center/default-headimg.png'\n\nexport const LOGIN_STATUS = {\n DONE: 'done',\n DOING: 'doing',\n NONE: 'none'\n}\n\nexport const PAGE_TO_KEY = {\n '/index/main': '首页',\n '/building/value_analysis/main': '楼盘价值分析报告',\n '/building/main': '楼盘详情',\n '/building/comments/main': '楼盘评论',\n '/consultants/main': '置业顾问列表',\n '/consultants/filter/main': '楼盘置业顾问',\n '/consultants/card/main': '名片',\n '/personal_center/main': '个人中心',\n '/chat_list/main': '咨询',\n '/messages/main': '消息首页',\n '/house_circles/main': '房友圈',\n '/packageA/web_article/main': '房友圈文章',\n '/activity_a/thematic/main': '楼盘主题页',\n '/building/business': '商业楼盘',\n '/building/price/main': '一房一价',\n '/building/visit_building/main': '踩盘',\n '/building/img_preview/main': '楼盘图片/户型图',\n '/building/info/main': '楼盘信息页',\n '/building/material/main': '楼盘购房资料',\n '/building/planar_graph/main': '楼盘总评图',\n '/building/vr': '楼盘VR线上售楼部',\n '/building/comments/detail/main': '楼盘评论',\n '/chat_list/chat/main': '聊天咨询页'\n}","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAMXSURBVHgB7ZrNedpAEIa/lX9OyRPcgVKBQwUhFYAqCFRgCOSQU+xTDgkRqcBOBUAFJhVAKgglcHaMxjviT0ISrEACrR7egy2vFuRXu9oZjQSc0BuBpOl+M4HLEkDvIIz3sqUgtwuz38vDjuWPMcj5K7dHwNMA1pcxUiAZwe5tAcabGxBVpYyJ3ZDC1Af+d5KU3U+w+70EcfZVSpWQLA+gp7skRHcT5GkoLm25VUG67C1qIC79nzdSboj05ZiqPNYjuu0qdiTeCPZtWy4MdRwDgQ7KzQZioibIiwheDSDENY6KXHFJfIDVmCh/YmuPzMgtiCepcA1mSY7h+EqPqr03C/I1lym5BVKy37ZVekZPUV65BO6RZQgNWM3Opi7hgrM4x9PARLaZyDhZ3BQnI6boxS2yL8cU5glHJMERnI3eP+gEOXJV/TwI2xUygu7o6YWbD0fs8v2l4+gtIOMqLDaujeDFcdKwRHgO/d/9gkKUoSvC+BjWvBJ078S1WDmjMOcOPjwjyGUG3Tkrrbd4BGX6oz1GwGElKIwM5pwxmRW5fHhH0IT6N43d4MpLc6UpZLHImlfKjtR/ARUC37Tc6rUJSvDBRTEQc7q2TJtoGDxRaff3MZEn5MrbEL8mQ04j9GaT22haO3h/P4ERjC9otXrRO89HB++/Ba+gWp2Dp0oUYWc+7f5biC+I5+hw0v1ROXz/zXgEhZqgMO5DzzIXp4SwD95/CytBcv4ofkbecTjD5dnkA7sl/NdDhKd6afffyCpM6FCDUYHjpgfPFDUGyCErQasxBj/Cyhn+OEjOb+SMtUB/3kHO8Au6gVQMkCOCqRpN75AjgoKz+mIPOSE82SaDHzTGzvuySLgghwxCLqZq9O0SP7Uh+gXN2Xw/aLXqsxd19GX7DS8/LtZYcrugWyrQV1KtZMGSlU9FHa/JeDUZviYJNbUSXjbYoejUfHCnLJEWiXl8QYbjpNWqyoTgbaZECf31poRep7RNYFqX9ZTyHq9T7omYzAvGY18rksaVdUrzF2Kv58ImUoOLZc4IdFZblztx4sTxeQHCfUKuLWoMhwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAflBMVEUAAACZYgCZYgCaYgCbYwCxgACZYQCiagCZYgCZYgCaYgCZYgCdYgCZYQCaYgCaYgCZYgCbZACaYwCbZwCZYgCZYgCaYgCZYgCaYQCaYgCaYgCaYQCaYgCaYwCaYgCaYgCbYwCbZACfZwCbZACcYwCaYQCaYwCbYgCcYwCZYQA1tKBcAAAAKXRSTlMAgPvxSgX2C+iMiG0q4aykkEU2ItjPy8K9sa6dknlzZ1c6JRwUumJeQZgR8vIAAAG+SURBVFjD7ZfZkoIwFEQhgQAiwy67KLjd///BsRKocZSQRH2xpB/trqPpVJKr9s0yV7a9Mt8AWsFVqzeAbLjKfgMIqF7nrBlo/RLEcgsbBtmFaz2JiWsM/4Tr+JldbxA8CDWmcjUbmNRGsawIA0c4UuHs/zg49x3Hz28+2CvUjMdOqtAcKgsrNJJi6Z7Hfn6624+7n7EnU/p0USH33nARgMLJ6xHjGI+WMVi9FCgAKnfKc5kXyHAOhPUz7bKeyEEC1LJf3027HVtcKwEqabLi2RW1S4m9xzQZ8vyQ2tgUHzJB0MSS95NBczk/kNOAIQSdac7nB3waOAtBW5pz+AGHBrZCkE5zujCwgBbQZ4EcOZAjOvsZyIEgM4QPkRgkfJQCkAQJ3pI9qIGANwVkqqCMMzowN3F0Xb/wQZer7SQsG8/c1p4lNV16Mzf3dmhQSsHMhevynmr+0+3OLA1aS2JlLcwszSKgKML5zloVVPMGGluNYx9Uh2L1QXmdynPS+TliV3pIDEFeudO+XSfg6qQE6gmPQ3pNSTvE2S/l3YqSKU4SaeoyCnK3qsJ49l922PjH1CPES49+E1raokWfol8WjJvhU6y20QAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAC8AAAAuCAMAAACPpbA7AAAApVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+4/eNVAAAANnRSTlMAxPz5Hr8RyyY0Lu+L895sCAQcGebWdNmzhXhbVjoM6qucfFNPSz0su6Zk0LChn3BnZS/blw92fBcCAAAB9ElEQVRIx5WW6XKiQBRGWyAsw6YIuMUFd42JSWbmvP+jTYNLqTRj5/tjVfcR7n4RNSXxu5OGhh85xee3eCJ37nCraOD+h04+DGqabRpoOzCRMvvxyut2bHd93PlIGbkS30RI9ReTm7PO6lD+QYUvQ6A1rp1/H4xAgQ8BfyFU6ijO9kDPFbpam7C1tXFrCk5baKsFaVcfX4LpPaXGhXv2P4NryLqW1al+Hae456ekJ5O/wL/6+gK/Kpegdc9H8ClKZZCL53wMvaokIWw38sk1WxMfSi9zmIkm3oq2fy9XBQxOwRw18UkE/cvVCt7kawwMu4F3Je5cE9OWZFt4pRt3fDGQWpfFOpWm3qQ9Kx0Ywcs9b5ZawdTEnIsbzeC1DNNOKO2R5t73+58yA0MI1Lw5f6j8AQybeenvgwLJV/Zo8juIK381eXk3UsRT8uujiu+Bp8iXt3/jt4K3JTlR1IMJfq7gR/Losd5GKRAGtrDr/Azyx3p2wCiSU3tkr5U2l/IJwX3slzkH99yuLd+odDxf5ZDV+tEaiwbZPnzd9PszBZB19OeJZ8JSf151U2jpz8O2A1NLe97aWzDX2vPc7QF77X2x8IGh7j4at4BwqbfvJos+UtHm+T7tequ4fzoI7B/sa+Mj+cH3gDOvB039vRGmzntcf/Q/Dzhf/o4CcC8AAAAASUVORK5CYII=\"","const LOGIN_STORE = {\n retry_count: 0,\n doing: false,\n req_queue: [],\n\n start () {\n LOGIN_STORE.doing = true\n },\n wait (res) {\n LOGIN_STORE.req_queue.push(res)\n },\n finish () {\n LOGIN_STORE.doing = false\n LOGIN_STORE.retry_count = 0\n while (LOGIN_STORE.req_queue && LOGIN_STORE.req_queue.length) {\n LOGIN_STORE.req_queue.shift()()\n }\n },\n fail () {\n const can_retry = LOGIN_STORE.retry_count < 5\n if (can_retry) {\n LOGIN_STORE.retry_count++\n } else {\n LOGIN_STORE.retry_count = 0\n }\n return can_retry\n }\n}\n\nconst MAX_401_COUNT = 3\nconst RESET_401_DELAY = 30000\n\nconst RELOGIN_401 = {\n retry_count: 0,\n reset () {\n RELOGIN_401.retry_count = 0\n },\n add () {\n if (!LOGIN_STORE.doing) {\n RELOGIN_401.retry_count++\n }\n },\n check () {\n return RELOGIN_401.retry_count <= MAX_401_COUNT\n },\n reachLimit () {\n setTimeout(RELOGIN_401.reset, RESET_401_DELAY)\n }\n}\n\nmodule.exports = {\n LOGIN_STORE,\n RELOGIN_401\n\n}","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAOKADAAQAAAABAAAAOAAAAAANV2hTAAAD+ElEQVRoBe1aP0wTURh/31E8tAiGJtKqKA4MDopSjYODhIQwmODiookOoNUYSZwcnJiMMW5Eo5UQ4yAxcZHBxJgYB90ogo4MElFpTdoI2sTjT5/vOyxp4e7yvt6780J6S6/3vu/3532v79rrB8yHIzt1cY+xVLgDjHUiHWfsrV6r3Yi0D3/1ml5wenuY5hYLU8JWUzkT5PQtWrvXJrVyUvXvsHIbzSEPb1odU89Ziui5weKyLCUtnjuNFWPcvnpukHMesxPpNGaXQ73u2WcwN57Ya/CVXs4KQ06igGkDOtSMNR1NfnGKq3RMqUE+PaBn5vOJAud9QtBhoqhJDWCkuTGchLYhg5hrG67EIOeDoXRqNiGqdVPcA3bbsskMAPsmqnorGm9JAgwuy6Q4xbg2mP10tcUw/owyzk84EZHHAN7ret3ZyMH7s+TckgRXBufG+0+JjeKJ9W2ghKXiU8iJap6PHRt+WSlExQbTE329vMCeC4O1lZLL5AHAEmjsTLRjZEwmfn1MRQYzqUs9K3zlhViW+npAT94DGDVQc7o5/ugVFZ9scO7DlVa2vPiRM76dSuYmHhj8YqEth2JHHsxQcEg3erEcQZh77Lc5NGRyIjdqIBwkg5lU/zVBdJKArzQUuVEDBVR6NvAmnv75e0b81IlSCFTHCsHp6I76VtkvA9IVzCzkL/xvczhZqAG1yE6ctEHO2XVZUK/jKFqklijunHzZ+Oy1cAo+hPT9MjuqVAWhsNhNIfcjVlaTlEHxjaXLD9EUDllNUgYZ8FYKuS+xkprkDHJo9kU0hURSk5xB4Dsp3L7ESmqSMii25bAvogkkspqkDBJ4AxdaNRi4khAFVStInLDAhVcrGLiSEAVVK0icsMCFVysYuJIQBW36Cto+sihtHBDPIm3/xCROqNJw8Vh/TjyEcmxosDRo3zigVJ9CMPuGBsslat84oFCTUij7hgZLg6KsnUr5fQCz02xp0Ac9vlFYGsQPrm8KFBHZabY0iG1WjEFOEbcPMGKTMTVvpLI0iO1V2GbFAEZxK96YFowrpjah0Y+WsGA4rqrYhDNg+U2G6vN7qi/BCvwhNc8xXoPLu+IjSccYiUHLTUYiryykjoeeAbB82UUXbxALMV1ArKUqMSga6eY5026vobo8QSzEdAljpisxiEixSMtdcVt551qUwDCxXAOtAij5DBa1ZKcHGoz5/BvRIBQvXiO9AqT0xnBXpG1ogZTnEKysgsiBwurDW3vE6aQDp93QJOaqNIdESg0iYMOBe9nYtn3HQYNBszsJLzocGIOxmIO5DqEVDSldousV/Fuy54DzbgasgzMw/2cExn+IfpAJDvBaLMmnqqtWquMv7sc4o/1Z1c8AAAAASUVORK5CYII=\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_img.vue?vue&type=style&index=0&id=834ba868&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-wrap.vue?vue&type=style&index=0&id=f5d6727c&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAD1BMVEUAAAAA//8AsY0Aso8AsI3vHlIEAAAABHRSTlMAAZ1NftPF1wAAADdJREFUOMtjGAVUBIzGAtglmF0UcUk4YdfCqIJLi9BQ1GJAmgTCKEzLh4oGRNQSTgyI5DMK8AIA4+8NTfyeqFsAAAAASUVORK5CYII=\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.show)?_c('div',{staticClass:\"dlg-wrap\",class:_vm.className},[_c('div',{staticClass:\"dlg\"},[_c('div',{staticClass:\"dlg-title\"},[_vm._v(_vm._s(_vm.title))]),_c('pre',{staticClass:\"dlg-content\",domProps:{\"innerHTML\":_vm._s(_vm.content)}}),(_vm.show_confirm)?_c('button',{staticClass:\"confirm-btn\",on:{\"click\":_vm.confirm}},[_vm._v(\"我知道了\")]):_vm._e()]),_c('div',{staticClass:\"overlay\",on:{\"click\":_vm.toggleDlg}})]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n methods: {\n toggleDlg () {\n this.$emit('toggleDlg', !this.show)\n },\n confirm () {\n this.toggleDlg()\n this.$emit('confirm')\n }\n },\n props: {\n title: {\n type: String\n },\n content: {\n type: String\n },\n show: {\n type: Boolean\n },\n className: {\n type: String,\n default: ''\n },\n show_confirm: {\n type: Boolean,\n default: true\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tip_dlg.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tip_dlg.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./tip_dlg.vue?vue&type=template&id=e53fa318&scoped=true&\"\nimport script from \"./tip_dlg.vue?vue&type=script&lang=js&\"\nexport * from \"./tip_dlg.vue?vue&type=script&lang=js&\"\nimport style0 from \"./tip_dlg.vue?vue&type=style&index=0&id=e53fa318&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e53fa318\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABgAAAAYBAMAAAASWSDLAAAAJFBMVEUAAADx8fHu7u7s7Ozs7Ozs7Ozt7e3t7e3v7+/s7OyxsbHCwsLENWwAAAAACXRSTlMAG2zz8tm2m04mD7MwAAAAg0lEQVQY02MAAka1YNMkASADxK6cCQTTIbyWmWDgAWIzzYQCBSCnE8aZAdThCeNMEWBgB9Gzd4LIAgZJEDVrJYicyKCJ4ExiyERwpjFEIjhTGSwRnMlQzqpVq3YCOZEIzlSgAXAwDWg0HEwCWgoGEEvZEZwCFIciewHNcwhvYwYIIqgAFbiFJK9Mwg0AAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIjSURBVHgB7Zg9UtwwFMf/soGhySS5gW/Apku5FKljVykDJyBmkyJVNlVmwsfCDaCkkremwDeAG7BH2J7BjycDw34geSXLXor9zXjH6yfbP0uW/CQBXwwHf0DFj3Jf4Axfeyk8EMIHj3J93tt82j7j2xeBi8scNQngA6J47pgIvsMDfgRBH9AQAq7Ig+5TLana0wmOecu4+c+R/MrhgL2g/N+BWBtwrXVhBd2A7hIkv0c2Z9k18fB4DyK8tpdTCH6wjduyQ1mwuGDZU+kEdVG93UJysSZ+GUb8QUiR9CofuFpQ/ovKpmkCKrarOk91E4uNKzSFCAdVRcyC8miHfyM0BnUgD2NTCbOgEF6+BuZ7BHvGsDbS5Ls3CwUfkaTj10KGGlzvoDXuu7qIQZBaFKRIFzEIisYSgFfuFekipk7SnqAQ73UhT+lWc6wE67ISrMtKsC5vXnA+WZB9HqDf7XBEZRkR2tHgCRWdcoZ9NheZKysPb3hk38JSYNF4/9PkkekmVsnj0uQUKoHl+fYEM+9gmwmCjunMZkYwyLF01vPJf9OCSTri6eAu1+QIrSPGPMtLS4fJo9ryKuVvlc2xLu1/0zgsHqmebp6JaaGCx7qfmc0pa7AmzIFCwolwF5bYf+rUe0LFX9iizpnpAIvgvoCZHV9ZLMNliHsJHHBPFuL97fL7WYUq4yincK/BZ+Qg4ol3n6+0VS5SPsLjKQ3ZLnNd+n3mAUZ0lHdOZct4AAAAAElFTkSuQmCC\"","export default {\n computed: {\n type_name () {\n if (this.item.building_ranking) {\n const { ranking_type } = this.item.building_ranking\n return {\n comments: '热评榜',\n views: '人气榜',\n follows: '关注榜'\n }[ranking_type]\n }\n }\n }\n}","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAONSURBVHgB5VuLcaMwEF2nApegDs4dHOnAJdCB3UG4CuyrwOkg6QCnAkgFuAPnKtiTzCosMmD0s+HuzeyQkdHn6a0W/bKAwEDEpXysyH7QU6UJ49UT2Ze0D2nlYrE4whShSElbS8ulndEdKu+btBQCYQEeILU20rZQq6RRAqlC9iXVORl5BdSqruj5k/7WUO8fpf0y80YHKfaCbbVyaVsi7VquUOpJKwxlX6hD4oNcsTKIJRAYssyVtFdWTxXSdbsqVKrtYhPrqFcYHbrz8ZKhSkoWCLZwZ5D7n5maAkLA6MFwBU+hLUaBZXDXcGvTkgUhd5IGuVeYGFgAsidJvfStHEwUTMnCyruwiZbVFNyyD4YQu7GZUhYtBUwcNJR0dF2PeVn3yN0/Ba6gT8htj8N6SnR5EWYGrCceClnfCwIbCJgZZJsTNrSWXS/osHuAmWJQRTb2VjBT9KrIImcBHiA3X7u4OIX8FD2HB1NxzRPfKTEFRxjhurJpqBG9vT5PLKLmPPHsG1yYF6ANSbxeDrV7374dy5abMr/1dc9lR0MHSfaQG8wzsi16Cpc8QbMP8gEekPsmanfsGeq9FA0hLe9qMKXl0N5tU3mfA+zBaC4rPv6CzFzGqBJLOVa+Hi4HHnUSCIQhArHJUf0rKrfg3z8BATFAJCo5VvelbNC1QAT0kIxKjtVd84pJkCrqIxmNHNV7wRP86/gfXFQ3QEBA4ISCjP7qB1tF4OM/EwmVm6sx+EnpQQjijRkKzVJGz3gcobn8UQRLI9EZt8jphDuQFPQ8hpxsW7veQB6vrUo27BK9CtDLJZ+zvbUNOZavi2QKjsAmwJx5Yk6JzhNunM6CN6Vy3nmi7v0cPIDNCa21J6DHdodRTnHlBYabJjBTYLOKqLp+zEKo+Ejg0Nbn3FXEMRvXc1aRBals6CWu4pwOXzajozeLqHM8PkvHZtqzHpnLAejeNuP38TBMFNhcbbEXAtuzi8mdOKk2jR53A4VwknYH/ZFA3lV6k2MFcpL+BU6xLXg9GX7EVa4NNtGyDN7R5Bo6ut5NTazXqzmrdx91qGC9WqhYhQeMcCrcQUyp53ysZlu5ctkM2yjQ84SWvGTbQSxzVc33SrOQjwzq68iC/aSvNJ/o71PPlWZ+gd280qyO435L29PR3GNB6r2h/6X0HOvpYpBx5qVgH7BebmlV9L8UCOO1E9QqKYU/6VmGVusvPY7CArZWS1gAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAP1BMVEUAAAAAsZEAsJEAs5IAspEAxZ0AsZAAsJIAsZEAsZEAsZAAsZEAsZEAsZIAs5MAsZEAspIAsZEAsZEAsJIAsJA93WoSAAAAFHRSTlMAgPIfjwZyK+Te2LOgYlBIP2/QfuObw68AAAC0SURBVEjH7ZZJDsMgDEXBTBnJUO5/1opd3YBq11kEibe0eAsw4K867eE2rwn4zV3dfUxExv3bXRODFbsGODIYJC+JxYLkIZfmoH4S5rxyQLVcmRypKVNee5GtImGLsqbJuss3yhZSiTMQ5JgqnAT5qMlAkKvvy1L2bLwu8IoPb1Wj8udpe8OTDdT+Sf4NO1hyxHL8/1WBbaZVXX6+zBmxouEuihWiQCOKUpIQJ4mPouDaaY43vHxATjgzkmgAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAllBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////AJcWoAAAAMXRSTlMA/fMPZOTRglohC/ju6s3Ir3hMORYIjlEoBd/ZtaFrRzQZlXx0cWBV5sG4kYlePS2W+9dPRAAAAZNJREFUSMftlFmXmkAQRosG2URBxQV3x232yf3/fy4NOWFokc7kIXma+/b1uVXVp1jkm39PdD2evV3xOxa7y3l0jbrs6emRimSzL/N+k1DRO0/v+dceNU5QFIFDzeO87XtO2TubHTdDNGmKxt8EL1lSdvBu/Yv2e96v0fs1Fet9FWOvnH0xfTeB4aGOIzSjOh700IFrFAS6f9zIo4avifWMV2NBCkJpMpkYMQRVNPK7HiBW9Ij35orgWaw8g2deeSZWZnBsxC08iJUH2DbiHNZiZQ3Npx2BmrYtc43GS+iXDSzMwb99cKlYSCEwDvI+jLv9MfTz1tpWcZcfr+BFTPIEflh2OshvD0Ng3HkhwvZxBurjnv+hIJM27gqWefs8X8LKlTssFAzdVh8f1KLjrk67wh2C07nwUFekruGn2g/rePfX4R8+88GvfhgWtrpiWd84Wmp/K1bCPgwmUjEZQD+UP7BT2noTzZuuVTubW/etPthXPmfZiXzg6QnwI/kScUZFFstXCRxwAvkLFqfTQr75f/wEqpUzfycX2hIAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAIlSURBVHgB7ZhPUsIwFMa/RBe6wxPIDcQbwCBruYG6UtwoJwBOIG5EV3IEPQCWG+AN5AisFBcmvoQBGpqWAv03DL+ZztB5afrxknx5KbBjy2FYF+c1B/FzCfAT6qUAKfLUXW4SlCMwPoTEkH6/g6OPUm2INVhdoNMp0osbdBWxEuwNXD6S0P5KT4Vu6XTyJOp1dWGeVyqh9bAZ5WEawXm+g5CDzcUpZBWCDdB7ug/TenkGnZcGhGgiDjialMlWUJNggXGKm7JEpL/AybC2kQg0J8u31nfZBaoFoebczDbiho1o4ZzaFo59kQj2kJw4hcxph7DgzaDyOQEHaSBQQsX0SW8G/xBq+cfCHm0AC5gZ1HMPX0gTfnCE0tVodmsERRRGvCF6f59jCpSoInWo+HDfmTF27PucQEunX13g9cjj84YF992+EZuUTJZnyEgrhpG20esoG2pEEjfgeePODPp43/5h19vPuB1Z3EDmAgRmjwWBcmRtJb4t3nh4EVk8AHPCfTxTzScL9qY0j/h0qMZUSFAVEmncRbnGfAR2umQ1of5ZrLgELvig/ETGWPDB3y4yhimwVKfjIh0RM4StmmkhQ3gFqnosQ1m0GzXDla8nJoxdoD4b7GViqP23uvJ1W1cgKRO8F1dqzbRFLi8WlEhdv6UzJ8NVM2q4OTuFZO9ImPDlllo4ZzdVfTRUX6gSYoMPmPoEWKQuzqmXvPkBc0NcxcKOrecfTp7HHSwrjYQAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAADGvYS0m2+0nHCzm2+0mnC/n4Czmm9s32AgAAAAB3RSTlMAA6p0s+YIzN20GwAAAFBJREFUSMdjGAWjYEQBYWcBworMyxUJK3IvLxIgwiQijBIqJ8IoRvVRowazUcUEFbGFl5dQahLCTUT5btSgwWMQuCygVqmiSFxJNwpGwWAAABBCLFE6ta+GAAAAAElFTkSuQmCC\"","module.exports = __webpack_public_path__ + \"img/taxes_calculate.d2134ff9.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAAD///////////////////////////8jfp1fAAAAB3RSTlMAqnW0d+UIMq2f7AAAAFNJREFUSMdjGAWjYEQBJhMiFLmXCxBWZF5eSFiRejkRRjGWE2OU+KhRg9moIoKK2MLLi4kxqYRCNyF8N2rQYDLIHW4Q5aWKABElnRHDKBgFgwIAAAL7KBaLsBUUAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAVCAMAAAAQExzYAAAAhFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8g2+bRAAAAK3RSTlMAAq/wCvz44d1mRhjq1cqMQDMsJPTGwLeoWCcfEeWlpJaRgn1tUkk6GxQL3BaiEQAAALhJREFUKM99kNcSgjAURIGEoggqSsfePf//f47CGGru0949k7JraOZleSsdLwPYa3jhgj2f5usFOLdpPt+C0Pwgd2CxrvVmhM9scItaZySyzy9A8GwWDyyzy09AXP1vA5ZtbB6A9K2MJTBTq0yBzGyfsNqFVDFw7L4pQxBRrf0AOCvWuC64/i+yB1yHsSMBoWzqzUeLtb9hVwK29z5TYS0HxGPIVFjYRSNIhcUrjemRCaFvaGcz6n4AVucR7p3myaYAAAAASUVORK5CYII=\"","/**\n * @obj the watched Object\n * @properties the watched properties\n * # add listener: Store#add_${property_name}_watcher\n * # remove listener: Store#remove_${property_name}_watcher\n */\nexport default (obj, properties) => {\n properties.forEach(({ key, defaultValue }) => {\n const privateName = `__${key}`\n const watcherName = `${key}Watchers`\n\n obj[privateName] = defaultValue\n obj[watcherName] = []\n obj[`add_${key}_watcher`] = (key, watcher) => {\n obj[watcherName][key] = watcher\n watcher(obj[privateName])\n }\n obj[`remove_${key}_watcher`] = (key) => {\n delete obj[watcherName][key]\n }\n\n Object.defineProperty(obj, key, {\n set (value) {\n try {\n obj[privateName] = value\n const watchers = obj[watcherName]\n Object.keys(watchers).forEach((key) => {\n watchers[key](value)\n })\n } catch (err) {\n console.error(err)\n }\n },\n get () {\n return obj[privateName]\n }\n })\n })\n return obj\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAS1BMVEUAAADNzc3MzMzMzMzNzc3X19fNzc3Nzc3Nzc3MzMzNzc3Ozs7Nzc3Ozs7MzMzQ0NDS0tL////MzMz////r6+vv7+/T09PW1tbX19dWcxb2AAAAEnRSTlMA9+/mXgnby7evj3xmTjcbEQMSuog3AAABHUlEQVRIx5WW65KDIAyFExBveD242vd/0p3ddpoR0mq+f8ZzRiEhgQrC2Le1Y3Z124+BLliqjgGBu2qhz4ToUOBiIJ118FDxw0oKc4OPNDMVTB5f8BNlVIyvcJXpccnJMTEu4Un0s8cN/Hvla4NbNCs9GXCT4ZVfL6F9h1BE/DPnUSJbShuEIhL/603q55FS5vj5i8g33HJOwZHEIfq0n5PRIRds+aPQEQWG5tD14EAjoDl0PTBSD92h69FTC92h69FSDd2h61GTg+7Q9XDE0B26Hmw2mH/JvGjztpoTZy4Nc/Gdy3u7Lm/7AbIfUYqn96JXIrFoM48DGYdE4IO1kZlbpbUZW9u9daDYR5Z9KNrHrn2w268O9suJ+frzC0NafoNbfPAUAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIVBMVEUAAAD////////////////////////////////////////PIev5AAAACnRSTlMAgNsjc+/FZjUZXHa93QAAAGlJREFUOMtjGIKgbRUcZCCLc0YhJJZOQJJgX4UECpAkGFcJIDPpL2EEcpEyFgkvkMQSnDro41xoEGNaDg1iTOcighjTuSAC3Q7aSmBajhm6IGKQOJckCWatVehgkQFIgmUVJnDArWOIAQAXaZgDphHmFAAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/政策合集.2340e574.png\";","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADEAAAAwCAYAAAC4wJK5AAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAQlSURBVHgB1ZlNbtpAFMffGIzSqgt6giYnSKsklbqjJ0h6ghApkLIKPUHgBCErElIpzglCTxC6qtQEJZyg3KBsKrU29vQ9A5Y9/ja2Ef8NYoYx8/N8/d8bBitU9eapXFSn1QKTtjnnFSzatCoZPAOHMWfGN03XB0rjw9jvOQxWoGr3x2ZJklscYB87UI7ShjGm/NPVthdM7hAnvcdTg0MrauedYjgyevu6/l5xlEKOql8Pz8DgLVhWEmv1ajvtxdfcIEIAJhzXgAQwwrUxwalTNgC2GYeK7wNtILlABABMsPzi5Uax0zl6NxErm7jw//zVDiRJOuP2Rb9QAaq9493bzCHqV8NzAN4Uyxnw0YtSseLVeVGfcSMwCvId7lZvhaqJWipsZQpx0hve4PSouioMuO01dqsQQ7QdlzT93g3C25lBpAmwkDkikvwEzp1tIkEGygKAdGmeEfxCKC6nDpEVwEJqqdgB2hBsShWi1v1ZzRKApOBGQNuxvSxVCG1D7oPwB2kC2J45sn9NFYLekioXPlogWQAA+Sie3XQiLUAM4F+yACBxzhy+ayUulkT7vqzpd0wChU7dOG1rvcd7uyVZjRWng0udDvDvt82CuX2I3lb/bS9LNJ2Orx6a9DBIIBcASQel/vXxMEp7Gb2UWBYbgs4BCdg5WYC4IJ4AC2l8K7Q9ntgMzaBYHgvCcZChh4kDEghg8HavsdcKbS8V+yC4WYr4IkN4nsQEok6bYW1TAfBuP2EYshYhgvysxNxOdyBZB5YFAHKw5KdCRyIEIDAeyBSA2p/sdWZ9WUsApxNg6w5A8pxOFBOvC8CsX4IoL8Q5dNYFgOQYCTpMKLEFKwAgzbbreAAkBwSlFsXMXF4AJDNqSxCPWBA0Cvhx6ARgY2ZMD8LSKuRGlwUgJY1HLAgZChWx0sC852VANtqSztwONCbAQkniEWth13oPfcbZvr0SE1OvlQjJLbN9d1hlEr8xvyQESCrbmmBv7BUYjA+iApCuGzsKN9gRmG8wPwCS5Z2YkFmj5C7EFIFE+R3FI9NSUYnzkoLk650oOw0ZaJl4xE++EJReh5S1TDwSJDvE2F5B9wOQovziEVlzh5txZYf4bq+gNZLWcPunNrnr6iqJbBD8WagrR4nawhQEkNYuZkHgka+AkKjF8Tidn+SJlAcAyYKYbXfutHkJb2iSTKu8AEgOKz5PTP0C8XoWvYyqa5+UCBbEyux5XRpmdJK74ok6HkRYfO7xU/MOWZPlvtchZb6AqXHKDd70vKPO0Ip4hqf17kMLr1jP/BqRJRGva2m79L1gz9hL+cbYYSCRlYMZDMx20M2P7x1yuGijsNIqWSo0Kz6/sWyBEDAFiKZYnzJzkWKRFBQ5tU8wOgZOmNDdxzWxKbjeMXZ8oHNj9ArPm05K7jSq/gPFeABGd/mLEgAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAzFBMVEUAAAAXw5gr1LIq0a0u2Lcjzahg/+sizKY14MIt17UXwpgl0a1A5Mgr1LEs1rUizackzqklz6wt1rY34MQkzakr1bImz6s54MU24MIizacZw5ku2LYr0rEZw5gbxZskz6or07EYxJkk0KYv2bM44Lcr07Is1bIbxpwbxJwlzqks17QeyaIy3L0w2roZxJoaxZw34MM13sE03b8gy6Qcx54m0K0lz6su17cp07AdyJ8n0q4s1bQizacx2rsv2LgYwpg13cAq1LIjzqkhy6WNMMJyAAAAK3RSTlMAmrorlSMD+ubUmkAc78mVbmL77ey3tqampqSPiYBzVU5BKxsQ6t7R0ZiFZ0ImAQAAAYZJREFUWMPt0GePgkAQBuCxHNh7O3u7KoKA9VRE/f//6SYbhMy6EPhqePImM7ujAwFisdjLKbQzq/Ay7QL//7q+0lcuPDDYsJ6bYercho4eVQeIjG3rto6xGcM2GGwwrPJ3GSAMRTEUg1HcPhgQSnTCBWflzGCDIRXROyCW1Hl5xjydicAF1tLC8H3Qgp1l7awdgw2DDYZU5PXcAiKbFsnuCCB6ydrRVZJARMoeXbVkDzipkjv9BbG094iU6AHNqyM7B5H559XRFL/irLh3fCRFnPF1X5yBWH8fTh98jP/CGYOP/CacPPiobh822w2GVcT3VfDR2obTArHRzSFXUiKV7c0xEn+Bxom5nX5A7P3kaOSBJ03LJ1fZd4GrPJWAkO+MeTcxcvVNpCLj7PGbuwyEGR0QC8pcmJhFIG5BNIfF4QDEITog1tEBoa3X2lrDsMoR3wPxrWmqpjLYcNgM41X0BcRQjWoIhNRVL+rFhQfMc/VmXQk4k0FCLJfIYejdYAKxWOzV/ANw7hKAnTI+tgAAAABJRU5ErkJggg==\"","'use strict'\n\nconst isArray = Array.isArray\n\nexport function isFn(v) {\n return typeof v === 'function';\n};\n\nconst _toString = Object.prototype.toString\n\nexport function toRawType (val) {\n return _toString.call(val).slice(8, -1)\n}\n\nexport function isPlainObject (a) {\n if (a === null) {\n return false\n }\n return typeof a === 'object'\n}\n\nconst _hasOwnProperty = Object.prototype.hasOwnProperty\n\nexport function hasOwn (obj, key) {\n return _hasOwnProperty.call(obj, key)\n}\n\nfunction mergeWith (objects, customizer) {\n const [first, ...rest] = objects\n let ret = first\n rest.forEach(a => {\n ret = mergeTo(ret, a, customizer)\n })\n return ret\n}\n\nfunction mergeTo (a, b, customizer) {\n const ret = {}\n Object.keys(a)\n .concat(Object.keys(b))\n .forEach(k => {\n const v = customizer(a[k], b[k], k)\n ret[k] = typeof v === 'undefined' ? a[k] : v\n })\n return ret\n}\n\nfunction mergeWithRule (a, b, k, matchField) {\n if (!isArray(a)) {\n return a\n }\n const bMatchItems = []\n const ret = a.map(aItem => {\n if (!matchField) {\n return aItem\n }\n // 暂不考虑重复\n const bMatchItem = b.find(bItem => aItem[matchField] === bItem[matchField])\n if (bMatchItem) {\n bMatchItems.push(bMatchItem)\n return mergeWith([aItem, bMatchItem], createCustomizer(k))\n }\n return aItem\n })\n return ret.concat(b.filter(bItem => !bMatchItems.includes(bItem)))\n}\n\nfunction customizeArray (a, b, k) {\n if (k === 'pages' || k === 'subPackages.pages') {\n return mergeWithRule(a, b, k, 'path')\n } else if (k === 'subPackages') {\n return mergeWithRule(a, b, k, 'root')\n }\n return b\n}\n\nfunction customizeObject (a, b, k) {\n return mergeWith([a, b], createCustomizer(k))\n}\n\nfunction createCustomizer (key) {\n return function customizer (a, b, k) {\n const newKey = key ? `${key}.${k}` : k\n if (isArray(a) && isArray(b)) {\n return customizeArray(a, b, newKey)\n }\n if (isPlainObject(a) && isPlainObject(b)) {\n return customizeObject(a, b, newKey)\n }\n return b\n }\n}\n\nfunction merge (pagesJsons) {\n return mergeWith(pagesJsons, createCustomizer())\n}\n\nexport default merge","/**\n * 框架内 try-catch\n */\nexport function tryCatchFramework (fn) {\n return function () {\n try {\n return fn.apply(fn, arguments)\n } catch (e) {\n // TODO\n console.error(e)\n }\n }\n }\n /**\n * 开发者 try-catch\n */\n export function tryCatch (fn) {\n return function () {\n try {\n return fn.apply(fn, arguments)\n } catch (e) {\n // TODO\n console.error(e)\n }\n }\n }","import {\n isFn,\n isPlainObject\n } from './shared'\n\n const HOOKS = [\n 'invoke',\n 'success',\n 'fail',\n 'complete',\n 'returnValue'\n ]\n\n const globalInterceptors = {}\n const scopedInterceptors = {}\n\n function mergeHook (parentVal, childVal) {\n const res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal : [childVal]\n : parentVal\n return res\n ? dedupeHooks(res)\n : res\n }\n\n function dedupeHooks (hooks) {\n const res = []\n for (let i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i])\n }\n }\n return res\n }\n\n function removeHook (hooks, hook) {\n const index = hooks.indexOf(hook)\n if (index !== -1) {\n hooks.splice(index, 1)\n }\n }\n\n function mergeInterceptorHook (interceptor, option) {\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n interceptor[hook] = mergeHook(interceptor[hook], option[hook])\n }\n })\n }\n\n function removeInterceptorHook (interceptor, option) {\n if (!interceptor || !option) {\n return\n }\n Object.keys(option).forEach(hook => {\n if (HOOKS.indexOf(hook) !== -1 && isFn(option[hook])) {\n removeHook(interceptor[hook], option[hook])\n }\n })\n }\n\n export function addInterceptor (method, option) {\n if (typeof method === 'string' && isPlainObject(option)) {\n mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), option)\n } else if (isPlainObject(method)) {\n mergeInterceptorHook(globalInterceptors, method)\n }\n }\n\n export function removeInterceptor (method, option) {\n if (typeof method === 'string') {\n if (isPlainObject(option)) {\n removeInterceptorHook(scopedInterceptors[method], option)\n } else {\n delete scopedInterceptors[method]\n }\n } else if (isPlainObject(method)) {\n removeInterceptorHook(globalInterceptors, method)\n }\n }\n\n function wrapperHook (hook) {\n return function (data) {\n return hook(data) || data\n }\n }\n\n function isPromise (obj) {\n return !!obj && (typeof obj === 'object' || typeof obj === 'function') && typeof obj.then === 'function'\n }\n\n function queue (hooks, data) {\n let promise = false\n for (let i = 0; i < hooks.length; i++) {\n const hook = hooks[i]\n if (promise) {\n promise = Promise.resolve(wrapperHook(hook))\n } else {\n const res = hook(data)\n if (isPromise(res)) {\n promise = Promise.resolve(res)\n }\n if (res === false) {\n return {\n then () {}\n }\n }\n }\n }\n return promise || {\n then (callback) {\n return callback(data)\n }\n }\n }\n\n function wrapperOptions (interceptor, options = {}) {\n ['success', 'fail', 'complete'].forEach(name => {\n if (Array.isArray(interceptor[name])) {\n const oldCallback = options[name]\n options[name] = function callbackInterceptor (res) {\n queue(interceptor[name], res).then((res) => {\n /* eslint-disable no-mixed-operators */\n return isFn(oldCallback) && oldCallback(res) || res\n })\n }\n }\n })\n return options\n }\n\n export function wrapperReturnValue (method, returnValue) {\n const returnValueHooks = []\n if (Array.isArray(globalInterceptors.returnValue)) {\n returnValueHooks.push(...globalInterceptors.returnValue)\n }\n const interceptor = scopedInterceptors[method]\n if (interceptor && Array.isArray(interceptor.returnValue)) {\n returnValueHooks.push(...interceptor.returnValue)\n }\n returnValueHooks.forEach(hook => {\n returnValue = hook(returnValue) || returnValue\n })\n return returnValue\n }\n\n function getApiInterceptorHooks (method) {\n const interceptor = Object.create(null)\n Object.keys(globalInterceptors).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = globalInterceptors[hook].slice()\n }\n })\n const scopedInterceptor = scopedInterceptors[method]\n if (scopedInterceptor) {\n Object.keys(scopedInterceptor).forEach(hook => {\n if (hook !== 'returnValue') {\n interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook])\n }\n })\n }\n return interceptor\n }\n\n export function invokeApi (method, api, options, ...params) {\n const interceptor = getApiInterceptorHooks(method)\n if (interceptor && Object.keys(interceptor).length) {\n if (Array.isArray(interceptor.invoke)) {\n const res = queue(interceptor.invoke, options)\n return res.then((options) => {\n return api(wrapperOptions(interceptor, options), ...params)\n })\n } else {\n return api(wrapperOptions(interceptor, options), ...params)\n }\n }\n return api(options, ...params)\n }\n\n export const promiseInterceptor = {\n returnValue (res) {\n if (!isPromise(res)) {\n return res\n }\n return res.then(res => {\n return res[1]\n }).catch(res => {\n return res[0]\n })\n }\n }","import {\n isFn\n } from './shared'\n\n import {\n invokeApi,\n wrapperReturnValue\n } from './interceptor'\n\n const SYNC_API_RE =\n /^\\$|sendNativeEvent|restoreGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64/\n\n const CONTEXT_API_RE = /^create|Manager$/\n\n // Context例外情况\n const CONTEXT_API_RE_EXC = ['createBLEConnection']\n\n const TASK_APIS = ['request', 'downloadFile', 'uploadFile', 'connectSocket']\n\n // 同步例外情况\n const ASYNC_API = ['createBLEConnection']\n\n const CALLBACK_API_RE = /^on|^off/\n\n export function isContextApi (name) {\n return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1\n }\n export function isSyncApi (name) {\n return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1\n }\n\n export function isCallbackApi (name) {\n return CALLBACK_API_RE.test(name) && name !== 'onPush'\n }\n\n export function isTaskApi (name) {\n return TASK_APIS.indexOf(name) !== -1\n }\n\n function handlePromise (promise) {\n return promise.then(data => {\n return [null, data]\n })\n .catch(err => [err])\n }\n\n export function shouldPromise (name) {\n if (\n isContextApi(name) ||\n isSyncApi(name) ||\n isCallbackApi(name)\n ) {\n return false\n }\n return true\n }\n\n /* eslint-disable no-extend-native */\n if (!Promise.prototype.finally) {\n Promise.prototype.finally = function (callback) {\n const promise = this.constructor\n return this.then(\n value => promise.resolve(callback()).then(() => value),\n reason => promise.resolve(callback()).then(() => {\n throw reason\n })\n )\n }\n }\n\n export function promisify (name, api) {\n if (!shouldPromise(name)) {\n return api\n }\n return function promiseApi (options = {}, ...params) {\n if (isFn(options.success) || isFn(options.fail) || isFn(options.complete)) {\n return wrapperReturnValue(name, invokeApi(name, api, options, ...params))\n }\n return wrapperReturnValue(name, handlePromise(new Promise((resolve, reject) => {\n invokeApi(name, api, Object.assign({}, options, {\n success: resolve,\n fail: reject\n }), ...params)\n })))\n }\n }","import {\n hasOwn,\n isPlainObject\n } from './shared'\n\n const method = {\n OPTIONS: 'OPTIONS',\n GET: 'GET',\n HEAD: 'HEAD',\n POST: 'POST',\n PUT: 'PUT',\n DELETE: 'DELETE',\n TRACE: 'TRACE',\n CONNECT: 'CONNECT'\n }\n const dataType = {\n JSON: 'json'\n }\n const responseType = {\n TEXT: 'text',\n ARRAYBUFFER: 'arraybuffer'\n }\n\n const encode = encodeURIComponent\n\n function stringifyQuery (url, data) {\n let str = url.split('#')\n const hash = str[1] || ''\n str = str[0].split('?')\n let query = str[1] || ''\n url = str[0]\n const search = query.split('&').filter(item => item)\n query = {}\n search.forEach(item => {\n item = item.split('=')\n query[item[0]] = item[1]\n })\n for (const key in data) {\n if (hasOwn(data, key)) {\n let v = data[key]\n if (typeof v === 'undefined' || v === null) {\n v = ''\n } else if (isPlainObject(v)) {\n v = JSON.stringify(v)\n }\n query[encode(key)] = encode(v)\n }\n }\n query = Object.keys(query).map(item => `${item}=${query[item]}`).join('&')\n return url + (query ? '?' + query : '') + (hash ? '#' + hash : '')\n }\n\n export const request = {\n method: {\n type: String,\n validator (value, params) {\n value = (value || '').toUpperCase()\n params.method = Object.values(method).indexOf(value) < 0 ? method.GET : value\n }\n },\n data: {\n type: [Object, String, Array, ArrayBuffer],\n validator (value, params) {\n params.data = value || ''\n }\n },\n url: {\n type: String,\n required: true,\n validator (value, params) {\n if (\n params.method === method.GET &&\n isPlainObject(params.data) &&\n Object.keys(params.data).length\n ) { // 将 method,data 校验提前,保证 url 校验时,method,data 已被格式化\n params.url = stringifyQuery(value, params.data)\n }\n }\n },\n header: {\n type: Object,\n validator (value, params) {\n const header = params.header = value || {}\n if (params.method !== method.GET) {\n if (!Object.keys(header).find(key => key.toLowerCase() === 'content-type')) {\n header['Content-Type'] = 'application/json'\n }\n }\n }\n },\n dataType: {\n type: String,\n validator (value, params) {\n params.dataType = (value || dataType.JSON).toLowerCase()\n }\n },\n responseType: {\n type: String,\n validator (value, params) {\n value = (value || '').toLowerCase()\n params.responseType = Object.values(responseType).indexOf(value) < 0 ? responseType.TEXT : value\n }\n },\n withCredentials: {\n type: Boolean\n },\n timeout: {\n type: Number\n }\n }\n\n export default {\n request\n }","import {\n isFn,\n hasOwn,\n toRawType,\n isPlainObject\n } from './shared'\n\n export default function validateParam (key, paramTypes, paramsData) {\n const paramOptions = paramTypes[key]\n const absent = !hasOwn(paramsData, key)\n let value = paramsData[key]\n\n const booleanIndex = getTypeIndex(Boolean, paramOptions.type)\n if (booleanIndex > -1) {\n if (absent && !hasOwn(paramOptions, 'default')) {\n value = false\n }\n }\n if (value === undefined) {\n if (hasOwn(paramOptions, 'default')) {\n const paramDefault = paramOptions.default\n value = isFn(paramDefault) ? paramDefault() : paramDefault\n paramsData[key] = value // 默认值\n }\n }\n\n return assertParam(paramOptions, key, value, absent, paramsData)\n }\n\n function assertParam (\n paramOptions,\n name,\n value,\n absent,\n paramsData\n ) {\n if (paramOptions.required && absent) {\n return `Missing required parameter \\`${name}\\``\n }\n\n if (value == null && !paramOptions.required) {\n const validator = paramOptions.validator\n if (validator) {\n return validator(value, paramsData)\n }\n return\n }\n let type = paramOptions.type\n let valid = !type || type === true\n const expectedTypes = []\n if (type) {\n if (!Array.isArray(type)) {\n type = [type]\n }\n for (let i = 0; i < type.length && !valid; i++) {\n const assertedType = assertType(value, type[i])\n expectedTypes.push(assertedType.expectedType || '')\n valid = assertedType.valid\n }\n }\n\n if (!valid) {\n return getInvalidTypeMessage(name, value, expectedTypes)\n }\n\n const validator = paramOptions.validator\n if (validator) {\n return validator(value, paramsData)\n }\n }\n\n const simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/\n\n function assertType (value, type) {\n let valid\n const expectedType = getType(type)\n if (simpleCheckRE.test(expectedType)) {\n const t = typeof value\n valid = t === expectedType.toLowerCase()\n if (!valid && t === 'object') {\n valid = value instanceof type\n }\n } else if (value.byteLength >= 0) {\n valid = true\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value)\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value)\n } else {\n // TODO 页面传入的ArrayBuffer使用instanceof ArrayBuffer返回false,暂做此修改\n valid = value instanceof type || toRawType(value) === getType(type)\n }\n return {\n valid,\n expectedType\n }\n }\n\n function getType (fn) {\n const match = fn && fn.toString().match(/^\\s*function (\\w+)/)\n return match ? match[1] : ''\n }\n\n function isSameType (a, b) {\n return getType(a) === getType(b)\n }\n\n function getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (let i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n }\n\n function getInvalidTypeMessage (name, value, expectedTypes) {\n let message = `parameter \\`${name}\\`.` +\n ` Expected ${expectedTypes.join(', ')}`\n const expectedType = expectedTypes[0]\n const receivedType = toRawType(value)\n const expectedValue = styleValue(value, expectedType)\n const receivedValue = styleValue(value, receivedType)\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += ` with value ${expectedValue}`\n }\n message += `, got ${receivedType} `\n if (isExplicable(receivedType)) {\n message += `with value ${receivedValue}.`\n }\n return message\n }\n\n function styleValue (value, type) {\n if (type === 'String') {\n return `\"${value}\"`\n } else if (type === 'Number') {\n return `${Number(value)}`\n } else {\n return `${value}`\n }\n }\n\n const explicitTypes = ['string', 'number', 'boolean']\n\n function isExplicable (value) {\n return explicitTypes.some(elem => value.toLowerCase() === elem)\n }\n\n function isBoolean (...args) {\n return args.some(elem => elem.toLowerCase() === 'boolean')\n }","import {\n isFn,\n isPlainObject\n } from './shared'\n\n import {\n tryCatch,\n tryCatchFramework\n } from './catch'\n\n import {\n isTaskApi,\n isSyncApi,\n isCallbackApi\n } from './promise'\n\n import protocol from './protocol'\n\n import validateParam from './params'\n\n function invokeCallbackHandlerFail (err, apiName, callbackId) {\n const errMsg = `${apiName}:fail ${err}`\n if (process.env.NODE_ENV !== 'production') {\n console.error(errMsg)\n }\n if (callbackId === -1) {\n throw new Error(errMsg)\n }\n if (typeof callbackId === 'number') {\n invokeCallbackHandler(callbackId, {\n errMsg\n })\n }\n return false\n }\n\n const callbackApiParamTypes = [{\n name: 'callback',\n type: Function,\n required: true\n }]\n\n // 目前已用到的仅这三个\n // 完整的可能包含:\n // beforeValidate,\n // beforeSuccess,\n // afterSuccess,\n // beforeFail,\n // afterFail,\n // beforeCancel,\n // afterCancel,\n // beforeAll,\n // afterAll\n const IGNORE_KEYS = [\n 'beforeValidate',\n 'beforeAll',\n 'beforeSuccess'\n ]\n\n function validateParams (apiName, paramsData, callbackId) {\n let paramTypes = protocol[apiName]\n if (!paramTypes && isCallbackApi(apiName)) {\n paramTypes = callbackApiParamTypes\n }\n if (paramTypes) {\n if (Array.isArray(paramTypes) && Array.isArray(paramsData)) {\n const paramTypeObj = Object.create(null)\n const paramsDataObj = Object.create(null)\n const paramsDataLength = paramsData.length\n paramTypes.forEach((paramType, index) => {\n paramTypeObj[paramType.name] = paramType\n if (paramsDataLength > index) {\n paramsDataObj[paramType.name] = paramsData[index]\n }\n })\n paramTypes = paramTypeObj\n paramsData = paramsDataObj\n }\n\n if (isFn(paramTypes.beforeValidate)) {\n const err = paramTypes.beforeValidate(paramsData)\n if (err) {\n return invokeCallbackHandlerFail(err, apiName, callbackId)\n }\n }\n\n const keys = Object.keys(paramTypes)\n for (let i = 0; i < keys.length; i++) {\n if (IGNORE_KEYS.indexOf(keys[i]) !== -1) {\n continue\n }\n const err = validateParam(keys[i], paramTypes, paramsData)\n if (err) {\n return invokeCallbackHandlerFail(err, apiName, callbackId)\n }\n }\n }\n return true\n }\n\n let invokeCallbackId = 1\n\n const invokeCallbacks = {}\n\n function createKeepAliveApiCallback (apiName, callback) {\n const callbackId = invokeCallbackId++\n const invokeCallbackName = 'api.' + apiName + '.' + callbackId\n\n invokeCallbacks[callbackId] = {\n name: invokeCallbackName,\n keepAlive: true,\n callback\n }\n return callbackId\n }\n\n function getKeepAliveApiCallback (apiName, callback) {\n for (const key in invokeCallbacks) {\n const item = invokeCallbacks[key]\n if (item.name.startsWith('api.' + apiName.replace(/^off/, 'on')) && item.callback === callback) {\n delete invokeCallbacks[key]\n return Number(key)\n }\n }\n return 'fail'\n }\n\n function createApiCallback (apiName, params = {}, extras = {}) {\n if (!isPlainObject(params)) {\n return {\n params\n }\n }\n params = Object.assign({}, params)\n\n const apiCallbacks = {}\n for (const name in params) {\n const param = params[name]\n if (isFn(param)) {\n apiCallbacks[name] = tryCatch(param)\n delete params[name]\n }\n }\n\n const {\n success,\n fail,\n cancel,\n complete\n } = apiCallbacks\n\n const hasSuccess = isFn(success)\n const hasFail = isFn(fail)\n const hasCancel = isFn(cancel)\n const hasComplete = isFn(complete)\n\n if (!hasSuccess && !hasFail && !hasCancel && !hasComplete) { // 无回调\n return {\n params\n }\n }\n\n const wrapperCallbacks = {}\n for (const name in extras) {\n const extra = extras[name]\n if (isFn(extra)) {\n wrapperCallbacks[name] = tryCatchFramework(extra)\n }\n }\n\n const {\n beforeSuccess,\n afterSuccess,\n beforeFail,\n afterFail,\n beforeCancel,\n afterCancel,\n beforeAll,\n afterAll\n } = wrapperCallbacks\n\n const callbackId = invokeCallbackId++\n const invokeCallbackName = 'api.' + apiName + '.' + callbackId\n\n const invokeCallback = function (res) {\n res.errMsg = res.errMsg || apiName + ':ok'\n\n // 部分 api 可能返回的 errMsg 的 api 名称部分不一致,格式化为正确的\n if (res.errMsg.indexOf(':ok') !== -1) {\n res.errMsg = apiName + ':ok'\n } else if (res.errMsg.indexOf(':cancel') !== -1) {\n res.errMsg = apiName + ':cancel'\n } else if (res.errMsg.indexOf(':fail') !== -1) {\n let errDetail = ''\n const spaceIndex = res.errMsg.indexOf(' ')\n if (spaceIndex > -1) {\n errDetail = res.errMsg.substr(spaceIndex)\n }\n res.errMsg = apiName + ':fail' + errDetail\n }\n\n isFn(beforeAll) && beforeAll(res)\n\n const errMsg = res.errMsg\n\n if (errMsg.indexOf(apiName + ':ok') === 0) {\n isFn(beforeSuccess) && beforeSuccess(res)\n\n hasSuccess && success(res)\n\n isFn(afterSuccess) && afterSuccess(res)\n } else if (errMsg.indexOf(apiName + ':cancel') === 0) {\n res.errMsg = res.errMsg.replace(apiName + ':cancel', apiName + ':fail cancel')\n\n hasFail && fail(res)\n\n isFn(beforeCancel) && beforeCancel(res)\n\n hasCancel && cancel(res)\n\n isFn(afterCancel) && afterCancel(res)\n } else if (errMsg.indexOf(apiName + ':fail') === 0) {\n isFn(beforeFail) && beforeFail(res)\n\n hasFail && fail(res)\n\n isFn(afterFail) && afterFail(res)\n }\n\n hasComplete && complete(res)\n\n isFn(afterAll) && afterAll(res)\n }\n\n invokeCallbacks[callbackId] = {\n name: invokeCallbackName,\n callback: invokeCallback\n }\n\n return {\n params,\n callbackId\n }\n }\n\n function createInvokeCallback (apiName, params = {}, extras = {}) {\n const {\n params: args,\n callbackId\n } = createApiCallback(apiName, params, extras)\n\n if (isPlainObject(args) && !validateParams(apiName, args, callbackId)) {\n return {\n params: args,\n callbackId: false\n }\n }\n\n return {\n params: args,\n callbackId\n }\n }\n // onNativeEventReceive((event,data)=>{}) 需要两个参数,写死最多两个参数,避免改动太大,影响已有逻辑\n export function invokeCallbackHandler (invokeCallbackId, res, extras) {\n if (typeof invokeCallbackId === 'number') {\n const invokeCallback = invokeCallbacks[invokeCallbackId]\n if (invokeCallback) {\n if (!invokeCallback.keepAlive) {\n delete invokeCallbacks[invokeCallbackId]\n }\n return invokeCallback.callback(res, extras)\n }\n }\n return res\n }\n\n export function wrapperUnimplemented (name) {\n return function todo (args) {\n console.error('API `' + name + '` is not yet implemented')\n }\n }\n\n function wrapperExtras (name, extras) {\n const protocolOptions = protocol[name]\n if (protocolOptions) {\n isFn(protocolOptions.beforeAll) && (extras.beforeAll = protocolOptions.beforeAll)\n isFn(protocolOptions.beforeSuccess) && (extras.beforeSuccess = protocolOptions.beforeSuccess)\n }\n }\n\n export function wrapper (name, invokeMethod, extras = {}) {\n if (!isFn(invokeMethod)) {\n return invokeMethod\n }\n wrapperExtras(name, extras)\n return function (...args) {\n if (isSyncApi(name)) {\n if (validateParams(name, args, -1)) {\n return invokeMethod.apply(null, args)\n }\n } else if (isCallbackApi(name)) {\n if (validateParams(name, args, -1)) {\n return invokeMethod((name.startsWith('off') ? getKeepAliveApiCallback : createKeepAliveApiCallback)(name, args[0]))\n }\n } else {\n let argsObj = {}\n if (args.length) {\n argsObj = args[0]\n }\n const {\n params,\n callbackId\n } = createInvokeCallback(name, argsObj, extras)\n if (callbackId !== false) {\n let res\n if (isFn(params)) {\n res = invokeMethod(callbackId)\n } else {\n res = invokeMethod(params, callbackId)\n }\n if (res && !isTaskApi(name)) {\n res = invokeCallbackHandler(callbackId, res)\n if (isPlainObject(res)) {\n res.errMsg = res.errMsg || name + ':ok'\n }\n }\n return res\n }\n }\n }\n }","import { hasOwn } from './shared'\nimport { invokeCallbackHandler as invoke } from './index'\n/**\n * 请求任务类\n */\nclass RequestTask {\n _xhr\n constructor(xhr) {\n this._xhr = xhr\n }\n\n abort() {\n if (this._xhr) {\n this._xhr.abort()\n delete this._xhr\n }\n }\n}\n\n/**\n * 解析响应头\n * @param {string} headers\n * @return {object}\n */\nfunction parseHeaders(headers) {\n var headersObject = {}\n var headersArray = headers.split('\\n')\n headersArray.forEach(header => {\n var find = header.match(/(\\S+\\s*):\\s*(.*)/)\n if (!find || find.length !== 3) {\n return\n }\n var key = find[1]\n var val = find[2]\n headersObject[key] = val\n })\n return headersObject\n}\n/**\n * 发起网络请求\n * @param {object} param0\n * @param {string} callbackId\n * @return {RequestTask}\n */\nexport function request({\n url,\n data,\n header,\n method,\n dataType,\n responseType,\n withCredentials,\n timeout = 60 * 1000\n}, callbackId) {\n var body = null\n // 根据请求类型处理数据\n var contentType\n for (const key in header) {\n if (hasOwn(header, key)) {\n if (key.toLowerCase() === 'content-type') {\n contentType = header[key]\n if (contentType.indexOf('application/json') === 0) {\n contentType = 'json'\n } else if (contentType.indexOf('application/x-www-form-urlencoded') === 0) {\n contentType = 'urlencoded'\n } else {\n contentType = 'string'\n }\n break\n }\n }\n }\n if (method !== 'GET') {\n if (typeof data === 'string' || data instanceof ArrayBuffer) {\n body = data\n } else {\n if (contentType === 'json') {\n try {\n body = JSON.stringify(data)\n } catch (error) {\n body = data.toString()\n }\n } else if (contentType === 'urlencoded') {\n const bodyArray = []\n for (const key in data) {\n if (hasOwn(data, key)) {\n bodyArray.push(encodeURIComponent(key) + '=' + encodeURIComponent(data[key]))\n }\n }\n body = bodyArray.join('&')\n } else {\n body = data.toString()\n }\n }\n }\n var xhr = new XMLHttpRequest()\n var requestTask = new RequestTask(xhr)\n xhr.open(method, url)\n for (var key in header) {\n if (hasOwn(header, key)) {\n console.log(url, key, header[key])\n xhr.setRequestHeader(key, header[key])\n }\n }\n\n var timer = setTimeout(function () {\n xhr.onload = xhr.onabort = xhr.onerror = null\n requestTask.abort()\n invoke(callbackId, {\n errMsg: 'request:fail timeout'\n })\n }, timeout)\n xhr.responseType = responseType\n xhr.onload = function () {\n clearTimeout(timer)\n const statusCode = xhr.status\n let res = responseType === 'text' ? xhr.responseText : xhr.response\n if (responseType === 'text' && dataType === 'json') {\n try {\n res = JSON.parse(res)\n } catch (error) {\n // 和微信一致解析失败不抛出错误\n // invoke(callbackId, {\n // errMsg: 'request:fail json parse error'\n // })\n // return\n }\n }\n invoke(callbackId, {\n data: res,\n statusCode,\n header: parseHeaders(xhr.getAllResponseHeaders()),\n errMsg: 'request:ok'\n })\n }\n xhr.onabort = function () {\n clearTimeout(timer)\n invoke(callbackId, {\n errMsg: 'request:fail abort'\n })\n }\n xhr.onerror = function () {\n clearTimeout(timer)\n invoke(callbackId, {\n errMsg: 'request:fail'\n })\n }\n xhr.withCredentials = withCredentials\n xhr.send(body)\n return requestTask\n}","import { request } from './api/request'\nimport { wrapper } from './api/index'\nimport router from '@/router/index'\nimport WX_API from './wx_api'\n\nlet toast_el\nlet preview_el\nlet preview_img_el\nlet preview_overlay_el\nlet loading_el\n\nconst checkTfsm = () => {\n return navigator.userAgent.toLowerCase().indexOf('tfsmy') > -1\n}\n\nconst checkTfBank = () => {\n const { VUE_APP_TYPE } = process.env\n return VUE_APP_TYPE === 'tf-bank'\n}\n\nconst stop_move_class = ['overlay', 'no-scroll']\n\ndocument.addEventListener('touchmove', function (e) {\n const stop_move = stop_move_class.some((classname) => {\n return e.target.className.indexOf(classname) > -1\n })\n if(stop_move) {\n e.preventDefault()\n } else {\n e.stopPropagation()\n }\n}, { passive: false })\n\nconst showToast = (opt) => {\n const { title, duration, icon } = opt\n if (toast_el) {\n toast_el.innerHTML = title\n toast_el.style.display = 'block'\n } else {\n toast_el = document.createElement('div')\n toast_el.innerHTML = title\n toast_el.className = 'wx-toast'\n document.body.appendChild(toast_el)\n }\n setTimeout(() => {\n toast_el.style.display = 'none'\n }, duration || 1800)\n}\n\n\nconst copyByDomId = (id, name) => {\n let target = null;\n\n if (name) {\n target = document.createElement('div');\n target.id = 'tempTarget';\n target.style.opacity = '0';\n if (id) {\n let curNode = document.querySelector('#' + id);\n target.innerText = curNode.dataset[name];\n } else {\n target.innerText = attr;\n }\n document.body.appendChild(target);\n } else {\n target = document.querySelector('#' + id);\n }\n\n try {\n let range = document.createRange();\n range.selectNode(target);\n window.getSelection().removeAllRanges();\n window.getSelection().addRange(range);\n document.execCommand('copy');\n window.getSelection().removeAllRanges();\n showToast({\n title: '复制成功'\n })\n } catch (e) {\n console.log('复制失败')\n }\n\n if (name) {\n // remove temp target\n target.parentElement.removeChild(target);\n }\n}\n\nexport default {\n copyByDomId,\n showToast,\n hideToast () {\n if (toast_el) {\n toast_el.style.display = 'none'\n }\n },\n hidePreviewImage () {\n if (preview_el) {\n preview_el.style.display = 'none'\n }\n if (preview_overlay_el) {\n preview_overlay_el.style.display = 'none'\n }\n },\n request: wrapper('request', request),\n previewImage ({ current }) {\n if (preview_el) {\n preview_img_el.src = current\n preview_el.style.display = 'block'\n preview_overlay_el.style.display = 'block'\n } else {\n preview_el = document.createElement('div')\n preview_el.className = 'wx-dlg no-scroll'\n preview_el.style.position = 'fixed'\n preview_el.style.top = '50%'\n preview_el.style.left = '50%'\n preview_el.style.transform = 'translate(-50%, -50%)'\n preview_el.style.width = '80%'\n preview_el.style.maxHeight = '100%'\n preview_el.style.height = 'auto'\n preview_el.style.overflow = 'scroll'\n\n preview_img_el = document.createElement('img')\n preview_img_el.style.display = 'block'\n preview_img_el.style.width = '100%'\n preview_img_el.style.height = 'auto'\n preview_img_el.style.margin = '0 auto'\n preview_img_el.src = current\n preview_el.appendChild(preview_img_el)\n\n preview_overlay_el = document.createElement('div')\n preview_overlay_el.className = 'overlay'\n document.body.appendChild(preview_overlay_el)\n\n preview_overlay_el.addEventListener('click', function (e) {\n preview_overlay_el.style.display = 'none'\n preview_el.style.display = 'none'\n }, false)\n document.body.appendChild(preview_el)\n }\n },\n showLoading () {\n\n },\n hideLoading () {\n\n },\n makePhoneCall ({ phoneNumber, success }) {\n console.log(arguments)\n if (checkTfsm()) {\n eshimin.phoneCall({ num: phoneNumber, onResponse: success })\n } else {\n console.error('phone', phoneNumber)\n window.location.href = `tel:${phoneNumber}`\n success()\n }\n },\n downloadImg ({ url, name = '', success = () => {} }) {\n if (checkTfsm()) {\n url = url.replace(/data:image\\/\\w+;base64,/, '')\n eshimin.saveImage({\n imgStr: url,\n onResponse: (res) => {\n res = JSON.parse(res)\n if (Number(res.code) === 200) {\n success()\n }\n }\n })\n return\n }\n if (checkTfBank() && tf && tf.photo) {\n tf.photo.saveImageToAlbum({\n photo: url.replace(/data:image\\/\\w+;base64,/, '')\n }).then((data) => {\n success()\n }).catch((err) => {\n console.error('save img error', err)\n })\n return\n }\n const a = document.createElement('a')\n a.download = name\n a.href = url\n a.click()\n success()\n },\n navigateTo({ url }) {\n router.push({\n path: url\n })\n },\n redirectTo({ url }) {\n router.replace({\n path: url\n })\n },\n navigateBack ({ detal = 1}) {\n router.go(-detal)\n },\n getSystemInfoSync() {\n const windowWidth = document.documentElement.clientWidth\n const system = navigator.userAgent.toLowerCase()\n const pixelRatio = window.devicePixelRatio\n return {\n windowWidth,\n system,\n pixelRatio\n }\n }\n}","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAJAAAACWCAMAAAAGwfGXAAAC+lBMVEUAAAAyMjIxMTEyMjIyMjIyMjIzMzMzMzM0NDQzMzMzMzMzMzMyMjIzMzMA4rNAgewzluE1NTUyMjIjrNMwMDAGud0AzMcwMDAzMzNx8MtHqeIzMzON9clLseMA37dq78w2ie4zMzNo78tJfe8A3rpY7MYD1cKR9MswMDCE88tKePIgmOqW9tAD0MeR9sxD6sJPdfFl7soB0sYA47SW9c5VavcC1cAC2rgC2L8uje1p7cht7MozMzPd//qP9csA4rM267E357YFv9kGut8FvdwDyM8C0sQCzMoB2b0FuOADxtECz8cenukQq+UDy8w26bM4hPAGt+I1h+8WpucwnN8ExdMboegTqOYHteMFu95l7soB1MIKsuQun90Czsk35bctj+0gm+orod0Dys03kuMEw9SK9coC0cYB17835LkA4LYEwdcEwNcEwtV68ss16LR53u8wi+4pk+wjmetChOs/h+oxmeAEvtoll+s+iug7gfEyie8MsOQppNsnptqE9MgA27s06LAYo+iN9co26rIy5q8vje1Ff+0nles8jOcOruU5keWO9csB1sEA3rg+fvJ54uslqdgauM8A3bp55OiU9s8qke00l+Fl8L85juUirtUFyNAXu86M9cp58sU667J/1/J82vGA9Mdx8sJE7LZFdvR54O02lOMkq9cfsNUWvsxf8L06juaZ99QfsdMctdE747yD0/NCefNAfPI1luJR7rk0luEds9J288Q36b9M7bc76LRKcvWIzvSG0PMwyuIExNRy8MyH9Mke3L475rnT/vZu8cpd7MNs8cBb7ryKyvVN1OV+8sYe1sQ/7LSz+egXuOVp4eOE881p78dU7LtH6Lhs4OcyxOd55uad9dyQ9dB38c06vOojrOhN2OGU9NkhrNmP9dUx48I2me1Cs+wtous9zuQZtNaH89R+8tEt3cRR6cHG/PA9kfCK9c8n2cc3i+kwk+an9+NB6bZcrPFAp+29+usZquAext5F5b9LePA32dYZy9Yb0sjIsxIJAAAAPHRSTlMA30AgYIC/nxDvoFCQ0L9AQDBwQGBAQDCvgCCwgBC/2r9f7+e/p2BYUEAwMO/v39/Pv7+/oJ+fkI9wcGBD+mHPAAAKv0lEQVR42uzX109TURzA8fsX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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAsVBMVEUAAAD8ixr7ihn6ihn7iRr7ihr8ixr/jxr7ihr6ihn6iRr6ihn/ixr7ihr6ihr7ihr7jBr/ix3/liP/iy76iRr7ihr6iRr6ihr8ixr8iRr7ixr7ihr6ixr8ixv8ihz7ihz/jRr/jyD/jyD/8LP6iRn7mTH9tFr8sVX9wGv7jh//25T+04f/66z8rk//4Z3/3Zf+2ZD+x3X9vGT8qEb7lCj7ihn/5aL+zHz8oDz7nTf7kSQ1VftMAAAAI3RSTlMAY/TgxIlWHOXW0aMn7qaCOSwOC9u8p52Vk4p0bEtKSDEgEGw+lWwAAADySURBVDjL7dPZcoJAEEBRdkGMa/Y96YsGEHez/f+HJRoqFjAF8673+dTUdFe1cSrvybHadxrOBKDb6FoW+x6bYBei2QTCBucBC0mgXe86FmQi7+DXf9CGaCoyr3lx9NBz3XOI5yKyBNt1e2a/6vo2++JUfvsizxmol5K7lP/8YRGGsFl98j2TXcnbX+MYbovQhkTGRFIsBacIAVHAKZzpQksLJhBowSVcasEM7rXgBp51YLIbWgeuINSCEXg6cAHWqAS3KriGK6NUAGkZfgCdMryBOIuIJ4fWW7g2yr36KAqGRqUXh0oXLfUBemYhb2AcfT+ILEx1K6LZSQAAAABJRU5ErkJggg==\"","import app_version from '@/version'\nimport WX_API from '@/utils/wx_api'\nconst { APP_MODE, CITY } = process.env\n\n// const { model, system, brand, SDKVersion, platform } = wx.getSystemInfoSync()\n\nconst enabled_log = APP_MODE !== 'development'\n\nconst getUserId = () => {\n const KEY = 'gft_uuid'\n let uuid = WX_API.getStorageSync(KEY)\n if (!uuid) {\n let s4 = () => Math.floor((1 + Math.random()) * 0x10000).toString(16).substring(1)\n uuid = `${s4() + s4()}-${s4()}-${s4()}-${s4()}-${s4() + s4() + s4()}`\n wx.setStorage({\n key: KEY,\n data: uuid\n })\n }\n return uuid\n}\n\nexport default (...args) => {\n console.log('GFT--LOG', args)\n}\n\nexport const sendCtmEvtLog = (evt_name, d_paras) => {\n if (!evt_name) {\n return\n }\n sendUserLog('fc_event_record', {\n d_key: evt_name,\n d_paras,\n d_event: 1\n })\n}\n\nexport const sendUserLog = (type, options) => {\n if (typeof options.d_paras != 'object') {\n options.d_paras = {}\n }\n options.d_paras.city = CITY\n console.log('GFT--USER--LOG', options)\n if (enabled_log) {\n const user = WX_API.getStorageSync('user') || {}\n options.d_key = options.d_key.toString()\n const task = setTimeout(() => {\n wx.request({\n url: 'https://ff3.gfttek.com/anyfin/ext/rtlog',\n data: [{\n ...options,\n d_src: type,\n d_user: user.uid\n }],\n method: 'POST',\n success: () => {\n task && clearTimeout(task)\n }\n })\n }, 500)\n }\n}\n\n// export const errorLog = (msg) => {\n// console.error('GFT--ERROR--LOG', msg)\n// if (enabled_log) {\n// const user = wx.getStorageSync('user') || null\n// setTimeout(() => {\n// msg += `; ${JSON.stringify({\n// model, system, brand, SDKVersion, platform, app_version\n// })}`\n// wx.request({\n// url: 'https://hellfire.rippletek.com/dr_js_error',\n// data: {\n// type: `${CITY}_gft_err`,\n// msg,\n// uuid: user ? user.uid : getUserId()\n// },\n// method: 'POST',\n// success (res) {\n// }\n// })\n// }, 1000)\n// }\n// }\n\nexport const imgErrorLog = (msg) => {\n errorLog(`ImgError: ${msg}`)\n}\nexport const requestErrorLog = (msg, other) => {\n const msgStr = JSON.stringify(msg)\n const otherStr = JSON.stringify(other)\n errorLog(`RequestError: ${msgStr}; ${otherStr};`)\n}\n\nexport const requestProfileLog = (msg, other) => {\n const segments = [\n 'domainLookUp',\n 'connect',\n 'SSLconnection',\n 'request',\n 'response'\n ]\n let slow_reason = 'slow_reason:'\n const is_slow_request = segments.some((key) => {\n const time = msg[`${key}End`] - msg[`${key}Start`]\n if (time > 1000) {\n slow_reason += key\n return true\n }\n })\n if (is_slow_request) {\n const msgStr = JSON.stringify(msg)\n const otherStr = JSON.stringify(other)\n errorLog(`RequestProfile: ${slow_reason}; ${msgStr}; ${otherStr};`)\n }\n}\n\nexport const UserLog = {\n viewBuilding: (building_id, scene) => {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_view', {\n d_key: building_id,\n d_paras: scene,\n d_event: 1\n })\n },\n buildingAudios (building_id, d_paras) {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_audio', {\n d_key: building_id.toString(),\n d_paras,\n d_event: 1\n })\n },\n viewBuildingSunlight (building_id, building_name) {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_sunlight', {\n d_key: building_id,\n d_paras: {\n building_name\n },\n d_event: 1\n })\n },\n viewBuildingVr: (building_id, building_name, vr_link) => {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_vr_view', {\n d_key: building_id,\n d_paras: {\n building_name,\n vr_link\n },\n d_event: 1\n })\n },\n viewPage: (page) => {\n if (!page) {\n return\n }\n sendUserLog('fc_page_view', {\n d_key: page,\n d_event: 1\n })\n },\n viewCustomBuilding: (buildingId) => {\n sendUserLog('fc_building_custom_view', {\n d_key: buildingId,\n d_event: 1\n })\n },\n viewConsultant: (consultantId) => {\n sendUserLog('fc_consultant_view', {\n d_key: consultantId,\n d_event: 1\n })\n },\n callConsultant: (consultantId) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_call', {\n d_key: consultantId.toString(),\n d_event: 1\n })\n },\n copyConsultant: (consultantId) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_copy', {\n d_key: consultantId.toString(),\n d_event: 1\n })\n },\n contactConsultant: (consultantId) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_contact', {\n d_key: consultantId.toString(),\n d_event: 1\n })\n },\n searchHouse: (searchWord, ids) => {\n sendUserLog('fc_user_search', {\n d_key: searchWord.substring(0, 64),\n d_paras: ids,\n d_event: 0\n })\n },\n regSearch: (buildingId, searchWord) => {\n sendUserLog('fc_reg_results', {\n d_key: buildingId,\n d_paras: searchWord,\n d_event: 0\n })\n },\n lnSearch: (buildingId, searchWord) => {\n sendUserLog('fc_ln_results', {\n d_key: buildingId,\n d_paras: searchWord,\n d_event: 0\n })\n },\n click_feeds_article: (id) => {\n sendUserLog('fc_feeds_article_click', {\n d_key: id.toString(),\n d_event: 0\n })\n },\n click_discuss_group: (id) => {\n if (id) {\n sendUserLog('fc_discuss_group_click', {\n d_key: id.toString(),\n d_event: 0\n })\n }\n },\n vanke_banner: (id, d_event) => {\n if (id) {\n sendUserLog('fc_vanke_banner', {\n d_key: id.toString(),\n d_event\n })\n }\n },\n click_article: (type, id) => {\n if (type && id) {\n sendUserLog('fc_article_click', {\n d_key: id.toString(),\n d_event: 0,\n d_paras: {\n type\n }\n })\n }\n }\n}","module.exports = __webpack_public_path__ + \"img/red-bag-act.0ecbd782.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAS1BMVEUAAACLkpmPmJqKkZqKkpmLkpqLkZmLkpqLkpr///+KkpqKkZqLkpqLk5uMk5uLk5uSmaCZmaaLkZqKkZmLkZmLk5uMk5qMk5qKkZn9TTwIAAAAGHRSTlMA8xj5hXfIvWUB57LFYVIhEQr02J6Eb0nn53W6AAAAp0lEQVQ4y+2Tyw6CMBBFO31REBB8nv//UkmIMbYN7ULdyFlOTm47yVy1U0cbvPCG+NCmnm7I0Ogkr4GsGWcGME5HjzgDIRI9OJXgwEcjAZ2KGiQaASoDkJ1YAyvGbooCT+QTiRG/Fa15/a9ma6lO/Poy5aOYoKs6sxv0FYertMBQqoKMiwjocrkO97mHoaKunLpFV9tMF1Y6VeJoz7Amlt3x6mb1zzwAkY8aqc1pz+cAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEQAAABECAMAAAAPzWOAAAAAY1BMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+aRQ2gAAAAIXRSTlMAmUQIA1U7DCd6hIB+TTOOFIwSdWNcj4YkHpJrSXAYLW21Xn3HAAACe0lEQVRYw9RU25aDIBDbQRRREVuvrXb7/3+5PQIu44C1j82TejiZJBP8+QaIWnVy1AB6lJ2qxecMt7SCHar09glDwkoIomTJWQo1QBSDOkWTXeAQl+wtxbWFt2ivxxyTL6PoWd4IzkWTs77wxUyHVrxdsOtOI/P2FbfEU3CQeehALsEh5RGOefNRx+bUm6s5zLLpYDxumLNNy1EeGjuhnnQ8l8mVsnnXgsbVeSL9sLt9JCcq/bCb3veltTpOlTqxWtpgIHrnRWSdLPQo+xqTNzoQS2LN5JgivYODXjhK1xryuZXdLf6ljPjGoL+S3bTyhAymY2jY7x0wpD+Wm9YNyZ62Rg4LI7hflq4M1KveizeHpHlBDhU3uRupKHZp1rmZJ6k6hymeywLZ3tClqZCQJ7xwF7hHMzpSIY8VGWOJe++dzmH+bAErcIdn0yXcxgLfFFghrF97gMT2/H9fAjUvvJ0qwNINc/aCQMrImd7rW0cioZjcGRpK5y08P7y2lV0WQu7VayRFIhytFY7RrF/H9VnbkKMQkvxrvLXq9RlW8DhHaQpBxnBYQUjiHO1fNXasgzAMAwFUCFgQWzqgqlT8/1eCijxEb/BwLNzYRq0T23fnVBx+pN/OZXxzUD9xO+3BWkUebJ/i80FNr+mZKbbYZPB16iuLbQ5YLLWuYNnTgGCgDDQgVODC6uaCVAApge36AZmDlKDHBtAjRN1CokYyxL7cn/gmJEPxUga36RnihYxSJgdoPmQUQSfm084LBB1r0USCtdDkzPYCJdfk9HbrMdYbllS7lRu/3ILmZji35T8fEPJRJR+a8vEtHyTzkTYfrvMxP79wyK8+/gBv+Ycc8kd6Nj4AAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAZlBMVEUAAABGRkZGRkZERERGRkZhYWFERERERERERERFRUVGRkZISEhFRUVERERFRUVFRUVTU1NERERFRUVERERGRkZGRkZHR0dGRkZERERFRUVFRUVGRkZHR0dLS0tFRUVHR0dGRkZERETwLLBwAAAAIXRSTlMAgE7xWwX54cxmNSDu0rGYCpmLbFQwLyzpc2BBGhG6Xk1jJ6fqAAABAklEQVRIx+2UyW7EIBBEGxuwjfd19iT1/z8ZrMSOCD0MOcwp847V9QRSI+jFs5lH8YXckkRsJORxqLEjv/v4wTMW7Uw9QZCLyoG03853rjSknGBsvySOSwZOKICWGNQAS+ULYo18ynytSxErXCoAzZVihUID+kQUK9gMmaFoYQCQXykgeAmabt+gfCS8r321b1DSA8Fo4E0RAy/cMqDuKF5ogKqkeCEB8EHxQpd5LyssnIDj7Q9CdwQKcpBJSDgDmXL7QBIQJuDMTAPRNDHTcPQ/hBHo7wutt0mat4+Mo0wB8zusrdEKlt72c+V93hoB9EIeS4671AdiUKYQLONML57MJ0K+JW160YQBAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAhFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8g2+bRAAAAK3RSTlMAgPvySq2IC/YqA+7m4aSQjHVsNiIG2M3CvbGdkmdXRUE6JRwU0Mm6bmJeITj6VwAAAcdJREFUWMPtltmSgjAQRSEgMGyyuLCD4N7//39jJVjjKE0S9cWS+8i9HEin0mnlm7U0XNdYvgFkwEXGG0AuXOS+AQRUr3N+GOjnJYgZZQ70crLIfBKzKDT4J61YPIGxVQIPIqotXZo1DGotWazYAUROLMPZaH+FSf0g8NObBxuJMl9fI3m97A9KnZMrSbjk9h6YZu3t43YGTHtb+HRRkeO9cSQAEievI4yjP1p6b3VCoDlQRUNexLy5CGdrsfoMu6xO1lYAVLK/b4fdli2ufDCwb+aYnff/y5Xt0GSN+TW1HVuw/2hLtIVrgv1Jp7kUD6Q0oHNBZ5rz8YBPA2cuKKS5AA8ENBByQSrNqdzABJpAnwUKxEAB7+wnIAaCROdeRHwQ91KagwwIv0s2IAcCbApIZEEJMjowd2WoqtrgoOZiGyuWXYx0a88Umi69kc4dIhVE9gVvuBF29eHXaDSyNChNgZWVMLI00wJJWcg3C1lQgQ00rhzHRYebWJPhaPHIBLET5+xG5wi7mnmEDyHerLKVL9cJUJ2kQJ2GbnqnSKkiyH5ViqTi1RBnFSvy0jPr7oxmuvKczCb0D2vPsrz1wQ8bU5k06VP0C3f9o4XyexW0AAAAAElFTkSuQmCC\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fc_icon.vue?vue&type=style&index=0&id=03d59f22&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,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\"","const { VUE_APP_TYPE } = process.env\nimport { App_User } from '@/data/user_info'\nexport default {\n install (_Vue) {\n _Vue.mixin({\n data () {\n return {\n app_type: VUE_APP_TYPE\n }\n },\n methods: {\n $checkPostAuth () {\n if (this.app_type === 'tft') {\n document.getElementById('mini_qr_dlg').style.display = 'block'\n return false\n }\n return true\n },\n async $checkUserLogging() {\n const data = await App_User.get()\n if (data.tag_list && data.tag_list[0] == \"天府通游客\") {\n wx.navigateTo({\n url: '/logging_in'\n })\n return false\n }\n return true\n }\n }\n })\n }\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAPFBMVEUAAADNzc3Nzc3Nzc3Nzc3Nzc3Pz8/Nzc3Nzc3Nzc3MzMzNzc3Nzc3Nzc3MzMzOzs7Nzc3Nzc3MzMzMzMyRB7quAAAAE3RSTlMAgNDwUY4x0cKc/OW4s6uGVzgKnP5a4AAAAL1JREFUSMft1skOhCAMgOFKy+K+9P3fdYIZZQ4U5DRR+Y/Wz4NpUKj9RM03Kreaz3QxxoCxGKuAVTE26rQGnppRnEt+BRmbfvl4FaO8Uvl0fJn9yDVizs/FVd+HILY/HOCxWOOxDMaiLsMUlsEyM13G4b5wseKKK34p9ieJDZ8hKj3D7HGGKdS3OXrvhkcZj0mMfkogROm/Qce+YW4izcM+dCJeONsCYm3OtiC3tRm7Qap16rs47Ppphdr/+gCEgjlJ7h3aDgAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-loading.vue?vue&type=style&index=0&id=2d9c1f4c&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAD1BMVEUAAAD///////////////+PQt5oAAAABHRSTlMA+YXza8bhbQAAACxJREFUOMtjGAUkAUVHBQYmERcEEIJKmLgYMDC7IAFn3DqGFxgNktEgoRsAAKCoId8LtRr5AAAAAElFTkSuQmCC\"","const app_version = 'tianfu-web'\nimport LocalData from '@/utils/local_data'\nconst { VUE_APP_TYPE } = process.env\n\nconst isProd = process.env.NODE_ENV === 'production'\n\nexport default (pageName, adIndex) => {\n if (isProd) {\n }\n}\nexport const sendCtmEvtLog = (evt_name, d_paras) => {\n if (!evt_name) {\n return\n }\n console.error(evt_name)\n sendUserLog('fc_event_record', {\n d_key: evt_name,\n d_paras,\n d_event: 1\n })\n}\nexport const sendUserLog = async (type, options) => {\n if (isProd) {\n if (typeof options.d_paras != 'object') {\n options.d_paras = {}\n }\n options.d_src = type\n options.d_paras.app_type = VUE_APP_TYPE\n const user = await LocalData.user.get()\n options.d_user = user.uid\n const data = [options]\n fetch('https://ff3.gfttek.com/anyfin/ext/rtlog', {\n method: \"post\",\n body: JSON.stringify(data)\n })\n }\n}\n\nexport const UserLog = {\n userLogin () {\n const name = {\n 'tft': '成都购房通',\n 'tfsmy': '天府市民云打开'\n }[VUE_APP_TYPE]\n sendCtmEvtLog(name)\n },\n viewBuilding: (building_id, scene) => {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_view', {\n d_key: building_id,\n d_paras: scene,\n d_event: 1\n })\n },\n buildingAudios (building_id, d_paras) {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_audio', {\n d_key: building_id.toString(),\n d_paras,\n d_event: 1\n })\n },\n viewBuildingSunlight (building_id, building_name) {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_sunlight', {\n d_key: building_id,\n d_paras: {\n building_name\n },\n d_event: 1\n })\n },\n viewBuildingVr: (building_id, building_name, vr_link) => {\n if (!building_id) {\n return\n }\n sendUserLog('fc_building_vr_view', {\n d_key: building_id,\n d_paras: {\n building_name,\n vr_link\n },\n d_event: 1\n })\n },\n viewPage: (page) => {\n if (!page) {\n return\n }\n sendUserLog('fc_page_view', {\n d_key: page,\n d_event: 1\n })\n },\n viewCustomBuilding: (buildingId) => {\n sendUserLog('fc_building_custom_view', {\n d_key: buildingId,\n d_event: 1\n })\n },\n viewConsultant: (consultantId) => {\n sendUserLog('fc_consultant_view', {\n d_key: consultantId,\n d_event: 1\n })\n },\n callConsultant: (consultantId) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_call', {\n d_key: consultantId.toString(),\n d_event: 1\n })\n },\n copyConsultant: (consultantId, building_id) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_copy', {\n d_key: consultantId.toString(),\n d_event: 1,\n d_paras: {\n building_id\n }\n })\n },\n contactConsultant: (consultantId) => {\n if (!consultantId) {\n return\n }\n sendUserLog('fc_consultant_contact', {\n d_key: consultantId.toString(),\n d_event: 1\n })\n },\n searchHouse: (searchWord, ids) => {\n sendUserLog('fc_user_search', {\n d_key: searchWord.substring(0, 64),\n d_paras: ids,\n d_event: 0\n })\n },\n regSearch: (buildingId, searchWord) => {\n sendUserLog('fc_reg_results', {\n d_key: buildingId,\n d_paras: searchWord,\n d_event: 0\n })\n },\n lnSearch: (buildingId, searchWord) => {\n sendUserLog('fc_ln_results', {\n d_key: buildingId,\n d_paras: searchWord,\n d_event: 0\n })\n },\n evaluate_2nd_hand: (param, result) => {\n sendUserLog('fc_evaluate_2nd_hand', {\n d_key: JSON.stringify(param),\n d_paras: JSON.stringify(result),\n d_event: 0\n })\n },\n click_feeds_article: (id) => {\n sendUserLog('fc_feeds_article_click', {\n d_key: id.toString(),\n d_event: 0\n })\n },\n click_discuss_group: (id) => {\n if (id) {\n sendUserLog('fc_discuss_group_click', {\n d_key: id.toString(),\n d_event: 0\n })\n }\n },\n vanke_banner: (id, d_event) => {\n if (id) {\n sendUserLog('fc_vanke_banner', {\n d_key: id.toString(),\n d_event\n })\n }\n },\n click_article: (type, id) => {\n if (type && id) {\n sendUserLog('fc_article_click', {\n d_key: id.toString(),\n d_event: 0,\n d_paras: {\n type\n }\n })\n }\n }\n}\n\nexport const errorLog = (msg) => {\n console.error('error log', msg)\n if (isProd) {\n }\n}\n\n\n\nexport const imgErrorLog = (msg, other) => {\n errorLog(`ImgError: ${msg}`)\n}\nexport const requestErrorLog = (msg, other) => {\n const msgStr = JSON.stringify(msg)\n const otherStr = JSON.stringify(other)\n errorLog(`RequestError: ${msgStr}; ${otherStr};`)\n}\n\nexport const requestProfileLog = (msg, other) => {\n const segments = [\n 'domainLookUp',\n 'connect',\n 'SSLconnection',\n 'request',\n 'response'\n ]\n let slow_reason = 'slow_reason:'\n const is_slow_request = segments.some((key) => {\n const time = msg[`${key}End`] - msg[`${key}Start`]\n if (time > 1000) {\n slow_reason += key\n return true\n }\n })\n if (is_slow_request) {\n const msgStr = JSON.stringify(msg)\n const otherStr = JSON.stringify(other)\n errorLog(`RequestProfile: ${slow_reason}; ${msgStr}; ${otherStr};`)\n }\n}\n\n\n","module.exports = __webpack_public_path__ + \"img/64_personal_icons.02c6398f.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACYAAAAkCAMAAADSK7iXAAAAeFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////GqOSsAAAAJ3RSTlMAlGuAiVvVFvuvVgSkf1TynWRgTisl0Mh6dEoy9rSpubaYb2xBHBHhrHe6AAAA3UlEQVQ4y63TRxOCMBCG4bXERlE6SLH7/f9/aIA4OwwE9+B7SQ7PzOaQpXFKkSAFSJwHrAQsF7O1gBV/ZXdgIWAPGVvKWADcZOwkYKGYuQKmZpkThg61HYCGusr8NWI+sHfMpen9DvWIPdE6442amr42LtKHUZstWd0ZqFlZnWZXVlan2WVCKTV0GZAOVRTxIrEDhsoHfFrxhrDrFa+ax4zdUPWCGTtWdkZR8SYLs8TMkzBP8KdPQEAlcEzmVHIESqJMO3dhzdUq0zqu8KMqptal8yqNv+PV0prqHv4BY+Mm7ezc2uMAAAAASUVORK5CYII=\"","var map = {\n\t\"./nconv.png\": \"ee3b\",\n\t\"./red-bag-act.png\": \"243f\",\n\t\"./weixin-official.png\": \"5271\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"3a0d\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./house_item.vue?vue&type=style&index=0&id=3fde55f8&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-modal.vue?vue&type=style&index=0&id=8c4751e8&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAkFBMVEUAAAA0NDQzMzMzMzMzMzM6OjozMzMzMzMzMzMzMzM5OTkzMzMzMzMzMzMzMzM5OTk8PDw3Nzc0NDQzMzMzMzMzMzMzMzM0NDQ3Nzc3NzdQUFA0NDQ0NDQ1NTU1NTU1NTUzMzM0NDQzMzM0NDQzMzM0NDQzMzMzMzM0NDQ0NDQ2NjYzMzMzMzMzMzMzMzMzMzNuNTxaAAAAL3RSTlMAQJD78QSd9abiEr/X0rgOCSN/7dyJakccFwZXbzMtJ8KXeGdkUM6wdl04x+ZyOwWEOvgAAAMvSURBVFjD7ZbZmqIwEIVDCIRVNhEUBBV37c77v910iqgRZFjuZr4+V0lV6iepVErRr/4/BblhO5Q4tpEH0ylW6DJJbmhNwvg7whoiO388JzHZB5nJWE6uitDINjA27EhM1XwURtMFBSuasChYsHRtBGgLITS23nIfUzBvh3MWEOAErWJwwLEYylEgPzOv7fFmkCdlYIIc4GgffUByhqWp4mvnVkeRzrm3GlSId777ostd8HPf/aGZ1p/T9dZUVXO7fhr0ofnmWaCpmKwgDNArYUopz2A/x+NbNx4cmz1lP0gGP7rXCzrwoExMMJOEhTGrV/QplL5XqnDZGDtQPqW057gXhPndi3EskgOpegXP4fA9ggzYYnzjjcOHmuBN5SbMNizp00b6nPkaG5wpfcsZDTrVw1MDNO/jQIQtnYEs+WhJGuZNL0iXPndmPCRFKN3w0VlK9qkXtOMhsAuxD0Y3Gwqt/2Flg65f4csur3dXS35fFz5J+h+/Ck+pXdpYfoyqP+zRshIJ7UXLj/ZIqGTwpX4d3tuItzduN2PvvbeRAxog6IHrLu9a7a8iOcNHraOhH7k37462zvhH8ZqvdfnaHWrqVVou/8oFc50bvX3lMpB6/Zl8wyjp/qVSpPt0V+8nZ0LxM59R0Oak0fMm7kxo3SpDENyyD/tzlq3z13a/fnBCShtEiYnrHAcEdm01OJBoUtZLZhGhHSClUUzs6CFJ3g2Mh46oDlNVZzKV8uOKFzcOhL4gzCyQUGGyuirGglAIgURUQUJgGqLxINgTxAoqtLYpIJRRiJ5Z1qyu1gxNAIGV1Imq00MUNBWEApc95ZZoOgj5r38jPpoMAlWQKFqJ6XQQCnTH0Us0DdTWL0g2ed+H/S6/JIXW7vxFcsl3+4Oy7AUl+KgyIWrHigRbhzPKHpob1bIbdAlN1tAdX+vmmLtNl3rKkk+gTh0zzYvpRxcdDgLNo25fN8jFWZH6XnCtdKcRYhqLa+D5aZGENv07KIoD2RqELxbVr7LLz2bqJ5AFDedrhZq6nmpM6LV/LbeAst6tC0IwmFoqdUK2deG0UYQsWsWmoU5JG21H/eof1h+5K8vZZkcgKAAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEUAAAAAv78AsY0As5EAsI0AsY0AsI20cSvdAAAABnRSTlMABKoln5SGzR2zAAAASElEQVQ4y2MYMYDZAIdEWIoAdg1paYq4JJKwa3HDpUUIlxZGtaGoJYUBlxYDkiQQRhG2HOHcoaEBkRgIJx9EgiOURDET9cgCAKG4IK2fWjJeAAAAAElFTkSuQmCC\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:_vm.app_type,style:([{ width: _vm.width }])},[_c('ul',{staticClass:\"tabs\"},_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:[{ active: _vm.selected === tab.key, bottom_active: _vm.selected === tab.key && _vm.tabs.length > 1 }],attrs:{\"data-key\":tab.key},on:{\"click\":_vm.onChange}},[_vm._v(\" \"+_vm._s(tab.name)+\" \"),(tab.new)?_c('i',{staticClass:\"new\"}):_vm._e()])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n methods: {\n onChange (e) {\n this.$emit('change', e.currentTarget.dataset.key)\n }\n },\n props: {\n scroll: {\n type: Boolean,\n default: false\n },\n width: {\n type: String\n },\n tabs: {\n type: Array,\n validator (value) {\n if (value.length) {\n return value.every(({ key, name }) => {\n return key != undefined && name != undefined\n })\n }\n return true\n }\n },\n selected: {\n type: [ String, Number ]\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_tabs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_tabs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./common_tabs.vue?vue&type=template&id=754ef7a4&scoped=true&\"\nimport script from \"./common_tabs.vue?vue&type=script&lang=js&\"\nexport * from \"./common_tabs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./common_tabs.vue?vue&type=style&index=0&id=754ef7a4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"754ef7a4\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAWlBMVEUAAACgoKCbm5uampqampqZmZmampqampqZmZmZmZmZmZmampqZmZmampqZmZmampqampqbm5ubm5ubm5uZmZmZmZmZmZmhoaGampqZmZmcnJyZmZmZmZmZmZkQ4nmzAAAAHXRSTlMABkHVs5HNKfrnmYbwx7KmkGtPHN1kvhPqox+PcS9MDmoAAAE/SURBVEjH1VVbsoMgDCVIUcH6bK19uP9t3hIuwwhKyV97fphAEnJISNgPAHjfyrqqZfvk8Fmdd83q0XQ8rV6KNYQoE8Gc1j30R4HdZqdSCKWVKJw43/bDudjj8zAxi2k4261Lueff6hfjZncsrEV8B9h4TrDPa4544H51ZTGuFXoKCaAf1I8t8CygIQIv8e1im1/kC0f5QeabnHdmZ2RHGM1xxzygMe/PjmHy0UAQ0ZAwGIKYeiNPCYMJa8rLraHMUjC0Wy9KfLYE8NmlF+u3qJIG6q1Re9EkXycNtCkc8g1kDuRXoubhSc40uZao1Ur+D9QfR/7T2V1D236Z3ZeU7WRA6HyIOxB6K0I+8rq3x8Jz50Pl1lfmBHrI1RPJmnFwd7JOT9GeO4+v6p8HywVf0KBm2bBENGXe62XRwL4Sf+jTOWmxYsx6AAAAAElFTkSuQmCC\"","import WX_API from '@/utils/wx_api'\nimport Cookie from '@/utils/cookie'\n\nconst storage = {\n get (key) {\n const val = Cookie.getItem(key)\n return val ? JSON.parse(val) : ''\n },\n set (key, data) {\n return Cookie.setItem(key, JSON.stringify(data), {\n sPath: '/'\n })\n },\n remove (key) {\n Cookie.remove(key)\n }\n}\n\nconst handleHistory = (value, history) => {\n const pastIndex = history.indexOf(value)\n if (pastIndex > -1) {\n history.splice(pastIndex, 1)\n }\n history.unshift(value)\n if (history.length > 10) {\n history.pop()\n }\n return history\n}\n\nconst addHistory = (key, value) => {\n if (value) {\n let history = WX_API.getStorageSync(key) || []\n console.log(history)\n history = handleHistory(value, history)\n WX_API.setStorageSync(key, history)\n return history\n }\n}\n\nconst LocalData = {\n token () {\n return storage.get('token')\n },\n search: {\n get () {\n return WX_API.getStorageSync('search_history') || []\n },\n add (value) {\n return addHistory('search_history', value)\n },\n remove () {\n window.localStorage.removeItem('search_history')\n }\n },\n filter_search: {\n get (type) {\n const search = WX_API.getStorageSync('filter_search')\n return search && search[type] ? search[type] : []\n },\n add (type, value) {\n let search = WX_API.getStorageSync('filter_search') || {}\n search[type] = handleHistory(value, search[type] || [])\n WX_API.setStorageSync('filter_search', search)\n return search[type]\n },\n remove (type) {\n const search = storage.get('filter_search') || {}\n delete search[type]\n WX_API.setStorageSync('filter_search', search)\n }\n },\n result_search: {\n get () {\n return WX_API.getStorageSync('search_result_history')\n },\n add (value) {\n return addHistory('search_result_history', value)\n },\n remove () {\n window.localStorage.removeItem('search_result_history')\n }\n },\n review_search: {\n get () {\n return WX_API.getStorageSync('search_review_history')\n },\n add (value) {\n console.error(value)\n return addHistory('search_review_history', value)\n },\n remove () {\n window.localStorage.removeItem('search_review_history')\n }\n },\n second_hand_search: {\n key: 'second_hand_search_history',\n get () {\n return WX_API.getStorageSync(this.key)\n },\n add (value) {\n return addHistory(this.key, value)\n },\n remove () {\n window.localStorage.removeItem(this.key)\n }\n },\n user: {\n DONE: false,\n set (user) {\n if (!this.DONE) {\n this.DONE = true\n storage.set('user', user)\n }\n },\n get () {\n return new Promise((res) => {\n res(storage.get('user'))\n })\n }\n }\n}\n\nexport default LocalData\n","module.exports = __webpack_public_path__ + \"img/building_rank.a4e186cb.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAD1BMVEUAAAD///////////////+PQt5oAAAABHRSTlMAAZ1NftPF1wAAADNJREFUKM9joCMQNkQTMHESQBNwUUQVEHJBU8KoQislzngFEFowDaVcAcL7GAGEEYT0BQDaLQslQUm1TwAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/购房必看.b10bc366.png\";","const BaseSize = 32\nfunction setRem () {\n const htmlWidth = document.documentElement.clientWidth || document.body.clientWidth;\n const sacle = htmlWidth / 750\n const htmlDom = document.getElementsByTagName('html')[0];\n htmlDom.style.fontSize= BaseSize * Math.min(sacle, 2) + 'px'\n}\nsetRem()\nwindow.onresize = function () {\n setRem()\n}","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAjVBMVEUAAAAAs5MAsZEAsJEAtpYAsZEAspIAsZIAspMAtZwAxp4AsJEAtJEAsZEAsZEAsZEAsZEAspIAsZIAtpYAsZEAs5MAsJAAsZEAsZEAsZEAspEAspIAt5gAsZEAsZEAu50AsZAAsZEAsZAAsZEAsJEAsZEAspIAspMAspIAspUAsZEAsZEAs5EAsZIAsJDDhoRyAAAALnRSTlMAQMDwIJBgRDsMBfMz/PjohlhTFM4l1tLFpXMrGLt+EN6xoZuVbE43LxrZlGReMmCt1gAAAd1JREFUSMfllueSgjAQgBdFJaEIig0L6tlL3v/xjjWTiRlShD93c/f9wcnulzrZCH+N1dnTE40dJi2mzEzet7kTVG3MzaNfh8zFjJjkNXPzZXA9Hh15erIdhmNfL98x+AAzKSYU+ti8Ck2tZ9GtMhb6GG713uDJ7tfmaY+scqfK6OhDJN09oK2MNJT9R9ozkR6XNjnqMDv5wCgfY+YkNchP9gkbrXxNGBJ3TcTcjnTyASPbEwET1Jthyk4n4w3sXsEG2VY5SVmXfb4gO31M8upygO0nh7zEpKwue7xTI3J6/R+X+ZVsI4ti0EKWZaiNPJEFUJVXFypOBmMIiYgiH2TpVWScznb56iQXaxqFLBy9yRO16AsZv+IE9mKOJKx+hKQmi+dGygXDTGx5XYM71ghxm+S0xUPXfGTcMPHENl9zDfduu2Uj/1t+Qo2IVxg7AdO/nWNs3zvkjSzcKjPeq41zguWZaiJHhiyeA85VzsnjLdkhxoweaKA39k5cACdLlPbhGHRMujJF7l6guknw2f/F5IyHM1THRVcPPeZKpg+l0t9tQ8BGeQmQwWvAWbnGT3gKkMsKJO5TYa8u4hM0JWOCApqzkeW1BQuGdGgrmc5xg0tox3gd5z60hsJv5huE1J0YybtVPwAAAABJRU5ErkJggg==\"","//获取滚动条当前的位置\nfunction getScrollTop() {\n if(document.documentElement && document.documentElement.scrollTop) {\n return document.documentElement.scrollTop\n } else if (window.pageYOffset) {\n return window.pageYOffset\n } else if (document.body) {\n return document.body.scrollTop\n }\n return 0\n}\n\n//获取当前可视范围的高度\nfunction getClientHeight () {\n return document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : window.innerHeight\n}\n\n//获取文档完整的高度\nfunction getScrollHeight () {\n return Math.max(document.body.scrollHeight, document.documentElement.scrollHeight)\n}\n\nexport default {\n mounted () {\n window.addEventListener('scroll', this.checkPagePullUp)\n },\n destroyed () {\n window.removeEventListener('scroll', this.checkPagePullUp)\n },\n methods: {\n checkPagePullUp () {\n const scroll_to_bottom = getScrollTop() + getClientHeight() >= getScrollHeight() - 60\n if (scroll_to_bottom) {\n this.onPullUp()\n }\n }\n }\n}","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-article.vue?vue&type=style&index=0&id=2859ab44&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/computer.2a68b027.png\";","module.exports = __webpack_public_path__ + \"img/prepayment_calc.9905382f.png\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./img_wrap.vue?vue&type=style&index=0&id=1420bca4&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/weixin-official.d8934c22.png\";","module.exports = __webpack_public_path__ + \"img/查复核顺序.8fafa47e.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAASFBMVEUAAAD////////////////////////////////////////////////////////////////////////////////////////////neHiwAAAAF3RSTlMAgAe2RXmkZJQhc9bA9+/FrZmHNRnzRk2Ns1wAAAERSURBVFjD7ddZDsIwDEXRNGRoyzx6/zsFIcFDuI5J/Enur6UDAiWtXa/3D005Du/SMXzOwnOEYhAZP9JXCcNErCQ5a2K9PzUQCVPeSLz5NZyXoLjoTES132hYhDKhwm+kQ/E526j/2mmrQANmpfyKbBAcKwTHDsHZmiA4q5MJguOHJog7rg3iThvEnTaIO20Qdxoh7uBgRgVSHNwqoQSpDm6V5DRIdlCYg9Mg3UEyZHQAGR1ARgeQ0QEkOSboAMcE3QrOeX/dn3+FZtm57B6D3eVHKMBZfixnHcKBOjCn8hrBgTJBqEMd6hB7PdbbFB7ZmarLwgpR3SQtNZWN8ppV1doXFr+KRq+vonoxT67X+4Pu6wlah4YVNhkAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAVFBMVEX///8AAAAqKir////////////////////////////////////////////6+vo4ODj///8yMjLn5+dMTExaWlp8fHyFhYWTk5OsrKy3t7dCQkLr6+ti63Z0AAAAHHRSTlPMAPR4FAXEwrauoJloOc3xJPPQ7erj4d/a2O/PJzNPDwAAAMFJREFUOMuFk9kSwyAIRYmCiVuzdG///z/bNFNFY4b7Jp4Z4ALQJVHU3hpjvY6UowlA3UNSr7ECKBgoZAJxAB3s5DAD0wANDdMfQP7PCdwAcnAgRz8gwKHCCqA5Bgx+Ac0Cp5rQHRDz5zGP9xLoCSJ7jkqpy1IQEXgGtWp8FjnAc2DTlZXiwe4BdX6nkAXTANQtNyoBfTvFklOIRcptcqNeDaMqq+ed1dWw6mlpcdzSwogrJy2tuPby4cinJx+veP4fe5kHDk46DBUAAAAASUVORK5CYII=\"","const extendShareTimeline = () => {\n const getQuery = (url, name) => {\n const reg = new RegExp(\"[^\\?&]?\" + encodeURIComponent(name) + \"=[^&]+\")\n const arr = url.match(reg)\n if (arr != null) {\n return decodeURIComponent(arr[0].substring(arr[0].search(\"=\") + 1))\n }\n return ''\n }\n const getOptFromShareApp = (options) => {\n const { title, path, imageUrl, timelineImage } = options\n const index = path.indexOf('?') + 1\n let query_str = path.substring(index).replace(/share_by=(\\w+_)*/, 'share_by=timeline_')\n let query\n const sub_page = getQuery(query_str, 'sub_page')\n console.error(sub_page, sub_page.substring(sub_page.indexOf('?') + 1))\n if (sub_page) {\n query = `share_by=${getQuery(query_str, 'share_by')}`\n query += `&share_by_consultant_uid=${getQuery(query_str, 'share_by_consultant_uid')}`\n if (sub_page.indexOf('?') > -1) {\n query += '&' + sub_page.substring(sub_page.indexOf('?') + 1)\n }\n } else {\n query = query_str\n }\n console.error(query)\n return {\n title,\n query,\n imageUrl: timelineImage || imageUrl\n }\n }\n const wrapPage = (page) => {\n return (obj) => {\n if (!obj['onShareTimeline'] && obj[\"onShareAppMessage\"]) {\n obj['onShareTimeline'] = function () {\n return getOptFromShareApp(obj[\"onShareAppMessage\"].apply(this))\n }\n }\n page(obj)\n }\n }\n const wrapComponent = (component) => {\n return (obj) => {\n if (obj.methods && !obj.methods['onShareTimeline'] && obj.methods[\"onShareAppMessage\"]) {\n obj.methods['onShareTimeline'] = function () {\n return getOptFromShareApp(obj.methods[\"onShareAppMessage\"].apply(this))\n }\n }\n component(obj)\n }\n }\n Page = wrapPage(Page)\n Component = wrapComponent(Component)\n}\n\nmodule.exports = extendShareTimeline","module.exports = __webpack_public_path__ + \"img/航拍看房.d1d4f961.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAAUCAYAAACNiR0NAAAABGdBTUEAALGPC/xhBQAAAu1JREFUOBGVlF1IVEEUx8+Ze8tsCUkCiz4U0+ghg6CCfMiWCKJMsOzaGhFC9CKh2d5NSe26W2C7flBvC5EJ5q4bomUI5YNoBn0IUQ+B5VNaVpDhtlLJ3ns6d2Fl2dp2m4c7M2f+53dn5pw5CH9pWufICuPrbDkZeJgQdiJBFgHpiDhLAM8E4aDYldWvWa3heHeMNzR5/JUGGFfZvoZB49w/RhQfgUAA0kYG7yOCPQyfIhTqFXv5QCxjCaiNjMj6xKcuIqpg400pTXZp1cr7WHF0rLX5CsMGeICoEBHanXabnX/AmweIABmCvLNenpeyQHGqtv6o87/6RnePgynXBILHqVY4TK1kfsiytYqPogqAGqejosu0pdLGhvueFB0okxlav/dg2cuxR32T2OINZITmw9MosM9lt1WmAorXNHh6hpEwb0NG/hYR+h4+A4jLJUq7GC9MdS4EtvAJcz4Epw4JICzmixzS1KNfUgXE61YZmU95U9MGGcdljlQBA5vjRanM29sD6d/Cetc8zBUzJ52hBTJKYr/IzJpMBRCvsVhyw3Ohd93CAB/DzOVFbGjzlbAhEm0AEd6WjUOKoujxzsnmmndwpR5ayJdRp1YDIJ8zcgHIuP8GpIfs/N/AcDB0jo+tygx6jbzf1ZK0vbZW+ZFsJ4nWEchKiK8E599dfil5QdJ3JBIns2vXA5s4W/YLogEhMtfe4+uc0Q2qS+aYaF1f1Nu4cISERe4UWqX1Jwk8zxXkSIPHfymRUyI7v5J6PmEZCLygVSmhSKxNcaPH30Fk1HDVqHapthuJALH2plbfKTLoNseh26VWnDbXloBmxbns8XVwxKvZOCrJskOrVZ7HAqJjl9u/+RcYzTw/yQG9VZAjnY2m2hIwKm5y9x4j0N1cQXL5d+NcgUY5ejORdQPWc1/EVbwQiWZRiDqn/cSdqK/Z/wE0jV7vxLKZ4NtSvtcSFuzmrFrHj98soZ8J8AUPHkjZckBTlEVTH9t+A/xnIGf/Fn40AAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAVFBMVEUAAAAA9NQAvpgAwqMAwJoAvpcAvpcAvpgAvpgAvZcAvpcAvpcAv5kAw5oAvZgAvpcAvpoAv5kAwqAAvpcAvpcAvpgAvpgAwpkAwZwAv5kAvpkAvZcdXKMTAAAAG3RSTlMAAuQMSfTivpTpsYxkJtqFVD0HdpCoxTIUf3Ugk/NcAAAA+klEQVRIx+2UyXKDQAxEZzQbO2bxkrz//89UcXAlsTDWzQe/G100kgZNuw9vip/aMqQ0lHby7ph5qblTL7M74JT5Qz4972YEkCr2IfSxEoDRP3n/DEjn78+dAOd9xwg04bcSGmDc7R9Y/b+iK7Azx5yheSjvG8j6WS0g4VEOAos6cQ2dU+ig1uaeQLz6JYFJ0VuonEoFrSIXiLohQlHkAXrd0MOgyAmCbgiQzAZzS9ahL+ZjNf8462rMxuX7Nq53HQwXqAKi8YoWWwhsZQ0xs1FuLweZjAkgX1+LSvkK7poBUjwM43xp49b7rWxeS5yvQHYWTiLRfXgrfgC2hRriZupgfQAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAARFJREFUWAntls0NwjAMheMWlqBiIA7QHRAjUNiBMgJiBigHBkJlCWhNjETVHJrGqREc4lMjx3lfXvOnVIjgwI8dAFd9RIRql8xVpCBelwUAoGutrV9kS7Zz1T5Z1ArPdY2nR54cCKid9/12BlBavRFBXEpBOAPEm/KiAI7SECwbyXaaudIONCAaapyVK981wQIgUWkINoA0hBeAJIQ3gBTEIIAuCH1WpaPtvaB8Xzhvw76BjLwmMNqWxiCArh1BR7VF00g5kxpVutElzj0TvACkxGlSbABJcTaAtDgL4BviLIBnPknpLUBF7xh4CX2Gcd+G7feAkDhBOC9C+gVVPp1RUZzdrr7XL9WHCA4EB/7KgRcCr8Iza92OaAAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAY1BMVEUAAAAzMzNGRkYzMzMzMzMzMzMzMzMzMzMzMzM1NTUzMzM7OzszMzM2NjY0NDQzMzM0NDQ1NTU2NjY0NDQzMzM0NDQ1NTUzMzM1NTU0NDQ0NDQzMzM0NDQ1NTUzMzMzMzMzMzP/FPkWAAAAIHRSTlMA6Af2ms3673gYsxHHHkqRWnQ0jofjMqNlcNvTvmZBggc/bucAAAGOSURBVFjD7ZfdkoMgDIUTVERbrFat9nd9/6dcCVunu+sYLMzujd+lkyGHkwARNjY2/p+sj/MEJSZ53GfwLlrth1f2SsMb7Go5/ETWO1iJUOkwR6rEOm+mTUWjPc1oVDRtcI1Xp3YgMC7EU2IRo/3YnsCVwqZPK/F9u1VqRRaueuw6h9/G7g52JTdNWUvBJcxRUpLWxSdBPuMR5jkiOe5QO0V6aJ35lUiT4vuQDC0XIkoqBNuZNfm8GEKO19z5kpSOFy21g0MVk61ycMmUDAVXWDSFW+4hkysGjtiELfbS3UQU/BkyYT2XKhJ800ac8HwMSIAnGeNy1wCvhDhJ5t3GpQDTjg3wNKYlAyvy9+gaqmq3UH3ULUX0Kzq7DHvW/E//NdR99BHohoyyQHf2IdArInXQd83/pb0FevtT7T+NEPIcYj4iOuE/sVkS7TlDTuDDa6qNVIEDaxQ/Z3caQCeTUW9O/heVWbXd80vjPm/f7b/IZR/3L+6ev8Qi+PLAMAs9jWrAH1EjNgI2Njb+nE+cdEZtx1x3GwAAAABJRU5ErkJggg==\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{class:[_vm.app_type, {\n tabar_page: _vm.is_tabbar_page\n}],attrs:{\"id\":\"app\"}},[(_vm.inited)?_c('navigation',[_c('router-view')],1):_vm._e(),_c('div',{attrs:{\"id\":\"mini_qr_dlg\"}},[_c('img',{staticClass:\"qr\",attrs:{\"src\":require(\"./assets/qr.jpg\")}}),_c('div',{staticClass:\"overlay\",on:{\"click\":_vm.hideQr}})]),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.is_tabbar_page),expression:\"is_tabbar_page\"}],staticClass:\"tabbar\"},[_c('router-link',{staticClass:\"tab-item\",class:{ active: _vm.is_home },attrs:{\"exact\":\"\",\"to\":{name: 'Home' },\"replace\":\"\"}},[_c('i',{staticClass:\"index\"}),_c('div',[_vm._v(\"首页\")])]),_c('router-link',{staticClass:\"tab-item\",attrs:{\"to\":{name: 'AllBuildings' },\"replace\":\"\"}},[_c('i',{staticClass:\"all-buildings\"}),_c('div',[_vm._v(\"找房\")])]),_c('router-link',{staticClass:\"tab-item\",attrs:{\"to\":{name: 'Messages' },\"replace\":\"\"}},[_c('i',{staticClass:\"messages\"}),_c('div',[_vm._v(\"消息\")])]),_c('router-link',{staticClass:\"tab-item\",attrs:{\"to\":{name: 'PersonalCenter' },\"replace\":\"\"}},[_c('i',{staticClass:\"personal-center\"}),_c('div',[_vm._v(\"我的\")])])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport wx from '@/utils/wx'\nimport { checkSessionStatus } from '@/common/utils/ajax'\nexport default {\n data () {\n return {\n inited: false\n }\n },\n computed: {\n is_tabbar_page () {\n const { name } = this.$route\n return ['Home', 'AllBuildings', 'Messages', 'PersonalCenter'].includes(name)\n },\n is_home () {\n const { name } = this.$route\n console.error('name', name)\n return name === 'Home'\n }\n },\n mounted () {\n window.wx = wx\n this.$sendCtmEvtLog('App打开')\n if (this.app_type === 'tft') {\n checkSessionStatus().then(() => {\n this.inited = true\n })\n } else {\n this.inited = true\n }\n },\n methods: {\n hideQr () {\n document.getElementById('mini_qr_dlg').style.display = 'none'\n }\n }\n}\n","import mod from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../loader/img_version_loader/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../node_modules/cache-loader/dist/cjs.js??ref--12-0!../node_modules/thread-loader/dist/cjs.js!../node_modules/babel-loader/lib/index.js!../loader/img_version_loader/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./App.vue?vue&type=template&id=66cc903c&\"\nimport script from \"./App.vue?vue&type=script&lang=js&\"\nexport * from \"./App.vue?vue&type=script&lang=js&\"\nimport style0 from \"./App.vue?vue&type=style&index=0&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport Vuex from 'vuex'\n\nVue.use(Vuex)\n\nexport default new Vuex.Store({\n state: {\n },\n mutations: {\n },\n actions: {\n },\n modules: {\n }\n})\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('label',{staticClass:\"fc-icon\",style:([_vm.style])},[(_vm.can_load_img)?_c('img',{staticStyle:{\"width\":\"100%\",\"height\":\"100%\"},attrs:{\"src\":_vm.src}}):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n\nimport lazy_load_mixin from './lazy_load_mixin'\nexport default {\n mixins: [\n lazy_load_mixin('.fc-icon')\n ],\n props: {\n type: {\n type: String\n }\n },\n computed: {\n src () {\n return require(`../../assets/icon/${this.type}.png`)\n },\n style () {\n const matched = this.type.match(/^\\d+/g)\n if (matched.length) {\n const size = (matched[0] / 2) + 'px'\n return {\n width: size,\n height: size\n }\n }\n return {}\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fc_icon.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fc_icon.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fc_icon.vue?vue&type=template&id=03d59f22&scoped=true&\"\nimport script from \"./fc_icon.vue?vue&type=script&lang=js&\"\nexport * from \"./fc_icon.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fc_icon.vue?vue&type=style&index=0&id=03d59f22&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"03d59f22\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"picker\",class:_vm.app_type,on:{\"click\":_vm.toggleList}},[_vm._t(\"default\"),_c('div',{staticClass:\"picker-list\",class:{ show: _vm.show_list }},_vm._l((_vm.list),function(item,i){return _c('div',{key:i,staticClass:\"item\",class:{ active: _vm.value === i},on:{\"click\":function($event){return _vm.select(i)}}},[_vm._v(\" \"+_vm._s(item)+\" \")])}),0),_c('div',{staticClass:\"overlay\",class:{ hide: !_vm.show_list }})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n data () {\n return {\n show_list: false\n }\n },\n props: {\n value: [String, Number],\n range: [Array],\n value: [String, Number],\n 'range-key': String\n },\n watch: {\n value: {\n handler (val, old) {\n if (val != old) {\n this.$nextTick(this.moveScroll)\n }\n },\n immediate: true\n }\n },\n computed: {\n list () {\n if (this.range && this.range.length) {\n const key = this.rangeKey\n return this.range.map((item) => {\n return key ? item[key] : item\n })\n }\n }\n },\n methods: {\n moveScroll () {\n if (this.$el && typeof this.$el.querySelector === 'function') {\n const $active_el = this.$el.querySelector('.active')\n if ($active_el) {\n $active_el.scrollIntoView()\n }\n }\n console.log(this.$el)\n },\n select (i) {\n this.$emit('change', {\n target: {\n value: i\n }\n })\n },\n toggleList () {\n this.show_list = !this.show_list\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./picker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./picker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./picker.vue?vue&type=template&id=53326153&scoped=true&\"\nimport script from \"./picker.vue?vue&type=script&lang=js&\"\nexport * from \"./picker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./picker.vue?vue&type=style&index=0&id=53326153&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"53326153\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"picker\",on:{\"click\":_vm.toggleList}},[_vm._t(\"default\"),_c('div',{staticClass:\"picker-list\",class:{ show: _vm.show_list }},[_c('div',{staticClass:\"list\"},_vm._l((_vm.year_list),function(item,i){return _c('div',{key:i,staticClass:\"item\",class:{ active: _vm.year === item},on:{\"click\":function($event){return _vm.selectYear(i)}}},[_vm._v(\" \"+_vm._s(item)+\"年 \")])}),0),(_vm.show_month_list)?_c('div',{staticClass:\"list\"},_vm._l((_vm.month_list),function(item,i){return _c('div',{key:i,staticClass:\"item\",class:{ active: _vm.month === item},on:{\"click\":function($event){return _vm.selectMonth(i)}}},[_vm._v(\" \"+_vm._s(item)+\"月 \")])}),0):_vm._e(),(_vm.show_day_list)?_c('div',{staticClass:\"list\"},_vm._l((_vm.day_list),function(item,i){return _c('div',{key:i,staticClass:\"item\",class:{ active: _vm.day === item},on:{\"click\":function($event){return _vm.selectDay(i)}}},[_vm._v(\" \"+_vm._s(item)+\"日 \")])}),0):_vm._e()]),_c('div',{staticClass:\"overlay\",class:{ hide: !_vm.show_list }})],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nconst formatNumber = (num) => num > 9 ? num : `0${num}`\nconst range = (start, stop, step) => Array.from({ length: (stop - start) / step + 1}, (_, i) => start + (i * step))\nexport default {\n data () {\n const date = new Date()\n return {\n show_list: false,\n year: date.getFullYear(),\n month: date.getMonth() + 1,\n day: date.getDay(),\n }\n },\n props: {\n value: [String, Number],\n start: [String, Number],\n end: [String, Number],\n fields: String\n },\n watch: {\n value: {\n handler (val, old) {\n if (val != old) {\n const vals = val.split('-')\n console.log(vals)\n if (this.fields === 'year') {\n this.year = Number(vals && vals.length ? vals[0] : '')\n }\n if (this.fields === 'month') {\n this.year = Number(vals && vals.length ? vals[0] : '')\n this.month = Number(vals && vals.length > 1 ? vals[1] : '')\n }\n if (this.fields === 'day') {\n this.year = Number(vals && vals.length ? vals[0] : '')\n this.month = Number(vals && vals.length > 1 ? vals[1] : '')\n this.day = Number(vals && vals.length > 2 ? vals[2] : '')\n }\n this.$nextTick(this.moveScroll)\n }\n },\n immediate: true\n }\n },\n computed: {\n show_month_list () {\n return this.fields !== 'year'\n },\n show_day_list () {\n return this.fields === 'day'\n },\n year_list () {\n const list = []\n for (let i = 0; i < this.end - this.start; i++) {\n list.push(this.start + i)\n }\n return list\n },\n month_list () {\n return range(1, 12, 1)\n },\n day_list () {\n }\n },\n methods: {\n moveScroll () {\n if (this.$el && typeof this.$el.querySelector === 'function') {\n const $active_els = this.$el.querySelectorAll('.active')\n if ($active_els && $active_els.length) {\n $active_els.forEach(($item) => {\n $item.scrollIntoView()\n })\n }\n }\n },\n changeDate () {\n const arr = [this.year]\n if (this.fields === 'month' || this.fields === 'day') {\n arr.push(this.month)\n }\n if (this.fields === 'day') {\n arr.push(this.day)\n }\n this.$emit('change', {\n target: {\n value: arr.map(a => formatNumber(a)).join('-')\n }\n })\n },\n selectYear (i) {\n this.year = this.year_list[i]\n this.changeDate()\n },\n selectMonth (i) {\n this.month = this.month_list[i]\n this.changeDate()\n },\n selectDay (i) {\n this.day = this.day_list[i]\n this.changeDate()\n },\n toggleList () {\n this.show_list = !this.show_list\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./date_picker.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./date_picker.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./date_picker.vue?vue&type=template&id=4a0dc2c8&scoped=true&\"\nimport script from \"./date_picker.vue?vue&type=script&lang=js&\"\nexport * from \"./date_picker.vue?vue&type=script&lang=js&\"\nimport style0 from \"./date_picker.vue?vue&type=style&index=0&id=4a0dc2c8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"4a0dc2c8\",\n null\n \n)\n\nexport default component.exports","import { sendCtmEvtLog, errorLog } from '@/utils/log'\n\nimport wx from '@/utils/wx'\n\n\nexport default {\n install (_Vue) {\n _Vue.prototype.$sendCtmEvtLog = sendCtmEvtLog\n _Vue.prototype.$showCallModal = function (success, event_name, tip_content = '') {\n success()\n }\n _Vue.prototype.$errorLog = errorLog\n _Vue.prototype.$wx = wx\n\n }\n}\n","export default {\n install (_Vue) {\n _Vue.mixin({\n beforeDestroy () {\n this.$wx.hideToast()\n this.$wx.hidePreviewImage()\n }\n })\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrap\",class:[{ 'scroll-wrap': _vm.scroll }, _vm.theme]},[(_vm.scroll)?_c('div',{staticClass:\"tabs\",attrs:{\"scroll-x\":\"\",\"scroll-with-animation\":\"\",\"scroll-into-view\":_vm.scroll_into_view}},_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:[{ active: _vm.selected === tab.key, bottom_active: _vm.selected === tab.key && _vm.tabs.length > 1 }],style:({marginRight: (_vm.margin + \"px\")}),attrs:{\"data-tab\":tab,\"id\":(\"tab-\" + i)},on:{\"click\":function($event){return _vm.onChange(tab)}}},[_vm._v(\" \"+_vm._s(tab.name)+\" \"),(tab.new)?_c('i',{staticClass:\"new\"}):_vm._e()])}),0):_c('ul',{staticClass:\"tabs\"},_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:[{ active: _vm.selected === tab.key, bottom_active: _vm.selected === tab.key && _vm.tabs.length > 1 }],style:({marginRight: (_vm.margin + \"px\")}),attrs:{\"data-tab\":tab},on:{\"click\":function($event){return _vm.onChange(tab)}}},[_vm._v(\" \"+_vm._s(tab.name)+\" \"),(tab.new)?_c('i',{staticClass:\"new\"}):_vm._e()])}),0),(_vm.showMore)?_c('div',{staticClass:\"tabs-more\",class:[{rotate: _vm.is_rotate}],on:{\"click\":function($event){$event.stopPropagation();return _vm.getMore($event)}}},[_c('div',{staticClass:\"inner\"},[_c('fc-icon',{attrs:{\"type\":\"32_down\"}})],1)]):_vm._e(),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n data() {\n return {\n is_rotate: false\n }\n },\n methods: {\n getMore () {\n this.is_rotate = !this.is_rotate\n this.$emit('more')\n },\n onChange (tab) {\n this.$emit('change', {\n detail: tab\n })\n }\n },\n computed: {\n scroll_into_view () {\n let view_id\n const len = this.tabs.length\n for (let i = 0; i < len; i++) {\n const tab = this.tabs[i]\n if (tab.key === this.selected) {\n if (i > 0 && i < len - 1) {\n view_id = `tab-${i - 1}`\n } else {\n view_id = `tab-${i}`\n }\n break\n }\n }\n console.error(view_id)\n return view_id\n }\n },\n props: {\n scroll: {\n type: Boolean,\n default: false\n },\n theme: {\n type: String,\n default: 'normal',\n },\n 'margin': {\n type: Number,\n default: 64\n },\n 'showMore': Boolean,\n tabs: {\n type: Array,\n validator (value) {\n if (value.length) {\n return value.every(({ key, name }) => {\n return key != undefined && name != undefined\n })\n }\n return true\n }\n },\n selected: {\n type: [ String, Number ]\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-tabs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-tabs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-tabs.vue?vue&type=template&id=ed80f1d2&scoped=true&\"\nimport script from \"./gft-tabs.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-tabs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./gft-tabs.vue?vue&type=style&index=0&id=ed80f1d2&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"ed80f1d2\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[(_vm.show)?_c('div',{staticClass:\"gft-overlay\",attrs:{\"catchtouchmove\":\"\"},on:{\"click\":_vm.hide}}):_vm._e(),_c('div',{staticClass:\"inner\",attrs:{\"catchtouchmove\":\"\"}},[_vm._t(\"default\")],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n options: {\n virtualHost: true\n },\n props: {\n show: Boolean\n },\n methods: {\n hide () {\n this.$emit('update:show', false)\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-overlay.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-overlay.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-overlay.vue?vue&type=template&id=3ee0d962&scoped=true&\"\nimport script from \"./gft-overlay.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-overlay.vue?vue&type=script&lang=js&\"\nimport style0 from \"./gft-overlay.vue?vue&type=style&index=0&id=3ee0d962&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3ee0d962\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('input',{directives:[{name:\"model\",rawName:\"v-model\",value:(_vm.keyword),expression:\"keyword\"}],attrs:{\"focus\":_vm.focus,\"placeholder\":_vm.placeholder,\"disabled\":_vm.disabled,\"confirm-type\":_vm.confirmType,\"placeholder-class\":_vm.placeholderClass,\"placeholder-style\":_vm.placeholderStyle,\"name\":\"keyword\"},domProps:{\"value\":(_vm.keyword)},on:{\"confirm\":_vm.onConfirm,\"focus\":_vm.onFocus,\"blur\":_vm.onBlur,\"input\":function($event){if($event.target.composing){ return; }_vm.keyword=$event.target.value}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n data() {\n return {\n focus: false,\n keyword: '',\n }\n },\n watch: {\n autoFocus: {\n handler (latest, old) {\n if (latest !== old) {\n this.focus = latest\n }\n },\n immediate: true\n },\n value(latest) {\n this.keyword = latest\n },\n keyword(latest){\n this.$emit(\"input\", latest)\n }\n },\n methods: {\n onConfirm(e) {\n this.$emit('confirm', e.target.value)\n },\n onFocus() {\n this.$emit('focus')\n this.focus = true\n },\n onBlur() {\n this.$emit('blur')\n this.focus = false\n }\n },\n props: {\n \"value\": String,\n \"placeholder\": String,\n \"disabled\": Boolean,\n \"auto-focus\": Boolean,\n \"confirm-type\": {\n type: String,\n default: ''\n },\n \"placeholder-class\": String,\n \"placeholder-style\": String\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-input.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-input.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-search-input.vue?vue&type=template&id=7f30afbc&scoped=true&\"\nimport script from \"./gft-search-input.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-search-input.vue?vue&type=script&lang=js&\"\nimport style0 from \"./gft-search-input.vue?vue&type=style&index=0&id=7f30afbc&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7f30afbc\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('gft-search-wrap',{attrs:{\"keyword\":_vm.keyword,\"show-loading\":_vm.showLoading,\"selects-options\":_vm.selectsOptions,\"selected-item\":_vm.selectedItem,\"show-search\":_vm.showSearch,\"show-location\":_vm.showLocation,\"show-share\":_vm.showShare,\"show-selects\":_vm.showSelects,\"share-type\":_vm.shareType,\"theme\":_vm.theme,\"share-log\":_vm.shareLog,\"location-log\":_vm.locationLog},on:{\"changeSelected\":_vm.changeSelected,\"resetKeyword\":_vm.resetKeyword,\"openLocation\":function($event){return _vm.$emit('openLocation')},\"submit\":_vm.onSubmit}},[_c('gft-search-input',{attrs:{\"slot\":\"input\",\"auto-focus\":_vm.autoFocus,\"confirm-type\":_vm.confirmType,\"placeholder\":_vm.placeholder,\"disabled\":_vm.disabled},on:{\"confirm\":_vm.onConfirm,\"focus\":function($event){return _vm.$emit('focus')},\"blur\":function($event){return _vm.$emit('blur')}},slot:\"input\",model:{value:(_vm.keyword),callback:function ($$v) {_vm.keyword=$$v},expression:\"keyword\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n data() {\n return {\n keyword: this.value || '',\n }\n },\n watch: {\n value (latest, old) {\n if (latest !== old) {\n this.keyword = latest\n }\n },\n keyword (latest) {\n if (latest !== this.value) {\n this.$emit(\"input\", latest)\n }\n },\n },\n methods: {\n resetKeyword () {\n this.keyword = \"\"\n },\n changeSelected(type) {\n this.$emit('changeSelected', type)\n },\n onSubmit() {\n this.$emit('submit', this.keyword)\n },\n onConfirm(value) {\n this.$emit('confirm', value)\n }\n },\n props: {\n \"show-loading\": Boolean,\n \"selects-options\": Array,\n \"selected-item\": String,\n \"show-location\": Boolean,\n \"show-share\": Boolean,\n \"disabled\": Boolean,\n \"placeholder\": String,\n \"share-log\": String,\n \"location-log\": String,\n \"show-selects\": Boolean,\n \"share-type\": {\n type: String,\n default: \"black\",\n validator (value) {\n const themes = [\"black\", \"white\", \"primary\"]\n return value && themes.includes(value)\n }\n },\n \"theme\": {\n type: String,\n default: \"white\",\n validator (value) {\n const themes = [\"white\", \"grey\"]\n return value && themes.includes(value)\n }\n },\n \"show-search\": Boolean,\n \"auto-focus\": Boolean,\n value: {\n type: String,\n default: ''\n },\n \"confirm-type\": {\n type: String,\n default: ''\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-input-wrap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-input-wrap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-search-input-wrap.vue?vue&type=template&id=7632da56&scoped=true&\"\nimport script from \"./gft-search-input-wrap.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-search-input-wrap.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7632da56\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"gft-search-wrap\"},[_c('div',{staticClass:\"search-main-wrap\",class:[_vm.theme]},[(_vm.showSelects && _vm.selectsOptions && _vm.selectsOptions.length)?_c('gft-search-select',{attrs:{\"selects\":_vm.selectsOptions,\"selected\":_vm.selected},on:{\"changeSelected\":_vm.changeSelected}}):_vm._e(),_c('div',{staticClass:\"gft-search-input\"},[_c('gft-search-loading',{class:[{ hide: !_vm.showLoading }]}),_c('fc-icon',{class:[{ hide: _vm.showLoading }],attrs:{\"type\":\"32_search\"}}),_c('div',{staticClass:\"input-slot\"},[_vm._t(\"input\")],2),(_vm.keyword.length)?_c('div',{staticClass:\"remove\",on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('resetKeyword')}}},[_c('fc-icon',{attrs:{\"type\":\"32_del\"}})],1):_vm._e(),(_vm.showLocation)?_c('div',{staticClass:\"location\",attrs:{\"data-log\":_vm.locationLog},on:{\"click\":function($event){$event.stopPropagation();return _vm.openLocation($event)}}},[_c('fc-icon',{attrs:{\"type\":\"48_location\"}})],1):_vm._e()],1)],1),(_vm.showSearch)?_c('button',{staticClass:\"btn-search\",class:[{ active: _vm.keyword.length }],on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('submit')}}},[_vm._v(\"搜索\")]):_vm._e(),(_vm.showShare)?_c('button',{staticClass:\"shadow-button share-wrap\",attrs:{\"open-type\":\"share\",\"data-log\":_vm.shareLog,\"catchtap\":\"share\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.tabLog($event)}}},[_c('fc-icon',{attrs:{\"type\":(\"48_share_\" + _vm.shareType)}}),_c('span',{class:[_vm.shareType]},[_vm._v(\"分享\")])],1):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n data() {\n return {\n how_search_loading: false,\n selected: '',\n }\n },\n watch: {\n selectedItem (latest, old) {\n if (latest !== old) {\n this.selected = latest\n }\n }\n },\n methods: {\n changeSelected(type) {\n this.selected = type\n this.$emit('changeSelected', type)\n },\n openLocation(e) {\n this.tabLog(e)\n this.$emit('openLocation')\n },\n tabLog(e) {\n const { log } = e.currentTarget.dataset\n if (log) {\n this.$sendCtmEvtLog(`${log}`)\n }\n },\n },\n props: {\n keyword: String,\n \"share-type\": {\n type: String,\n default: \"black\",\n validator (value) {\n const themes = [\"black\", \"white\", \"primary\"]\n return value && themes.includes(value)\n }\n },\n \"show-selects\": Boolean,\n \"show-loading\": Boolean,\n \"selects-options\": Array,\n \"selected-item\": String,\n \"show-search\": Boolean,\n \"show-location\": Boolean,\n \"show-share\": Boolean,\n \"theme\": String,\n \"share-log\": String,\n \"location-log\": String,\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-wrap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-wrap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-search-wrap.vue?vue&type=template&id=f5d6727c&scoped=true&\"\nimport script from \"./gft-search-wrap.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-search-wrap.vue?vue&type=script&lang=js&\"\nimport style0 from \"./gft-search-wrap.vue?vue&type=style&index=0&id=f5d6727c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"f5d6727c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search-loading\"},[_c('div',{staticClass:\"dot\"}),_c('div',{staticClass:\"dot\"}),_c('div',{staticClass:\"dot\"}),_c('div',{staticClass:\"dot\"}),_c('div',{staticClass:\"dot\"}),_c('div',{staticClass:\"dot\"})])}]\n\nexport { render, staticRenderFns }","import { render, staticRenderFns } from \"./gft-search-loading.vue?vue&type=template&id=2d9c1f4c&scoped=true&\"\nvar script = {}\nimport style0 from \"./gft-search-loading.vue?vue&type=style&index=0&id=2d9c1f4c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2d9c1f4c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{on:{\"click\":function($event){$event.stopPropagation();}}},[_c('div',{staticClass:\"pop-box\",attrs:{\"catchtouchmove\":\"\"}},[_c('p',{staticClass:\"box-title\"},[_vm._v(_vm._s(_vm.title))]),(_vm.content)?_c('span',{staticClass:\"desc\",style:([{ textAlign: _vm.textAlign }])},[_vm._v(_vm._s(_vm.content))]):_vm._e(),_vm._t(\"default\"),_c('div',{staticClass:\"btn-group\"},[(_vm.showCancel)?_c('span',{staticClass:\"gft-btn small capsule\",on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('cancel')}}},[_vm._v(_vm._s(_vm.cancelText))]):_vm._e(),(_vm.showConfirm)?_c('span',{staticClass:\"gft-btn-capsule small\",on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('confirm')}}},[_vm._v(_vm._s(_vm.confirmText))]):_vm._e()])],2),_c('div',{staticClass:\"overlay\",attrs:{\"catchtouchmove\":\"\"},on:{\"click\":function($event){$event.stopPropagation();return _vm.$emit('cancel')}}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n props: {\n title: String,\n content: String,\n showCancel: Boolean,\n textAlign: {\n type: String,\n default: 'left'\n },\n cancelText: {\n type: String,\n default: '取消'\n },\n confirmText: {\n type: String,\n default: '确认提交'\n },\n showConfirm: {\n type: Boolean,\n default: true\n },\n },\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-modal.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-modal.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./gft-modal.vue?vue&type=template&id=8c4751e8&scoped=true&\"\nimport script from \"./gft-modal.vue?vue&type=script&lang=js&\"\nexport * from \"./gft-modal.vue?vue&type=script&lang=js&\"\nimport style0 from \"./gft-modal.vue?vue&type=style&index=0&id=8c4751e8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8c4751e8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"slogan\",class:_vm.className,style:({ position: _vm.position })},[_c('common-img',{staticClass:\"slogan-img\",attrs:{\"src\":\"https://cdn.vip-wifi.com/fangchan/img/slogan.png\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n\nexport default {\n props: {\n className: String,\n position: {\n type: String,\n default: 'absolute'\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-slogan.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-slogan.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-slogan.vue?vue&type=template&id=12170a5c&scoped=true&\"\nimport script from \"./fangchan-slogan.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-slogan.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-slogan.vue?vue&type=style&index=0&id=12170a5c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"12170a5c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('router-link',{staticClass:\"disclaimer\",class:[_vm.className],attrs:{\"to\":\"/list/disclaimer/main\",\"hover-class\":\"none\"}},[_c('span',{staticClass:\"tx\"},[_vm._v(_vm._s(_vm.title))]),_c('fc-icon',{attrs:{\"type\":\"32_risk\"}})],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n\nexport default {\n props: {\n className: String,\n title: String\n },\n methods: {\n goDisclaimer() {\n this.$emit('goDisclaimer')\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-disclaimer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-disclaimer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-disclaimer.vue?vue&type=template&id=5b897632&scoped=true&\"\nimport script from \"./fangchan-disclaimer.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-disclaimer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-disclaimer.vue?vue&type=style&index=0&id=5b897632&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5b897632\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"headimg-wrap\",style:([_vm.headimg_wrap_style || _vm.img_style])},[(_vm.pendant_url)?_c('common-img',{staticClass:\"headimg-wrap__pendant\",attrs:{\"src\":_vm.pendant_url,\"mode\":\"aspectFill\"}}):_vm._e(),_c('div',{staticClass:\"headimg-wrap__img\",style:([_vm.img_style, _vm.head_style])},[(_vm.headimg_url)?_c('common-img',{staticClass:\"headimg-wrap__img--self\",attrs:{\"src\":_vm.headimg_url,\"mode\":\"aspectFill\"}}):(_vm.use_open)?_c('open-data',{staticClass:\"headimg-wrap__img--default \",attrs:{\"type\":\"userAvatarUrl\"}}):_vm._e(),_vm._t(\"default\")],2)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nconst DEFAULT_TOP_SPARE = 28\nconst DEFAULT_HEIGHT = 184\nexport default {\n props: {\n pendant_size: Number,\n headimg_size: Number,\n pendant_url: String,\n headimg_url: String,\n use_open: {\n type: Boolean,\n default: false\n }\n },\n computed: {\n height_radio() {\n return (this.pendant_size / DEFAULT_HEIGHT).toFixed(2)\n },\n headimg_wrap_style() {\n const size = `${this.pendant_size / 2}px`\n return {\n width: size,\n height: size\n }\n },\n head_style() {\n const top = Math.round(DEFAULT_TOP_SPARE * this.height_radio)\n return {\n top: `${top / 2}px`\n }\n },\n img_style() {\n const size = `${this.headimg_size / 2}px`\n return {\n width: size,\n height: size\n }\n }\n },\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-head-img.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-head-img.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-head-img.vue?vue&type=template&id=27a4fc52&scoped=true&\"\nimport script from \"./fangchan-head-img.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-head-img.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-head-img.vue?vue&type=style&index=0&id=27a4fc52&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"27a4fc52\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.questions.length || _vm.lazy_load)?_c('div',{class:_vm.className},[(!_vm.fold)?[_c('div',{staticClass:\"items\",style:([_vm.dlg_style]),on:{\"click\":_vm.toggleFold}},_vm._l((_vm.questions),function(item,i){return _c('div',{key:item.id},[_c('div',{staticClass:\"item\",class:{ 'link-item': item.style === 'link' || item.style === 'wx_app_path' },on:{\"click\":function($event){$event.stopPropagation();return _vm.select(item, i)}}},[(item.style === 'link' || item.style === 'wx_app_path')?_c('div',{staticClass:\"left-i\"},[_vm._v(\"荐\")]):_vm._e(),_c('span',{staticClass:\"content\"},[_vm._v(\" \"+_vm._s(item.content)+\" \")]),(item.style === 'link' || item.style === 'wx_app_path')?_c('div',{staticClass:\"go\"},[_c('div',{staticClass:\"left\"},[_vm._v(\"GO\")]),_c('div',{staticClass:\"right\"})]):_c('i')])])}),0),_c('div',{staticClass:\"overlay\",attrs:{\"catchtouchmove\":\"\"},on:{\"click\":_vm.toggleFold}})]:_vm._e(),_c('div',{staticClass:\"btn\",class:{ show: _vm.show, unfold: !_vm.fold },style:([_vm.btn_style]),on:{\"click\":_vm.toggleFold}},[_c('span',[_vm._v(\"提问\")])])],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n props: {\n questions: Array,\n show: Boolean,\n lazy_load: Boolean,\n btn_style: Object,\n dlg_style: Object,\n className: {\n type: String,\n default: 'wrap'\n }\n },\n data () {\n return {\n fold: true\n }\n },\n methods: {\n toggleFold () {\n if (this.lazy_load && !this.questions.length) {\n this.$emit('getQuestions')\n }\n this.fold = !this.fold\n },\n select ({ id, content, style, jump_link }, index) {\n console.error(jump_link, style)\n if (jump_link && style) {\n let url\n if (style === 'wx_app_path') {\n url = jump_link\n } else if (style === 'link') {\n url = `/web_page?link=${encodeURIComponent(jump_link)}&title=`\n }\n wx.navigateTo({\n url\n })\n } else {\n this.$emit('onSelect', id)\n }\n this.toggleFold()\n const pages = getCurrentPages()\n const page = pages[pages.length - 1]\n this.$sendCtmEvtLog(`列表页面提问咨询--${content}点击`, {\n id,\n index,\n content,\n path: page && page.route\n })\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-float-question.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-float-question.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-float-question.vue?vue&type=template&id=7aa9269c&scoped=true&\"\nimport script from \"./fangchan-float-question.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-float-question.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-float-question.vue?vue&type=style&index=0&id=7aa9269c&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7aa9269c\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"consultant-promise\"},[_c('span',{staticClass:\"promise-title\"},[_vm._v(_vm._s(_vm.title))]),_c('span',{staticClass:\"tx\"},[_vm._v(\"咨询免费,来电即可享受专属服务\")])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n\nexport default {\n props: {\n title: {\n type: String,\n default: '购房通承诺'\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-consultant-promise.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-consultant-promise.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-consultant-promise.vue?vue&type=template&id=6df51b8b&scoped=true&\"\nimport script from \"./fangchan-consultant-promise.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-consultant-promise.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-consultant-promise.vue?vue&type=style&index=0&id=6df51b8b&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"6df51b8b\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"item\",on:{\"click\":_vm.goDetail}},[_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"article\"},[_c('p',{staticClass:\"title32B\"},[(_vm.show_type_label&&_vm.item.content_body.category)?_c('span',{class:['label', _vm.label]},[_vm._v(_vm._s(_vm.item.content_body.category))]):_vm._e(),_vm._v(\" \"+_vm._s(_vm.item.content_body.title || '')+\" \")]),_c('div',{staticClass:\"sub-info noteFont22\"},[_c('div',{staticClass:\"userinfo\"},[_c('img',{attrs:{\"src\":_vm.auth_headimg}}),_c('span',{staticClass:\"userinfo-name noteFont22\"},[_vm._v(_vm._s(_vm.item.author.name))]),(_vm.date)?_c('div',{staticClass:\"date\"},[_vm._v(_vm._s(_vm.date))]):_vm._e()]),(!_vm.hide_share)?_c('button',{staticClass:\"share\",attrs:{\"open-type\":\"share\",\"data-share\":_vm.item},on:{\"click\":function($event){$event.stopPropagation();}}},[_c('fc-icon',{staticClass:\"i\",attrs:{\"type\":\"48_share_black\"}}),_c('span',[_vm._v(\"分享\")])],1):_vm._e()])]),_c('div',{staticClass:\"article-img\"},[_c('common-img',{staticClass:\"img\",attrs:{\"lazy-load\":\"\",\"src\":_vm.item.content_body.image_url,\"mode\":\"aspectFill\"}})],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport CommonImg from '@/components/views/common_img'\nimport { UserLog, sendCtmEvtLog } from '@/_base/log'\n\nexport default {\n computed: {\n auth_headimg () {\n const { headimgurl } = this.item && this.item.author ? this.item.author : {}\n return headimgurl ? `${headimgurl}?x-oss-process=image/resize,w_48,h_48` : 'https://cdn.vip-wifi.com/fangchan/img/house-detail/tabs/weixin-active.png'\n },\n date() {\n return this.item.published_date ? this.item.published_date.slice(5) :\n this.item.content_body.date ? this.item.content_body.date.slice(5) : ''\n },\n label() {\n const type = {\n '楼盘分析': 'green',\n '买房攻略': 'purple',\n '楼市热点': 'orange',\n '吃瓜吐槽': 'deepGreen'\n }\n if (this.item.content_body&&this.item.content_body.category) {\n return type[this.item.content_body.category]\n }\n }\n },\n methods: {\n goDetail (e) {\n const { id, content_body, jump_path } = this.item\n const { article_url, title } = content_body\n this.log()\n let url = `/web_page?link=${encodeURIComponent(article_url)}&title=${encodeURIComponent(title)}&from=weixin_article`\n if (jump_path) {\n url = jump_path\n } else if (this.type) {\n url = `/pages/packageA/web_article/main?id=${id}&title=${encodeURIComponent(title)}&type=${this.type}`\n }\n wx.navigateTo({ url })\n },\n log () {\n const { content_body, content_type, id } = this.item\n UserLog.click_feeds_article(id)\n if (content_type === 'weixin_article') {\n UserLog.click_article(this.type, content_body.id)\n } else if (this.type === 'weixin_articles') {\n UserLog.click_article(this.type, id)\n }\n if (this.$root.__route__) {\n const PAGES_MAP = {\n '/index/main': '首页',\n '/house_circles/main': '房友圈',\n '/building/main': '楼盘详情',\n '/building/business': '商业楼盘详情',\n '/building/article/main': '楼盘文章列表',\n '/consultants/card/main':'置业顾问名片'\n }\n const page = PAGES_MAP[this.$root.__route__]\n if (page) {\n sendCtmEvtLog(`${page}点击文章`)\n }\n }\n }\n },\n components: {\n CommonImg\n },\n props: {\n auction_id: [String, Number],\n hide_share: {\n type: Boolean,\n default: false\n },\n type: {\n type: String,\n default: ''\n },\n item: {\n type: Object\n },\n show_type_label: {\n type: Boolean,\n default: false\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-article.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-article.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-common-article.vue?vue&type=template&id=2859ab44&scoped=true&\"\nimport script from \"./fangchan-common-article.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-common-article.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-common-article.vue?vue&type=style&index=0&id=2859ab44&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2859ab44\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"empty-state\",style:({paddingTop: (_vm.top || 0) + 'px' })},[_c('img',{class:_vm.type,attrs:{\"src\":_vm.img_src}}),_c('span',{staticClass:\"tx\"},[_vm._v(_vm._s(_vm.desc))])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n\nconst IMG_STATE = {\n empty_building: \"https://cdn.vip-wifi.com/fangchan/img/icons/building.png\",\n empty_page: \"https://cdn.vip-wifi.com/fangchan/img/icons/empty_state.png\",\n}\nexport default {\n computed: {\n img_src() {\n return IMG_STATE[this.type]\n }\n },\n props: {\n top: Number,\n type: {\n type: String,\n default: \"empty_building\"\n },\n desc: {\n type: String,\n default: \"空空如也,去其他楼盘看看吧~\"\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-empty-box.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-empty-box.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-empty-box.vue?vue&type=template&id=317e6c6f&scoped=true&\"\nimport script from \"./fangchan-empty-box.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-empty-box.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-empty-box.vue?vue&type=style&index=0&id=317e6c6f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"317e6c6f\",\n null\n \n)\n\nexport default component.exports","import Vue from 'vue'\nimport App from './App.vue'\nimport router from './router'\nimport store from './store'\n\nimport './utils/rem'\n\nimport './style_import'\n\nimport VueAwesomeSwiper from 'vue-awesome-swiper'\nimport 'swiper/swiper-bundle.css'\n\nimport FcIcon from '@/components/views/fc_icon'\nimport CommonImg from '@/components/views/common_img'\nimport CommonTabs from '@/components/views/common_tabs'\nimport TipDlg from '@/components/views/tip_dlg'\nimport ListLoading from '@/components/views/loading'\nimport BottomTip from '@/components/views/bottom_tip'\nimport Picker from '@/components/views/picker'\nimport DatePicker from '@/components/views/date_picker'\nimport PageWrap from '@/components/page_wrap'\n\nimport GlobalUtils from '@/plugins/global_utils'\nimport WatchRoute from '@/plugins/watch_route'\nimport GlobalData from '@/plugins/global_data'\n\nimport Navigation from 'vue-navigation'\n\nimport GftTabs from '@/components/gft/gft-tabs'\nimport GftOverlay from '@/components/gft/gft-overlay'\nimport GftSearchInput from '@/components/gft/gft-search-input'\nimport GftSearchInputWrap from '@/components/gft/gft-search-input-wrap'\nimport GftSearchWrap from '@/components/gft/gft-search-wrap'\nimport GftSearchLoading from '@/components/gft/gft-search-loading'\nimport GftModal from '@/components/gft/gft-modal'\n\nimport FangchanCommonTabs from '@/components/fangchan/fangchan-common-tabs'\nimport FangchanSlogan from '@/components/fangchan/fangchan-slogan'\nimport FangchanDisclaimer from '@/components/fangchan/fangchan-disclaimer'\nimport FangchanHeadImg from '@/components/fangchan/fangchan-head-img'\nimport FangchanFloatQuestion from '@/components/fangchan/fangchan-float-question'\n\nimport FangchanConsultantPromise from '@/components/fangchan/fangchan-consultant-promise'\nimport FangchanCommonArticle from '@/components/fangchan/fangchan-common-article'\nimport FangchanEmptyBox from '@/components/fangchan/fangchan-empty-box'\n\nimport VanDatetimePicker from 'vant/lib/datetime-picker'\nimport { Swipe, SwipeItem } from 'vant'\n\n\nVue.use(VanDatetimePicker)\nVue.use(Swipe)\nVue.use(SwipeItem)\n\nVue.component('page-wrap', PageWrap)\nVue.component('common-img', CommonImg)\nVue.component('fc-icon', FcIcon)\nVue.component('common-tabs', CommonTabs)\nVue.component('tip-dlg', TipDlg)\nVue.component('list-loading', ListLoading)\nVue.component('picker', Picker)\nVue.component('date-picker', DatePicker)\nVue.component('bottom-tip', BottomTip)\nVue.component('fangchan-head-img', FangchanHeadImg)\n\nVue.component('gft-tabs', GftTabs)\nVue.component('gft-overlay', GftOverlay)\nVue.component('gft-search-input', GftSearchInput)\nVue.component('gft-search-input-wrap', GftSearchInputWrap)\nVue.component('gft-search-wrap', GftSearchWrap)\nVue.component('gft-search-loading', GftSearchLoading)\nVue.component('gft-modal', GftModal)\n\n\nVue.component('fangchan-common-tabs', FangchanCommonTabs)\nVue.component('fangchan-slogan', FangchanSlogan)\nVue.component('fangchan-disclaimer', FangchanDisclaimer)\nVue.component('fangchan-head-img', FangchanHeadImg)\nVue.component('fangchan-consultant-promise', FangchanConsultantPromise)\nVue.component('fangchan-common-article', FangchanCommonArticle)\nVue.component('fangchan-empty-box', FangchanEmptyBox)\nVue.component('fangchan-float-question', FangchanFloatQuestion)\n\n\nVue.use(Navigation, {router})\nVue.use(VueAwesomeSwiper)\nVue.use(WatchRoute)\nVue.use(GlobalUtils)\nVue.use(GlobalData)\n\n\nVue.config.productionTip = false\n\nnew Vue({\n router,\n store,\n render: h => h(App)\n}).$mount('#app')\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.excellent_consultants && _vm.excellent_consultants.length)?_c('section',{staticClass:\"block\"},[_vm._m(0),_c('img',{staticClass:\"feature\",attrs:{\"src\":\"https://cdn.vip-wifi.com/fangchan/img/building/consultants-tip.png\"}}),_c('div',{staticClass:\"excellent-consultants skeleton-rect\",class:[{ 'large': _vm.excellent_consultants.length === 3 }]},_vm._l((_vm.excellent_consultants),function(item){return _c('button',{key:item.id,staticClass:\"excellent-consultants-card\",class:[{ 'large-card': _vm.excellent_consultants.length === 3 }],attrs:{\"data-id\":item.id},on:{\"click\":_vm.goCardFromExcellenct}},[(item.building_zone)?_c('div',{staticClass:\"consultant-zone-tag\"},[_vm._v(_vm._s(item.building_zone))]):_vm._e(),_c('div',{staticClass:\"headimg consultant-headimg\"},[_c('img',{staticClass:\"img\",attrs:{\"src\":item.weixin_headimgurl}}),(item.honour_title)?_c('div',{staticClass:\"consultant-headimg-tag\"},[_vm._v(_vm._s(item.honour_title))]):_vm._e()]),(_vm.excellent_consultants.length < 3)?_c('div',{staticClass:\"detail\"},[_c('div',[_c('span',{staticClass:\"nickname\"},[_vm._v(_vm._s(item.name))]),_c('span',{staticClass:\"zone\"},[_vm._v(_vm._s(item.building_zone || ''))])]),_c('p',[_vm._v(\" \"+_vm._s(item.building_name)+\" \")])]):_c('div',{staticClass:\"detail\"},[_c('div',{staticClass:\"nickname\"},[_vm._v(_vm._s(item.name))]),_c('p',[_vm._v(_vm._s(item.building_name))]),_c('button',{staticClass:\"consult\",attrs:{\"data-id\":item.id},on:{\"click\":function($event){$event.stopPropagation();return _vm.onConsult(item.id)}}},[_vm._m(1,true),_c('span',[_vm._v(\"咨询\")])])])])}),0)]):_vm._e()}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('header',{staticClass:\"title\"},[_c('h2',{staticClass:\"card-title\"},[_vm._v(\" 有疑问?和置业专家在线聊聊 \")])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"icon\"},[_c('i'),_c('i'),_c('i')])}]\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport goConsultant from '@/common/mixins/goConsultant'\nimport call_consultant from '@/common/mixins/callConsultant'\nimport { CONSULATANT_CARD_IS_CALL } from '@/constant'\nimport { openChat } from '@/data/im'\nexport default {\n mixins: [\n goConsultant,\n call_consultant\n ],\n props: {\n excellent_consultants: Array,\n is_index: Boolean\n },\n methods: {\n onConsult (id) {\n if (CONSULATANT_CARD_IS_CALL) {\n call_consultant(e)\n } else {\n openChat(id, {\n building_id: this.building_id,\n from: this.page || ''\n }) \n }\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_consultants.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_consultants.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_consultants.vue?vue&type=template&id=8776b1b8&scoped=true&\"\nimport script from \"./_consultants.vue?vue&type=script&lang=js&\"\nexport * from \"./_consultants.vue?vue&type=script&lang=js&\"\nimport style0 from \"./_consultants.vue?vue&type=style&index=0&id=8776b1b8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"8776b1b8\",\n null\n \n)\n\nexport default component.exports","const { APP_MODE, CDN_PATH, CITY } = process.env\nconst DEFAULT_PATH = `https://cdn.vip-wifi.com/${CDN_PATH}/${\n APP_MODE === 'production' ? '' : 'version-img/preprod/'\n}config/`\n\nconst OLD_CITIES = ['cd', 'hz', 'nj']\n\nconst request = (path) => {\n return new Promise((resovle, reject) => {\n wx.request({\n url: `${DEFAULT_PATH}${path}.json`,\n data: {\n v: new Date().getTime()\n },\n success: (res) => {\n console.error('load config success', res)\n const { data, statusCode } = res\n if (statusCode === 200) {\n resovle(data)\n } else {\n reject(res)\n }\n },\n fail(err) {\n console.error('load config error', err)\n reject(err)\n }\n })\n })\n}\n\nconst requestCity = (path) => {\n if (OLD_CITIES.includes(CITY)) {\n return request(path)\n }\n return request(`${CITY}/${path}`)\n}\n\nconst getInitHomePage = (opts) => {\n const { default_config, config_path } = opts\n const getConfig = () => {\n return request(config_path)\n .then((data) => {\n return Object.assign(default_config, data)\n })\n .catch((err) => {\n console.error(err)\n return default_config\n })\n }\n return (page_instance) => {\n getConfig(page_instance).then((config) => {\n Object.keys(config).forEach((key) => {\n page_instance[key] = config[key]\n })\n })\n }\n}\n\nmodule.exports = {\n request,\n requestCity,\n getInitHomePage\n}\n","export * from \"-!../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../loader/img_version_loader/index.js!../node_modules/cache-loader/dist/cjs.js??ref--0-0!../node_modules/vue-loader/lib/index.js??vue-loader-options!./App.vue?vue&type=style&index=0&lang=scss&\"","module.exports = __webpack_public_path__ + \"img/nconv.e25fbe0c.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD0AAAA8CAYAAADVPrJMAAAACXBIWXMAABCcAAAQnAEmzTo0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASRSURBVHgB7VrbUdtAFL02j+HTHcRUEHt4zPAVUUFIBUAFQAWYCkIqiFNBSAVRvvgAxqaCKB34k+GZe8Rdc1Gs1UqW7E2iM6PRrp57du/u3hdRjRo1atT4+9CgCjEYDFp3d3c7zWazw9U3fODcksMgkuP68fFx+PDwEG5tbUVUIUonDaLc+IOnp6eAqwEVw5C/8amqDiiNtCJ7SK9Hcio0Go3+7e3tSZnkSyF9dXV1nEJ2xMeQ733jxkcs6sOVlZVRt9vFdSP+bb6H9wI+v6MU6eB7vbW1tRMqAVORPj8/by8uLp5xg94mboUgyvf6hqAr1DpwQM9rwEtjueN41LenHfXCpC8vL3f5dEqvRxdkTzY2NkIqARcXFxj9z1xsq8voxP319fUzKohCpEWce+rSSMieUgVg8odM/phUB08j7rlJJwmXJXJZwFRaWlr6TmrUixLPRZpFeodPX02dyV/zvA3yztuiEOL4v57reyzqXygHnEnLDwckIjZrwgZY6Hj/xogb4iNe+Lp5JK3p+qCIVkwYIn1/f78za8IA/rmwsLBNz1oc0JLRd4YTacxjeplLo1nMYRtAnEcXxE2nd3ix67m+nyneItY/TZ3F+qiqVTovZFX/KFVIwKqL9GWONBPumTLE2hfCgLQllGqLp9yhy3tW0hhlPu2aOuvW++QZoB+YMg/KARa6rHespFlcAlUdlqVplQlpUyhVp9G2khb9NwZMPfIU0PNNWYwWK1JJi2iPlQCe24V13aoBw4ZeVvIgS8RTSSdEO5zHnuwKadvQ1GGl2Z5PJS0unhgsPj/Ic2gR122fBNuc1jZySJ4D26kpcwe0bc/aSLfVR7wVbQN4ZUx5glPjFZxI8yIWkeeAG0pViy1kGj4vYgaJNk5P+l+DjfS451xUu3kjTxudSN/c3HhPGq5kVY1sz6aShmfElHkhs+57PkB85waR7dmm5SORKWfte54gUOVr24OppBFMM2XugPfkObShods+CamkEwZGx+fFTNoWmDoCf7bnU0nLvhdKFXbqHnmKhIExzPLfWfdpbWj4LOJ57X4rabZT4YMa26mILZFnkDaNd5cs0QaspCHiPNrjnpN4kleQAJ8p911c05lq6ITRdvI4zgIcZoJYt00dwXuX9zJJTxptcSXNFdKGnqnDK+oagHCOZXGvIo4Vzx0oLrx4dOdlfSUjmGgPRy9XXd93trJ4W/hAIubQ0BBEm8fejX8i+4ESYSbKAWfSEB3u0SN1qQPisxR1EGZ9IUx4RvbzxtVy2dMsQn0dUWB0lpeXZ0Ic/+BOHmjCaEuRNIzcTgSOKPQ0cYg64tZVrupYpSU23lb/RbpHjwpgmkQbqH7YI3UeSIR4V8mJNtANAnV5xP842tzc7FNBTJ1SlcwDEcQZfzBaiqRUQc8XtTfQ92DjIxlgbilVGgiIW7S1UHR4nEfwrOrkOXhl4KTANBGiJn9UI9YViopzEqWlScqo90iFdktATBZaYZk6QekJsSCPONikjL8ciKWjbLIGlaY+qw4AeWw1bfoz+88E337B41FkHahRo0aNGv8DfgMYiV68QHFpwAAAAABJRU5ErkJggg==\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"common-img\",class:[_vm.shadowClass, { auto: _vm.mode === 'widthFix'}]},[_c('img',{staticClass:\"img\",attrs:{\"webp\":_vm.webp,\"src\":_vm.can_load_img ? _vm.src : '',\"mode\":_vm.mode},on:{\"load\":_vm.onLoaded,\"error\":_vm.handleImgError}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport { imgErrorLog } from '@/utils/log'\nimport { handleImgSize } from '@/common/utils/map_view_data'\nconst MAX_ERROR_COUNT = 2\n\nconst getLittleUrl = (url) => {\n const reg = /\\?x-oss-process=image\\/resize,w_(\\d*),h_(\\d*)/\n const compressRatio = .8\n if (url.replace) {\n return url.replace(reg, (...args) => {\n if (args.length > 2) {\n return handleImgSize(Number(args[1]) * compressRatio, Number(args[2]) * compressRatio)\n }\n })\n }\n return url\n}\n\nimport lazy_load_mixin from './lazy_load_mixin'\nexport default {\n mixins: [\n lazy_load_mixin('.common-img')\n ],\n data () {\n return {\n error_count: 0,\n task: null\n }\n },\n beforeDestroy () {\n this.task && clearTimeout(this.task)\n },\n methods: {\n handleImgError (e) {\n this.error_count++\n if (this.error_count < MAX_ERROR_COUNT) {\n this.task = setTimeout(() => {\n this.src = getLittleUrl(this.src)\n }, 200)\n } else {\n imgErrorLog(e.mp.detail.errMsg)\n }\n },\n onLoaded (e, instance) {\n var img = e.target\n img.style.opacity = 1\n }\n },\n props: {\n mode: {\n type: String\n },\n shadow: {\n type: Boolean,\n default: true\n },\n src: {\n type: String\n },\n className: {\n type: String\n },\n shadowClass: {\n type: String\n },\n 'lazy-load': {\n type: Boolean,\n default: true\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_img.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_img.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./common_img.vue?vue&type=template&id=834ba868&scoped=true&\"\nimport script from \"./common_img.vue?vue&type=script&lang=js&\"\nexport * from \"./common_img.vue?vue&type=script&lang=js&\"\nimport style0 from \"./common_img.vue?vue&type=style&index=0&id=834ba868&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"834ba868\",\n null\n \n)\n\nexport default component.exports","import { getSystemInfo, compareVersion } from '@/utils/wx_api'\n\nconst getBuildingUrl = (house) => {\n return house && house.usage === '商业' ? '/building/business' : '/building'\n}\n\nconst handleHouseUrl = (house) => {\n let href = getBuildingUrl(house) + '?'\n if (house.building_id) {\n href += `building_id=${house.building_id}&house_id=${house.id}`\n } else {\n href += `building_id=${house.id}`\n }\n return href\n}\nexport const checkBuildingPhoneAuth = (building) => {\n return building && building.activities && building.activities.indexOf('授权手机号') > -1\n}\nexport const handleBusinessHouses = (houses) => {\n houses.forEach(item => {\n item.href = item.href.replace('/building', '/building/business')\n })\n}\n\nconst handleCommentUrl = (house) => {\n let href = '/building/comments?'\n if (house.building_id) {\n href += `building_id=${house.building_id}&house_id=${house.id}`\n } else {\n href += `building_id=${house.id}`\n }\n return `${href}&name=${house.name}`\n}\n\nconst is_support_webp = false\n\nconsole.log('is_support_webp', is_support_webp)\n\nexport const enable_webp = false\n\nexport const handleImgSize = (img, size_w, size_h ) => {\n\n if (!img) {\n return ''\n }\n const index = img.indexOf('?')\n let format = '/format,jpg'\n if (index > -1) {\n img = `${img.substring(0, index)}`\n }\n if (enable_webp) {\n format = `/format,webp`\n }\n let size = '/resize'\n if (size_w) {\n size += `,w_${size_w}`\n }\n if (size_h) {\n size += `,h_${size_h}`\n }\n return `${img}?x-oss-process=image${size}${format}`\n}\n\nexport const handleBuidingBanner = (img) => {\n return handleImgSize(img, 750, 500)\n}\n\nexport const handleBuidingMiniBanner = (img) => {\n const index = img.indexOf('?')\n if (index > -1) {\n img = img.substring(0, index + 1)\n }\n return handleImgSize(img, 210, 140)\n}\n\nexport const handlePhotoUrl = (img, show_default = true) => {\n return img ? handleImgSize(img, 210, 140, {})\n :\n (show_default ? 'https://cdn.vip-wifi.com/fangchan/img/default-img-normal.jpeg' : '')\n}\n\nexport const handleWxHeadimg = (item, size) => {\n if (item.weixin_headimgurl && item.weixin_headimgurl.indexOf('https://cdn.vip-wifi.com') === 0) {\n item.weixin_headimgurl = handleImgSize(item.weixin_headimgurl, size, size)\n }\n}\n\nexport const filterData = data => {\n const keys = Object.keys(data)\n const whilte_keys = ['log_id']\n keys.filter((key) => whilte_keys.indexOf(key) === -1)\n .forEach(key => {\n const value = data[key]\n if (value === undefined || value === null || value === '') {\n delete data[key]\n }\n })\n return data\n}\n\nconst handleTag = (tag) => {\n if (tag === '即将取证') {\n tag = '即将预售'\n }\n const tag2class = [\n {\n class_name: 'vr',\n tags: ['VR售楼部', '楼盘航拍']\n },\n {\n class_name: 'green',\n tags: ['摇号完成', '摇号结果', '正在登记', '在售', '等待摇号', '即将预售'],\n type: 'status'\n }\n ]\n let tag_class = ''\n let tag_type = ''\n tag2class.some(({ tags, class_name, type }) => {\n if (tags.indexOf(tag) > -1) {\n tag_class = class_name\n tag_type = type\n return true\n }\n })\n return {\n name: tag,\n tag_class,\n tag_type\n }\n}\n\nexport const getTags = (house) => {\n let tags = []\n if (house.tag_list) {\n tags = house.tag_list.slice(0)\n }\n if (!house.hide_status) {\n const { status, data_status: dataStatus } = house\n if (status) {\n tags.push(status)\n }\n if (dataStatus) {\n tags.push(dataStatus)\n }\n }\n const rules = ['vr', 'green', '']\n return tags.map(handleTag).sort((a, b) => {\n return rules.indexOf(a.tag_class) - rules.indexOf(b.tag_class)\n }).filter(({ tag_class }) => tag_class != 'vr')\n}\n\nexport const handleViewCount = (view_count) => {\n return view_count >= 10000 ? `${(view_count / 10000).toFixed(1)}w` : view_count\n}\n\nexport const handlePrice = (item) => {\n item.price_desc_arr = item.customized_price && item.customized_price.length ?\n item.customized_price\n :\n item.price_desc ? item.price_desc.split(',') : []\n}\n\nconst getTag = (house) => house.tag_list && house.tag_list.length ? house.tag_list[0] : house.zone\n\nexport const mapHouseItem = house => {\n let houseItemData = filterData(house)\n const tags = getTags(house)\n const status_tags = tags.filter(({ tag_class }) => tag_class === 'green')\n handlePrice(houseItemData)\n const { visit_reservation_tip } = house\n const tips = visit_reservation_tip ? visit_reservation_tip.split(',') : []\n const visit_reservation = tips && tips.length ? tips[0] : ''\n if (house.vr_resource && house.vr_resource.vr_photo_url) {\n house.vr_resource.vr_photo_url = handlePhotoUrl(house.vr_resource.vr_photo_url)\n }\n houseItemData = {\n ...houseItemData,\n visit_reservation,\n href: handleHouseUrl(house),\n comment_href: handleCommentUrl(house),\n cover_photo_url: handlePhotoUrl(house.cover_photo_url),\n surplus_img_url: house.cover_photo_url,\n tags,\n tag: getTag(house),\n view_count: handleViewCount(house.view_count),\n date_with_status: house.date_with_status && house.date_with_status.replace(/-/g, '.'),\n ...['common_probability', 'rd_probability'].reduce((obj, key) => {\n const value = house[key]\n if (value) {\n obj[key] = value\n }\n return obj\n }, {})\n }\n\n if (house.hide_status && status_tags.length) {\n houseItemData.status = status_tags[0].name\n }\n\n houseItemData.building_id = houseItemData.building_id || houseItemData.id\n\n delete houseItemData.id\n delete houseItemData.min_price\n delete houseItemData.max_price\n\n return houseItemData\n}\n\nexport const mapHouseDetail = house => {\n filterData(house)\n house.current_houses = house.current_houses || []\n handlePrice(house)\n house.current_houses.forEach((item) => {\n handlePrice(item)\n })\n return house\n}\n\nexport const handleHomeHouses = (houses) => {\n return houses.map((item) => {\n const { id, target, position, content, photo_url, listpage_order } = item\n const house = mapHouseItem(target)\n house.photo_url = handlePhotoUrl(photo_url, false)\n house.href = handleBannerHref(item)\n house.content = content\n house.position = position\n house.log_id = id\n house.listpage_order = listpage_order || null\n return house\n })\n}\n\nexport const handleCol3 = (houses) => {\n return houses.map((house) => {\n return {\n ...house,\n tag: getTag(house)\n }\n })\n}\n\nexport const handleHouseViewData = (houses) => {\n houses = handleHomeHouses(houses).slice(0, 4)\n if (houses.length === 1 || houses.length === 4) {\n return {\n col_1: [\n houses[0]\n ],\n col_3: handleCol3(houses.slice(1))\n }\n }\n if (houses.length === 2) {\n return {\n col_1: [\n houses[0],\n houses[1]\n ],\n col_3: []\n }\n }\n if (houses.length === 3) {\n return {\n col_1: [],\n col_3: handleCol3(houses)\n }\n }\n}\n\nexport const handleSurplusItemHref = (id) => {\n return '/building?building_id=' + id + '&from=surplus_buildings'\n}\n\nexport const handleSurplusItem = (item, i) => {\n if (!item.hide_status) {\n item.tag_list.unshift('在售')\n }\n item.tags = getTags(item)\n handlePrice(item)\n item.href = handleSurplusItemHref(item.id)\n item.view_count = handleViewCount(item.view_count)\n item.cover_photo_url = handleImgSize(item.cover_photo_url, 216, 144)\n}\n\nexport const handleBannerHref = (banner) => {\n if (banner.href) {\n const id = banner.target.id\n if (/\\.png|jpg|jpeg|gif|webp$/.test(banner.href.toLowerCase())) {\n return `/pages/activity_a/thematic/activity/main?photo_url=${banner.href}`\n }\n if (banner.href.indexOf('/pages') === 0) {\n return banner.href\n }\n if (banner.href.indexOf('https') === 0 || banner.href.indexOf('http') === 0) {\n return `/web_page?building_id=${id}&type=custom&title=${process.env.APP_NAME}&link=${encodeURIComponent(banner.href)}`\n }\n return ''\n }\n const buildingHref = handleHouseUrl(banner.target)\n if (banner.consultant_group_id) {\n return `${buildingHref}&consultant_group_id=${banner.consultant_group_id}`\n }\n return buildingHref\n}\n\nexport const getBannerOpenType = (banner) => {\n return 'navigateTo'\n}\n\nexport const handleBanner = (banners) => {\n return banners.map(banner => {\n return {\n id: banner.id,\n photo_url: handleImgSize(banner.photo_url, 750, 280),\n href: handleBannerHref(banner),\n name: banner.content || banner.target.name || '',\n open_type: getBannerOpenType(banner),\n position: banner.position\n }\n })\n}\n\nexport const handleFloatDlg = (banners) => {\n return banners.map(banner => {\n return {\n id: banner.id,\n photo_url: banner.photo_url,\n href: handleBannerHref(banner),\n name: banner.content || banner.target.name || '',\n open_type: getBannerOpenType(banner),\n position: banner.position\n }\n })\n}\n\nexport const mapHomePage = data => {\n return {\n homepage_banner: handleBanner(data.homepage_banner),\n dashboard: data.dashboard,\n hot: handleHouseViewData(data.hot),\n forthcoming_sale: handleHouseViewData(data.forthcoming_sale),\n homepage_popup: data.homepage_popup,\n latest_opening: handleHomeHouses(data.latest_opening),\n latest_lot_number: handleHomeHouses(data.latest_lot_number),\n homepage_middle_banner: handleBanner(data.homepage_middle_banner),\n excellent_consultants: data.excellent_consultants,\n surplus: handleCol3(handleHomeHouses(data.surplus))\n }\n}\n","import axios, { gft_axios, normal_axios } from '@/utils/request'\n\nimport LocalData from '@/utils/local_data'\n\nimport { requestErrorLog, UserLog } from '@/utils/log'\n\nimport { FALLBACK_KEY } from '@/utils/wxafuzz'\n\nimport { App_User } from '@/data/user_info'\nimport Cookie from '@/utils/cookie'\n\nconst { VUE_APP_TYPE } = process.env\n\nimport { request } from 'fangchan-base'\n\nconst { LOGIN_STORE } = request\n\nconst { interceptors } = axios\nconst { interceptors: gft_interceptors } = gft_axios\nconst { interceptors: normal_interceptors } = normal_axios\n\nconst SessionStatus = {\n session_doing: false,\n _cb_list: [],\n addListener (cb) {\n this._cb_list.push(cb)\n },\n startSession () {\n this.session_doing = true\n },\n finishSession () {\n this.session_doing = false\n while (this._cb_list.length) {\n this._cb_list.shift()()\n }\n }\n}\n\nconst SESSION_MAP = {\n 'tft': {\n path: 'fc/sessions/tft_oauth',\n param_name: 'token'\n }\n}\n\n\nconst { path: session_path, param_name: session_param_name } = SESSION_MAP[VUE_APP_TYPE]\n\nexport const resetToken = (token) => {\n console.error('token', token)\n Cookie.setItem('token', token, {\n sPath: '/'\n })\n initRequest(token)\n initGftRequest(token)\n}\n\nexport const checkSessionStatus = () => {\n const token = Cookie.getItem('token')\n console.error('checkSessionStatus', token)\n if (token) {\n return Promise.resolve()\n }\n return session()\n}\n\nexport const session = () => {\n return normal_axios.post(session_path).then(data => {\n if (data == 401) {\n reauth()\n } else {\n const { token, user, share_info, extension } = data\n console.log('session success', new Date().toLocaleString())\n if (share_info) {\n console.log('share_info:', share_info, new Date().toLocaleString())\n }\n if (data && token) {\n LocalData.user.set(user)\n UserLog.userLogin()\n resetToken(token)\n }\n if (VUE_APP_TYPE === 'tft') {\n if (extension && extension.jsapi_params) {\n const { jsapi_params } = extension\n tf.config({\n appId: jsapi_params.appid,\n timestamp: jsapi_params.timestamp,\n signature: jsapi_params.signature,\n jsApiList: ['photo'],\n nonce: jsapi_params.nonce\n }).then((data) => {\n console.log('tf config success', data)\n }).catch(err => {\n console.error('tf config error', err, jsapi_params)\n })\n }\n }\n }\n SessionStatus.finishSession()\n })\n}\n\nexport const reauth = () => {\n if (LOGIN_STORE.doing) {\n return new Promise((res) => {\n LOGIN_STORE.wait(res)\n })\n }\n LOGIN_STORE.start()\n return session()\n}\n\nexport const init = () => {\n const token = Cookie.getItem('token')\n if (token) {\n return Promise.resolve()\n }\n reauth()\n return Promise.reject()\n}\n\nconst genInitRequest = (interceptors) =>\n (token) => interceptors.request.use(config => {\n config.headers['Authorization'] = token\n return config\n }, () => {}, (params) => {\n params.header['cache-control'] = 'no-store'\n return params\n })\n\nconst genInitResponse = (interceptors) =>\n (token_name) => interceptors.response.use(config => {\n return config\n }, (error, requestInfo) => {\n requestErrorLog(error, requestInfo)\n return Promise.reject(error)\n }, (res, requestInfo) => {\n console.log('res', res)\n const { data: respData, header, statusCode } = res\n const { meta, data } = respData\n const code = respData.meta ? respData.meta.code : statusCode\n console.log('code', code)\n if (code === FALLBACK_KEY.OPEN_CODE) {\n const fuzz_key = header['fuzz-fallback-key']\n FALLBACK_KEY.setKey(fuzz_key)\n console.error('FALLBACK_KEY set', fuzz_key)\n return FALLBACK_KEY.OPEN_CODE\n }\n if (code === FALLBACK_KEY.CLOSE_CODE) {\n FALLBACK_KEY.resetKey()\n return FALLBACK_KEY.CLOSE_CODE\n }\n if (code == 401) {\n Cookie.setItem(token_name, '', {\n sPath: '/'\n })\n App_User.setJscode('')\n return 401\n }\n if (code == 404 || code == 500) {\n return Number(code)\n }\n if (meta && meta.code === 422) {\n if (data && Object.keys(data).length) {\n return respData\n }\n return meta\n }\n if (data) {\n return data\n }\n return respData\n })\n\nconst initRequest = genInitRequest(interceptors)\nconst initResponse = genInitResponse(interceptors)\n\ngenInitResponse(normal_interceptors)('token')\n\nconst initGftRequest = genInitRequest(gft_interceptors)\nconst initGftResponse = genInitResponse(gft_interceptors)\ninitGftRequest(Cookie.getItem('token'))\ninitGftResponse('token')\n\ninitRequest(Cookie.getItem('token'))\ninitResponse('token')\n\n\nconst genMethod = (func, auto_reauth = false) => {\n return (...args) => {\n const promseFunc = () => func.apply(func, args)\n return promseFunc().then(data => {\n if (data === FALLBACK_KEY.OPEN_CODE || data === FALLBACK_KEY.CLOSE_CODE) {\n console.error('retry')\n return promseFunc()\n }\n if (data == 401) {\n return reauth().then(promseFunc)\n }\n if (data == 404) {\n requestErrorLog(404, args)\n throw data\n }\n if (data == 500) {\n requestErrorLog(500, args)\n throw data\n }\n return data\n })\n }\n}\n\nconst genAPIMethod = (apiType, method) => {\n return (...args) => {\n args[0] = `${apiType}/${args[0]}`\n return method.apply(method, args)\n }\n}\n\nconst getAxiosMethod = method => axios[method].bind(axios)\n\nexport const get = genMethod(getAxiosMethod('get'))\nexport const post = genMethod(getAxiosMethod('post'))\nexport const put = genMethod(getAxiosMethod('put'))\nexport const del = genMethod(getAxiosMethod('delete'))\n\nconst V1 = 'fc/v1'\nconst V2 = 'fc/v2'\nconst V3 = 'fc/v3'\nconst V4 = 'fc/v4'\n\nconst FC = 'fc'\n\nexport const getV1 = genAPIMethod(V1, get)\nexport const postV1 = genAPIMethod(V1, post)\nexport const putV1 = genAPIMethod(V1, put)\nexport const delV1 = genAPIMethod(V1, del)\n\nexport const getV2 = genAPIMethod(V2, get)\nexport const putV2 = genAPIMethod(V2, put)\nexport const postV2 = genAPIMethod(V2, post)\n\nexport const getFC = genAPIMethod(FC, get)\nexport const postFC = genAPIMethod(FC, post)\nexport const putFC = genAPIMethod(FC, put)\nexport const delFC = genAPIMethod(FC, del)\n\nexport const getV3 = genAPIMethod(V3, get)\nexport const postV3 = genAPIMethod(V3, post)\n\nexport const getV4 = genAPIMethod(V4, get)\nexport const postV4 = genAPIMethod(V4, post)\n\nconst getGFTAxiosMethod = method => gft_axios[method].bind(gft_axios)\n\nexport const getGFT = genMethod(getGFTAxiosMethod('get'))\nexport const postGFT = genMethod(getGFTAxiosMethod('post'))\nexport const putGFT = genMethod(getGFTAxiosMethod('put'))\nexport const delGFT = genMethod(getGFTAxiosMethod('delete'))","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAXVBMVEUAAAAAsY4AsY4AsY4AtJcAxboAsY4AsY4AtJEAsY4AspIAsY0AsY4AsY4AtJIAsY0AsY4AsI0AsY8As5EAtpQAsY0AsY0AsI4AsI4AsY4AsY4AsY0AtJAAv58AsI2Dc8eFAAAAHnRSTlMAX2/NEATodSzsMaqpwSf23J2JOBPlyrm1fFhVRwiqkm5gAAAArklEQVRIx+3NuQ6DQBRD0TcsCRB2yJ74/z8zSBRGUHmCRDNXcnlkC4X26hM399rTOkzlhZdNTvhDZ4dod/bXDtA17UrXil3rSrAb3Qh2o1vZgvotW+pIttSJbqllS61bFgUb7GE2vemWJbG3pdZtnVLLv/2FWrVWglq1FoNatZaDWrUjQC1aG7DUmrUX5spZS9aeWOppSh1ArVZhLq+6QsZXtI/eDaP5lH0tFGLsB/AWRQP7qthhAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAACXBIWXMAABCcAAAQnAEmzTo0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAASYSURBVHgB7ZpNbtNAFMf/4wTxIZDCCSgnoL1BuqEfG5oTtCwRLZATEE5QICCWpCdo2bTAJuEElBMQTkAWiBYae3hv2kRp4pnM2GMnSP5JFcGOnfn7fcybNwYKCgoKCuYXgSw5ercAcbYBBPcAuUh/FfrJhZFf70GiS596iPCN/u3gz80Oag97yAj/gvffV3Dj11NIuXVJnBsdun4Pp7cOfIv3J5itiX6D7rgJb4guhGwhKu9h7VEXHkgveGhRNJAZJDyKXmH9yUukJJ3gz28XEcl9is0F5AIJl6XlNNYOkJRPbzYho3Z+Yhn6LRG2cdSsIiHJBH9qPqek0iI3riB3WDTa6oEnwN2lldgs49UBIbawsr3ndInLl3HY3CCf2Mc8IUExvdOx/bq9YJ52gv7X2bixAS5eovKSbSKzj2FOFvMiVkqqymSd/rpqTKL/3vZSO8Ect7lmYwMSVIGFVazSnHw1XLo4WsXh62c2l093aVUPh+25ECzxguK1Mfy/Glv/u/rMrv27fxe1urEUtbAwlYuzFiskLTKCh5Ni2RAXsGtfK0+1stnC7d0K/lz5OlvBFKdBWMP9+vHwkM7rLKxstvBpaWOmYjk5yXDZSqz6Pln56pUt0y3NgoXwuPJxZJCc1urd4TGbfBLIBzCgd2nlzuWfmAXjyYlxSZ4n/ds6t9Zb+G+5irzh5BShNiGWV2UuM8UN/dj1gkOa23KFklNE8+r6zsGlwyzWdVVmGLtecIB7yA3RUclpNF6ZgVjXCi/QP5wy9IOocDBlTgTqZGxPzp9JxSoCrbH0Fha6p0SuJyjOOLGkJRJ1cmHPYsFj116nF6z7MXa9FYozTiySJnl+AO4D6qll3fr2ZI8qrVg1RiQQHAdXMqNxxp/5AQgc2N/kIjnFrWEHbaMMV2VugnkgauU0Aote2bF0cUpOJyx2LDkxSmz2bSODYOoQxsHtnXHRjHJxclOdi3NyWt1eji0IBmK9oRk7zBbWL7P0os+nF+D40nFdcmK8i1V0dScMSYu7Cga0osldV3eWlIuL4ECbnJhsxDJd3Qn9PCwEWUmaFw/nokExPBm/4+XhONmJpXFFX3SnDBY+s8u8OkubGPS1syIqHetOmRsAH998t65hI2qq2ez9ZN7XpqS5+uSu7qx5WuItS1sCsTt1NyCPJr4UxjGbBV/ru+3WsZvqROe2Y9Fvmc6aBS/Xe6rz4EKc6NzEilZsUTOCZdfSERY96BPnuRclz6ZWe3ZbLYfNl/RonmKeiWsLxWBXS19Xveku5hYam4VYxk4wx3JQqmEeUUtNVc5aYb9auv/4WM2180YYvJiWqEZxWx5yYeGj0+ELHouuTteQ7KWWo2aDrnQrJ31jmaTGSf4WD087XF3ljepdl+pYe9xCAtK9tnS0S7sBpXaKN+7cUEvWcMMlZsdJ/2Iab8mclBuZztNsVU5OjvEaeyv4gq2Nst9XD5X7ilc4pZp+yka39S3hm3PhWzTYzeSuTs0+RB+o4dfyJXR4Z2QJ95jDcJF+pkodlDt0ZOHS+vp8Z7+nuith9AMldGhDu+NbZEFBQUHB/8I/1+wicGVdtt8AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/qr.fe5fa11b.jpg\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAaVBMVEUAAAAAv5gAwpkAvZgAvZgAvpcAvpgAv5oAxqUAvpgAwZoAvpcAvZgAv5kAvpgAvpgAvpgAvpgAvpcAvpcAvpcAvpgAvpgAv5kAv5gAvpkAvpkA0aIAvpcAvpcAvpcAvZgAvZgAwJsAvZfHwiDJAAAAInRSTlMAdxn5/PLZIQzUMuuxU+/hvqmcz8Cmnn9PS0cF9NuWiG09vz2DxQAAAOJJREFUSMft1cuOgzAMBVBDcOgAZYDO9P28//+RbVSpVWNi5EW76tlkwxXGjgx9fchsvuw8s++O2x1NqxqHBx5K0pU9XrnTjBRrhuCVl2QY02715yV3SdSDlHq0qpKRtBjrbw/FmYQKmlo2t4FqJe6Dg8rHgTkmVFFgCdhq+kPgsjzPnDiDPgp4BNl94OK8WUQBRpDTTS7OoLUGnLWk2vrRv1FgwARvHdyPuBrGADXWQGUN0L81UPJEl4RNAcXBsGYeg5OJwhigDSOlTizjZK9afd1Le+2HMnSegeIJQEFfb3QFp3JsyyulkFoAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAATlBMVEUAAAAAsY4Aso8AsI4AsY8AsI0As40AsY4AsY0AsI0AsI4AsI4AsY0AsY8AtpIAuZcAv5kA//8AuZUAsY4Av5UAso8Aso4AsY0AsY8AsI25UKLEAAAAGXRSTlMA+VHzf9tK6KrTv6WCciMWCgEdlAxJjmU78AigNwAAAPNJREFUOMuV1duOhCAQBNAewUXuuuNe6v9/dOeB2MFptLeeNDmhg4GS+pQcw2zMHGIuNExNHuD4VEW2WoNTjN3f3eQgxE0ntlkMYrdu7IJhlpXdxk6SvKbFZeyxD9yk7Wh3d9DtPFgxvBqM8ni2B1NfMI3dRD/tMb2gv3BEbU1PVC7dx6O9Fcoqh0xR5RApqBwCzXz6lrHDTOZwv/QcOhiG/DEEB8Oj588m2XWjA3opOwSK6OW36BAp4yRFh0wFnRw4FCJ/ll+C88cxYyk5pPeD6yRn6n+uAq33l2vVXldtAagrRV1S+trTF6m+mvVlr/59/AG352xZ9spLqwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAARVBMVEUAAAD7iRr/kSX7ihn7jBr6ihn8ixn8ihr7ihr7ixn/jh77iRv7iRn6ihn7ihn7ihr7iRr7ihn8ihn6jB3/jx/7ihr6iRkXaPy2AAAAFnRSTlMAgAe2RaRklH15IXP21sDvxa2ZNRlGSun+DQAAARJJREFUWMPt190OwiAMhmFAYL/+a+//UjUm+qld7aCH8p7WPFlcxlbXav1DY+79q3SK77M4+I+GKDKho68SholYSXK2xIqv6yESpryOeNNzOC1Bw6IzEpVekV+EMrGE/0iB+sdsp9+1WYE8Zr8KG7JBcKwQHDsEZzZBcDbeBMEJdRB3XB3EnTqIO3UQd+og7hgg5rgBx4gE6Q5OlVgAcQenSnIaJDsoTtFpkO4gGTI6gIwOIKMDyOgAkhwTdIRjgq4/nPNhPpzXQpPsXPb3wf6yEopwll/LWYfwQB2ZU3iM4IEyQahBDWoQ+zzW2z1+3Asf7MVlYYUobpSWmsI6ec0qahuUxW9lXdBXUb0+j67V+oNuSA1W0KzViWgAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAk1BMVEUAAAAAsZEAsJAAsZEAs5IAz6YAsZEAsZAAvqMAsJEAsZEAspEAsZEAspEAsZMAuZYAsZEAspEAuZkAspMAtZYAsZAAsJEAsZEAspEAs5EAtZUAupgAsZEAsZEAsZEAsZEAsZEAsZEAtZQAsZEAsZEAsZEAspEAtZMAsZEAsZEAs5MAsZEAsJAAsZMAspAAspAAsJA+Y4CrAAAAMHRSTlMA/O/4RwT03Qm6qlTmZSkVyY8RMxns4pxeLRwN1H9rwrJxINmXdk4jzbU6pIhBNXouWvJRAAADDUlEQVRIx52W25aqMAxAW7mLIhdRFBV1vI/O5P+/7jQpnqnFCrofpq6u2ZAmTZS9ICrZp5QVWEvnQ7kAQTz/TE4AGcw+ktdA9LJP5C+Q5NH77gXuLPy35T56Gxf/7t51bbROzOZi4eLYftS9auMc5SFjS1zXLJqAd+nqLqjI4mXOBF8932Hefzq5W4+KtMXPKwohpo0uNb8NACkY4lvi47fcGWzbVOeXA7JiEjxBDyRfactxA0B48VczhcB5eTdkgG7IdDmngK4v3NCS4SmpCWp5uKHlYHRX8rjfyhTAM9d1m1IApiYdypCLh/xxuNfNP+GnyhAz/d/gsQd93KwvyLFX37smPxYdd/ukr+Nj/XgKvGy6owkIvLG+72+Sw2Pql4bJMdm23AIXD9Yo9gFdq/XuX5+Vy5/IXLQx59Sij9ANCFg7AbUoU6G2tY4d5LAZYdh5VjkuXsHGuOOY6W5xTx7S5dYntu0bqxckvW2GGRamtO/Maaqph77cD8LBYrT0cCnoOi5Ei83gzuqGf0NFpkEVaTLuElakyikNdEXeYTM5mjwS773OowrgzPwoikRBLlGUMkubCX3sCKbJK5mGVOSDUukBjHDFqk61DMbS4lMBoJxQGujJtirjGD5r8knKBMkBSfSQlSqfsDJa2INadgUo42ZYJ6RQZRyRfUWe4h3RE7asO7cSiVJkh2tn3oNgrMkHcZNKMWBEMKkij0Gw16+2rcmYmdNwn2MAimzrl4SettPlLAfi5KvyTkapEGPGdJnN1yJ1+dVhqjygsqr8giB70oCRPuMzEPwylRlQl3bgGwSz5g8nPmt3Zxxv8rMfi+d2+Uxf+/rhFlStTj+SFs/ndq9lBB57hm/Zih5avnJLCq8yPvXsm13/bI7Opn6MxyZ3HIOAG/KyAfX7WScbgJxeBqZy3iUpa5AmFiBTZmRZj5G9r512Twmh/jITukC4/SL9/9Kif98N2UsyD2q4V/WTpF95HGo8Qzb0CHXqs7RCudGhLHZjNFxbD+Z6OGJvUIZJ4OWWlXtBEpru7D+f+KBSRp3RagAAAABJRU5ErkJggg==\"","module.exports = __webpack_public_path__ + \"img/vr看房.55776ace.png\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-search-input.vue?vue&type=style&index=0&id=7f30afbc&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAZlBMVEUAAABESE5ER01ERk1ESFFTVlZDRk5ISE5ER05GRk5bW15DR05FR05ER0+AgIBERk5ER05DR09ER05ISFJLS1pER01DR05ERk5ER01DR05DSFJDRk1DRk1ERk5DR01ER05ERk1DRk2traFyAAAAIXRSTlMAgL7aPQvyJuJEB8R2UgLpooVlGRHtjGeoeTT8ynOKsI519XrsAAABYUlEQVRYw+2X226DMAyGvUAIhwQolENX2i3v/5KTZiS0LakDRmgXfFdItoz57RAbTk7+OWXciyixHpJI9HEJNLmuLEmlcyAwqQ0iNfCSiw3mAi8Y7QpGKh9+TsbOiEZJ8CBVI+yM8dRr1jmKgSCOZsXdtdNoLa5Aci3QVzv7sMJ8MA4VCXOqSle++BLqu2jvHnWGQFDx3mtpIJDG+178agWBKFTUYcHzLiEQif8ChwXVg2DQnzZkt7e/DO3qQLV10r2vDJRZD8XKQA/rITk6I1qj46tGcAY64Kwt9eL10dJBzM5eepp/1pLDM6I1Or5q/D7i3yL8e23nm5Z/9z/3nkb48xFzYpMCfTVrhlzipPnWqRbJhUXM1jlbKAyUEHM2Pfnf6++j+4Fi8naR6JnJAZ/Y29F99lH8fQ25hW2QNBNso/38Hb2EraEe0w+tJGxHDWO6bH5MWqPrqetqCScnO/MFQkufJ8yQ5ToAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABIBAMAAACnw650AAAAGFBMVEUAAAD////MzMzNzc3Pz8/Q0NDNzc3MzMz0pcRiAAAAB3RSTlMABKqhJSaXkoZQ0QAAAIVJREFUSMftzDEOgCAQRFGN0ZrgCahotbK1MR7B1jOoyV5fAiRrDDClhTsd8HmVTCb739oZN/V0KhhpIgMhS3QoDDkKQ5DSrrCOQpDRgPLvvgRQTMtQbAHEVAGKNYA4z0HcAyhPNeGefwyJaA0QU1ci2jzEVDLqaHwee9qrxJb3USaTfbgb+WAtgH3P1lkAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAhFBMVEUAAADSo23Som3RpG3To27Qom3Ro2zRoW3RomzRom3Rom3So2/Qom3RomzRom/SpW/VpnPerXvRom3So23RomzRomzRom3RomzRomzRoW3RoW3Som7TpHDUpG/apXbSom3Rom3TpG7TpG7QomzTo3DRoWzRoWzSom7VpG3gr4DSomzQoWzcVO5BAAAAK3RSTlMAWHxUMOaglNqCwCbFd0g+FgtsZuutp/TxzLiHLCASb2FRQ9E0sYtcNwWPG3kcNQAAAddJREFUOMvVk9uSojAQhgOLMqjIYUQcFMTj6PT7v9/+9J9MxRX3Zm92vipSneSj0qQb8/PIZuBoPMoP5fCk/hIQGI+dKDPj0ydJUgmoELyb0xsRYmetqjPxWJhaxpj/o5qGY3RjqjkvBwr7dTrJDZlHUZQKCBHgoLUMLLnZ6ORmLEVR8LIQYJrobsk9XkTnzGFD7NAVucYS54rGK2PpMHkXO+SJjLAKqeaIP8UO7ajqKtkOkdhh/kKd8gYQ8bNqkR3VMPtmrwuNqpFITXUjcqZ6MLdUiUzntc0NaVOdiGROPbqDfTUTmVDFJR4P04HI3Df89nuhC6mqeP/NqiwSqUTJjMdS5ET1hJPTiaWmuuGscn/AB9UFnkRGYa4B+okqeqz/q9ojoNqguLsgCGo9OfDhL4rSN1QvInvWBFzMMyhHRRWdmvJdEEc+d1VTkTXVKSqKhfXLfytETajGIgkWJi/VLQ77Vq8u1cnCsvLUL5Evqle85FItjWXqqbHIlmqiKlPdPamME6pD1jbV1R+90Do1pTrchU21cuZcO6zmBAfuqZZQHlJtNxD5EygXbFCF1Tymil7zp6h8T/UT3fCYasj+dl1cxvE5imOO+2I70BvSYvka5Oa/4DduPYXD6HD3fgAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-overlay.vue?vue&type=style&index=0&id=3ee0d962&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAeFBMVEUAAACLkZmenq6LkpmKkpmKkpqRmJ+Kk5qMk5uOlp6LkpmKkpqLkpqLkpqLk5qLkpqLkpmLkZqLkpqKkpqLkpqKkpqKkpmLkpqNkpuNlJyNlJuPlp2KkZqLkpmLkpuMk5uLk5qMkpmRmJyVnKOMkZqLk5uMkZqKkZnkXDnrAAAAJ3RSTlMAgAby3e0Sdj0d1b+znVf36MuSRtHIp2w4NCwklotwY1JMGAyJhGV4IOoZAAABkElEQVRYw+2W2XKDMAxFjdnD2qwQspNE//+H5TpDnTYDThFPGc4LYgxnbI1sWUxMTLCp0nQr+IQRNcwKrifI6YHP81xsaglYojX94EiGZwGDmwYz5pSkEpyF2OI5Hy6y8H+EaNkEq8GegkCJMEGShno8Ry/o2kT2UFEMj1OreN+E2UDPHJ6s1GWQD/P4BDYI22QzPElb4HjZ/UuwPVpgTSBqi/mAt9hS+PdAmrfoFz2x9NrCdOgX2S7s92zo1QOO9Bf33OdJ6ZnIEx0TAlnRU4A2aVxfJ+Li0iszw85yFlLgaYku6spX4pPoAom2kUUlMp4uiejCVqNGEYj61qb/N4vmyOIYohs+GUO0G2tG8Vg5QrNbjyCqVMfkifSeLPkilSJb8kUSpRsLvkjtkMMIogQfhHyRdFUn4ItOemU8UaxWxheFj5sFX7THcMoXqZM9l3zRVY+yjtoqw/bwELIOf6la8Q0hpx3JYoWxvBbA1CDNnIWB9D3PXhjZmBz6Umm+1hhwTu9ftHq4l2JiYuIj+AbdjW2rmKFVpgAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAY1BMVEUAAAAAvpgAx6QA8OAAvpgAy54AvpgAvpcAvZgAvpgAvpkAvpkAv5gAvpgAvpgAv5oAv5oAwp4AvpgAvpgAw54AvpcAvpgAvpgAvpgAvpgAvZgAvpkAvpgAv5kAwpsAvpgAvZdyrZiJAAAAIHRSTlMA4AcC8guU28yhj3BnWlFIPR/l2BT76NDDt6qZfjkxkdpGZlEAAADZSURBVEjH7ZPJEoIwEERDEgIom7iy6fz/VyrKOCpVpL1x4N1fTaZ7olaWRxHbRCucjh5sFIpJ6EmJCjd6EYUKIiUGfFRAb3pIsCLsoaTOJKSI4EhwUGkkZFANsnWAtb1FBzCaR0RGYeQ8IVcgzSjYKygcqtE47UCjPHJObMBJRajR0p8zTM3GadhcZy71tBhe2LC5yYZq9r3HiOXM+UeF8+GyIUQl+Cpho2eNemok81m1E8H6Gjz+CLH3SqpvofBfYkMfdND/CLCVBb0dFWcUiCnc2VapWlkcd8jBLB4lQq4pAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAACXBIWXMAABYlAAAWJQFJUiTwAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAMTSURBVHgB7ZrLcdswEIZ/0HFOmYk6iDpISlAqsFhBrAosj+LM5GTplIPiKKnASgWUKpBLUCoI04HPGZvrBagHBZIiQD1MePhdiAEhCD+BXe4CBGpqap4TUdgiGLa4WRvCOwOoiUog5jyWOej/AP7XcGvL3DtBvwHv7TUo6qLKCPxE5LHQy/vs21lIcXhzByHewwl4Rkl8zBLpZbaXM+eMOAl9gBddZ91Jz2DwrQnx+i9chCKexau7ZFXGDJ724SzsDDXSAoXn0NLUEOJMr8qYQV7P7tLUKzy8cF5hZ0QIol9xUVxUJxiI2V0gPfjwv8xVORjO2YZnqBC7L9GlOFXedNFVoLbBNCuby4z9QOgsSg0zmyzob02jjI3bC0zaXBZ+b7wqm9hkUX9JSti4/RI1HYxqa2CT++5Pw17g9Mcni7YXR+9PIx1sT24IxUywtJl2r6P9/nbRdZPXXwtmrPvLxbC/dm9DU9n3YDKo7Wj3zuOLyXPK7C8Hq/5WvPjXxO4CkzZUwkYOzR5CNRqz3fESEw0ut1Ax9hBsK9plbeTQ1DboOrVA19mXk9kBcc/bfb/ZSRVHMvGmUgMWlBQoUxzOAnAaAg9djvDjTVeV9pz01SAEBUYbWBR14H+ewAR5TmKZTZSLRfUN1mDYV1f/qm89GC12LKRofHuKRTdJCrNFPgjTNCi4OYclJbOJ/MOOeCDWhzdjXhX/tjcRMqOXYeF2G9zPDLJtCcwQjHJEWp9MnfNyxiEov0TpccpLK8fzETsNU4FV9KIUDbbanbwXfF9sEhX2dVAvWnJd0OaApM0FI+3JRmOYYCpOtT3GnoxCtFbFlUOh2abIE7NDHPUNgCHH86K8f0IYqCuom3Aooar3vHeLs31Te6maF5WRCkaLP07WsyPALQ8WlhzMi9bZhOtkCQzhLCK1S54WSDSFs5CBQP0d5xLkDfSqtED5Ml0eSbuEHLN/GerVOU5GJq3C/NTnuSH8WSTaKbIFygxBpkMuzKQao9ey+xgvSTBqAo99bsnRiqjKNzRh7AzZX1Twu4Campo1T05vH+BJRt/wAAAAAElFTkSuQmCC\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"img-wrap\"},[_c('common-img',{attrs:{\"className\":\"default-img\",\"mode\":\"aspectFill\",\"src\":_vm.getHeadimg(_vm.item)}}),(_vm.checkShowVr(_vm.item))?_c('fc-icon',{staticClass:\"vr-tip\",attrs:{\"type\":\"32_vr\"}}):_vm._e(),(_vm.item.video_urls && _vm.item.video_urls.length)?_c('fc-icon',{staticClass:\"video-tip\",class:[{ top: _vm.checkShowVr(_vm.item)}],attrs:{\"type\":\"32_video\"}}):_vm._e(),_c('div',{staticClass:\"view-wrap\",class:[{ hide: !_vm.item.view_count }]},[_c('fc-icon',{attrs:{\"type\":\"40_white_browse\"}}),_c('span',[_vm._v(_vm._s(_vm.item.view_count || ''))])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport common_utils from './_house_item_utils.js'\nexport default {\n mixins: [\n common_utils\n ],\n props: {\n item: {\n type: Object,\n default: {}\n }\n },\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./img_wrap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./img_wrap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./img_wrap.vue?vue&type=template&id=1420bca4&scoped=true&\"\nimport script from \"./img_wrap.vue?vue&type=script&lang=js&\"\nexport * from \"./img_wrap.vue?vue&type=script&lang=js&\"\nimport style0 from \"./img_wrap.vue?vue&type=style&index=0&id=1420bca4&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"1420bca4\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACMAAAAjCAMAAAApB0NrAAABwlBMVEUAAABTU1N3ufgzNDQzMzMzMzM3Nzc5OTl9u/h9vPidzfh5ufeGwfn///+WyfiKw/iWyfeay/ozMzNytvh0uPiVyPeMwvaWyfgzMzMzMzMzMzMzMzMzMzM0NDQ0NDQzMzN1ufaBvvg1NTU2NjY0NDQ0NDQzMzM3Nzc1NTV1uviHwfaJxPeNxvhCTVg/Rktli66Rx/aCvvs0NDSAvvllhqCCwPiLxPmdy/g3Oj00NDSTyPOczPecy/aez/yqz/Od2f9yx/+qqv81Nzk1NjdASVBCTFc/Rk1zuPd3uPdhfph/vfaRxvSSyPiTyfc0NDU1Njc5PUBASVJDUFxHWmtLXm5XdpNCSVBcgaVVcoxRaH5HUl1aepdOXmxjjLNwtfdzuPpSYnJYboFvt/h6ufhTZHJzqNloiqpzufd5ufZvlrh/sN5wtfeIwvyCwPiMxPuAv/h8ufVys/Sh0P+h0PiAwPhztfef0vP///82ODo2NzhCUF08Q0k8QUVGVGFMYHNMYHRETVVSaoJIVWFLWmdWbIRSZXRTZ3xggaNjhqZtmMBxm8hUZnNie5RXaXpkgJZ3nL+ArNNws/NxtvePuuWi0fczMzPDWHPMAAAAlXRSTlMABIz55oEaD4F8LIdmATtcNjHMnJZBVzHr5ODbvruylpFxb1FJOzczL5BhYFHRwolMEct2dGxWJ+6dQiQbFQoGBAP18srDvJeFendHRkL79+XUysm0qqmop6ehm5aVkoyJgoGAgH5+em5qZmBcVkVENC8mJiIfHgLw6NXUx8W9ubWvq6SelZSQiYF4c3BtZlhWQD87IYw/eKUAAAJfSURBVDjLlZRnUxNRGIVv3E2AmBDSe0IaiSFqSARCBMU0CCH0XhQUULCLvffe9fxf3920dXUmw539srPPnHP2LZdJT0TpMfAcb/AoI+y/p0XpQOM4lC3/EAq/DbB7A2GVQhUOeO2Aza/4G1EZAFdIW3/XhlxAQiVFung4gzLloBN8lwTh4Bbsh29fv3qlO3bNOnRPCOgGV4dUPAbI+8wN35ivVxPV9cXi5kHyVQyAr9opDHAT0nOptW3M9yE/NZXfjZfM+tP0xY1EJbgfTjK6c+Fwa1tylQNHz2ap3G49RXZO+MW62BAkldFDxGxnJl5HdW+57Ddze4ealIKwCUGVcFGWi50C8wJzmm6d5SXWiNGfpEwuKIlxIMTYjxGRmcE7ymwpopAmRt3DWAgO6hHsWjZ8znREYI7iuMCcwDHSsapJSGtHhKy8jN00jtQY8uojpiww/RTbS2YeBBi7bDTJGLPIDDEWgIcZEGbsvNHUWWeqXpTn1iBjYRgYDyrlWYlXVNRJi8xdagJ4xoEqaRR0FmdrTJGYhS96df9vqjW4mg7leYj1Z1gWvN5g5SsKVvV+RUeSZxbz60h9jOp2U/i8hQXSqeSR/NcippNPMJnLTeL5+GN80qv3K/9Vqw/pjKaw5JvjAO5VfAMPftXrI63zPDKrvZqdHUtsM4utDn2tztV+/RTr8xSYeb+3VywAK41+yfq+lIF4shvlRt9l85PcXp6eQG7t+7hkfmRzKMzzfc4SixMjnUOmSNTnOUlMCsSU0vV5lu+FwOQfWeR70Xy/mu9p831vfm8c6P5pfo/9Aa9Xwsq9yY5HAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAnFBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+TINBkAAAAM3RSTlMA8D8FpRKQ9ufZZ0cY/Ma+TSb5uoB3YlssHw0JsxUD8/Ls4t/UzsjCq5Mwem2elIp0UxxmH9WJAAABUUlEQVRIx+1V2XKDMAws930kEMIRcjdprjat///fKk3zALKZ0PFTZrxPzEqLrZUQbwoKCi+BsPiMt+to4y3ywPiXsr7GrAPN1EdL2y+NUbzPR0mb2Rqzo+wSVLXRlnPb+5OPOF3fYabnWx3ufHKQNK0nx9qYtU8pb+Uod4EfxmQPKRt/KQj9mAxgDxufolGLcCAauBA9DkVnEHSK4XtZH5CwLUWh5QlCu3OH8Q8rN++/PoKm6wItvjbp+BkmQMSkxgAKm35z4jv2opuKWsadUrpQWkV9noKVXcJniIY7pPLAU8JdGct6xIEhJvjIH1P3Kehif3pXDIF+URy5am4i8cOc5pn4Lro2IrZvJr12VJNKHIFhDxTUsIxWchG2CpEYpFVaRcWGaEgQcUuHJB07nlnBj6fMhyH7ScovA/k1JL8A5Vev/NIX/25kfnQKCgovgF+ymEiFkpmv7QAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./loading.vue?vue&type=style&index=0&id=694badee&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/first_payment.19e0925a.png\";","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _vm._m(0)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loading\"},[_c('div',{staticClass:\"typing_loader\"})])}]\n\nexport { render, staticRenderFns }","//\n//\n//\n\nexport default {}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./loading.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./loading.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./loading.vue?vue&type=template&id=694badee&scoped=true&\"\nimport script from \"./loading.vue?vue&type=script&lang=js&\"\nexport * from \"./loading.vue?vue&type=script&lang=js&\"\nimport style0 from \"./loading.vue?vue&type=style&index=0&id=694badee&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"694badee\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('p',[_c('span',[_vm._v(\"我也是有底线的哦\")]),_c('img',{attrs:{\"src\":require(\"../../assets/icons/smile.png\"),\"lazy-load\":true}})])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n\nexport default {\n name: 'BOTTOM_TIP'\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./bottom_tip.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./bottom_tip.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./bottom_tip.vue?vue&type=template&id=2e13ca1f&scoped=true&\"\nimport script from \"./bottom_tip.vue?vue&type=script&lang=js&\"\nexport * from \"./bottom_tip.vue?vue&type=script&lang=js&\"\nimport style0 from \"./bottom_tip.vue?vue&type=style&index=0&id=2e13ca1f&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2e13ca1f\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAIKADAAQAAAABAAAAIAAAAACshmLzAAABEklEQVRYCe2WyxGCMBCGE2jDIpQuvIA1OCBaig34grEGHwe7QMuwCVizMxrRGcwmrLfsgUkmm/xf/sySCOHDO+AdIDoAAHKxq+K8uCbYJk4zpgXGjGfCvLzFNTRHaOpDXlQlFwQZIFCKGhZgygVBBlhlo7OQcs8NYXWWaDvuXCgHNIiC2mZRKqV8O6QHzQ0rAFyOG8IagBvCCYATwhmAC6IXQBdEKINkPYtOOG4KchmaFmqPN6ok2v1f7V4AXRWxSYek3SMYmfR7F13itv8EJwAucScHOMWtAbjFrQD+IY4AIX4ocR9MEgHNUuf2vIRe65DL8OM9wCSOEOQqwCNQr6IxTlJ1fnG9fnG+D++Ad6DtwAO9/ccnx9FRvAAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADgAAAA4CAYAAACohjseAAAAAXNSR0IArs4c6QAAAERlWElmTU0AKgAAAAgAAYdpAAQAAAABAAAAGgAAAAAAA6ABAAMAAAABAAEAAKACAAQAAAABAAAAOKADAAQAAAABAAAAOAAAAAANV2hTAAAD9ElEQVRoBe1aP2gTYRT/XtIm9V+FFmxiVVq0QyxYcXFw8A+KQ0EXFwUFHdrB2qaLg5OTiAitVQc7iDhYBBc7CKKgg46KFdoMFSz+ayK0YFVo0uSe7ztJudS76/fun9eSLLm7773fn+9dvrvcPRABfGYmh7bkF0rXAMUBSYcgXsZroxcb23q/+E0PfhPo5grFMYGioYILxGw8VtPht8lIBakPO7Jy/5iTPGRYH/OB0wjpu8HyaWkkLW/bjZVj3H77bhARk1Yi7cascrjHffsNzo7f2JYXeAxRu2knCiByIS5gtKG975NdnNMxTw3i5FA8Vyh1aUKcE4i7WaIA3tHpdLcpFh2Gtt48K9cm2BODiC9qspmxLqrWJVo8mm34lh8C8ZWqeiWR6hgGOFhcPsE+wrXBmQ+3t+bnCyO0LO6zp+KOwut4Xexk447zn7mZxnhXBqcnBjppobhvehkwsjjdpmslQPR0cmffE+cQDjOz44O0gOAjFFjrEEIpDQQsAMCJRHt6VClhSZCjCuYyg0dLGj6mhSS+BM+fXYB8NALHm1Lpp1wCtsHpzECL0PA9otjAJXMTDyB+igjsSqb6pzg4rAs9nZJA5u4FbU4a0jl1btLA+LAM5iYGe4hoPwPf01DJLTVwQJVnQ17Es4XiFJEkOARex9Kpmk3EalpUbwaUK5jLa2f+tzk5WVKD1KI6ccoGEbS0KqjfcRwtSqeoXDmxhB/9Fs7Bhyi0qqyoShWEEhzhkAcRq6pJySAK7VAQojkcqpqUDAoQLRzyQGIVNakZFKIpENE8EiVNagZRbOJxBxCtqEnJIAqxLgDJLApVTUoGWcwhC64aDFlB2HKqFWRPWcgSqhUMWUHYcqoVZE9ZyBKqFQxZQdhyVn0FLR9ZGBsHgnhRyS4NJdAj/enlGhpMDVo2DjhREUSOTUOD6Slq2TgQhFgnHDYNDaYGg2gOcOLDLsdKs6lBO6CVNmZqUP5wV5oRK82mBmWbFT1Jm10xJuUiIzWbfEwNyvYq2WZF7+NG5FJskheKQ7o20hhES1goDFdFrMYZML2T4Rr9Nj7QRS/u7nDzbOMBuje39w/bxigMmi4yCnkVIXV1ax/STP2uOOhiR2JJTBcQi6meGGzY3v0DI5Gri6guNySWxHQJo6d7YlAiJddsvE63969ciyIMHcs10F8AzwxC69n5eCzaSSbfONZGuRJDYjnGWJLoySJjxJzL3Gr8pS08p0WH3U65PlJ7uD7VM2PEc7vtWQXLQqTApGjeS3cZl/XupPKAxbeMkbEyx2tzktLzChp90B/n+nyheAqQ3vGD2EMtIPp7RjL1nToU3yLgM7rNekC3hnPGPC+3/wBxtTY16M36yQAAAABJRU5ErkJggg==\"","import { HOST } from '@/utils/request'\nimport { App_User } from '@/data/user_info'\nconst { VUE_APP_TYPE } = process.env\n\nconst page_title = VUE_APP_TYPE === 'tft' ? '成都购房通' : '新房在线'\n\nimport wx from '@/utils/wx'\n\nexport const getElementHeight = (id) => {\n return new Promise((resolve) => {\n setTimeout(() => {\n wx.createSelectorQuery().select(`#${id}`).fields({\n size: true\n }, (res) => {\n if (res) {\n resolve(res.height)\n } else {\n resolve(0)\n }\n }).exec()\n })\n })\n}\n\nconst updateTip = () => {\n wx.showModal({\n title: '提示',\n content: '当前微信版本过低,无法使用该功能,请升级到最新微信版本后重试。'\n })\n}\n\nlet system_info\nlet ios_checked = false\nlet is_ios = false\n\nexport function getSystemInfo () {\n if (system_info) {\n return system_info\n }\n system_info = {}\n return system_info\n}\n\nexport const checkIOS = async () => {\n if (ios_checked) {\n return is_ios\n }\n const { system } = await WX_API.getSystemInfo()\n is_ios = system.substring(0, 3).toLowerCase() === 'ios'\n ios_checked = true\n return is_ios\n}\n\nexport const checkChooseImg = () => {\n return ''\n}\n\nconst WX_API = {\n login: () => new Promise((resolve, reject) => {\n wx.login({\n success: (res) => {\n if (res.code === 'error') {\n reject(res)\n } else {\n App_User.setJscode(res.code)\n resolve(res)\n }\n },\n fail: reject\n })\n }),\n checkSession: () => new Promise((resolve, reject) => {\n const token = wx.getStorageSync('token')\n console.error(token, App_User.getJscode())\n if (token) {\n resolve({\n code: App_User.getJscode()\n })\n } else {\n console.warn('checksession no token fail')\n reject()\n }\n }),\n getFile (filePath) {\n return new Promise((success, fail) => {\n wx.getFileSystemManager().readFile({\n filePath,\n success,\n fail\n })\n })\n },\n uploadImg (filePath, opts = {}) {\n const formData = {}\n if (opts.store_dir) {\n formData.store_dir = opts.store_dir\n }\n console.error('formData', formData)\n return new Promise((resolve, reject) => {\n return wx.uploadFile({\n url: 'https://data-api.rippletek.com/miniapp/v1/upload_images',\n filePath,\n header: {\n 'content-type': 'application/json'\n },\n name: 'image',\n formData,\n success: async (res) => {\n if (res.statusCode === 422) {\n const { meta } = JSON.parse(res.data)\n console.error(res, meta)\n wx.showToast({\n icon: 'none',\n title: meta.error_message\n })\n } else if (res.statusCode === 413) {\n wx.showModal({\n title: '提示',\n content: '上传图片不能超过8M',\n showCancel: false\n })\n reject(res.statusCode)\n } else {\n const { data } = JSON.parse(res.data)\n const { image_ssl_url } = data\n resolve(image_ssl_url)\n }\n },\n fail (res) {\n reject(res)\n }\n })\n })\n },\n uploadAudio (filePath) {\n return new Promise((resolve, reject) => {\n return wx.uploadFile({\n url: `${HOST}/fc/v1/upload_audios`,\n filePath,\n header: {\n 'content-type': 'application/json',\n 'Authorization': wx.getStorageSync('token')\n },\n name: 'audio',\n success: async (res) => {\n if (res.statusCode === 422) {\n const { meta } = JSON.parse(res.data)\n console.error(res, meta)\n wx.showToast({\n icon: 'none',\n title: meta.error_message\n })\n } else if (res.statusCode === 413) {\n wx.showModal({\n title: '提示',\n content: '上传图片不能超过8M',\n showCancel: false\n })\n reject(res.statusCode)\n } else {\n const { data } = JSON.parse(res.data)\n const { audio_url } = data\n resolve(audio_url)\n }\n },\n fail (res) {\n reject(res)\n }\n })\n })\n },\n setClipboardData (content, success) {\n if (wx.setClipboardData) {\n wx.setClipboardData({\n data: content,\n success (res) {\n if (!success) {\n wx.showToast({\n title: '内容已复制',\n icon: 'success'\n })\n } else {\n success()\n }\n }\n })\n } else {\n updateTip()\n }\n },\n makePhoneCall (phoneNumber) {\n if (wx.makePhoneCall) {\n wx.makePhoneCall({\n phoneNumber\n })\n } else {\n updateTip()\n }\n },\n getSystemInfo () {\n return new Promise((resolve, reject) => {\n resolve({\n windowHeight: document.documentElement && document.documentElement.clientHeight ? document.documentElement.clientHeight : document.body.clientHeight,\n windowWidth: document.documentElement && document.documentElement.clientWidth ? document.documentElement.clientWidth : document.body.clientWidth\n })\n })\n },\n getImgInfo (src) {\n return new Promise((resolve, reject) => {\n const img = new Image()\n img.src = src\n resolve({\n width: img.width,\n height: img.height,\n path: src\n })\n })\n },\n downloadFile (options) {\n return new Promise((resolve, reject) => {\n wx.downloadFile({\n ...options,\n success: resolve,\n fail: reject\n })\n })\n },\n setTitle (content, show_app_name = true) {\n console.log('set title', content)\n let title = page_title\n if (content) {\n title = `${show_app_name ? `${title}-` : ''}${content}`\n }\n if (navigator.userAgent.toLowerCase().indexOf('tfsmy') > -1) {\n eshimin.setTitle({ title })\n } else {\n const tags = document.getElementsByTagName('title')\n if (tags && tags.length) {\n tags[0].innerHTML = title\n }\n }\n },\n chooseImage (option) {\n return new Promise((resolve, reject) => {\n const errorTip = (err) => {\n console.error(err)\n if (!err || err.errMsg != 'chooseImage:fail cancel') {\n wx.showToast({ title: '接口故障,暂无法获取图片', icon: 'none' })\n }\n reject(err)\n }\n wx.chooseImage({\n ...option,\n success: ({ tempFilePaths }) => {\n if (!tempFilePaths || !tempFilePaths.length) {\n errorTip('接口故障,暂无法获取图片')\n } else {\n resolve(tempFilePaths)\n }\n },\n fail: errorTip\n })\n })\n },\n getStorageSync (key) {\n return window.localStorage.getItem(key) ? JSON.parse(window.localStorage.getItem(key)) : ''\n },\n getStorage (key) {\n return new Promise((resolve, reject) => {\n try {\n const val = window.localStorage.getItem(key) ? JSON.parse(window.localStorage.getItem(key)) : ''\n resolve(val)\n } catch (err) {\n reject(err)\n }\n })\n },\n setStorageSync (key, data) {\n window.localStorage.setItem(key, JSON.stringify(data))\n },\n setStorage (key, data) {\n return new Promise((resolve, reject) => {\n try {\n window.localStorage.setItem(key, JSON.stringify(data))\n resolve()\n } catch (err) {\n reject(err)\n }\n })\n },\n observerRelativeViewPort (selector, { relativeOpt, success }, component) {\n if (typeof wx.createIntersectionObserver !== 'function') {\n return null\n }\n const ob = component ? component.createIntersectionObserver() : wx.createIntersectionObserver()\n if (ob && typeof ob.relativeToViewport === 'function') {\n ob.relativeToViewport(relativeOpt || {}).observe(selector, success)\n }\n return ob\n },\n authorize (scope) {\n return new Promise((success, fail) => {\n wx.authorize({\n scope,\n success,\n fail\n })\n })\n },\n getLocation () {\n return new Promise((success, fail) => {\n wx.getLocation({\n success,\n fail\n })\n })\n }\n}\n\nexport default WX_API\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./gft-tabs.vue?vue&type=style&index=0&id=ed80f1d2&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/find.95f92f16.png\";","module.exports = __webpack_public_path__ + \"img/48_horn.35249c4d.png\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-float-question.vue?vue&type=style&index=0&id=7aa9269c&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAilBMVEUAAAAAsZEAuJcAuJQAsZEAtJMAsZIAsZAAsJEAspIAsZEAsZIAspMAsZMAtJIAsZEAsZIAtJoAsJAAspIAsZEAsZEAsZEAsZAAsZEAsZEAs5MAu5sAsZEAsZEAspEAspMAs5QAvJcAsZEAsZEAspEAsZIAspMAt5QAsZEAsZEAsZEAsZEAs5IAsJDRBcAbAAAALXRSTlMAgBcOwEdUc/p44l4oMyx/UROYTcqzpPWd3EEH0ZWGOCMM76ttZj0d1oy/glY/OIu/AAAB0ElEQVRIx+WX626jMBBGHUIK5hYCBAKEe8il7ff+r7cTAlpQVosdVKlqzw8wiCN7ZowY2K9m7WorATR3/aTuPB2C6N5u6loGJDCsybzkStnjuT1I4o1ypQPQucIEUHj38N+svYHgTBAOwmUDGghFVFZAaGxgBYIJA2L1FXIahttno0p2IvIaUCeboDA/miuwl5ALt+W3UI0jDJzE5RAjomOonStBuS9+HatNtjXPVEZrwySWnV4u9+edQ9zN6MHYzMl2kvjAMUlsZkawKfRHrFWNSJmTj+hRmRIh6O7EdGyBnEnILAeSbu/SAq6o5+vMs+wAGFlGa7WgninoKCyZC3CZhBHvRnihaxqd6jiVk21Ab80HbW6avoysYkogId/wqmyVORAljuOowKfTUYrJdYw8gN4FuQds0ff5Yja4c0izTyYnl/EQH3/rCYBh7P9fTnXcOSrMxTPGzLKDqGnvCXtJLtO+VMqmJwBO/fAsXOfK951RwkrOyRWVLeAwkn1g+6Pl94ccaMQVuNHpICAXH1sP2HfylHm5V/LXZGYAepMyQplgisjFpqjYP7DD0B3L3+7jLiYvamgWtVKLmrjl7ePyxpU5ki3zkmZ9yW/Cb+YPC5HEyNsGpQoAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAQlBMVEUAAAAArYMAroMAtpIAroUAroMAroMAr4MAr4QAr4MAtIYAuYsAroIAr4MAroIArYIAroIAroMArYcArYUArYIArYLasQflAAAAFXRSTlMAgLYHRaSVZH15IQvCc9b37601GfNWfFczAAABEElEQVRYw+3XWQ7CMAxF0QQydGT2/rcKQoIHuK6x/NncX6OjCNRQh1ZrCw21i+9ySZ+z1Mev+iQyY6GfMoaZWFlyDsRK7/MQCVNeId78Gs5LUL/oDETWE8VFqBJa+Y50qHvOJv1XOypQxGyt/Y58EBwvBMcPwTm6IDi76ILg7G2Q7AQbJDs2SHZskOzYINlxQMwJPa4RCdId3CrJAHEHt0oOGiQ7KM0paJDuIBlyOoCcDiCnA8jpAJIcF3SG44LSinOZbtPlX2iWnevpMThdLSeCw/+Wqw7hgTozx3iN4IFyQahBDWoQez3Wm54f7oQXdnNVWCHMDdJSY6zIa5apw7iy+Bkqo76K6nV1CK3WBroDMnJTMKzPdrcAAAAASUVORK5CYII=\"","var map = {\n\t\"./building_rank.png\": \"464f\",\n\t\"./check.png\": \"9c13\",\n\t\"./computer.png\": \"4dde\",\n\t\"./dora.png\": \"ee5f\",\n\t\"./find.png\": \"82bb\",\n\t\"./first_payment.png\": \"75df\",\n\t\"./guide.png\": \"22cf\",\n\t\"./house_purchase.png\": \"be58\",\n\t\"./inherit.png\": \"ab80\",\n\t\"./loan.png\": \"1492\",\n\t\"./nconv.png\": \"5e95\",\n\t\"./prepayment_calc.png\": \"4e36\",\n\t\"./provident_fund.png\": \"c28a\",\n\t\"./taxes_calculate.png\": \"17dc\",\n\t\"./vr看房.png\": \"689b\",\n\t\"./政策合集.png\": \"1fc6\",\n\t\"./查复核顺序.png\": \"5272\",\n\t\"./航拍看房.png\": \"535e\",\n\t\"./购房必看.png\": \"46ca\",\n\t\"./购房流程.png\": \"c163\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"8b79\";","var map = {\n\t\"./16_back_to_top.png\": \"029e\",\n\t\"./20_refresh.png\": \"5407\",\n\t\"./24_audio_clock.png\": \"14b5\",\n\t\"./24_link.png\": \"204a\",\n\t\"./28_calc.png\": \"6ec0\",\n\t\"./28_consult_green.png\": \"0a39\",\n\t\"./28_list.png\": \"6c89\",\n\t\"./32_720.png\": \"d080\",\n\t\"./32_change.png\": \"2a82\",\n\t\"./32_del.png\": \"1c5c\",\n\t\"./32_down.png\": \"bd41\",\n\t\"./32_help.png\": \"2008\",\n\t\"./32_more.png\": \"f969\",\n\t\"./32_more_link.png\": \"7d8a\",\n\t\"./32_more_org.png\": \"562d\",\n\t\"./32_more_primary.png\": \"3f94\",\n\t\"./32_more_white.png\": \"4686\",\n\t\"./32_question.png\": \"aaf2\",\n\t\"./32_question_white.png\": \"27e5\",\n\t\"./32_risk.png\": \"d7db\",\n\t\"./32_search.png\": \"41e7\",\n\t\"./32_search_black.png\": \"f679\",\n\t\"./32_triangle.png\": \"9f66\",\n\t\"./32_triangle_primary.png\": \"b470\",\n\t\"./32_up.png\": \"f6bf\",\n\t\"./32_video.png\": \"5338\",\n\t\"./32_vr.png\": \"b97c\",\n\t\"./33_audio_i.png\": \"6fb8\",\n\t\"./40_address_bank.png\": \"b583\",\n\t\"./40_address_blue.png\": \"9855\",\n\t\"./40_address_brown.png\": \"ee0f\",\n\t\"./40_address_grey.png\": \"d442\",\n\t\"./40_address_yellow.png\": \"b095\",\n\t\"./40_advice.png\": \"d2be\",\n\t\"./40_agree.png\": \"612e\",\n\t\"./40_agree_checked.png\": \"654e\",\n\t\"./40_bell.png\": \"156d\",\n\t\"./40_block.png\": \"9537\",\n\t\"./40_bus_disable_color.png\": \"aa13\",\n\t\"./40_bus_primary_color.png\": \"cd94\",\n\t\"./40_checkbox_selected.png\": \"665d\",\n\t\"./40_checkbox_unselected.png\": \"bcd5\",\n\t\"./40_coments.png\": \"4add\",\n\t\"./40_comment_small.png\": \"24b9\",\n\t\"./40_consult.png\": \"1712\",\n\t\"./40_del.png\": \"a8dd\",\n\t\"./40_delete.png\": \"3029\",\n\t\"./40_home_white.png\": \"e528\",\n\t\"./40_hot.png\": \"6893\",\n\t\"./40_label_complete.png\": \"887e\",\n\t\"./40_label_register.png\": \"1668\",\n\t\"./40_label_wait.png\": \"ccab\",\n\t\"./40_label_wait_org.png\": \"d7ed\",\n\t\"./40_like_actions.png\": \"22f3\",\n\t\"./40_like_normal.png\": \"9efd\",\n\t\"./40_more_grey.png\": \"f3dd\",\n\t\"./40_pen.png\": \"650b\",\n\t\"./40_popular.png\": \"cb2a\",\n\t\"./40_ridiobox_unselected.png\": \"d7ac\",\n\t\"./40_white_browse.png\": \"751c\",\n\t\"./48_building_bank.png\": \"8f98\",\n\t\"./48_building_black.png\": \"f674\",\n\t\"./48_building_white.png\": \"1d0f\",\n\t\"./48_comment.png\": \"6a7c\",\n\t\"./48_comment_small.png\": \"e706\",\n\t\"./48_compare_white.png\": \"0cf1\",\n\t\"./48_consult_green.png\": \"6610\",\n\t\"./48_download_white.png\": \"39a4\",\n\t\"./48_history.png\": \"298b\",\n\t\"./48_horn.png\": \"84a3\",\n\t\"./48_like_actions.png\": \"c689\",\n\t\"./48_like_normal.png\": \"6d88\",\n\t\"./48_list_bank.png\": \"ddc6\",\n\t\"./48_list_white.png\": \"34b2\",\n\t\"./48_love_actions.png\": \"c804\",\n\t\"./48_love_normal.png\": \"902c\",\n\t\"./48_love_white.png\": \"16ca\",\n\t\"./48_more_brown.png\": \"1784\",\n\t\"./48_more_grey.png\": \"defb\",\n\t\"./48_more_grey_down.png\": \"072d\",\n\t\"./48_more_grey_up.png\": \"6b07\",\n\t\"./48_more_primary.png\": \"112e\",\n\t\"./48_more_white.png\": \"188d\",\n\t\"./48_notice_actions.png\": \"8912\",\n\t\"./48_notice_actions_brown.png\": \"b66e\",\n\t\"./48_notice_actions_vip.png\": \"314f\",\n\t\"./48_notice_brown.png\": \"0cef\",\n\t\"./48_notice_normal_vip.png\": \"2c88\",\n\t\"./48_notice_white.png\": \"2aeb\",\n\t\"./48_phone_green.png\": \"6e9d\",\n\t\"./48_search.png\": \"567f\",\n\t\"./48_search_primary.png\": \"545d\",\n\t\"./48_share_black.png\": \"299e\",\n\t\"./48_share_green.png\": \"8ac6\",\n\t\"./48_share_map.png\": \"3e63\",\n\t\"./48_share_org.png\": \"678a\",\n\t\"./48_share_white.png\": \"5301\",\n\t\"./48_write_white.png\": \"d7c3\",\n\t\"./56_bell_action.png\": \"80a2\",\n\t\"./56_bell_action_vip.png\": \"0ddc0\",\n\t\"./56_bell_normal.png\": \"d8c6\",\n\t\"./56_del.png\": \"15b8\",\n\t\"./64_building_share.png\": \"cb97\",\n\t\"./64_call.png\": \"eddf\",\n\t\"./64_customer_discount.png\": \"2143\",\n\t\"./64_down_payment.png\": \"a6de\",\n\t\"./64_personal_icons.png\": \"3732\",\n\t\"./64_time.png\": \"05ca\",\n\t\"./right-i.png\": \"192c\"\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = \"8cba\";","export const checkComment = (content) => {\n const rule = /([\\d①②③④⑤⑥⑦⑧⑨⑩零一二三四五六七八九十][\\s,。、??!!/.;;\\-~|*+@##¥%&\\u4e00-\\u9fa5]{0,3}){11}/\n return rule.test(content)\n}","import { init, getV1, getV2, postV1, putV1, putV2, delV1, getGFT } from '@/common/utils/ajax'\nimport { mapHouseItem, mapHouseDetail, mapHomePage, handleBanner, handleWxHeadimg } from '@/common/utils/map_view_data'\n\nimport LocalData from '@/utils/local_data'\nimport { App_User } from '../data/user_info';\n\nimport { DEFAULT_PER } from '@/config'\n\nimport check from '@/common/utils/check'\nimport { checkComment } from '@/common/utils/check_comment'\n\nimport { errorLog } from '@/utils/log'\n\nimport wx from '@/utils/wx'\n\nconst isProd = process.env.NODE_ENV === 'production'\n\nconst logging_in = (params) => {\n console.error('params', params)\n return postV1(`sessions/tft_oauth`, params)\n}\n\nconst getSmsCaptcha = (mobile) => getGFT('v1/sms_captcha', { mobile })\n\nconst getBuildings = (options) => getV1('buildings', {\n per: DEFAULT_PER,\n ...options\n}).then(data => {\n if (options.status === '摇号剩余') {\n data.items.forEach(item => {\n item.status = '在售'\n })\n }\n data.items = data.items.map(mapHouseItem)\n return data\n})\n\nconst getHomePage = () => getV2('homepage')\n .then(mapHomePage)\n\nconst getBuilding = (id, house_id, consultant_group_id, status) => {\n const params = {}\n if (house_id) {\n params.house_id = house_id\n }\n if (consultant_group_id) {\n params.consultant_group_id = consultant_group_id\n }\n if (status) {\n params.status = status\n }\n return getV1(`buildings/${id}`, params)\n .then(mapHouseDetail)\n}\n\nconst getHotHouses = () => getV1('hot_buildings')\n .then((data) => {\n data.items = data.items.map(mapHouseItem)\n data.hotpage_banner = handleBanner(data.hotpage_banner)\n return data\n })\n\nconst getBuildingComments = (id, options) => getV1(`buildings/${id}/comments`, options)\n\nconst getBuildingCommentDetail = (building_id, id) => getV1(`buildings/${building_id}/comments/${id}`)\n\nconst getCommentDetail = (id) => getV1(`comments/${id}`)\n\nconst getCommentsReply = (id, params) => {\n return getV1(`comments/${id}/child_comments`, params)\n}\n\nconst newBuildingComment = (id, options = {}) => getV1(`buildings/${id}/comments/new`, options)\n\nconst postBuildingComment = async (id, options) => {\n if (options.content) {\n if (checkComment(options.content) ) {\n wx.showModal({\n title: '提示',\n content: '请勿发布手机号、微信号等违规内容',\n showCancel: false\n })\n return Promise.reject('violating_content')\n }\n }\n return postV1(`buildings/${id}/comments`, options)\n .then((data) => {\n if (data.code === 422) {\n wx.showToast({\n title: data.error_message\n })\n return\n }\n return data\n })\n}\n\nconst getCommunityTopics = (options) => getV1(`community_topics`, {\n per: DEFAULT_PER,\n ...options\n})\n\nconst getCommunityTopicsDetail = (id) => getV1(`community_topics/${id}`)\n\nconst getTopicsComments = (options) => getV1(`comments`, {\n per: DEFAULT_PER,\n ...options\n})\n\nconst postTopicsComment = async (options) => {\n return postV1(`comments`, options)\n .then((data) => {\n if (data.code === 422) {\n wx.showToast({\n title: data.error_message\n })\n return\n }\n return data\n })\n}\n\nconst getUserNums = id => getV1(`houses/${id}/user_ln_numbers`)\n\nconst addUserNum = (id, options) => postV1(`houses/${id}/user_ln_numbers`, options)\n .then((data) => {\n if (data.code === 422) {\n wx.showToast({\n title: data.error_message,\n icon: 'none'\n })\n return Promise.reject(data.error_message)\n }\n return data\n })\n\nconst getUserResult = (houseId, userId) => getV1(`houses/${houseId}/user_ln_numbers/${userId}`)\n\nconst getResult = (houseId, options) => getV1(`houses/${houseId}/ln_results`, options)\n\nconst getRegResult = (houseId, options) => getV1(`houses/${houseId}/ln_registers`, options)\n\nconst getLpdResult = (houseId, options) => getV1(`houses/${houseId}/lpd_results`, options)\n\nconst getLrdResult = (houseId, options) => getV1(`houses/${houseId}/lrd_results`, options)\n\nconst syncInfo = () => postV1('my_ln_houses')\n\nconst report = id => postV1('form_submits', {\n form_id: id\n})\n\nconst getUserInfo = () => getV1('user')\n .then(user => {\n LocalData.user.set(user)\n return App_User.set(user)\n })\n\nconst getCustomerServiceStaff = () => getV1('customer_service_staff')\n\nconst getUserInfoByShareBy = (share_by, share_page = '') => {\n getV1('user', {\n share_by,\n share_page\n })\n}\n\nconst updateUserInfo = data => putV1('user', data)\n\nconst getZones = () => getV2('zones')\n\nconst getUserPoints = () => getV1('user_point_journals')\n\nconst share = () => postV1('user_point_journals', { action_type: 'share' })\n\nconst getPointsStore = () => getV1('point_store')\n\nconst getComments = (id, options) => getV1(`houses/${id}/comments`, options)\n\nconst postComment = (id, options) => postV1(`houses/${id}/comments`, options)\n\nconst likeComment = (id) => postV1(`comments/${id}/like`)\n\nconst delLikedComment = (id) => delV1(`comments/${id}/like`)\n\nconst getChangeLog = (version) => getV1('change_log', { version })\n\nconst verifyQualication = (params, verify_type) => postV1('verify_qualification', {\n ...params,\n verify_type\n})\n\nconst getLnDetail = (id, params) => {\n !params.ln_number && delete params.ln_number\n !params.register_number && delete params.register_number\n return getV1(`houses/${id}/ln_detail`, params)\n}\n\nconst updateConsultant = (params) => {\n return putV2(`consultant`, params)\n}\n\nconst getMyConsultant = () => {\n return getV2(`consultant`)\n}\n\nconst editMyConsultant = () => {\n return getV2(`consultant/edit`)\n}\n\nconst getConsultants = (params) => {\n return getV1(`consultant_cards`, params)\n .then(data => {\n data.score_top_3_consultants.forEach(item => handleWxHeadimg(item, 120))\n data.items.forEach(item => handleWxHeadimg(item, 144))\n return data\n }).catch(console.error)\n}\n\nconst getConsultant = (id, params = {}) => {\n return getV1(`consultant_cards/${id}`, params)\n .then(data => {\n handleWxHeadimg(data, 144)\n return data\n })\n}\n\nconst getConsultantHistory = (options) => {\n return getV1(`consultant_liveness_histories`, options)\n}\n\nconst likeConsultant = (id, liked) => {\n if (liked) {\n return postV1(`consultants/${id}/like`)\n }\n return delV1(`consultants/${id}/like`)\n}\n\nconst getConsultantViewers = (id, options) => {\n return getV1(`consultants/${id}/viewer_headimgs`, options)\n}\n\nconst getConsultantScore = (id, data) => {\n return getV1(`consultants/${id}/score_journals`, data)\n}\n\nconst getHouseNames = (options) => {\n return getV1('building_names', options)\n}\n\nconst getWxArticles = (params) => {\n return getV1(`weixin_articles`, params)\n}\n\nconst getMyFavourite = (params) => {\n return getV1(`followed_houses`, params)\n .then(data => {\n data.items = data.items\n .map(mapHouseItem)\n return data\n })\n}\n\nconst addMyFavourite = (params) => {\n return postV1(`followed_houses`, params)\n}\n\nconst delMyFavourite = (id) => {\n return delV1(`followed_houses/${id}`)\n}\n\nconst addFollow = (params) => {\n return postV1(`follows`, params)\n}\n\nconst delFollow = (params) => {\n return delV1(`follows/0`, params)\n}\n\nconst getMsg = (params) => {\n return getV1('user_messages', params)\n}\n\nconst readAllMsg = (tab_name) => {\n return postV1('user_messages/read_all', { tab_name })\n}\n\nconst readAllTimMsg = () => {\n return postV1('tim_messages/read_all')\n}\n\nconst readTimSession = (id) => postV1(`tim_sessions/${id}/read_all`)\n\nconst getNewMsgLen = () => getUserInfo()\n .then(({ unread_message_counts }) => {\n return {\n unread_message_counts\n }\n })\nconst viewTip = () => postV1('user/view_tip')\n\nconst createBlog = async (data) => {\n return postV1('blogs', data)\n}\n\nconst getFeeds = (data) => getV1('feeds', data)\n\nconst getFeed = (id, share_by_consultant_uid = '') => getV1(`feeds/${id}`, { share_by_consultant_uid })\n\nconst deleteFeed = (id) => delV1(`feeds/${id}`)\n\nconst initFeedEdit = (id) => {\n const params = {}\n if (id) {\n params.building_id = id\n }\n return getV1(`blogs/new`, params )\n}\n\nconst getRecommendation = (position, limit) => getV1(`recommendation`, {\n position,\n limit\n})\n\nconst getBrand = (keyword) => getV1(`recommendation`, {\n position: 'brand_search',\n limit: 1,\n keyword\n})\n\nconst getConsultantFeeds = (consultantId, page) => getV1('feeds', {\n consultant_id: consultantId,\n page,\n per: DEFAULT_PER\n})\n\nconst likeFeed = (id, liked) => {\n if (liked) {\n return delV1(`feeds/${id}/like`)\n }\n return postV1(`feeds/${id}/like`)\n}\n\nconst getFeedComments = (id, data) => getV1(`feeds/${id}/comments`, {\n per: DEFAULT_PER,\n ...data\n})\nconst addFeedComments = (id, data) => postV1(`feeds/${id}/comments`, data)\n\nconst getPopup = () => getV1(`popup_buildings`)\n\nconst interestingEvent = (data) => {\n console.error(data)\n if (!isProd) return\n return postV1('interesting_events', data)\n}\n\nconst startSession = ({ consultantId, sessionId, from }) => {\n if (consultantId) {\n return postV1('tim_sessions', { consultant_id: consultantId, from })\n }\n return getV1(`tim_sessions/${sessionId}`)\n}\n\nconst endSession = (id) => delV1(`tim_sessions/${id}`)\n\nconst getSessions = (opt = { page: 1 }) => getV1('tim_sessions', opt)\nconst readTimMsg = (msgs) => postV1('tim_read_messages', {\n _json: msgs\n})\nconst delTimMsg = (id) => delV1(`tim_sessions/${id}`)\nconst setTimTop = (id, params) => putV1(`tim_sessions/${id}`, params)\n\nconst getCaptchas = (mobile) => postV1('sms_captchas', { mobile })\n\nconst updateWxUserInfo = (data) => {\n console.error(data)\n try {\n const { rawData } = data\n const user_info = rawData ? JSON.parse(rawData) : {}\n console.error(user_info)\n if (!user_info.nickName || !user_info.nickName.trim()) {\n errorLog(`nickname_null:${JSON.stringify(data)}`)\n }\n } catch (err) {\n errorLog(`nickname_null:${err}`)\n }\n return putV1('wx_user_info', data)\n}\n\nconst getLoanType = (building_id) => getV1('bank_clients/new', { building_id })\nconst bankClients = (data) => postV1('bank_clients', data)\nconst bankClientsMaxLoanAmount = (data) => postV1('bank_clients/max_loan_amount', data)\nconst getLuckyDrawData = () => getV1('activity_d/lottery_tips')\n\nconst getFootPrint = (params) => getV1('view_histories', params)\nconst getNoticeStatus = () => getV1('subscribed_notifications')\nconst setNoticeStatus = (params) => postV1('subscribed_notifications', params)\n\nconst setBlockStatus = (id, params) => putV1(`tim_sessions/${id}`, params)\n\n\nexport default {\n init: () => {\n return init()\n },\n\n getHomePage,\n getHotHouses,\n\n getUserNums,\n addUserNum,\n getUserResult,\n getResult,\n getRegResult,\n\n report,\n\n getUserInfo,\n getUserInfoByShareBy,\n updateUserInfo,\n viewTip,\n getCustomerServiceStaff,\n\n getZones,\n syncInfo,\n\n getUserPoints,\n share,\n getPointsStore,\n\n getComments,\n getCommentDetail,\n postComment,\n\n getChangeLog,\n\n verifyQualication,\n\n getLnDetail,\n\n getMyConsultant,\n editMyConsultant,\n updateConsultant,\n getConsultants,\n getConsultant,\n getConsultantHistory,\n\n getHouseNames,\n getConsultantViewers,\n getConsultantScore,\n likeConsultant,\n\n getWxArticles,\n\n getBuildings,\n getBuilding,\n getBuildingComments,\n getBuildingCommentDetail,\n getCommentsReply,\n newBuildingComment,\n postBuildingComment,\n getCommunityTopics,\n getCommunityTopicsDetail,\n getTopicsComments,\n postTopicsComment,\n likeComment,\n delLikedComment,\n\n getMyFavourite,\n addMyFavourite,\n delMyFavourite,\n addFollow,\n delFollow,\n\n getMsg,\n readAllMsg,\n getNewMsgLen,\n\n initFeedEdit,\n getRecommendation,\n createBlog,\n getFeeds,\n getFeed,\n likeFeed,\n deleteFeed,\n getFeedComments,\n addFeedComments,\n getConsultantFeeds,\n\n getPopup,\n\n interestingEvent,\n\n startSession,\n endSession,\n getSessions,\n readTimMsg,\n delTimMsg,\n setTimTop,\n\n getCaptchas,\n updateWxUserInfo,\n\n getLoanType,\n bankClients,\n bankClientsMaxLoanAmount,\n getLpdResult,\n getLrdResult,\n readAllTimMsg,\n readTimSession,\n getLuckyDrawData,\n getFootPrint,\n getNoticeStatus,\n setNoticeStatus,\n getBrand,\n\n setBlockStatus,\n getSmsCaptcha,\n logging_in\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAAS9JREFUaAXtlj0OwjAMhR1+9zIhsTIzsvYaSJyjh+AUDByElZGZFYkF2IEik0A33ErVK2orXkY3jv2+5yoR4SKB/ybg8uTrYT6R9L7y32NRHeftKxV37uT3b6U3SNx0dyyVm7PZFPBu/nHb+5woJw8NX6U/nFUhomN28iH/q+ZDyShz1yxfJmgLCGPz+1VJDVtAVTNfBKGiGraAosIN+0YBdRtCB+p2oFdnA3pea3F9f3M7f3NLN3GjpXlzN3yE/BNGdSGS7vWymVhiGy4ga1nDk+YZ3mVfqx0CQtsq8Vf3PtAeAWK/iFskwOLfKgcowCZQd5T/AB0ACXCEQIBwOh2AEYIH0AEQIJxOB2CE4AF0AAQIp9MBGCF4AB0AAcLpdABGCB5AB0CATCcBEgAJvABnTDD6yKDFEwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAilBMVEUAAABSUmJDR01DR05DRk1DR01FS1BMUlJER05ITFFERk5DRk5DRk5ER05ER01FSE9ERk1ER01DRk1ERk1DRk5DR05ERk1ERk1ESE9FSE1ER01DRk1ERk5FR05HSU5ER01ESE9ER05DSE9GSVBJSVJKSlhER05DR05ESE1DR05DRk5ER05FSU9DRk1bra2cAAAALXRSTlMAB8Ru4c8hDXwXy6yZdk8y9vK/lefj3dVpWO64hkQtn1NLNyQdErSPX4ilWz8QYO6aAAACOklEQVRYw+2W2ZaCMAxAU2QRFcQFERUQB1xmJv//e3MOpacDbSnVR72PkV7SpKTChw/vQ5Xtg2AS5v14Xu6DyT7zx1l+Nza2HOY/hIVJOj+wuH371WrKGXbYTkmjmW678Vk5qPGvKLDLALKdGL/Was9lizKmU2k4vig9KzRitZR7vg68AsXj9J1Itjl/3L4dZBy+pCKL1ffkto06d1xJ6rVvfLASWDLPBCkbApw0Zpr4Bzhk00YnoofE0p9cuz06rvS1MRFEqehhJu4RTakguqo2XTmITqUq6VWI09aHIGEpbXNIj4DwcBvWIL66/5JzEz2aiI7NknMvuqetNxHRI7DvRenndDIRneiHKM1oYSJaSDMKn61RKO3azkS0k3atxoZ8vCfHhlp+UE+mtbaEeED3ZrqzQBxr2HAf67ljg2S0zei4IOM8xKajFERK5agaGIMlgCqllTvG4654QgKhag6r53sIUtaoaISixbhW5Rs1P0cXnefSPuhqKrithj3Vtu2LduuJN+TxEn0x3QPqp8CxvWYH25shpQAlBVIy7UEbHnEL4Y7VPLhRDuqRs5SskXIDCTekrAlo8SyWkzpdy4MReDOkzEkv2TlSZtSjpXbYBjoLPLZpp4aR+Alb4v8LMn3iawXiIjtnodzmcj3iNqL2bj9HfLsm8MLilN7ovAGmLPhabl2AOTwLx+HZPUUaYYcohSdZ2v899hKexre4x/LhBUjBPAWB17jHzR/zO7wMCYMgJPDhw3vyB8GFm1kT3LsLAAAAAElFTkSuQmCC\"","const extendShareTimeline = require('./timeline')\n\nconst extendApp = () => {\n extendShareTimeline()\n\n if (global && global.Page && global.Component) {\n global.Page = Page\n global.Component = Component\n }\n}\nmodule.exports = extendApp\n","module.exports = \"data:image/png;base64,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\"","import Service from '@/service'\n\nimport UserInfo from '@/data/user_info'\nconst navigate = () => {}\n\nexport const updateUserInfo = (detail, success) => {\n wx.showLoading()\n UserInfo.set(detail.userInfo)\n Service.updateWxUserInfo(detail).then(success)\n wx.hideLoading()\n}\n\nexport const getUserInfo = ({ mp }, success, failTip) => {\n if (UserInfo.isAuthed()) {\n success()\n return\n }\n const { userInfo } = mp.detail\n if (userInfo) {\n updateUserInfo(mp.detail, success)\n } else {\n wx.showModal({\n title: '提示',\n content: failTip || '您需要授权才能进行此操作',\n showCancel: false\n })\n }\n}\n\nexport const askAuth = ({ mp }, success) => {\n const { userInfo } = mp.detail\n if (UserInfo.isAuthed() || !userInfo) {\n success()\n return\n }\n updateUserInfo(mp.detail, success)\n}\n\nexport const askAuthNavigator = (e, url) => {\n navigate(url)\n}\n\nexport const getAuthNavigator = ({ mp }, url) => {\n const { userInfo } = mp.detail\n if (userInfo && !UserInfo.isAuthed()) {\n updateUserInfo(mp.detail)\n }\n navigate(url)\n}\n\nexport default getUserInfo\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('button',{staticClass:\"btn shadow-button\",attrs:{\"data-href\":_vm.item.href,\"data-id\":_vm.item.log_id || '',\"data-log_data\":_vm.item,\"data-index\":_vm.index,\"data-photo\":_vm.getHeadimg(_vm.item)},on:{\"click\":_vm.goLink}},[_c('img-wrap',{attrs:{\"item\":_vm.item}}),_c('div',{staticClass:\"heading28B name\"},[_vm._v(_vm._s(_vm.item.name))]),_c('div',{staticClass:\"comment-detail\"},[_c('span',{staticClass:\"tag\"},[_vm._v(\" \"+_vm._s(_vm.item.tag)+\" \")]),_c('div',{staticClass:\"comment-show\",style:([{ display: _vm.item.comment_count ? 'inline-flex' : 'none' }])},[_c('fc-icon',{attrs:{\"type\":\"40_comment_small\"}}),_c('span',[_vm._v(_vm._s(_vm.item.comment_count))])],1)])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport CommonImg from '@/components/views/common_img'\nimport ImgWrap from '@/components/business/img_wrap'\nimport common_utils from './_house_item_utils.js'\nexport default {\n mixins: [\n common_utils\n ],\n methods: {\n goLink (e) {\n this.$emit('goLink', e)\n }\n },\n components: {\n CommonImg,\n ImgWrap\n },\n props: {\n item: {\n type: Object\n },\n index: {\n type: [Number, String]\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./little_house_item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./little_house_item.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./little_house_item.vue?vue&type=template&id=77459bf1&scoped=true&\"\nimport script from \"./little_house_item.vue?vue&type=script&lang=js&\"\nexport * from \"./little_house_item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./little_house_item.vue?vue&type=style&index=0&id=77459bf1&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77459bf1\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAflBMVEUAAABomc2G9P9nm81mmc1nms5mmc1xtNpmmcxnms1om85mms1nmc1mms1nms1nms1nm85mmcxmms1nmcxmms1nmsxmmc1nmsxnms5om85mmcxnm89rnNFqqtVmms1mmc1nms1tm9Jwn9Bmmsxnms1nmc1mms1mmcxpm81mmczZc0NjAAAAKXRSTlMAgAJ1mon0Bs1xOu2jjmNQSR/gz8WwrH5cPi0nGAzk3JMSCtnDt1YyM5idJB0AAAFQSURBVEjH7dXbcoIwGATgbYQgcrAqKijWU9Xm/V+wN5002mTz06vO1O+SYSeT5Q/B01/Qt2Wz13rflG2PYV4b42heIdeNzYNxBxm1Nh5rBYHsYrwumWDdlQlYxdc+mKADIiaGmIBSCxZeKDBT820+2ux2m9HceTQF47SVZl/tp05nIE7avjeCNbIP9UlU1xKOpaiyq31rC8fWPr6ScG5nGXfsrOckbHeX4E7iNBFU26pxxxZes2McW5kd7GNsz0cQe972GUzFv3PKDxWfsA8w6sxmewGuZqeqBncqTNBbhujSQS0Y/i95R1wXCt8gUPqzCST6wtvWUXjL+cIdhCrPVQWpbPyjaQWxWfGw4R4DTLSb1TcM0hp+UXDODZ9jsAP/A3CqJJMlTCcKv0snJBtPVyn+hUobL10haurJiac0D4dzyWkMKGaIp/MXr3yGJ+ATw/uL/fTfLE4AAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/check.b1ba57ce.png\";","import { handleImgSize } from '@/common/utils/map_view_data'\n\nfunction checkPlanarGraph (item) {\n return false\n // var activities = item ? item.activities : []\n // return activities && activities.length && activities.indexOf('planar_graph') > -1\n}\n\nfunction checkShowVr (item) {\n return false\n // var vr_resource = item ? item.vr_resource : {}\n // return vr_resource && vr_resource.vr_photo_url\n}\n\nfunction formatSuffix (url) {\n return handleImgSize(url, 210, 140, {})\n}\n\nfunction getHeadimg (item) {\n return formatSuffix(item ? item.cover_photo_url : '')\n}\n\n\nexport default {\n methods: {\n checkPlanarGraph: checkPlanarGraph,\n checkShowVr: checkShowVr,\n getHeadimg: getHeadimg\n }\n}","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-tabs.vue?vue&type=style&index=0&id=e288ed90&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAb1BMVEUAAACLk5uLkZmLkZqKkZmLkpqLkZqLkpqKkpqOlJqVnKOLkpqMlZuQlZ2LkpmLkpmLkpqMkpqMk5uLkpvc3NyKkpqKkZqKkpqMk5qNlJyWlp+KkZmLkpqLk5qMk5qLk5qOkpyKkpqOkpuNkZqKkZkLbl/hAAAAJHRSTlMAY+ad2Hf28qYxDNIqG+vWxolLRwLLurJYIxHgloZqVDeBPTrRTB6uAAAA5UlEQVQ4y+3P2W6DMBBA0QESG7NvYcne9v7/NxYR1Apcgd+b+2bpaDwj7+bqQsXHZt95AIS7LtVMVXswhHwI9kf2wKcYiLddoiEQScHfXvACh2j0GxOHW3s6+aDN6/JLWd68r8ZynmJK1TJ2Yq5IVu7J7CoZq/nJj5awg6LOyIbpZY6vrhrKJcwgFZ+DLKugkEWA/AEj0K5QOUEDuRO8Q+gEQ7g7QR+MCzSQNS7wAwJxgTk8XOATVGTDxoKd/bPE0K9hDyRrWAKtQge/dcBV1kU52MVnsTqHWLWpjNm08hY9Evn3fQNvAiJvEI/TZAAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAANlBMVEUAAACZprOZprOZp7edprylrcWZpbOZprOZpbSZpbSZprSapbOZp7WZqLacqriZpbSapbSYpbPyk3n0AAAAEXRSTlMA9uw4Ewrbxq2bj29RQiTgRLzpi6kAAABfSURBVEjH7dG7DoAgEETRQUDe6P7/z5qQGIWGpaLZU8+tBkKIjfRFneOeBIEGYRIUGhRMJOokTEX6iWDw396Dw7p37yxYzEnNacBUj3ZBBZtWREpjQVYqY4k1EELs9wDXuQfIY9uVFAAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./tip_dlg.vue?vue&type=style&index=0&id=e53fa318&lang=scss&scoped=true&\"","import WX_API from '@/utils/wx_api'\nimport Service from '@/service'\nimport subscribeProperties from '@/common/utils/watchProps'\n\nlet jscode\n\nexport default {\n set (userInfo) {\n WX_API.setStorage('userInfo', userInfo)\n }\n}\n\nexport const GLOBAL_USER_DATA = subscribeProperties({}, [\n {\n key: 'weixin_phone_number',\n defaultValue: ''\n }\n])\n\nexport const App_User = {\n init: false,\n userInfo: null,\n customerServiceInfo: null,\n officialCustomerService: null,\n customerServiceStaffLoading: false,\n _customerServiceCbs: [],\n _fetchCbs: [],\n share_by_consultant_uid: '',\n share_by: '',\n loading: false,\n setNickname (nickname) {\n this.userInfo.nickname = nickname\n },\n async isAuthed () {\n const userInfo = await App_User.get()\n return Boolean(userInfo.headimgurl)\n },\n setJscode (code) {\n jscode = code\n },\n getJscode () {\n return jscode\n },\n listenCustomerService (callback) {\n this._customerServiceCbs.push(callback)\n },\n setCustomerService (customerService) {\n while (this._customerServiceCbs.length) {\n const cb = this._customerServiceCbs.shift()\n if (typeof cb === 'function') {\n cb.call(this, customerService)\n }\n }\n },\n set (userInfo) {\n if (userInfo.subscribed_weixins && userInfo.subscribed_weixins.length) {\n userInfo.offical_weixin_subscribed = userInfo.subscribed_weixins.indexOf('成都购房通') > -1\n userInfo.weixin_subscribed = userInfo.subscribed_weixins.indexOf('成都购房者之家') > -1\n userInfo.consultant_weixin_subscribed = userInfo.subscribed_weixins.indexOf('置业顾问之家') > -1\n }\n this.userInfo = userInfo\n GLOBAL_USER_DATA.weixin_phone_number = userInfo.weixin_phone_number\n return userInfo\n },\n get () {\n const { userInfo } = this\n if (userInfo) {\n return Promise.resolve(userInfo)\n }\n return this.fetchUser()\n },\n addFetchCbs (res) {\n this._fetchCbs.push(res)\n },\n resolveFetchCbs (userinfo) {\n while (this._fetchCbs.length) {\n this._fetchCbs.shift()(userinfo)\n }\n },\n fetchUser () {\n if (this.loading) {\n return new Promise((res) => this.addFetchCbs(res))\n }\n this.loading = true\n return Service.getUserInfo().then((userinfo) => {\n this.resolveFetchCbs(userinfo)\n return this.set(userinfo)\n }).finally(() => {\n this.loading = false\n })\n },\n fetchCustomerServiceStaff (key) {\n if (this.customerServiceStaffLoading) {\n return new Promise((resolve) => {\n this.listenCustomerService(function(CustomerService) {\n resolve(CustomerService[key] || {})\n })\n })\n }\n this.customerServiceStaffLoading = true\n return this.refreshCustomerServiceStaff().then((data) => {\n this.setCustomerService(data)\n return data[key] || {}\n })\n },\n getFromUserCache (key) {\n return this.get().then(userInfo => userInfo[key])\n },\n getFromUser (key) {\n return this.fetchUser().then(userInfo => userInfo[key])\n },\n refreshCustomerServiceStaff () {\n return Service.getCustomerServiceStaff().then((data) => {\n const { cunsultant_customer_service, official_customer_service } = data\n this.customerServiceInfo = cunsultant_customer_service\n this.officialCustomerService = official_customer_service\n this.customerServiceStaffLoading = false\n return data\n })\n },\n customer_service_info () {\n return this.fetchCustomerServiceStaff('cunsultant_customer_service')\n },\n official_customer_service () {\n const { officialCustomerService } = this\n if (officialCustomerService) {\n return Promise.resolve(officialCustomerService)\n }\n return this.fetchCustomerServiceStaff('official_customer_service')\n },\n is_consultant () {\n return this.getFromUser('is_consultant')\n },\n activity_menus () {\n return this.getFromUserCache('activity_menus') || []\n }\n}\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page\",class:_vm.app_type},[_c('div',{staticClass:\"block page-header\"},[_c('router-link',{staticClass:\"search-wrap\",attrs:{\"to\":\"search\"}},[_c('img',{staticClass:\"icon\",attrs:{\"src\":require(\"../../assets/icon/32_search.png\")}}),_c('span',{staticClass:\"textAssistFont28\"},[_vm._v(\"搜索\")])]),_c('top-swiper'),_c('top-tabs',{attrs:{\"dashboard\":_vm.dashboard}})],1),_c('col-1_3',{attrs:{\"title\":\"热门楼盘\",\"link\":\"/hot\",\"data\":_vm.hot}}),_c('col-1_3',{attrs:{\"title\":\"即将预售\",\"link\":\"/forthcoming_sale\",\"data\":_vm.forthcoming_sale}}),(_vm.excellent_consultants && _vm.excellent_consultants.length)?_c('consultants',{attrs:{\"excellent_consultants\":_vm.excellent_consultants,\"is_index\":true}}):_vm._e(),_c('list-3',{attrs:{\"title\":\"最新取证\",\"link\":\"/list?type=最新取证\",\"data\":_vm.latest_opening}}),_c('list-3',{attrs:{\"title\":\"最新摇号\",\"link\":\"/list?type=最新摇号\",\"data\":_vm.latest_lot_number}}),_c('list-3',{attrs:{\"title\":\"在售楼盘\",\"link\":\"/surplus\",\"data\":_vm.surplus}}),(_vm.surplus_loading)?_c('list-loading'):_vm._e(),_c('page-wrap')],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"preview-wrap\"},[_c('swiper',{ref:\"swiper\",staticClass:\"swiper\",attrs:{\"circular\":true}},_vm._l((_vm.swiper_list),function(banner,i){return _c('swiper-slide',{key:i,attrs:{\"item-id\":banner.id}},[_c('a',{staticClass:\"swiper-img\",attrs:{\"href\":banner.url,\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.tapSwiper(i)}}},[_c('img',{staticClass:\"img\",attrs:{\"mode\":\"aspectFill\",\"src\":banner.img_url}})])])}),1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","export const getIcon = (key) => {\n return require(`../../assets/home-tabs/${key}.png`)\n}\n\nexport const getBanner = (key) => {\n return require(`../../assets/home/banner/${key}.png`)\n}","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport CommonImg from '@/components/views/common_img'\nimport { getBanner } from './utils'\n\nexport default {\n data () {\n return {\n swiper_list: [\n {\n img_url: getBanner('weixin-official'),\n url: 'https://mp.weixin.qq.com/s/TwXq2pcpbYLFUucQC2P2BA'\n }\n ]\n }\n },\n methods: {\n changeSwiper (s) {\n },\n tapSwiper (i) {\n }\n },\n components: {\n CommonImg\n },\n props: {\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_swiper.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_swiper.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_swiper.vue?vue&type=template&id=5fe090d1&scoped=true&\"\nimport script from \"./_swiper.vue?vue&type=script&lang=js&\"\nexport * from \"./_swiper.vue?vue&type=script&lang=js&\"\nimport style0 from \"./_swiper.vue?vue&type=style&index=0&id=5fe090d1&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"5fe090d1\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',[_c('div',{staticClass:\"wrap\"},[_c('div',{staticClass:\"dashboard\"},_vm._l((_vm.dashboard_list),function(item){return _c('router-link',{key:item.key,staticClass:\"item\",attrs:{\"to\":item.link}},[_c('div',{staticClass:\"num\",class:item.key},[_vm._v(_vm._s(item.value || 0))]),_c('div',{staticClass:\"name iconFont24\"},[_vm._v(_vm._s(item.text))])])}),1)]),_c('div',{staticClass:\"tabs\",attrs:{\"id\":\"scroll\"},on:{\"scroll\":_vm.getScroll}},_vm._l((_vm.rowIcon),function(tabs,i){return _c('div',{key:i,staticClass:\"row\",on:{\"scroll\":_vm.getScroll}},_vm._l((tabs),function(tab){return _c('div',{key:tab.key,staticClass:\"item\"},[(tab.link)?_c('router-link',{attrs:{\"to\":tab.link}},[_c('img',{staticClass:\"icon\",attrs:{\"src\":tab.icon}})]):(tab.url)?_c('a',{attrs:{\"href\":tab.url,\"target\":\"_blank\"}},[_c('img',{staticClass:\"icon\",attrs:{\"src\":tab.icon}})]):_vm._e(),(tab.new)?_c('div',{staticClass:\"new\"},[_vm._v(\"最新\")]):_vm._e()],1)}),0)}),0),(_vm.show_slide)?_c('div',{staticClass:\"slide\"},[_c('div',{staticClass:\"slide-bar\",style:({ transform: (\"translateX(\" + _vm.marginLeft + \"px)\"), width: (_vm.slide_bar_width + \"px\")})})]):_vm._e()])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport { getIcon } from './utils'\n\nexport default {\n props: {\n dashboard: Object\n },\n data () {\n return {\n tabs: [\n {\n key: 'check',\n link: 'check_condition',\n icon: getIcon('check'),\n text: '资格查询'\n },\n {\n key: 'first_payment',\n link: 'first_payment',\n icon: getIcon('first_payment'),\n text: '测个首付'\n },\n {\n key: 'provident_fund',\n link: '/packageB/provident_fund/main',\n icon: getIcon('provident_fund'),\n text: '算公积金额度'\n },\n {\n key: 'computer',\n link: '/packageA/loan_computer/main',\n icon: getIcon('computer'),\n text: '房贷计算'\n },\n {\n key: 'taxes_calculate',\n link: '/packageA/taxes_calculate/main',\n icon: getIcon('taxes_calculate'),\n text: '税费计算'\n },\n {\n key: 'prepayment_calc',\n link: 'prepayment_calc',\n icon: getIcon('prepayment_calc'),\n text: '算提前还款'\n },\n {\n key: 'find_building',\n link: 'find_building',\n icon: getIcon('find'),\n text: '一键找房'\n },\n {\n key: 'building_rank',\n link: '/activity_a/building_rank/main',\n icon: getIcon('building_rank'),\n text: '楼盘榜单'\n },\n {\n key: 'house_purchase',\n link: '/packageA/material/house_purchase',\n icon: getIcon('house_purchase'),\n text: '购房指引'\n },\n {\n key: 'nconv',\n url: 'https://wx.cdgoufang.com/nconv_map?city=cd',\n icon: getIcon('nconv'),\n text: '疫情地图',\n },\n {\n key: 'inherit',\n link: 'pages/personal_package/inherit/main',\n icon: getIcon('inherit'),\n text: '查房屋继承'\n },\n {\n key: 'dora',\n link: 'pages/personal_package/dora/main',\n icon: getIcon('dora'),\n text: '查房屋权属'\n },\n ],\n marginLeft: 0,\n slide_bar_width: 0,\n show_slide: false\n }\n },\n mounted() {\n this.checkslide()\n this.getScroll()\n },\n computed: {\n rowIcon() {\n const length = this.tabs?.length\n const cows = Math.ceil(length / 2)\n let data = []\n let index = 0\n for (let i = 0; i < 2; i++) {\n data.push(this.tabs?.slice(index, index+cows))\n index = index + cows\n }\n return data\n },\n dashboard_list () {\n const {\n forthcoming_sale,\n hot,\n latest_lot_number,\n latest_opening,\n surplus\n } = this.dashboard\n return [\n {\n text: '热门楼盘',\n key: 'hot',\n link: '/hot',\n value: hot\n },\n {\n text: '即将预售',\n key: 'forthcoming_sale',\n link: '/forthcoming_sale',\n value: forthcoming_sale\n },\n {\n text: '最新取证',\n key: 'latest_opening',\n link: '/list?type=最新取证',\n value: latest_opening\n },\n {\n text: '最新摇号',\n key: 'latest_lot_number',\n link: '/list?type=最新摇号',\n value: latest_lot_number\n },\n {\n text: '在售楼盘',\n key: 'surplus',\n link: '/surplus',\n value: surplus\n }\n ]\n },\n },\n methods: {\n checkslide() {\n const row = document.querySelector('.row')\n if (row?.clientWidth > 375) {\n this.show_slide = true\n }\n },\n getScroll() {\n const { windowWidth } = wx.getSystemInfoSync()\n const ratio = windowWidth / 750\n const slide_width = 40 * ratio\n const tab_width = 750 * ratio\n const { scrollLeft, scrollWidth } = document.querySelector('#scroll')\n this.slide_bar_width = (tab_width / scrollWidth) * slide_width\n const percent = scrollLeft / scrollWidth\n const left = percent * slide_width\n const critical = slide_width - this.slide_bar_width\n this.marginLeft = left < 0 ? 0 : left > critical ? critical : left\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_top_tabs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_top_tabs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_top_tabs.vue?vue&type=template&id=3051c7b8&scoped=true&\"\nimport script from \"./_top_tabs.vue?vue&type=script&lang=js&\"\nexport * from \"./_top_tabs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./_top_tabs.vue?vue&type=style&index=0&id=3051c7b8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3051c7b8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrap\"},_vm._l((_vm.list),function(item){return _c('router-link',{key:item.link,staticClass:\"item\",attrs:{\"to\":item.link}},[_c('img',{staticClass:\"bg\",attrs:{\"src\":item.pic}})])}),1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport { getIcon } from './utils'\nexport default {\n data () {\n return {\n list: [\n {\n pic: getIcon('web_720'),\n link: '/list/web_720'\n },\n {\n pic: getIcon('map_buildings'),\n link: '/map_buildings'\n },\n {\n pic: getIcon('vr_buildings'),\n link: '/list/vr'\n }\n ]\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_list_entry.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_list_entry.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_list_entry.vue?vue&type=template&id=a0530b24&scoped=true&\"\nimport script from \"./_list_entry.vue?vue&type=script&lang=js&\"\nexport * from \"./_list_entry.vue?vue&type=script&lang=js&\"\nimport style0 from \"./_list_entry.vue?vue&type=style&index=0&id=a0530b24&scoped=true&lang=scss&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"a0530b24\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return ((_vm.data.col_1 && _vm.data.col_1.length)\n ||\n (_vm.data.col_3 && _vm.data.col_3.length)\n )?_c('section',{staticClass:\"block\"},[_c('header',{staticClass:\"title\"},[_c('h2',{staticClass:\"card-title\"},[_vm._v(_vm._s(_vm.title))]),_c('router-link',{staticClass:\"more-link\",attrs:{\"to\":_vm.link}},[_vm._v(\"更多\"),_c('fc-icon',{attrs:{\"type\":\"32_more\"}})],1)],1),_c('div',{},[_c('div',_vm._l((_vm.data.col_1),function(item,i){return _c('house-item',{key:item.building_id,attrs:{\"index\":i,\"item\":item}})}),1),(_vm.data.col_3 && _vm.data.col_3.length)?_c('div',{staticClass:\"house-col-3\"},_vm._l((_vm.data.col_3),function(item,i){return _c('little-house-item',{key:item.building_id,attrs:{\"item\":item,\"index\":i},on:{\"goLink\":_vm.goLink}})}),1):_vm._e()])]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport HouseItem from '@/components/business/house_item'\nimport LittleHouseItem from '@/components/business/little_house_item'\nexport default {\n components: {\n HouseItem,\n LittleHouseItem\n },\n props: {\n title: String,\n link: String,\n data: Object\n },\n methods: {\n goLink (e) {\n const { href } = e.currentTarget.dataset\n this.$router.push({\n path: href\n })\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_col_1_3.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_col_1_3.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_col_1_3.vue?vue&type=template&id=0b6e634c&\"\nimport script from \"./_col_1_3.vue?vue&type=script&lang=js&\"\nexport * from \"./_col_1_3.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return (_vm.data.length)?_c('div',{staticClass:\"block\"},[_c('div',{staticClass:\"title\"},[_c('div',{staticClass:\"card-title\"},[_vm._v(_vm._s(_vm.title))]),_c('router-link',{staticClass:\"more-link\",attrs:{\"to\":_vm.link}},[_vm._v(\"更多\"),_c('fc-icon',{attrs:{\"type\":\"32_more\"}})],1)],1),_vm._l((_vm.data),function(item,i){return _c('house-item',{key:item.building_id,attrs:{\"index\":i,\"item\":item}})})],2):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport HouseItem from '@/components/business/house_item'\nexport default {\n components: {\n HouseItem\n },\n props: {\n title: String,\n link: String,\n data: Array\n },\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_list_3.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_list_3.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./_list_3.vue?vue&type=template&id=3a8b1904&scoped=true&\"\nimport script from \"./_list_3.vue?vue&type=script&lang=js&\"\nexport * from \"./_list_3.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3a8b1904\",\n null\n \n)\n\nexport default component.exports","import Service from '@/service'\nimport { BUILDING_STATUS } from '@/constant'\nexport default {\n data () {\n return {\n page: 1,\n selected_tab: '热门楼盘',\n tabs: [\n {\n key: '热门楼盘',\n name: '热门楼盘'\n },\n {\n key: '即将预售',\n name: '即将预售'\n },\n {\n key: '最新取证',\n name: '最新取证'\n },\n {\n key: '最新摇号',\n name: '最新摇号'\n },\n {\n key: '在售',\n name: '在售楼盘'\n }\n ],\n items: [],\n loading: true,\n no_more: false\n }\n },\n methods: {\n changeTab (val) {\n this.selected_tab = val\n this.page = 1\n this.items = []\n this.getList({\n fix_tab: true\n })\n },\n async getList (opt = { fix_tab: false }) {\n this.loading = true\n const { items } = await Service.getBuildings({\n page: this.page,\n per: 10,\n status: BUILDING_STATUS[this.selected_tab]\n })\n if (this.page === 1) {\n this.items = items\n } else {\n this.items.push(...items)\n }\n this.loading = false\n this.no_more = items.length < 10\n if (this.page === 1 && opt.fix_tab) {\n this.$nextTick(() => {\n const bottom_list = document.getElementById('bottom_list')\n const { offsetTop, scrollTop } = bottom_list\n const building_scroll_top = offsetTop + scrollTop\n window.scrollTo(0, building_scroll_top)\n })\n }\n }\n }\n}","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport TopSwiper from './_swiper'\nimport TopTabs from './_top_tabs'\nimport ListEntry from './_list_entry'\nimport HomeService from '@/service/homepage'\nimport Col1_3 from './_col_1_3'\nimport List3 from './_list_3'\n\nimport Consultants from './_consultants'\nimport list_mixin from './_mixins/list'\nimport pull_up_mixin from '@/common/mixins/pull_up'\nimport { checkSessionStatus, reauth, session } from '@/common/utils/ajax'\nimport { UserLog } from '@/utils/log'\nimport Service from '@/service'\nconst isProd = process.env.NODE_ENV === 'production'\nexport default {\n name: 'Home',\n mixins: [\n list_mixin,\n pull_up_mixin\n ],\n components: {\n TopTabs,\n TopSwiper,\n ListEntry,\n Col1_3,\n List3,\n Consultants,\n },\n data () {\n return {\n query: '',\n dashboard: {},\n hot: {\n col_1: [],\n col_3: []\n },\n\n forthcoming_sale: {\n col_1: [],\n col_3: []\n },\n\n page: 1,\n\n latest_opening: [],\n latest_lot_number: [],\n surplus: [],\n surplus_loading: true,\n\n excellent_consultants: [],\n bottom_config: {\n pullText: '',\n triggerText: '',\n loadingText: '加载中...',\n doneText: '没有更多了。。。',\n failText: '加载失败',\n loadedStayTime: 400,\n stayDistance: 50,\n triggerDistance: 200\n }\n }\n },\n mounted () {\n this.getData()\n },\n methods: {\n async getData () {\n console.log('dashboard', this.dashboard)\n this.dashboard = await HomeService.getDashboard()\n console.log('dashboard', this.dashboard)\n this.getHot()\n this.page = 1\n this.getBuildings('最新取证', 'latest_opening', Math.max(this.dashboard.today_opening, 3))\n this.getSurplus()\n const data = await Service.getUserInfo()\n UserLog.userLogin()\n },\n getHot () {\n HomeService.getRecommendBuilding('hot', {\n limit: 4\n }).then(data => {\n this.hot = data || []\n this.loading = false\n this.page_loading = false\n }).then(() => {\n this.getConsultants()\n this.getRecommendBuildings('forthcoming_sale')\n this.getBuildings('最新摇号', 'latest_lot_number', 3)\n }).catch((err) => {\n console.error(err)\n this.loading = false\n })\n },\n getRecommendBuildings (status) {\n const exclude_targetable_ids = this.getHotIds()\n HomeService.getRecommendBuilding(status, {\n limit: 4,\n exclude_targetable_ids\n }).then((data) => {\n this[status] = data || []\n })\n },\n getHotIds () {\n return Object.keys(this.hot)\n .reduce((ids, key) => {\n ids.push(...this.hot[key].map(({building_id}) => building_id))\n return ids\n }, []).join(',')\n },\n getBuildings (status, key, per) {\n HomeService.getBuildings(status, per).then((data) => {\n this[key] = data || []\n })\n },\n getConsultants () {\n HomeService.getConsultants().then((data) => {\n this.excellent_consultants = data\n })\n },\n onPullUp () {\n if (!this.surplus_loading) {\n this.page++\n this.getSurplus()\n }\n },\n getSurplus() {\n this.surplus_loading = true\n Service.getBuildings({\n page: this.page,\n per: 30,\n status: '在售'\n }).then(({ items }) => {\n this.surplus_loading = false\n if (this.page === 1) {\n this.surplus = items\n } else {\n const ids = this.surplus.map(({ building_id }) => building_id)\n const new_items = items.reduce((prev, item) => {\n if (!ids.includes(item.building_id)) {\n prev.push(item)\n }\n return prev\n }, [])\n this.surplus.push(...new_items)\n }\n })\n },\n call () {\n window.location.href = `tel:17381915036`\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./index.vue?vue&type=template&id=19a3d28e&scoped=true&\"\nimport script from \"./index.vue?vue&type=script&lang=js&\"\nexport * from \"./index.vue?vue&type=script&lang=js&\"\nimport style0 from \"./index.vue?vue&type=style&index=0&id=19a3d28e&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"19a3d28e\",\n null\n \n)\n\nexport default component.exports","export default [\n {\n path: '/building',\n name: 'building',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/main.vue')\n },\n {\n path: '/building/business',\n name: 'building_business',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/business.vue')\n },\n {\n path: '/building/web_720',\n name: 'building_web_720',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/web_720/main.vue')\n },\n {\n path: '/building/img_preview',\n name: 'building_img_preview',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/img_preview/main.vue')\n },\n {\n path: '/building/planar_graph',\n name: 'building_planar_graph',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/planar_graph/main.vue')\n },\n {\n path: '/building/event',\n name: 'building_event',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/event/main.vue')\n },\n {\n path: '/building/info',\n name: 'building_info',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/info/main.vue')\n },\n {\n path: '/building/comments',\n name: 'building_comments',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/comments/main.vue')\n },\n {\n path: '/building/comments/add',\n name: 'building_comments_add',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/comments/add/main.vue')\n },\n {\n path: '/building/sunlight',\n name: 'building_sunlight',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/sunlight/main.vue')\n },\n {\n path: '/building/price',\n name: 'building_price',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/price/main')\n },\n {\n path: '/building/price_detail',\n name: 'building_price_detail',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/price_detail/main')\n },\n {\n path: '/building/material',\n name: 'building_material',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/material/main')\n },\n {\n path: '/building/price_graph',\n name: 'building_price_graph',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/price_graph/main')\n },\n {\n path: '/building/web_vr',\n name: 'building_web_vr',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/web_vr/main')\n },\n {\n path: '/building/vr',\n name: 'building_vr',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/vr/main')\n },\n {\n path: '/building/video',\n name: 'building_video',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/video/main')\n },\n {\n path: '/building/layout_detail',\n name: 'building_layout_detail',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/layout_detail/main')\n },\n {\n path: '/building/material/preview',\n name: 'building_material_preivew',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/material/preview')\n },\n {\n path: '/building/result',\n name: 'building_result',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/result/main')\n },\n {\n path: '/building/result/search',\n name: 'building_result_search',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/result/search/main')\n },\n {\n path: '/building/review_result/search',\n name: 'building_review_search',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/review_result/search/main')\n },\n {\n path: '/building/lot_detail/main',\n name: 'building_lot_detail',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/lot_detail/main')\n },\n {\n path: '/building/around_facilities/map',\n name: 'building_around_facilities',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/around_facilities/map/main')\n },\n {\n path: '/building/comments/detail',\n name: 'building_comments_detail',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/comments/detail/main')\n },\n {\n path: '/building/discuess_group/main',\n name: 'building/discuess_group/main',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/discuess_group/main')\n },\n {\n path: '/building/value_analysis/main',\n name: 'building/value_analysis/main',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/value_analysis/main')\n },\n {\n path: '/building/add_num/main',\n name: 'building_add_num',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/add_num/main')\n },\n {\n path: '/building/around_facilities/map/main',\n name: 'building/around_facilities/map/main',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/around_facilities/map/main')\n },\n {\n path: '/building/planar_graph/main',\n name: 'building/planar_graph/main',\n component: () => import(/* webpackChunkName: \"building\" */ '../views/building/planar_graph/main')\n },\n\n]","export default [\n {\n path: '/qa',\n name: 'qa',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/qa/main')\n },\n {\n path: '/find_building',\n name: 'find_building',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/find_building/index')\n },\n {\n path: '/find_building/result',\n name: 'find_building_result',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/find_building/result')\n },\n {\n path: '/taxes/result',\n name: 'taxes_result',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/taxes/result.vue')\n },\n {\n path: '/first_payment',\n name: 'first_payment',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/first_payment/index.vue')\n },\n {\n path: '/first_payment/result',\n name: 'first_payment_result',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/first_payment/result.vue')\n },\n {\n path: '/prepayment_calc',\n name: 'prepayment_calc',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/prepayment_calc/index.vue')\n },\n {\n path: '/prepayment_calc/result',\n name: 'prepayment_calc_result',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/prepayment_calc/result.vue')\n },\n {\n path: '/prepayment_calc/help',\n name: 'prepayment_calc_help',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/prepayment_calc/help.vue')\n },\n {\n path: '/check_condition',\n name: 'check_condition',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/check_condition/main.vue')\n },\n {\n path: '/check_condition_verify',\n name: 'check_condition_verify',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/check_condition/verify/main.vue')\n },\n {\n path: '/packageA/loan_computer/main',\n name: '/packageA/loan_computer/main',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/packageA/loan_computer/main')\n },\n {\n path: '/loan_computer_result',\n name: 'loan_computer_result',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/loan_computer/result/main.vue')\n },\n {\n path: '/loan_computer/help',\n name: 'loan_computer_help',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/loan_computer/help.vue')\n },\n {\n path: '/loan_computer/loan_rate',\n name: 'loan_computer_loan_rate',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/loan_computer/loan_rate.vue')\n },\n {\n path: '/taxes',\n name: 'taxes',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/taxes/index.vue')\n },\n {\n path: '/img_preview',\n name: 'img_preview',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/img_preview/index.vue')\n },\n {\n path: '/map',\n name: 'map',\n component: () => import(/* webpackChunkName: \"tools\" */ '../views/map/index.vue')\n },\n]","export default [\n {\n path: '/packageA/loan_computer/main',\n name: 'packageA/loan_computer/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/main')\n },\n {\n path: '/packageA/loan_computer/loan_rate',\n name: 'packageA/loan_computer/loan_rate',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/loan_rate')\n },\n {\n path: '/packageA/loan_computer/result/main',\n name: 'packageA/loan_computer/result/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/result/main')\n },\n {\n path: '/packageA/loan_computer/share/result/history',\n name: 'packageA/loan_computer/share/result/history',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/share/result/history')\n },\n {\n path: '/packageA/loan_computer/share/help',\n name: 'packageA/loan_computer/share/help',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/share/help')\n },\n {\n path: '/packageA/taxes_calculate/main',\n name: 'packageA/taxes_calculate/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/taxes_calculate/main')\n },\n {\n path: '/packageA/taxes_calculate/result',\n name: 'packageA/taxes_calculate/result',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/taxes_calculate/result')\n },\n {\n path: '/packageA/prepayment_calc/main',\n name: 'packageA/prepayment_calc/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/prepayment_calc/main')\n },\n {\n path: '/packageA/prepayment_calc/main',\n name: 'packageA/prepayment_calc/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/prepayment_calc/main')\n },\n {\n path: '/packageA/loan_computer/loan_rate',\n name: 'packageA/loan_computer/loan_rate',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/loan_rate')\n },\n {\n path: '/packageA/prepayment_calc/process',\n name: '/packageA/prepayment_calc/process',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/prepayment_calc/process')\n },\n {\n path: '/packageA/prepayment_calc/result',\n name: '/packageA/prepayment_calc/result',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/prepayment_calc/result')\n },\n {\n path: '/packageA/prepayment_calc/help',\n name: '/packageA/prepayment_calc/help',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/prepayment_calc/help')\n },\n {\n path: '/packageA/loan_computer/main',\n name: '/packageA/loan_computer/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/loan_computer/main')\n },\n {\n path: '/packageA/material/main',\n name: '/packageA/material/main',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/material/main')\n },\n {\n path: '/packageA/material/house_purchase',\n name: '/packageA/material/house_purchase',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/material/house_purchase')\n },\n {\n path: '/pages/packageA/contact_us/main',\n name: '/contact_us',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/contact_us/main')\n },\n {\n path: '/pages/packageA/contact_us/cooperation/main',\n name: '/contact_us/cooperation',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/contact_us/cooperation/main')\n },\n {\n path: '/pages/packageA/contact_us/join/main',\n name: '/contact_us/join',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/contact_us/join/main')\n },\n {\n path: '/pages/packageA/contact_us/service/main',\n name: '/contact_us/service',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/contact_us/service/main')\n },\n {\n path: '/pages/packageA/residence_points/main',\n name: 'residence_points',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/residence_points/main')\n },\n {\n path: '/pages/packageA/residence_points/exam',\n name: 'residence_points_exam',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/residence_points/exam')\n },\n {\n path: '/pages/packageA/residence_points/result',\n name: 'residence_points_result',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/residence_points/result')\n },\n {\n path: '/pages/packageA/min-app/main',\n name: 'min-app',\n component: () => import(/* webpackChunkName: \"packageA\" */ '../views/packageA/min-app/main')\n }\n]","export default [\n {\n path: '/packageB/provident_fund/main',\n name: '/packageB/provident_fund/main',\n component: () => import(/* webpackChunkName: \"packageB\" */ '../views/packageB/provident_fund/main')\n },\n {\n path: '/pages/packageB/provident_fund/result',\n name: '/pages/packageB/provident_fund/result',\n component: () => import(/* webpackChunkName: \"packageB\" */ '../views/packageB/provident_fund/result')\n },\n {\n path: '/packageB/plates/main',\n name: '/packageB/plates/main',\n component: () => import(/* webpackChunkName: \"packageB\" */ '../views/packageB/plates/main')\n },\n {\n path: '/packageB/credit/main',\n name: '/packageB/credit/main',\n component: () => import(/* webpackChunkName: \"packageB\" */ '../views/packageB/credit/main')\n },\n]","export default [\n {\n path: '/personal_package/qa/main',\n name: '/personal_package/qa/main',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/qa/main')\n },\n {\n path: '/pages/personal_package/feedback/main',\n name: 'feedback',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/feedback/main')\n },\n {\n path: '/pages/personal_package/phone_call/main',\n name: 'phone_call',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/phone_call/main')\n },\n {\n path: '/pages/personal_package/verify_qualification/main',\n name: 'verify_qualification',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/verify_qualification/main')\n },\n {\n path: '/pages/personal_package/verify_qualification/verify/main',\n name: 'verify_qualification/verify',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/verify_qualification/verify/main')\n },\n {\n path: '/pages/personal_package/dora/main',\n name: 'dora',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/dora/main')\n },\n {\n path: '/pages/personal_package/inherit/main',\n name: 'inherit',\n component: () => import(/* webpackChunkName: \"personal_package\" */ '../views/personal_package/inherit/main')\n }\n]","export default [\n {\n path: '/list/disclaimer/main',\n name: 'list/disclaimer/main',\n component: () => import(/* webpackChunkName: \"list\" */ '../views/list/disclaimer/main')\n },\n {\n path: '/list/message_list/list',\n name: 'list/message_list/list',\n component: () => import(/* webpackChunkName: \"list\" */ '../views/list/message_list/list')\n },\n {\n path: '/list/learn_layout/main',\n name: 'list/learn_layout/main',\n component: () => import(/* webpackChunkName: \"list\" */ '../views/list/learn_layout/main')\n },\n {\n path: '/list/qa',\n name: 'list/qa',\n component: () => import(/* webpackChunkName: \"list\" */ '../views/list/qa/index')\n },\n {\n path: '/list/qa-mini',\n name: 'list/qa-mini',\n component: () => import(/* webpackChunkName: \"list\" */ '../views/list/qa/mini')\n }\n]","export default [\n {\n path: '/chat_list/chat',\n name: 'chat',\n component: () => import(/* webpackChunkName: \"chat\" */ '../views/chat_list/chat/main')\n },\n {\n path: '/chat_list/history',\n name: 'chat_history',\n component: () => import(/* webpackChunkName: \"chat\" */ '../views/chat_list/history/main')\n },\n {\n path: '/chat_list/history_detail',\n name: 'chat_history_detail',\n component: () => import(/* webpackChunkName: \"chat\" */ '../views/chat_list/history_detail/main')\n },\n {\n path: '/pages/packageA/frequent_expressions/main',\n name: 'frequent_expressions',\n component: () => import(/* webpackChunkName: \"chat\" */ '../views/packageA/frequent_expressions/main')\n },\n]","export default [\n {\n path: '/activity_a/building_rank/main',\n name: 'activity_a/building_rank/main',\n component: () => import(/* webpackChunkName: \"activity_a\" */ '../views/activity_a/building_rank/main')\n }\n]","export default [\n {\n path: '/consultants/main',\n name: 'consultants/main',\n component: () => import(/* webpackChunkName: \"consultants\" */ '../views/consultants/main')\n },\n {\n path: '/consultants/filter/main',\n name: 'consultants/filter/main',\n component: () => import(/* webpackChunkName: \"consultants\" */ '../views/consultants/filter/main')\n },\n {\n path: '/consultants/card/main',\n name: 'consultants/card/main',\n component: () => import(/* webpackChunkName: \"consultants\" */ '../views/consultants/card/main')\n },\n {\n path: '/consultants/card/wx_card/main',\n name: 'consultants/card/wx_card/main',\n component: () => import(/* webpackChunkName: \"consultants\" */ '../views/consultants/card/wx_card/main')\n },\n {\n path: '/consultants/feeds/search',\n name: 'consultants/feeds/search',\n component: () => import(/* webpackChunkName: \"consultants\" */ '../views/consultants/feeds/search')\n },\n]","import Vue from 'vue'\nimport VueRouter from 'vue-router'\nimport Home from '../views/home/index'\nimport building_routes from './building'\nimport tools_routes from './tools'\nimport packageA_routes from './packageA'\nimport packageB_routes from './packageB'\nimport personal_package_routes from './personal_package'\nimport list_routes from './list'\nimport chat from './chat'\nimport activity_a_routes from './activity_a'\nimport consultants_routes from './consultants'\n\nVue.use(VueRouter)\n\nconst routes = [\n {\n path: '',\n name: 'Home',\n component: Home\n },\n {\n path: '/',\n name: 'Home',\n component: Home\n },\n {\n path: '/index',\n name: 'Home',\n component: Home\n },\n {\n path: '/all_buildings',\n name: 'AllBuildings',\n component: () => import(/* webpackChunkName: \"tabbar\" */ '../views/all_buildings/main.vue')\n },\n {\n path: '/messages',\n name: 'Messages',\n component: () => import(/* webpackChunkName: \"tabbar\" */ '../views/messages/main.vue')\n },\n {\n path: '/personal_center',\n name: 'PersonalCenter',\n component: () => import(/* webpackChunkName: \"tabbar\" */ '../views/personal_center/main.vue')\n },\n {\n path: '/search',\n name: 'search',\n component: () => import(/* webpackChunkName: \"tabbar\" */ '../views/search/index.vue')\n },\n {\n path: '/hot',\n name: 'hot',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/hot.vue')\n },\n {\n path: '/list/web_720',\n name: 'web_720',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/web_720/main.vue')\n },\n {\n path: '/list/vr',\n name: 'vr',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/vr/main.vue')\n },\n {\n path: '/forthcoming_sale',\n name: 'forthcoming_sale',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/forthcoming_sale/index.vue')\n },\n {\n path: '/surplus',\n name: 'surplus',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/surplus/index.vue')\n },\n {\n path: '/list',\n name: 'list',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/list/index.vue')\n },\n {\n path: '/guide',\n name: 'guide',\n component: () => import(/* webpackChunkName: \"guide\" */ '../views/guide/index.vue')\n },\n {\n path: '/material',\n name: 'material',\n component: () => import(/* webpackChunkName: \"material\" */ '../views/guide/material.vue')\n },\n {\n path: '/order_check/index',\n name: 'order_check',\n component: () => import(/* webpackChunkName: \"order_check\" */ '../views/order_check/main.vue')\n },\n {\n path: '/order_check/verify',\n name: 'order_check_verify',\n component: () => import(/* webpackChunkName: \"order_check\" */ '../views/order_check/verify.vue')\n },\n {\n path: '/verify_list',\n name: 'verify_list',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/verify_list/index.vue')\n },\n {\n path: '/map_buildings',\n name: 'map_buildings',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/whole_buildings_map/index.vue')\n },\n {\n path: '/logging_in',\n name: 'logging_in',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/logging_in/main.vue')\n },\n {\n path: '/result/main',\n name: 'result/main',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/result/main')\n },\n {\n path: '/reg_step/main',\n name: 'reg_step/main',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/reg_step/main')\n },\n {\n path: '/result/search/main',\n name: 'result/search/main',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/result/search/main')\n },\n {\n path: '/web_page',\n name: 'web_page',\n component: () => import(/* webpackChunkName: \"about\" */ '../views/web_page/main')\n },\n {\n path: '/protocal/privacy',\n name: 'protocal_privacy',\n component: () => import(/* webpackChunkName: \"protocal\" */ '../views/protocal/privacy')\n },\n {\n path: '/protocal/user',\n name: 'protocal_user',\n component: () => import(/* webpackChunkName: \"protocal\" */ '../views/protocal/user')\n },\n {\n path: '/mp/policy',\n name: 'mp/policy',\n component: () => import(/* webpackChunkName: \"mp\" */ '../views/mp/policy')\n }\n]\n\nconst router = new VueRouter({\n mode: 'history',\n base: process.env.BASE_URL,\n routes,\n scrollBehavior(to, from, savedPosition) {\n return (\n savedPosition || {\n x: 0,\n y: 9\n }\n )\n }\n})\n\nrouter.addRoutes(building_routes)\nrouter.addRoutes(tools_routes)\nrouter.addRoutes(packageA_routes)\nrouter.addRoutes(packageB_routes)\nrouter.addRoutes(personal_package_routes)\nrouter.addRoutes(activity_a_routes)\nrouter.addRoutes(list_routes)\nrouter.addRoutes(chat)\nrouter.addRoutes(consultants_routes)\n\nexport default router\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./common_tabs.vue?vue&type=style&index=0&id=754ef7a4&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAC+lBMVEUAAADX//+8///E///I//+4//q1//jB//+5//u2/fm2/vi3//m5///C//+6//+2//u7//+3//+///+5//+2/fm2/vhJ09hD1Na3//m3/fi3//m7//+2//+6//9Z6NpH19e2//i4//q4//m2/fi2//pc5txX6dm2/vm3//m2/fm2/fm2//m3//u4//sYv8t87ue2/vm2/fi2/fq2//m3//m1//m2//q4//u3//sYxcha5ttd5N22/vm1/vm2/vq1/fm3//i2//q3//m2//m2/vg1ytS2/fm2/fm2//i1//q3//q3//m4//q1//q6//gZwsu1/fq2//m2//q3//u4//q3//q6//oYw8oZus22/vg7ztYm28kSxcZA1tQfwM22/vk90dVC09hm3+MVucwqxNEZvcwbus535OdD0tdL0ts5y9aG6+suxNS0/vklwNAfzsmZ9vEvxNS2/fpM1tt76OkTzsQTwcgxxtMe0Mdc4t0nwtA22c8l1cozyNVL3dYXxMl67+VL4Na2/vly7OKA6+lc5tto6N8kv89V49onzs5Q2tuM8ewow9Iu2s0e2cY6y9eO7/QXv8sg0Mgt1M0NzcEQ2r8S0cMfvswOy8N97udd5ttw6OI/ztYt3cszxdWp+/VFztkw09Bk3eKX9e461NNL49Rk6N+w/PcgyctI0dtAy9gpydBQ1d6P8PANyMQOw8UF2LsKycBy6eOF7+m2/vla4ts43NCA5+pL1Nkg1cchwM5k3OAkv9Aq18lM4dUlvtCd9fMdz8dx4uZCzNij+fOY8vKg9vOH6eun+PUz0dFC4NKr+vY73s+f+fJD1taP8+yp/PVO0+J66O586ekLxsMRvscLyMIKx8EQwMYNxMQOwsUPwcYMxcMNw8QRvcgHzL8KycEFzr0Tu8kJyMAVuMsHy78JysAUusoE0LwD07sD0bwHzb8B1bkUucoSvMgOw8UIy8ALxcIVucsIysAGzr4C07sTvckQwMcC1boPwsYE0rwF0L0A17kRv8hZqE7VAAAA1HRSTlMAAxQJBl0mDD6hv38OEBg/GiMIIaS6v9Asm1cdHBLqv0wuKpZt6uq3UZ6HWkY79uDPk459e3hkQ0H86+qzsayEb2FcVL21qKBya2pJNzEl+5B1Zzk2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\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoBAMAAAB+0KVeAAAAElBMVEUAAAA0NDQ1NTU6Ojo0NDQzMzPys+oxAAAABXRSTlMAnTAW95ZrCDAAAABkSURBVCjPYxj6wAjGUEaIMbsKQBiMIQZwQabQQAhDNFQBRME4AmCFMEkGKA8uh6IUXSGYD5VBUwqWQFcKVoiuFKQQQylMIaYgYe0IizCdRNDxCG8SCBDMoMMMZMzowBpxQx4AAPOsFetr7qyDAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAARVBMVEUAAADNzc3b29vNzc3V1dXPz8/Nzc3Ozs7Nzc3MzMzMzMzNzc3MzMzNzc3Pz8/Pz8/Ozs7Ozs7MzMzNzc3MzMzOzs7MzMx8AbgzAAAAFnRSTlMAgAfgFzqaTe/m1Mq1sCAQSW2McW45VbbqNAAAANpJREFUSMft1lsOgyAQBVDevhXUuv+ltrWxlAAzJvOjKfeLXHNCFAywkltGWMfBOCtyVssNjXxk5vUW0um57XYqNondOeySmL+edFp830J3W6rhOdxMv8XUxA2ATdiYuAEwR5uC/x4Tdhhhb1P/KjxXxW2lVNVGwvcA7sX+ZfpQ+h7CtfoMVR1a3wN4OMZDiH0P4PkYzyH2PWlm0jtTvjZlnS+7PU9g0hFLOtxJ1wrChUazTES18ndMjMz+YLWCIRlljOWIKW9xjVtc4xbX+HpJgemFZ7OwkrvmCUngVnhJOwjfAAAAAElFTkSuQmCC\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_list_entry.vue?vue&type=style&index=0&id=a0530b24&scoped=true&lang=scss&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div')}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n\n\nimport WX_API from '@/utils/wx_api'\n\nexport default {\n mounted (options) {\n console.log('mounted', this.title)\n WX_API.setTitle(this.title, this.show_app_name)\n },\n updated () {\n console.log('updated', this.title)\n },\n activated () {\n console.log('activated', this.title)\n WX_API.setTitle(this.title, this.show_app_name)\n },\n watch: {\n title (latest) {\n console.log(latest)\n WX_API.setTitle(latest, this.show_app_name)\n }\n },\n props: {\n title: {\n type: String,\n default: ''\n },\n show_app_name: {\n type: Boolean,\n default: true\n },\n className: {\n type: String,\n default () {\n return ''\n }\n },\n has_own_timeline: Boolean\n },\n components: {\n }\n}\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../loader/img_version_loader/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./page_wrap.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../loader/img_version_loader/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./page_wrap.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./page_wrap.vue?vue&type=template&id=768620d9&scoped=true&\"\nimport script from \"./page_wrap.vue?vue&type=script&lang=js&\"\nexport * from \"./page_wrap.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"768620d9\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAe1BMVEUAAACZprOgq7SisMeZprSfqbiZprSap7WZpbSZprSZprWhysqZprOYpbOZprSap7SZprSYprSZprSaprSaqraZpbOZprOYprWYp7WYprSZp7WeqraZprOZprSZprSYprSdqLaap7WZprSZp7WbqLeZprSYprSYpreYpbORt5zYAAAAKHRSTlMA9hoJ5RDbYeCcZwT67ctOsaWMVDDyr4Z8XDcVwLePyCFH1nEpdbo5GW0NlAAAAf5JREFUSMeVVtmWgjAMDSKCgGwqILujzvD/XzgkFAK0zJzeB+hpQnKzNAUkmGFTny6+fznVTWjCP7Ds1OgXMFLbgn2Y+b2XcM/33HjusVfi6Hoq/UMwa5yqOEni6jRvBAdZvxDmjcguQaC0I0M4Kbb6j1FiZJsYrUwIHhv9nnA+KKieR9ljxccgK1dQ4jpKi4UR4u/cYAc3h+KY3XsB6TMdmRZ9EUzZdcnjbdkdSRzF+c/CB7FyhZgILfh/LlP62ciVSI01zyk/XPCIa+yH8zblKqdM35HQYS1x0nNLRLs5DCR1xyrZKMiYLRomsoWz8pyhnj0sUjRkrRy8gPAclhdvrjm6SIeQ8R1xxM7geOpnDJ65RmjZhJA8cUYxOSCA9RFBTNxDaPBVzrtl27YJsAffYxFqNlBj/+/00EaE56OmZ6XuhyPFz6jQAAUWq/Q7B+thAiPGrIE/PBOQ8Ub7x/dyK8ES7X3Qof5XB/IHakrm17DdcjmZ0k7QH7RP+lLQ6rSigycwOK3bwnG9HbHeFI5bY4lu2PsW601rSM1HsFzXZUar5uP2/gvc3nyA1gjPmejrzQGSjijPEUd4lY4oDwFGwHNEHgI8Zhhtz3WQxgwPMsbTHxrDA2mQ7Y/K9+vhKUal7jDWHfe6F4r+laV/Kepfu/oXu/6vg/7Pifbvzy9pW2mZjZkotgAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_swiper.vue?vue&type=style&index=0&id=5fe090d1&lang=scss&scoped=true&\"","module.exports = __webpack_public_path__ + \"img/inherit.84b0f504.png\";","const checkIdCard = (card) => {\n const reg = /(^[1-9]\\d{5}(18|19|([23]\\d))\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{3}[0-9Xx]$)|(^[1-9]\\d{5}\\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|30|31)\\d{2}$)/\n return reg.test(card)\n}\n\nconst checkMobile = (mobile) => {\n const reg = /^\\d{11}$/\n return reg.test(mobile)\n}\n\nexport default {\n checkIdCard,\n checkMobile\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./date_picker.vue?vue&type=style&index=0&id=4a0dc2c8&lang=scss&scoped=true&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"house-item\",class:_vm.classname,attrs:{\"data-photo\":_vm.getHeadimg(_vm.item)},on:{\"click\":_vm.goDetail}},[_c('div',{staticClass:\"house-item-content\"},[_c('img-wrap',{attrs:{\"item\":_vm.item}}),_c('div',{staticClass:\"content\"},[_c('div',{staticClass:\"content-main\",class:[{ center: _vm.center}]},[_c('div',{staticClass:\"building-desc-title first-row\"},[_c('h3',[_vm._v(\" \"+_vm._s(_vm.item.name)+\" \"),(_vm.is_hot)?_c('div',{staticClass:\"hot\"}):_vm._e()]),(_vm.item.new_arrival)?_c('div',{staticClass:\"new-arrival\"},[_vm._v(\" 上新 \")]):_vm._e()]),_c('div',{staticClass:\"row normal-row\"},[_c('div',{staticClass:\"building-desc-info\"},[_vm._v(\" \"+_vm._s(_vm.item.zone)+\" \"),(_vm.item.zone_section && _vm.hide_date)?_c('span',[_vm._v(\"-\"+_vm._s(_vm.item.zone_section))]):_vm._e()]),_c('div',{staticClass:\"building-desc-info\",class:[{ hide: _vm.hide_date }]},[_vm._v(\" \"+_vm._s(_vm.item.date_with_status || '')+\" \")])]),(_vm.item && _vm.item.price_desc_arr && _vm.item.price_desc_arr.length && _vm.type !== '即将预售')?_c('div',[_c('div',{staticClass:\"row bottom\",class:[{unit: _vm.item.customized_price.length === 1 || _vm.item.price_desc_arr.length === 1 }]},[_c('div',{staticClass:\"left\"},[_c('span',{staticClass:\"price\"},[_c('div',{class:{\n customized_price:\n (_vm.item.price_desc_arr && _vm.item.price_desc_arr.length > 1)\n ||\n (_vm.item.customized_price && _vm.item.customized_price.length > 1)\n }},_vm._l((_vm.item.price_desc_arr),function(price,i){return _c('div',{key:i,staticClass:\"building-desc-price\"},[_vm._v(\" \"+_vm._s(price)+\" \")])}),0)])]),_c('div',{staticClass:\"comment-show\",style:([{ display: _vm.item.comment_count ? 'inline-flex' : 'none' }]),on:{\"click\":function($event){$event.stopPropagation();return _vm.goComments($event)}}},[_c('fc-icon',{attrs:{\"type\":\"40_comment_small\"}}),_c('span',[_vm._v(_vm._s(_vm.item.comment_count))])],1)]),_c('div',{staticClass:\"row bottom tags-group\"},[(_vm.item.tags)?_c('div',{staticClass:\"tags tags-overflow\"},_vm._l((_vm.item.tags),function(tag,i){return _c('span',{key:i,staticClass:\"tag\",class:tag.tag_class},[_vm._v(\" \"+_vm._s(tag.name)+\" \")])}),0):_vm._e()])]):_c('div',[_c('div',{staticClass:\"row bottom\"},[(_vm.item.tags)?_c('div',{staticClass:\"tags tags-overflow\"},_vm._l((_vm.item.tags),function(tag,i){return _c('span',{key:i,staticClass:\"tag\",class:tag.tag_class},[_vm._v(\" \"+_vm._s(tag.name)+\" \")])}),0):_vm._e(),_c('div',{staticClass:\"comment-show\",style:([{ display: _vm.item.comment_count ? 'inline-flex' : 'none' }]),on:{\"click\":function($event){$event.stopPropagation();return _vm.goComments($event)}}},[_c('fc-icon',{attrs:{\"type\":\"40_comment_small\"}}),_c('span',[_vm._v(_vm._s(_vm.item.comment_count))])],1)])]),_c('div',{staticClass:\"probability\",style:([{ display: _vm.type != '即将预售' && (_vm.item.lottery_probabilities && _vm.item.lottery_probabilities.length) ? 'flex' : 'none' }])},[_c('i',{staticClass:\"icon\"}),_c('span',[_vm._v(\"中签率:\")]),_vm._l((_vm.item.lottery_probabilities),function(lottery,j){return _c('span',{key:j,staticClass:\"item\"},[_vm._v(_vm._s(lottery))])})],2)])])],1),_vm._t(\"default\")],2)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nimport Service from '@/service/index'\n\nimport { BUILDING_STATUS } from '@/constant'\nimport ImgWrap from '@/components/business/img_wrap'\nimport type_name from '@/components/mixins/building_ranking'\nimport common_utils from './_house_item_utils.js'\n\nconst isArrayEmpty = function(item) {\n return !item || item.constructor !== Array || item.length === 0\n}\n\nexport default {\n mixins: [\n type_name,\n common_utils\n ],\n computed: {\n hide_date () {\n const { date_with_status } = this.item || {}\n return !date_with_status || (this.type === '即将预售' && date_with_status.indexOf('摇号时间') > -1)\n },\n center() {\n return isArrayEmpty(this.item.customized_price) && isArrayEmpty(this.item.price_desc_arr) && !this.item.building_ranking\n || isArrayEmpty(this.item.tags) && !this.item.building_ranking\n }\n },\n methods: {\n goDetail (e) {\n if (this.just_view) {\n return\n }\n const { log_id, href, position } = this.item\n const url = `${href}&status=${BUILDING_STATUS[this.type] || ''}`\n this.$router.push({\n path: url\n })\n if (log_id) {\n Service.interestingEvent({\n interesting_id: log_id,\n event: 'click',\n pos_name: position,\n pos: this.index || 0\n })\n }\n },\n goComments (e) {\n if (this.just_view) {\n return\n }\n this.$router.push({\n path: this.item.comment_href\n })\n }\n },\n components: {\n ImgWrap\n },\n props: {\n item: {\n type: Object,\n default: {}\n },\n type: {\n type: String\n },\n index: {\n type: [String, Number]\n },\n classname: {\n type: String,\n default: ''\n },\n is_hot: {\n type: Boolean,\n default: false\n },\n just_view: Boolean\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./house_item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./house_item.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./house_item.vue?vue&type=template&id=3fde55f8&scoped=true&\"\nimport script from \"./house_item.vue?vue&type=script&lang=js&\"\nexport * from \"./house_item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./house_item.vue?vue&type=style&index=0&id=3fde55f8&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"3fde55f8\",\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-disclaimer.vue?vue&type=style&index=0&id=5b897632&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAb1BMVEUAAAD//8z//8v//83//83//8z//9P//8z//8z//8z//87//9X//8z//83//8z//8z//8z//83//83//83//87//8z//9X//8z//83//83//83//83//8z//8z//8r//83//83//8v//8z//8z//80eGpvXAAAAJXRSTlMAzGelXnwFxItwQQmdTb6DbVs7Mi4fF7R1ZSS3sFcTD66TSCgpS5gi7AAAAT1JREFUSMft1clygzAQBNBWWMQmMKuxw+Il//+NuaQENtJo8ClV9jtSdME0EsLHfzCpIhukHLJCTdinysRKVoGv9sQTrwbTSRicwBFehdE1hFskLCI49cKqh0MjCA1oHhX2QErE4uif0/TsH8Ui4bZ1CP/aPzA7S6W+z4fm64syZdUVmd+nYY3cYqVlDV3qXi3foCTCeroAD4KlCTulq8YDXbiitrHrydTGnl0zzyAMdNsXUHr6O8egNPQK+wHpsl3bMXdXYaR2lQItzYXVdwgHZQ/fQKH/JRncalv4DobCnA3AMeXGtmawVKZwDaaYPqpoobdpOgRbmz8N3GGHWq6z8o5dboI8KPgnfIndeuIPwF5pAfByOsCLAiLrFsd4C7EURpIxf7KN8VfpaA+PcOlyWzbv4E6XX0Zlhw/gFy+gDXk4QDUeAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAM1BMVEUAAAAAsY4At5YAsI4AsY0AsY8As48AsY4AsI4AsY4AsY4AsY8Aso4AsY8AsY8Axo4AsI3u3AsqAAAAEHRSTlMA2xH263o5JMa6rZBvUkYJsL435gAAAG1JREFUWMPt0jkSgDAMQ1HZ7Gt8/9NSMUCSGeIUqfR6qfogIiL6o4tlLIpSg2UN7Q5ULEMUxabeEv0Eh7GzSDfC5bDIAafdPna4bfayocL67FfUCPO9nwOqqPgDSHNIA/DlEAXgdoqcICIiaucCwUkNDza1posAAAAASUVORK5CYII=\"","import { postV1, getV1, delV1 } from '@/common/utils/ajax'\nimport { handleHomeHouses, handleBanner } from '@/common/utils/map_view_data'\n\nconst getRecommendConsultant = (opts) => {\n return getV1('recommended_consultant', opts)\n}\n\nconst getPhonePosition = (param) => {\n return postV1('call_sessions', param)\n}\n\nconst getPhoneCall = () => {\n return getV1('call_sessions')\n}\n\nconst getSceneQr = (params) => getV1('scene_qrcode', params)\n\nconst like = (type, id, liked) => {\n let likeMethod = delV1\n if (liked) {\n likeMethod = postV1\n }\n return likeMethod('like', {\n likeable_type: type,\n likeable_id: id\n })\n}\n\nconst generateSubMsg = (v1Method) => {\n return (msgType, targetType, id) => {\n const params = {\n message_type: msgType\n }\n if (targetType) {\n params.targetable_type = targetType\n }\n if (id) {\n params.targetable_id = id\n }\n return v1Method('subscribed_message', params)\n }\n}\n\nconst subMsg = generateSubMsg(postV1)\nconst getSubMsg = generateSubMsg(getV1, false)\nconst delSubMsg = generateSubMsg(delV1)\n\nconst addRecommendationClass = (data) => {\n return data.map((item, i) => {\n return {\n ...item,\n class: `Recommendation_${i}`\n }\n })\n}\n\nconst getRecommendation = (position, options) => getV1('recommendation', {\n limit: 5,\n position,\n ...options\n})\n .then(handleHomeHouses)\n .then(addRecommendationClass)\n .catch((err) => {\n console.error(err)\n return []\n })\n\nconst getBanner = (position, limit = 4, options = {}) => getV1('recommendation', {\n position,\n limit,\n ...options\n})\n .then(handleBanner)\n\nconst getSmsCaptchas = (mobile) => postV1('sms_captchas', { mobile })\n\nlet phone_auth_error_num = 0\n\nconst postWeixinPhone = (iv, encryptedData, errMsg) => {\n if (errMsg === 'getPhoneNumber:ok') {\n return postV1('weixin_phones', {\n iv,\n encryptedData,\n errMsg\n }).then((data) => {\n if (Number(data.code) === 422 && phone_auth_error_num === 0) {\n phone_auth_error_num++\n return postWeixinPhone(iv, encryptedData, errMsg)\n }\n phone_auth_error_num = 0\n return data\n })\n }\n return Promise.reject(errMsg)\n}\n\nconst addConsultantClient = (id) => postV1('consultant_clients', {\n consultant_id: id\n})\n\nconst readQuestionHints = (id) => {\n return readHints(id, 'Fc::Question')\n}\n\nconst readEventHints = (id) => {\n return readHints(id, 'Fc::BuildingEvent')\n}\n\nconst readHints = (readable_id, readable_type) => {\n const params = {\n readable_type\n }\n if (readable_id) {\n params.readable_id = readable_id\n }\n return postV1('read_hints', params)\n}\n\nconst checkUrl = (url) => {\n return getV1('black_url', {\n url\n })\n}\n\nconst getHouseLoanCalc = () => {\n return getV1('house_loan_calculator')\n}\n\nconst getNcovZones = () => {\n return getV1('ncov2019_zones')\n}\nconst follow = (type, id, followed) => {\n let followMethod = delV1\n let followUrl = 'follows/0'\n if (followed) {\n followMethod = postV1\n followUrl = 'follows'\n }\n return followMethod(followUrl, {\n followable_type: type,\n followable_id: id\n })\n}\nconst delFollow = (followable_type, followable_id) => {\n return delV1('follows/0', {\n followable_type,\n followable_id\n })\n}\n\nconst checkWords = (content) => {\n return postV1('check_sensitive_words', { content })\n}\n\nconst postBusinessCooperations = (params) => {\n return postV1('business_cooperations', params)\n}\n\nexport default {\n getPhonePosition,\n getPhoneCall,\n getSceneQr,\n like,\n delFollow,\n follow,\n\n subMsg,\n getSubMsg,\n delSubMsg,\n\n getRecommendation,\n getBanner,\n getSmsCaptchas,\n\n postWeixinPhone,\n addConsultantClient,\n\n readHints,\n readQuestionHints,\n readEventHints,\n\n checkUrl,\n getHouseLoanCalc,\n checkWords,\n\n getNcovZones,\n getRecommendConsultant,\n postBusinessCooperations\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAYAAACM/rhtAAAABGdBTUEAALGPC/xhBQAAA4lJREFUWAntV0trU0EUTnKjKM0iC1FJ0risDypFEhJBFwXpwuYHdKPgRiqCdOlKoitBaRF8dKVSNy24Kq0LNy3aWPMQRMEHiKiQRGvppg0kJQ+/Y27Sy2Tu9EwCdWEuTO/MOd/5zpczjzt1OLpPtwL/tgLOTtKHw+GDtVptEBwn0YJo+0y+Vbx/oC07nc6FdDr907Rrv9oSGIlEDlQqlVFkOwuBhiorBFbgf2YYxmQymfylwsp8SnJZAMSdKpfLd+E7juaSYQQbYfqq1WosGAx+zWazVFn2oyUQ4gZRudtg38vOsAXcg2oP9fb2foHIb1tmdY89xaFQqA8JHoNul5pS7cWUbwJxIZPJfFYj617OFDkgzIl2FSEdiaOU4NlNXMRZl6D+61a7695oNBpBr98Oi6q8RZvq6en5QJhCoXAUAs6jDdjE9Jucr238TTOrgljgQ80IoeNyuR7GYrGLOEpeLC4urlKjPtkg+pEAbw5VnE0QOiyBqIS0elS54eHhyXg8XrWSUp9sEPmAMKKPxnacIpYlEEH7xUAa07TKxDWw5CNMYyy8pZwChldBMagxbqy5xlj2VmBYRxy3giuy5Bwbzk273brGiWcJxDR9l5HRbpXZrbZisXjEOrb0P1n6tl2uwCUZAx0lWGe2HOQjjCwWu39ZZhdttuRWIKZpCVVs2alIPjA/Pz8qE0m2ubm5S4SxclEfXEWv1/tctMvGduujBYur1U2cXWdaHDAgodZBjerN4qy8IeMSbawvCQWBdMpOIFWJ2vr6usjfMsaPAbQ20+KwMbCmmGJxl6PP2IIND9sMgbPciwKRsgWaCsaRoMRWIwARu+F2u+8JZuWQdVg2GPL5/Ibf7y9hiuiKr/3gVj2BmXijE6glkIhzudx7iDyM7iGdRKjeS2yMcZ0YwupO8V9+VCKOhOx/hID97fF4ruuKI7x2BSkIV/aSz+d7h8QxDJU/EphN/KCxRCIh/RoRn+ppSyARYqpXMNVrWI+nlQkM41oqlXqlwqh8bQskUoj8GAgEDIg8IUuC6t3Hunsq83FtHQmkJBCZQSW96B6zJsXB/gTn3aTV1k5fuX64hKjSLQhqVgqVm4HtDjd+x3D413QM3+wrO5awm4hRAfZ1i7gwhZfxOoddy74FWTVgbZYxps3D/h7rbpKRdsWRUDN2xCp6u76uwGmzCtvxSv1m7LTU2TX+rxX4AzA9QXQ5dUoNAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAgVBMVEUAAACZfk6jg1qafk2Zfk2afk+dg1Kljl6ZfU2bflCcgk+cgU+Zfk2afk2afk2afk6afU6afk2afU2afk6cglGafU2afU6afk6afU6Zfk6af0+afk6afU6bfk6agE6agE2bflGZfU6Zf02afU6agE6bfk6gglOafU2cgU6Zfk2ZfU1dV3aEAAAAKnRSTlMAgAv611QZBuc8MCXQq5pn8cukdyD13byyiULFfGxjXzXrkHJORhPhLMNH7MQ9AAACWUlEQVRYw+2Y24KCIBCGQ81jpXlIXQ+1ZW7x/g+45WSjhQTRZf+NMOAn/QOCzb76hEzfNz/B2QWUBrsPgAp6UfEBkH4F6ffq8fDzJoh26mvhpRy+QXGrJYCWlXut+13lKJsuYtOBbGK2v13pIIVpVzp9kG7AVcqluU2ntJbhrOi0JCaVFXI4K4nxLGmvInI8TfOcqLiHMnHOgd4UxhiMwWmZpLm3dG3cxyhIdwVBC+ifts9rDrQQTPwtydoouqUDzYVAa5jH5iiowbQKfsVnkkM71ePoHqJVDVdHAJR3PQ1rFDzpYI5lQe5yYaurcfB8H0glarcJt8Qsp8PrdIKiKWiRwXS6u9uAsQkmP2M63VUywQngw8JkOj14L/gvQWXXjwxD6SjlpKuUL0HkCTRHpwcdpEHotCoox3eHEsjTcaYrgVLcOFRA6LQiSPvrnVYBodPRTA2ETiuC0Gl50M+674dOLxlPWvP3fw8wAOqdTuJHEKC8ac7JpkMQQacZIGqf2BRYVQhCpxkgIGk8nxGUQfHI68WUFoy6NOj0FChgD2kHrT60Wht0+kmazzspbXEE+OCSe/DZMtuirm0PlTiBAwk6zdp5I86INvDL0GmmtA1nRB4FUk4ICaFsELZy4FCPs1kLirtxN7KgRvJMLH+8tVZSHIu38xuiGOPV7u/WJRzv9D2ZVFmLHGzLfrmpCOf0n6YK6r/0yIR2gpwj5UjmYy0Fp4spTjoTFKQsbzM2J2tFQWnv9HzBWFxzie/qy5ASB4rknCAkORNX4a8Qz2nqKKobx5t99dWk/gGLI8zr5pfp8wAAAABJRU5ErkJggg==\"","import { request } from './wxafuzz'\n\nconst RequestMQ = {\n map: {},\n mq: [],\n running: [],\n MAX_REQUEST: 5,\n push (param) {\n param.t = +new Date()\n while ((this.mq.indexOf(param.t) > -1 || this.running.indexOf(param.t) > -1)) {\n param.t += Math.random() * 10 >> 0\n }\n this.mq.push(param.t)\n this.map[param.t] = param\n },\n next () {\n const me = this\n\n if (this.mq.length === 0) { return }\n\n if (this.running.length < this.MAX_REQUEST - 1) {\n const newone = this.mq.shift()\n const obj = this.map[newone]\n obj.enableHttp2 = true\n const oldComplete = obj.complete\n obj.complete = (...args) => {\n me.running.splice(me.running.indexOf(obj.t), 1)\n delete me.map[obj.t]\n oldComplete && oldComplete.apply(obj, args)\n me.next()\n }\n this.running.push(obj.t)\n return request(obj)\n }\n },\n request (obj) {\n obj = obj || {}\n obj = (typeof (obj) === 'string') ? { url: obj } : obj\n this.push(obj)\n return this.next()\n }\n}\n\nconst deepClone = obj => {\n const proto = Object.getPrototypeOf(obj)\n return Object.assign({}, Object.create(proto), obj)\n}\n\nexport default class {\n configure = {\n baseURL: '',\n headers: {},\n method: 'GET',\n data: {},\n fuzz: false\n }\n interceptors = {\n request: {\n prepare: '',\n done: '',\n use: (configCb, prepareCb = '', doneCb) => {\n const config = configCb && configCb(this.configure)\n this.configure = Object.assign(this.configure, config || {})\n this.interceptors.request.prepare = prepareCb || ''\n this.interceptors.request.done = doneCb || ''\n }\n },\n response: {\n before: '',\n error: '',\n use: (configCb, errorCb = '', beforeCb = '') => {\n const config = configCb && configCb(this.configure)\n this.configure = Object.assign(this.configure, config || {})\n this.interceptors.response.error = errorCb || ''\n this.interceptors.response.before = beforeCb || ''\n }\n }\n }\n constructor (props) {\n this.configure = Object.assign(this.configure, props)\n }\n static create (configure = {}) {\n return new this(configure)\n }\n get (url, data = {}, header = '') {\n return this.request('GET', url, data, header)\n }\n post (url, data = {}, header = '') {\n return this.request('POST', url, data, header)\n }\n options (url, data = {}, header = '') {\n return this.request('OPTIONS', url, data, header)\n }\n head (url, data = {}, header = '') {\n return this.request('HEAD', url, data, header)\n }\n put (url, data = {}, header = '') {\n return this.request('PUT', url, data, header)\n }\n delete (url, data = {}, header = '') {\n return this.request('DELETE', url, data, header)\n }\n trace (url, data = {}, header = '') {\n return this.request('TRACE', url, data, header)\n }\n connect (url, data = {}, header = '') {\n return this.request('CONNECT', url, data, header)\n }\n request (method = '', url, data = {}, header = '') {\n // 请求前预处理\n if (this.interceptors.request.prepare !== '') {\n this.interceptors.request.prepare(this)\n }\n const cloneConf = deepClone(this.configure.data)\n\n data = Object.assign(cloneConf, data)\n method = method || this.configure.method\n\n if (url.indexOf('https') !== 0 && url.indexOf('http') !== 0) {\n url = this.configure.baseURL + url\n }\n let param = {\n url,\n method: method || this.configure.method,\n data,\n header: Object.assign(deepClone(this.configure.headers), header),\n success: function (res) {},\n fail: function (res) {},\n complete: function (res) { },\n fuzz: this.configure.fuzz\n }\n // 请求前处理\n if (this.interceptors.request.done !== '') {\n try {\n param = this.interceptors.request.done.call(this, param)\n } catch (err) {\n console.error(err)\n }\n }\n return new Promise((resolve, reject) => {\n try {\n ['fail', 'success', 'complete'].forEach((k) => {\n param[k] = (...res) => {\n const req_info = {\n url: param.url,\n method: param.method\n }\n if (k === 'success') {\n // 返回响应前处理\n if (this.interceptors.response.before !== '') {\n res = this.interceptors.response.before.apply(this, [...res, req_info])\n }\n resolve(res)\n } else if (k === 'fail') {\n // 返回响应错误前处理\n if (this.interceptors.response.error !== '') {\n res = this.interceptors.response.error.call(this, res, req_info)\n }\n reject(res)\n }\n }\n })\n } catch (err) {\n reject(err)\n }\n RequestMQ.request(param)\n })\n }\n}\n","import http from './wx-http-axios'\n\nconst isProd = process.env.NODE_ENV === 'production'\n\nexport const HOST = process.env.VUE_APP_HOST\nexport const FUZZ_HOST = process.env.VUE_APP_FUZZ_HOST\nexport const GFT_HOST = process.env.VUE_APP_GFT_HOST + 'cd/'\nexport const NORMAL_HOST = process.env.VUE_APP_NORMAL_HOST\nconst common_headers = {\n 'content-type': 'application/json'\n}\nconst headers = {\n ...common_headers,\n 'WX-KEY-VERSION': 1\n}\nconst NO_FUZZ_OPTIONS = {\n headers: common_headers,\n data: {},\n fuzz: false\n}\n\nexport const normal_axios = http.create({\n baseURL: NORMAL_HOST,\n ...NO_FUZZ_OPTIONS\n})\n\nconst getService = (fuzz = false, path = '') => {\n return http.create({\n baseURL: `${fuzz ? FUZZ_HOST : HOST}${path}`,\n headers,\n data: {},\n fuzz: true\n })\n}\nexport const gft_axios = http.create({\n baseURL: GFT_HOST,\n headers,\n data: {},\n fuzz: true\n})\n\nexport default getService(isProd)\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAnFBMVEX///8AAAAqKir///////////////91dXWcnJz///////////////////////////82NjZoaGgtLS2MjIyvr6/g4OBCQkJiYmKYmJi6urrIyMjOzs7n5+f8/PwxMTFaWlp4eHiQkJChoaGzs7PQ0NDv7+/5+fn///////9ISEhNTU1WVlZgYGBtbW1sbGxwcHCnp6ejo6PBwcHY2NgiDdkMAAAANHRSTlPMAPTCeBQF5N3Etq6gmWg58uf04NnR7+je19XU0Mzz6uTf3NjUz80lJO7t6+nm5uXb29bSEmYiDQAAATBJREFUOMuFk+l2gjAQhccLCUF2EBUFrXXpvr//uzVkwbYWc3+QOeQ7ucksNBnEMz+JPC9K/Iyf/w4A8z0a5PnsD8DTkH4pTPlPgMV0oZidgbsp/aPpvQWY3r8kmAZ4TCOKuQJSGlXaAywcB0ImAZ+uyJ8QV/mZA41cKmABqbyoTcY4ZSq4ASrNFVCat5rISDvsgS3RCngMgOV+IT/GgxK1Hktsuv4cIYE1HYBCAwlFOngCDqccm2MPnHZAQEoRmRpWgJgBbxRAqzG31ICyf5HOKwtUZABr0eXISzxQDzwDeU3WIjGRet5SATMZbzt7SZvIWwBlq4E2B3b2mZkBagCvpAF6l/DaJIp79gghvuTyKYT0/xCi0al2FctZblfDOFvO1bTOtncPjnv03MPrHP9vs0AO7kyWHJUAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACgAAAAoCAMAAAC7IEhfAAAAQlBMVEUAAADNzc3Nzc3S0tLMzMzNzc3Nzc3Nzc3Ozs7h4eHMzMzNzc3MzMzMzMzMzMzOzs7Ozs7Nzc3Pz8/R0dH////MzMxi4mjsAAAAFXRSTlMA9IAN0busUSQI6ODZpYxyY1tAFgKFXjCLAAAA+0lEQVQ4y42VWRKEIAxEI1EB9wXuf9UJ6NSoI9D9Y1V8pkOASHeZeWyGqhqacTaU1K5qf1Gt9leMVeUfqhT/c7qLr9plM8xmW9r4WaefnIpm2v4iVsdC1A2zrYT6lR5aewm39hIJXMMvdTeBvPtOjl7kpqu7DhwlFEh95u/E16VAJ+4df417pqS4P813adhKGa3S3v1IWFNWtaQ8HjoP6pjKSGKbB60UZ2gOHS1I9mOm0fulBC7ejyRt2krgJo2mIfgXJOsYSArlEsiyYBiEreHFwO2BGw5vIXoo4GMGH1z0KsCXC72u6ABARwo+pPCxhw9SfDTjwx7+fXwAk6QaZWgrFdsAAAAASUVORK5CYII=\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./picker.vue?vue&type=style&index=0&id=53326153&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEUAAAC/v7+ZpbSfpbOYpbSZpbOYpbPNgbV7AAAABnRSTlMABKoln5SGzR2zAAAAa0lEQVQ4y+3RsQ2AMAxEUSMWiLIBDXWmyAgMgIL3HwGEPsLiRJ0mvwL5XhUb9Wsu32/aWjKa6hFG7otRdi/xsCfAGg9WbwJo9pYhF2BC/D8LJQyUcBeiAAJQAlACUAIQAlACUFJb+n2uUedO1NIgrd/HghAAAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/house_purchase.bcab1fab.png\";","module.exports = __webpack_public_path__ + \"img/购房流程.88f0f348.png\";","module.exports = __webpack_public_path__ + \"img/provident_fund.a828a001.png\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./little_house_item.vue?vue&type=style&index=0&id=77459bf1&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAyVBMVEUAAAD7iRr7iRn7ihr8ixr/okb7ihn7iRr6ihn7ihr/jhz7iRn7ihn6ixn8ixn7ixn/kxv6ihn7iRr7ihn8ihn8ihr8ihr6jRv7ihr7ihn7ihn6ihr7ihn7ihv6jB3/jh7/kiT6ihr7ihn7jBn/jRv/ihz/iSf/8LP6iRn9vGb/7q/7jyL8sFP/6qr+1Ij7nDT7ly39uV/7iRn/6KX/5KH/4p3/3Jb9xXH9tVv8oz/+2ZD+zoD9wGr8qEb8pkP8nzr7kib7jB3+yHgMz/WfAAAAJ3RSTlMAgP19VwPz8NV2HOvMbmQ7Et7IsJmSTjj36L+oh0A1Kwfct0cvJQ08hGNWAAABuklEQVRYw+2WaU/CQBCGSym3gtyXIJ47FMp9gyj+/x9l32ZF0LQbOv1gTJ8vmybTJzPb6exqISEhbJ4N40njk26QTbLK9bQy5KCnmPkkSKLnWKIiHcnHGJ5HGHrbzRBry78nloRgIMRiYq9l/6IIPGthg5QKvj1VnYgmC4j62CS/nps82awEGBNR3O8GPcAzso6imk9RGZ4DCpOl1f15UgSWAsjNZnj60jPF5y9dJLjLRiM2TQJrU4qWeCpGHFLZXEepyV3RCUNLeswRnREvpb091/qZZyokH/STRMXLY9Ape0u4JARqVY8GTNA3vZ0pvpi+02+S7sMg6jTgwBRYu8INa77rIcK9uCskMhPCWwQG5NkNcadxlCKwRm2uouP7atGKiDJBiLoY4n8qo31Qe4TGagYgmiMixRbJYdAOQPSK3zbGF5k9TCeNL3L+kOsARH0EpPkip7KCxhdtZWVsEb6ZnuaLZjiaGhpfNCYbgy+ysNWZDl/kJBRFPG/Uzg84IG8Qzxr+5hvZ3GqAcRyZG8dTf0G46oBUo1c0BQapURcmLxFqyjG1CNcaBffGBRctV6LZthYSEvIv+AQhVPw4DLYz7AAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAeFBMVEUAAAD/mCT7ihn7ihr/jyb7ihn7ihn7iRr7ihr7iRr7iRr/jxz/jxv7iRr6ihr/jBv/jRz/lCj7iRn7iRn6ihn7ihr7ihn6ihn8ihr7ihn7ihr8ihv8jBz6jBz/jiD7iRr6ixn6iRn7ihn7ihn6ixr8ixr8ixr6iRn6Lh4TAAAAJ3RSTlMAB+uJCvrLt3Opdh4bxqYuKAz15tW7raGUjn9cSTYT72/Wv4NpWldwBcKpAAABXklEQVRYw+3Vx27DMBRE0SHVu+Te7cRl/v8PAwRwHOOp8Xmrs+TiYrQQiclk4iq/X5MoWm1vFd7UNy+JVuXukWMEPw75Z77NnueZN3+dFxcf/Uxs+W59AoDTOuAbG6NPVlA434GHpVBk6FRZtrnu2MZW6FBbOrE1WpkvOvoyaOPRmYcWeUBnQT48SD/JUsFCqKhSidCFKhcR2lBlI0IlVUoRWlJlKUIJVRIR2lJlK0IxVWIROlDlIEJmRoWZgbCiwgrSngp7SL6lM+ujRUpnKaCeJAdJqW6QZBZ0sjDocAzoIDiik6e/r/UftzDoUZ850rlGr4P2b9VeJzEGrTnCGsNMxEGRwQj+Nwd8+xilKdir8DFSE7JH2GC0U9jTOcFBs2SHZQMnJmGrxMDVhi02UNhR2EFlH/BNsIfScc5/5keo5eGrE+b4gCmfndLgM+ns941P8bHMiyIvw2Qy+cgPIAMokEM/i6cAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAn1BMVEUAAAAAuZoAxacAsZEAu6AAsZEAspEAsZEAsZAAsZIAt5cAsZEAsZEAsZEAsZEAs5IAt5QAs5QAsZAAsZAAsZEAspEAs5MAsZEAsZEAtJMAsJEAsZEAsZEAspEAsZEAspEAtJIAsZEAsJEAsZEAsZEAsZEAspEAsZEAspEAs5IAs5QAtZUAsZEAsZEAspEAspIAsZAAsZEAsZAAsZEAsJB/7zoEAAAANHRSTlMADgX5CfZZ1cVgFPHsplI9HBjjsJxDMpFrJLqWh4F7Sy3o28vAq3VxZTopH9e0jjfPit+fehgmrgAAA1tJREFUSMfNV9mWojAQ7QDigtigIiAqCO6iaMv/f9tYlZhgklbnnHmYevAkqbpJLTcp/Pof5WBvzu7UvW5t7y+R+2teCykW2efQQbuWZVV9eGqn1sk6/gB7FfZO2clbfGbu3kHJiZm2Z5VFV4JkyNZC4yX2yKI9PWcoKOjylLw6l2KLb0Vj/9BNX4Cpzzedd70V6q5vcrXVK40Etd3favSMNdJF4oYbEcIY1C1fD8b6jtnEGzs1lf6MsN2EgcorzBWLd8HrC3Cbxb2Ech904BLsqJPWWqLXjJrsYDzSYL8bigd2WfbZaE4dz+Hongo+g01GfUb7YQS5iec09gEt9y8Jz4GTlGYmmLgWU/gd3AqnVkvr90GEdkOsUFmFKOEIqmXJ4C4YVHz3ITMQrlyE2UQGb2AVESmMoiclkusIowmMUhkcQj1xNAe9r1YCU+bDSLnYa56vMXgt3TYetGFi3SSBS7OSthEiSg2FC2Wwe18seYBL6T7yNBgwWug44giKHJ+UKY/Z4yzRZztQN3d5Ditttm1+LYw+JF4QmNWng8OIkliSIz6PguUrQ0T8I3ydQnTqM3W5L/9QYwdP8h7nApbln5jIXEXm6LfgYN0K9+SLpC5OzL3wesAQamDCccTAjyCVhU8J0T5hYtcZIpROs5AeMYnAOWHJXzaw7T1djB2IRt+uR9hRWCqtTZtBix1bIqW48/qj6zOfx/Z2Fg34/TIKfEmJHjyuURJ9LySrVx1jwr8CehptXFLl6EXDQBl25cOthfNQBjDXkrucsvwOmnCyGzZSr4nKQn1ghMzGWdvZ3X3Dn0RTk1U7QuciPTsxoF2rQY5+s2MFNC19JSUeQMwYh7daI60ZeRQkkcFus+1nJxlq3iivfAf7pIYfS1F//9xEujbXbJCF6mWu14M0qKiZgdwczxOkuM060neQdlvKpew2jkHLbc1e4oA3OdIRRrl8JVBY1nqY5QlXzWmuhGRSr0FhESXi3sYmpPoIWWEi93dyMhsqO4OZ4zfehTUkQdDXlhnW8+KsipAFGN3msTHmDL2/7CeHo09kfqrR54acTbUva5kmdYWCLYVvsFgkmQd7Fil5CzYutcJAl30PvZcKPVRjOb2GCfpeiPK1k3sf/qMKLOUFC8jXv5U/HwHmRxIYA9AAAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGAAAABgCAMAAADVRocKAAAC+lBMVEUAAAD////r//+7///R///G//+3//u2/vkKyMHA//+4//+2/vi2//m2//q3//m5//q9//+1/fm5//++//+2//m3//q2//m5//q1/fi7//+2/vm2/fm6//+2/fm///9T3do10dG3//m3//q2//lc3d63//lT5tcX1MO3//q4//qy/f62/vi3//qz/v6y/v5R39kz1c+2//m3//m2//u4//u4//m8//8jw84T2MC2//q2/vm2/fkx184x08+2/fm4//hU5Ni2/vm0/fm2/fgr0c22/fm3//q3//u9//8Wuswgx8wezMlW4NlS6NYV1sK1/vm2//m2//q3//sixs21/vi2/vm2/fi2/fq2//i2//i3//m2//oYusxY4dtV49lW4tlK2tgZus0c0ce2/vi2/fm2/fq3//hM19q2//sow9EQx8Qj08gfycsbu85U39oevs22/vkk08q1/vg919MlwtA41tEyx9Qy09FE0tdY1uC1//lo4OSI7/ELycIozc0Sx8ZV4tkPyMRa3dwXx8i1/viy/fgpxdEtxNOf9vI2yNZe4t1D2NZl5OSN7vAjyssXxsgazsdM2dgPysMTv8ge0Mhd3N82zdNH3NYhzModycpy5uUWvspU4dpO2NpE1tU119By5uMx0NEs1M0TycaF7uo1x9Ujv9Eaxcky3cxL3NlS3togzcm1/fpD09hq5+Az0dCX9vBk5N+C6upo4eaJ8PARzMM7ztQu18tU29sV0cMN2r0fycxBzdgiz8me9vAV2sFN5tQ9y9eR8+5K5tNn4uJN2tln5OGO8utc6tgay8hn4OGp+vV36uUYzcap/PVFz9pG29Q02c+l/fWa9e+T+eyK8O1f5N2A6uoRvscGzb4PwMYHy78PwcYSvMkSvsgJysAUusoTu8kFz70Lx8IJycANxMQGzr4KycELxsIOwsUVucsVuMsNxMMOwsQE0LwD0bwC07oMxsMMxMMD07sKx8EIy8AUu8oRvccRwMcNw8UHzb8F0L0B1boVustpjvuxAAAA2HRSTlMAAQIHBQk+gP4RFcBUXiclE6IhDHZnWzeYD6uCHaEY2aZXL1LsKeznZjIZvEgjHNmme09EOysa7+dhraamo4hL7LSpm5uSazgf/e7u7OvnyH5jQu6/r5WPcm9uNPfs7Ozs7Oq4nox0VEb18/Hu4d/Wy8vCurmtj4RsXlpLK/f19evq6eLc1KucmIRfXjo3/Pv39fXz8O/v7Ozs5ubl5ODg3dfX19LRycnIxayhjnp5d2hoQ0Iy+vf39vPw7uXk4uLh3dzY0M7MyMC+vLq5tqGelZSFfntVQz6dqbFeAAAKHklEQVRo3u1ZZbCSQRRVERELxEQRBURFQH0I6rO7u7u7u7u7u7u7u7u79VkIihjYNeO9G36E8T1jxh+e8Zcz75yz5969u/sR5T/+4z/+KUSNGo0iatSof4c9enSJVCqVSKJHB40/zY/sCdRyZfr0cnUCKUr8YftAL9f27NyqWLFWwzIoQQIW8UftA33REfU8nseP79yZ0SS9PIHkzy2C2FdqjEOKPQZ6wJs3Q1Sx1H9qERiPVK5V9Wjz2PP4M7DfuXP3zd02G2AR0aGh/ox9eYZ4w2o+RnoQAPq7d29NWKNR0ph+3746lmpUR89jAOFHesDtjj21vx0T9D5UN72iG6suCnD+27dnNMlCa/271XUMKeZh9oEeQPjf3r56tTOv9W/Eg9X1eIgAgNAjgB8Eri4ZmV4uxVr/cnWzKFZBdQFB8eACEBO6/mqtkV8dqyhU1wPtKfAj3gI/sl9/d/369cG81pGurhSr24p2T7B/ah/ob16/OYDX+hf2budi6J/3P0+f08MCUOLmzS5FY6lRIbLVXb8Yi8vpAX72eUI3AY8eRa7WvLpd6/l3zxuWD8YPCsz9dcL/3tuvawZaa7H8sTQbB3sA6B/HD9oPyP8dCec60qOA17kiHqu1qOpqrU1aEf7PJB9m/zbys3QALB7vI6/3vfeJc0EPVmsR1c1g7FwT+flwFvy/Je1/HRbwDuwDvOD/vdPrfOJ09uqiiUUUfj7arkB1g+srpMPzp/F4IR4n8D958sR3bKNW/qOY8ODi1X0s+GfVvUXKy/qT54/xMAG374W73whW6x81v35wMU/g7uX503ggna/+vRAPkvt8T3wvXrhfuO+vsLLx94ODi9E/Ju0TOn1oPEL7OEk6L3zAf//+q1cLLkOt8dLx3YOL8t/B/IGeC2B1aXkZ/5hxW0cDPZYX+H1usO8GgZj3ewlHXWg8ONqQHoD2ef8I3U/oUWD07oEDB44j6Tt96B/iQcSMGdN1qmfI5ECBBMqicHB9O370z6cbzWd62zJl2g6qi/TUP9q//wroH7ge9GuC/RoggPln2MCaP2g4s/ixvkL+CxtUyp7PXKYuyR/jd0P+xL/rQUREr5HKBIFLgAXEsnbz8OnA4hemDwHPB3fXwfhJKydNUaliXR8E5AZgPsT+AxCIGKFVSwIFJOosxhhnFi3at7PYneDp8zZoe+Hm7TM0eVjZ3JXzm+uCf8LO/G+aM79du3MODey4QAF5Bkd5XdVGOczNCD3y3yXsZHvx2Yz8XuxO77QLidJVD6uSw1yXdA/yP3BBPi3yF0oYN7O+aKgArEBXLXeKBs1o/qHTE/Oh9sl4GLDWoCuXcGUO8xRuH/OJaJFjZePEmfWhK1BrFUXypCubtFKzr/z+m4sugE0Hun0HXMpsC09YJX/F3qR7kD8CBBomL2ywG7MEC0THIVEelpCjmWAf+DdPmpQ6EP3792+d8tCyDp1yrUoSI0/chIWyL0QBzAf4IyZWgQWYVNCngUXGK4S1hiVuWOWsd/38Tx/Utkz79rH9UdHcIHuKQmHpDDFMDn2RPOXKFjjhwvxJ97x+XV+WLk8SBZ6gAQJkTqePZ7cVzp3VbzpMLmPOlyxH/Pgp/NGwQOVGZasnthRxWK0Ou6F6o/wu7E9UANSvqothzEBO6NCDTKPPHC7Legv5aXFn5cuRtEru5AGQycqGVS0c11bepNBoFCZLuOwk5k/937hRP1Eek0oZ+saKisNCGy9G97Csft0/OX4hWcLqiQKQLl268Lg6W1O7XlFUY9Vnjlu2Prgn+UfcAIHwzI70QS8HvgiJ0lpEl5AI8OF/PHnVcol1cQJgMBhseZqWL6I3KhTGJJa183H3ov2I1yCQNm6MeLGkofSoIJGrksRBAcyHDYd5HTqlCkGuTLly5SpIkKvdeBb+a/R/7VraxDEUSgnk/30Bun1p9/PpKRyNTjy82PCH7oxJ7IMC2Bct8Pbr4c4PRwDyo4LvyQs2nPn24vUFfPggToDyC8OZ+IezC+mZf+AHAUbP/F+DBYgQqCAM/5vcPsnnCT0ceT7A7+LNf4PwX/sgSiArHZ5C/Dg8MR+MH8hZQBg/nT5YXgLkfyhiBcLVE9F7VspgZBTQuvXMKWMp/zXCL1YA+VFizNz25nyVsmfPniwU8L+V8jVo33bQFsqP9KIEMH8ez9yK+fLHb1gg6bdRoECKHJXMZfZTeiJwT4QAmf2Uv7c5WYFCuZPLvofkuasUyN+gDLBzfjECflf/2TkKyRoXThceXq5cOkCiYBSuljB55fxHbnylFyNQHPlZ+8+Gua/LY7FY8uSxGQBxgqCLm6hx7tMtICDG//GjGAFhOkxNnshQPonJtL5gQZg+mThyZsrJ0KlTh6XbkP4a8COeihFAfnazXQ7HHwxNRxeyuYT2p8MHQeNn/B+fPi39cwG0z18WfVbHcKg0qngmUODTDehdEQDGj/4RaB8gQgDLy6eDs886PQgYk2Q+i9OB2nehfTp96O5l+eMCnokQ+JoPufo3H25UKfR2W/hy4Od3E6TnwwHzv0cA9KIEqH0y3XA4Nx/ucNTIrCssKxGTTU/Oj+y8vJi/SIGW9G6I9nH8u0Ehid2SuGqjOV+n5w0aT0B5PyI7QIQAj9/pQ3pon+brmtrCwwpNhHj8hr8wHTAd8E8EXmb7qcAOlo8TX3ZADzf/8au7J5Itg+ah3Unzod3P8mH8L1++FLEC73uMB+Hmh0vMdh12QT5YXzb7afxC+sCO/p+LWEFL2j74cMTD5T5pf3J3i2D+eXciSPo8HoAIgWn0aCcFgHzcQI9XT1KAgO7k9UV6wv8c+J//XKAE5s9eXvzl6GLx83yC4qf2QeD5czECcLh/fXi9YtOHne0IoTsf+ucP/ABRAmgf+YV3F9p/gFcfGhCnBwj0mI9IAaRn/l9BPhi+K8g/xkPbnwtgPIhPoiJyY/5IT2YDv7oJ9FyA0vMFEP6fChgal/C56fb6Gj/h929/Rs+7E/yzBXwCge72HwnUMFSdyj8MMH4XoRf8C8Ofx4PpU/+APTq7Vf4dgehqjclWfR6/GiI92b2vWf58OgQugJEjP2JpnCKq7wtk0FsSDR3rps0fePVEftaeQfEH8G+/aKtRVB79OwIJ0hvLxw0berj1zFqIkhR1EH371q4N/2rnpUiTN40fSqUpRbD3wNHz5Sz6DGryRA5FdGksRRFD4eRJ8+czV4wdWVSEB2mB3NXgjalNECrAvyfgY7xw2UaVG6ZIET9ygOdt0iqyaomb4hszVED4pmPKHCe8esIwWeQRlrBaOV3TGgqtmtc4tAj4xUJvt9h03eNGHol1BksMkwK/UnxHgH53LBpPX6OIPcYvwJ5Eb1SRn9eEhEIV4CfFDCqrQqGIFznAX1hVGq1STT7z/+g3USn85ipXKmNFFkqlEn+nlSD/jz++w++6EmmkwX5oRnrO/wOZX0WU//gn8QXiqNF7JAfg7gAAAABJRU5ErkJggg==\"","import { getV1 } from '@/common/utils/ajax'\nimport { handleHomeHouses, handleHouseViewData, handleWxHeadimg, handleBanner, mapHouseItem, handleCol3, handleFloatDlg } from '@/common/utils/map_view_data'\nimport { BUILDING_STATUS as STATUS } from '@/constant'\n\nconst getDashboard = () => getV1('dashboard')\n\nconst getBuildings = (status, per = 3) => getV1('buildings', {\n status: STATUS[status] || status,\n per\n}).then(({ items }) => {\n return items.map(mapHouseItem)\n}).catch(console.error)\n\nconst getConsultants = () => getV1('excellent_consultants').then((data) => {\n data.forEach((item) => {\n handleWxHeadimg(item, 120)\n })\n return data\n})\n\nconst getRecommend = (position, options) => getV1('recommendation', {\n position,\n ...options\n}, )\n\nconst getRecommendBuilding = (position, options) => getRecommend(position, options).then((items) => {\n if ('surplus' === position) {\n items = handleCol3(handleHomeHouses(items.slice(0, 3)))\n } else {\n items = handleHouseViewData(items)\n }\n return items\n})\n\nconst getBanners = (position, params) => getRecommend(position, params).then(handleBanner).catch(err => {\n console.error(err)\n return []\n})\n\nconst getFloatDlg = (position, params) => getRecommend(position, params).then(handleFloatDlg).catch(err => {\n console.error(err)\n return []\n})\n\nexport default {\n getDashboard,\n getBuildings,\n getConsultants,\n getRecommendBuilding,\n getBanners,\n getFloatDlg\n}\n","import TIM from 'tim-wx-sdk'\nimport Service from '@/service'\nimport PublicService from '@/service/public'\nimport { formatTime } from '@/utils/index'\n\nimport { errorLog, UserLog, sendCtmEvtLog } from '@/utils/log'\nimport Check from '@/common/utils/check'\nimport subscribeProperties from '@/common/utils/watchProps'\nimport { App_User } from '@/data/user_info'\nimport GlobalData from '@/plugins/global_data'\nimport {\n MAX_DATETIME_SEGMENT,\n IM_PAGE_SIZE,\n DEFAULT_HEADIMG,\n LOGIN_STATUS,\n PAGE_TO_KEY\n} from './constant'\n\nconst isProd = process.env.NODE_ENV === 'production'\n\nlet userInfo\n\nlet tim\n\nexport const current_user_data = {\n peer_identifier: '',\n peer_headimgurl: '',\n peer_nickname: '',\n nickname: '',\n headimgurl: ''\n}\n\nconst BUILDING_STORE = {\n building_id: '',\n from: ''\n}\n\nexport const setBuildingStore = ({building_id, from}) => {\n BUILDING_STORE.building_id = building_id\n BUILDING_STORE.from = from\n}\n\nexport const openChat = (id, options) => {\n App_User.get().then((data) => {\n if (data.tag_list[0] == \"天府通游客\") {\n wx.navigateTo({\n url: '/logging_in'\n })\n } else {\n const {\n from,\n building_id,\n recommend_aqr_id,\n is_redirect = false,\n entrance = '',\n log_name = '',\n layout_id = '',\n auto_send_msg = ''\n } = Object.assign({}, BUILDING_STORE, options)\n UserLog.contactConsultant(id)\n let url = `/chat_list/chat?consultant_id=${id}`\n if (from) {\n url += `&from=${from}`\n }\n if (building_id) {\n url += `&building_id=${building_id}`\n }\n if (recommend_aqr_id) {\n url += `&recommend_aqr_id=${recommend_aqr_id}`\n }\n if (entrance) {\n url += `&entrance=${entrance}`\n }\n if(layout_id){\n url += `&layout_id=${layout_id}`\n }\n if(auto_send_msg){\n url += `&auto_send_msg=${auto_send_msg}`\n }\n wx[is_redirect ? 'redirectTo' : 'navigateTo']({\n url\n })\n if (log_name) {\n sendCtmEvtLog(log_name, {\n building_id\n })\n } \n } \n })\n}\n\nexport const IM_STORE = subscribeProperties({}, [\n {\n key: 'app_show',\n defaultValue: false\n },\n {\n key: 'login',\n defaultValue: LOGIN_STATUS.NONE\n },\n {\n key: 'chatList',\n defaultValue: []\n },\n {\n key: 'chatListLoaded',\n defaultValue: false\n },\n {\n key: 'chatsMap',\n defaultValue: {}\n },\n {\n key: 'no_more',\n defaultValue: false\n },\n {\n key: 'session_loading',\n defaultValue: false\n },\n {\n key: 'page',\n defaultValue: 1\n },\n {\n key: 'login_loading',\n defaultValue: false\n },\n {\n key: 'show_unread',\n defaultValue: false\n }\n])\n\nconst IM_STATE = {\n session_loading: false,\n sdk_ready: false,\n im_login: false,\n message_changed: false,\n message_changed_timestamp: 0,\n refresh_timestamp: 0,\n loaded_chat_len: 0\n}\n\nconst retryInit = () => {\n initIM()\n login()\n}\n\nconst initIM = () => {\n tim = TIM.create({\n SDKAppID: 1400105054\n })\n tim.setLogLevel(isProd ? 1 : 0)\n tim.on(TIM.EVENT.SDK_READY, (res) => {\n console.error(res, 'ready')\n IM_STATE.sdk_ready = true\n IM_STORE.login = LOGIN_STATUS.DONE\n IM_STORE.chatListLoaded = true\n })\n tim.on(TIM.EVENT.SDK_NOT_READY, (res) => {\n console.error(res, 'not ready')\n if (IM_STATE.login && IM_STORE.app_show) {\n errorLog(`IM NOT READY: ${JSON.stringify(res)}`)\n }\n IM_STORE.login = LOGIN_STATUS.NONE\n IM_STATE.sdk_ready = false\n IM_STATE.login = false\n IM_STORE.chatListLoaded = false\n if (IM_STORE.app_show) {\n retryInit()\n }\n })\n listenSessionUpdate()\n initMsgListener()\n tim.on(TIM.EVENT.ERROR, (err) => {\n const { code, message } = err.data\n console.error('im error', code, message)\n if (IM_STATE.login) {\n errorLog(`IM ERROR: ${code}, ${message}`)\n }\n })\n}\n\nconst handleMessages = (list) => {\n return list.reduce((msgs, msg) => {\n const {\n payload,\n isRead,\n from,\n conversationID,\n ID: id,\n random,\n sequence,\n time,\n isPeerRead\n } = msg\n const ext = msg.type === 'TIMTextElem' || !payload.extension ? {\n msgStyle: 'text',\n data: payload.text\n } : JSON.parse(payload.extension)\n const isSend = msg.flow === 'out'\n const isSendCard = isSend && ext.msgStyle === 'card'\n if (!isSendCard) {\n const headimg = (isSend ? userInfo.headimgurl : ext.headimg) || DEFAULT_HEADIMG\n const mini_headimg = headimg.indexOf('https://cdn.vip-wifi.com') === 0 ? (headimg + '?x-oss-process=image/resize,w_88') : headimg\n const datetime = new Date(msg.time * 1000)\n const item = {\n conversationID,\n id,\n from,\n random,\n sequence,\n time,\n isRead,\n isPeerRead,\n is_read: false,\n isSend,\n classname: isSend ? 'self' : 'peer',\n msgStyle: ext.msgStyle,\n img: ext.img,\n content: payload.data || payload.text,\n datetime,\n date: formatTime(datetime),\n headimg,\n mini_headimg\n }\n if (item.msgStyle === 'accepted_ask_phone') {\n item.phone = ext.copyText\n item.card = {\n headimg: mini_headimg,\n nickname: ext.nickName,\n msg: item.content,\n }\n }\n if (item.msgStyle === 'building_card') {\n item.content = ext.building\n }\n if (item.msgStyle === 'audio') {\n console.error('ext.audio', ext.audio)\n item.duration = parseInt(ext.audio.duration / 1000)\n item.url = ext.audio.url\n }\n if (item.msgStyle === 'location') {\n item.location = ext\n }\n if (item.msgStyle === 'invite' || item.msgStyle === 'building_price_report') {\n item.building_id = ext.building_id\n }\n if (item.msgStyle === 'layout_image') {\n item.layout_image = ext\n }\n msgs.push(item)\n }\n return msgs\n }, [])\n}\n\nconst checkNewMsgs = (msg) => {\n const { chatsMap } = IM_STORE\n const new_msgs = handleMessages([msg])\n const chat = chatsMap[msg.conversationID] || {\n msgs: []\n }\n if (chat) {\n const chat_len = chat.msgs.length\n if (new_msgs[0].msgStyle === 'sys_tips') {\n new_msgs[0].show_date = true\n } else if (chat_len) {\n const last_msg = chat.msgs[chat_len - 1]\n const { datetime } = last_msg\n new_msgs[0].show_date = new_msgs[0].datetime - datetime > MAX_DATETIME_SEGMENT\n }\n }\n return new_msgs\n}\n\nconst timLogin = (userID, userSig) => {\n console.error('-------------------------------------------- tim login --------------------------------------------')\n return tim.login({\n userID,\n userSig\n }).then((res) => {\n console.error(res.data, 'im 登陆成功')\n return res.data\n }).catch((im_err) => {\n console.error(im_err, 'im 登陆失败')\n return {}\n })\n}\n\nconst timLogout = () => {\n if (IM_STATE.login && IM_STATE.sdk_ready) {\n return tim.logout().then((res) => {\n console.error('logout success')\n IM_STATE.login = false\n return res\n })\n }\n return Promise.resolve('尚未登录 TIM')\n}\n\nconst receivedMsgHandler = ({ data }) => {\n console.error('-------------message received-------------')\n const { chatsMap } = IM_STORE\n data.forEach((msg) => {\n const { conversationID } = msg\n if (chatsMap[conversationID] && chatsMap[conversationID].msgs instanceof Array) {\n const new_msgs = checkNewMsgs(msg)\n chatsMap[conversationID].msgs.push(...new_msgs)\n }\n })\n IM_STORE.chatsMap = chatsMap\n}\n\nconst initMsgListener = () => {\n tim.off(TIM.EVENT.MESSAGE_RECEIVED, receivedMsgHandler)\n tim.on(TIM.EVENT.MESSAGE_RECEIVED, receivedMsgHandler)\n tim.on(TIM.EVENT.MESSAGE_READ_BY_PEER, function(event) {\n const { chatsMap } = IM_STORE\n const { data } = event\n data.forEach(({ isPeerRead, conversationID, ID }) => {\n chatsMap[conversationID].msgs.some((msg) => {\n if (msg.id === ID) {\n msg.isPeerRead = isPeerRead\n return true\n }\n })\n })\n IM_STORE.chatsMap = chatsMap\n })\n}\n\nconst login = () => {\n if (IM_STORE.login_loading) {\n return Promise.reject('logining')\n }\n if (IM_STATE.login) {\n return Promise.reject('already login')\n }\n IM_STORE.login_loading = true\n return Service.getSessions({\n page: 1,\n per: 1\n }).then((data) => {\n const { headimgurl, identifier, nickname, user_sign, items } = data\n userInfo = {\n headimgurl,\n nickname,\n user_sign,\n identifier\n }\n timLogin(identifier, user_sign).then(() => {\n IM_STATE.login = true\n getSessions({\n page: 1\n })\n })\n IM_STORE.login_loading = false\n }).catch((err) => {\n console.error(err)\n IM_STORE.login_loading = false\n })\n}\n\nconst getSessionContent = (chat) => {\n const { last_messsage } = chat\n if (last_messsage) {\n const { msg_style } = last_messsage\n const MSG_DEFAULT_MAP = {\n building_price_report: '[楼盘价值分析报告]',\n invite: '[邀请看房]',\n img: '[图片]',\n audio: '[语音]',\n building_card: `[${last_messsage.msg_content}]`\n }\n return MSG_DEFAULT_MAP[msg_style] || last_messsage.msg_content\n }\n return ''\n}\n\nexport const getSessionItem = (item) => {\n const peer_headimgurl = item.peer_headimgurl || DEFAULT_HEADIMG\n return {\n ...item,\n show_content: getSessionContent(item),\n date: item.last_messsage && item.last_messsage.created_time ? item.last_messsage.created_time.substr(5, 11) : '',\n peer_nickname: item.peer_nickname || '用户',\n mini_headimg: peer_headimgurl.indexOf('https://cdn.vip-wifi.com') === 0 ? (peer_headimgurl + '?x-oss-process=image/resize,w_88') : peer_headimgurl\n }\n}\n\nconst getSessions = (opt = { page: 1 }) => {\n if (IM_STORE.session_loading) {\n return\n }\n const { page } = opt\n if (page === 1) {\n IM_STORE.no_more = false\n }\n console.error('get sessions')\n IM_STORE.session_loading = true\n\n IM_STORE.page = page\n\n Service.getSessions({\n page,\n per: IM_PAGE_SIZE\n }).then((data) => {\n const { items } = data\n const new_items = items.map(getSessionItem)\n let { chatList } = IM_STORE\n const checkUnique = (chat_id) => {\n return chatList.every(({ id }) => {\n return id != chat_id\n })\n }\n if (page === 1) {\n chatList = new_items\n } else {\n new_items.forEach((item) => {\n if (checkUnique(item.id)) {\n chatList.push(item)\n }\n })\n }\n\n const loaded_page = Math.ceil(IM_STATE.loaded_chat_len / IM_PAGE_SIZE)\n if (loaded_page < page) {\n IM_STATE.loaded_chat_len += new_items.length\n }\n IM_STORE.chatList = chatList\n IM_STORE.no_more = new_items.length === 0 || new_items.length < IM_PAGE_SIZE\n IM_STORE.session_loading = false\n if (IM_STORE.no_more) {\n const messaged_changed = IM_STATE.refresh_timestamp && IM_STATE.message_changed &&\n IM_STATE.message_changed_timestamp > IM_STATE.refresh_timestamp\n if (messaged_changed) {\n IM_STATE.refresh_timestamp = IM_STATE.message_changed_timestamp\n getSessions({\n page: 1\n })\n } else {\n IM_STATE.refresh_timestamp = new Date().getTime()\n }\n }\n }).catch((err) => {\n console.error(err)\n IM_STORE.session_loading = false\n })\n}\n\n\nconst getUnread = (opt = { page: 1, per: 20 }) => {\n const { page, per } = opt\n return Service.getSessions({\n page,\n per,\n status: 'unread'\n }).then((data) => {\n const { items } = data\n return items.map(getSessionItem)\n }).catch((err) => {\n console.error('unread list error', err)\n })\n}\n\nlet list_inited = false\n\nconst listenSessionUpdate = () => {\n tim.on(TIM.EVENT.CONVERSATION_LIST_UPDATED, (res) => {\n const { data } = res\n const { chatList } = IM_STORE\n const is_changed = (data.length != IM_STORE.chatList.length)\n ||\n data.some((conversation, i) => {\n const chat = chatList[i]\n return conversation.conversationID !== `C2C${chat.peer_identifier}`\n ||\n (conversation.unreadCount !== chat.unread_messages_count && conversation.unreadCount > 0)\n })\n console.error('conversation received', res)\n if (is_changed && list_inited) {\n IM.checkUnread()\n }\n if (is_changed) {\n getSessions({\n page: 1\n })\n } else {\n IM_STATE.message_changed = true\n IM_STATE.message_changed_timestamp = new Date().getTime()\n }\n if (!list_inited) {\n list_inited = true\n }\n })\n}\n\nconst getMessages = (conversationID) => {\n const getMessageList = () => {\n const params = {\n conversationID,\n count: 15\n }\n const { chatsMap } = IM_STORE\n const chat = chatsMap[conversationID]\n params.nextReqMessageID = chat && chat.nextReqMessageID ? chat.nextReqMessageID : ''\n console.error('get messages', params)\n return tim.getMessageList(params).then(({ data }) => {\n const { messageList, nextReqMessageID } = data\n const { chatsMap } = IM_STORE\n const handledMessageList = handleMessages(messageList)\n let prev_datetime = 0\n handledMessageList.forEach((msg) => {\n const { datetime } = msg\n msg.show_date = msg.msgStyle === 'sys_tips' || !prev_datetime || datetime - prev_datetime >= MAX_DATETIME_SEGMENT\n prev_datetime = datetime\n })\n if (!chatsMap[conversationID]) {\n chatsMap[conversationID] = {\n msgs: []\n }\n }\n chatsMap[conversationID].msgs = handledMessageList.concat(chatsMap[conversationID].msgs)\n chatsMap[conversationID].nextReqMessageID = nextReqMessageID\n IM_STORE.chatsMap = chatsMap\n return handledMessageList\n })\n }\n if (IM_STATE.sdk_ready) {\n return getMessageList()\n }\n return new Promise((res) => {\n tim.on(TIM.EVENT.SDK_READY, () => {\n IM_STATE.sdk_ready = true\n getMessageList().then(res)\n })\n })\n}\n\nconst resetChatMapByConversation = () => {\n const { chatsMap } = IM_STORE\n Object.keys(chatsMap).forEach((key) => {\n delete chatsMap[key]\n })\n IM_STORE.chatsMap = chatsMap\n}\n\nconst getFrom = () => {\n const pages = getCurrentPages().filter(v => v && v.route)\n if (pages && pages.length >= 2) {\n const routes = []\n if (pages.length >= 3) {\n routes.push(pages[pages.length - 3].route)\n }\n routes.push(pages[pages.length - 2].route)\n return routes.map((route) => PAGE_TO_KEY[route] || route).join(',')\n }\n return ''\n}\n\nconst createTextMsg = (to, content, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: content,\n extension: JSON.stringify(data)\n }\n })\n}\n\nconst creatReportMsg = (to, content, building_id, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: content,\n extension: JSON.stringify({\n ...data,\n building_id,\n msgStyle: 'building_price_report'\n })\n }\n })\n}\n\nconst creatStickerMsg = (to, img, name, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: name,\n description: 'sticker',\n extension: JSON.stringify({\n ...data,\n img,\n msgStyle: 'sticker'\n })\n }\n })\n}\n\nconst createImgMsg = (to, img, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: img,\n description: 'img',\n extension: JSON.stringify({\n ...data,\n img,\n msgStyle: 'img'\n })\n }\n })\n}\n\nconst createAudioMsg = (to, audio, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n console.error('create audio msg', audio)\n\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: audio.url,\n description: 'audio',\n extension: JSON.stringify({\n ...data,\n audio,\n msgStyle: 'audio'\n })\n }\n })\n}\n\nconst createBuildingCardMsg = (to, building, data) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n\n console.error(data)\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: building.name,\n description: 'building_card',\n extension: JSON.stringify({\n ...data,\n building,\n msgStyle: 'building_card'\n })\n }\n })\n}\n\nconst createInviteCardMsg = (to,building_id) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n description: 'invite_card',\n extension: JSON.stringify({\n building_id,\n msgStyle: 'invite'\n })\n }\n })\n}\n\nconst createLocationMsg = (to, location) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject()\n }\n console.error(location)\n return tim.createCustomMessage({\n to,\n conversationType: TIM.TYPES.CONV_C2C,\n payload: {\n data: location.name,\n description: 'location_msg',\n extension: JSON.stringify({\n ...location,\n msgStyle: 'location'\n })\n }\n })\n}\n\nconst sendMsg = async (msg, check_sensitive = true) => {\n if (!IM_STATE.sdk_ready) {\n return Promise.reject('SDK not ready')\n }\n const { chatsMap } = IM_STORE\n const new_msgs = checkNewMsgs(msg)\n const chat = chatsMap[msg.conversationID] || {\n msgs: []\n }\n chat.msgs.push(...new_msgs)\n IM_STORE.chatsMap = chatsMap\n const { data } = msg.payload\n if (check_sensitive) {\n const removeSensitiveMsg = () => {\n chat.msgs.some(({ id }, i) => {\n if (msg.ID === id) {\n chat.msgs.splice(i, 1)\n return true\n }\n })\n IM_STORE.chatsMap = chatsMap\n }\n const check_rs = await PublicService.checkWords(data)\n console.log('check_rs', check_rs)\n if (check_rs && check_rs.items && check_rs.items.length) {\n removeSensitiveMsg()\n wx.showToast({\n title: '内容含有敏感信息',\n icon: 'none'\n })\n return Promise.reject('has sensitive words')\n }\n }\n return tim.sendMessage(msg)\n}\n\nconst readMsg = (session_id, newMsgs) => {\n if (newMsgs.length) {\n newMsgs = newMsgs\n .filter((msg) => !msg.isSend)\n .map(({ from, random, sequence, time, id, conversationID }) => ({\n conversationID,\n id,\n from_account: from,\n msg_random: random,\n msg_seq: sequence,\n msg_time: time\n }))\n const { chatsMap } = IM_STORE\n newMsgs.forEach(({ conversationID, id }) => {\n const chat_store = chatsMap[conversationID]\n if (chat_store) {\n const { msgs } = chat_store\n msgs.forEach((msg) => {\n if (id === msg.id) {\n msg.is_read = true\n }\n })\n }\n })\n IM_STORE.chatsMap = chatsMap\n newMsgs.forEach((msg) => {\n const { conversationID, id } = msg\n if (IM_STATE.sdk_ready) {\n tim.setMessageRead({\n conversationID\n })\n }\n })\n return\n }\n Service.readTimSession(session_id)\n}\n\nconst TimSendMsg = (msg) => {\n tim.sendMessage(msg)\n}\n\nconst checkUnread = () => {\n App_User.fetchUser().then(({ unread_tim_messages_count }) => {\n IM_STORE.show_unread = unread_tim_messages_count > 0\n })\n}\n\nconst readAudioMsg = (msg) => {\n const { from, random, sequence, time, id, conversationID, msgStyle } = msg\n const new_msg = {\n conversationID,\n id,\n msgStyle,\n from_account: from,\n msg_random: random,\n msg_seq: sequence,\n msg_time: time\n }\n const { chatsMap } = IM_STORE\n const { msgs } = chatsMap[conversationID]\n msgs.forEach((item) => {\n if (item.id === id) {\n item.is_read = true\n item.isRead = true\n }\n })\n IM_STORE.chatsMap = chatsMap\n if (IM_STATE.sdk_ready) {\n tim.setMessageRead({\n conversationID,\n messageID: id\n })\n }\n Service.readTimMsg([msg])\n}\n\nconst readAll = () => {\n IM_STORE.show_unread = false\n tim.getConversationList().then(({ data }) => {\n data.conversationList.forEach(({ conversationID, unreadCount }) => {\n if (unreadCount) {\n tim.setMessageRead({\n conversationID\n })\n }\n })\n })\n}\n\nconst delChat = (id) => {\n return Service.delTimMsg(id).then(() => {\n const { chatList } = IM_STORE\n chatList.some((chat, i) => {\n if (chat.id === id) {\n tim.setMessageRead({\n conversationID: `C2C${chat.peer_identifier}`\n })\n chatList.splice(i, 1)\n IM_STORE.chatList = chatList\n return true\n }\n })\n })\n}\nconst setChatTop = (id, params) => {\n Service.setTimTop(id, params)\n const { chatList } = IM_STORE\n for (let i = 0; i < chatList.length; i++) {\n const chat = chatList[i]\n if (chat.id === id) {\n const { topped } = params\n chat.topped = topped\n chatList.splice(i, 1)\n if (topped) {\n chatList.unshift(chat)\n } else {\n chatList.push(chat)\n }\n IM_STORE.chatList = chatList\n return\n }\n }\n}\nconst readChat = (id) => {\n const { chatList } = IM_STORE\n chatList.some((chat, i) => {\n if (chat.id === id) {\n chat.unread_messages_count = 0\n IM_STORE.chatList = chatList\n return true\n }\n })\n}\n\nconst destroy = () => {\n console.error('invoke destroy')\n IM_STATE.login = false\n IM_STORE.login = LOGIN_STATUS.NONE\n return tim.destroy().catch((imError) => {\n console.warn('destroy error:', imError)\n })\n}\n\nconst setBlock = (id, params) => {\n return Service.setBlockStatus(id, params).then((res)=> {\n return res\n })\n}\n\nconst IM = {\n setChatTop,\n login,\n initIM,\n logout: timLogout,\n destroy,\n getSessions,\n getUnread,\n checkUnread,\n getMessages,\n createTextMsg,\n createImgMsg,\n createAudioMsg,\n createBuildingCardMsg,\n sendMsg,\n readMsg,\n delChat,\n readChat,\n resetChatMapByConversation,\n readAll,\n readAudioMsg,\n setBlock,\n TimSendMsg,\n creatReportMsg,\n creatStickerMsg,\n createLocationMsg,\n createInviteCardMsg\n}\n\nexport default IM\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAWlBMVEUAAAAAspIAsZEAsZAAsZEAsJEAsZEAs5MAsJEAsZEAsJEAsJEAsZAAsZIAspEAspIAsZEAsZAAsZEAsZAAsZEAspIAs5MAsJQAtJQAspMAtJYAs5EAsJAAsJCpyYDXAAAAHXRSTlMAQNuUgO3BL/rz4L7MjW1S6rarpp1nVzcoIREecVbwiBUAAAGtSURBVEjH3ZdZsoMgEEVRHigaZzOZsP9tvqKTSnEN0lr85XxF4xV6pBW/RdHKulJlqapatsURZTb3FujnbKf0ktsA+WXPqie7wYlb/T58njW5nppm0rn53Bru0WWVfVHJzLsrq/dtFVn8XFpiLL6cP1qiPG9ppSX0VQS4akvImNZ0YoPObKvPr4jcxCa3VwwDO8/I3noREZaa7M6+YqRIKxhIrdYRG2jPCydeaOfDatP0RrC3ax8hu8lruHHKSfBzY60KqTvKVKgFii885FZ4igAUb79KyBLMDXfnL5gt5J2VxaPgxcSIVs/ustgrLtxf8+eyd3UkImLE1VgPr5L7xdLfaEtGsGJ0Ueu9yQhWjGGUXsLmvBgjW3sO0EfE2nOwK6jpiHhyhfD+7Sq5OSJuXFUniblt6z+P5wO3zTkMUQ9wGBOqNS2EKpYkgSOrgySJpWexVpsG0xMLgwcLA0uSB0sSmwEPNgNsQzzYhrAB8mADxNaLMK0Xmz4DNn202twYIRw3CQddwhGbfrinjxU40Ch+oEkfpdKHuPTxMX1w5UfmhGE94TMh4QPlp/gHwYpXaSSL758AAAAASUVORK5CYII=\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAATlBMVEUAAAAAsY0AsY0Aw5wAtJEAsY4AtZUAspAAsI4AsI4AsY0AsI4AsY4At48Av48Av5oAso4AsY4Aso8AsZAAsY4AsI0AsI4AsI0As48AsI2zG6Y6AAAAGXRSTlMAgOAGOpoYTe/myrWwIBAISdRtF4zTcW45L5qnvwAAAOZJREFUSMft1u0KgyAUBuBMrdanWat1/ze61ogzUc8RJCjW+8veeJDK0OTOJdMpzdBo1fmsSBcy6cszL1hMu+dWS1CUE+swrJ2YrXdKwfdLLsrF1TAffrS/RfuwGwRLs5F2g2BGNjf+e0yvsNi1fcRfReesuM+zLO8tAT2CK769mcqU0GO4GL7DrDAt9Aiu93FtYugRPO7j0cTQx81MP/NQmBj6g972mqfjO0N/2uUZgKO22KjNPepYEXGgEd6jVD6zT6SN5HZjVl1CpEkdMzaUAktp2tKatuGag7U1p/TEvJmSO1fNG+/nYlqo3ZzSAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAA3lBMVEX///8AAADCw8ONjo65ubm8vLzl5eX////////////j4+Pn5+dbXFwsLS2ysrL///////////////////////////////////////////////////////////////////8vMDBub29xcnKQkJCtra36+vpERUVMTEx3d3fV1dVRUlJpaWmKi4vOzs5XWFheX19hYmKZmZmgoaGnqKjr6+vy8vLt7e03ODg7PDxBQkJISEiBgoI3ODhPUFBUVFSAgICFhYWUlJTIyMjc3NxjZGSTk5Orq6vIysre3t4pKiopK5B8AAAASXRSTlPMANjk2trRxbgI0dHx/tzIwr2wo5OMc2RSTUo/LBYOA/3s6+Tdzff16tTz7eXW8vDv4uDf0M/P+/n49uf69PPn5uLX0+7j3dfSupKWxgAAAnJJREFUSMellglzqjAQx7eiVexDhXqfCIK3Vq1a62v72nfu9/9Cb0NME6DS6fifkUmG/SWbuAdwFZXeqpYts1g0rXK1pcdeR4Buo5IFRdlKo5sA6LUSxFSq6WeAXj0HHypX730EdG7hrG47caCdgwTl2lGgmYVEZZthoClevN2Dot3gHwg1VaAt1t8i7qfCJDNEdOQebQl03v2fI+JRTH7SxJY75joC6Mn7WZHNGIQWNHOVu+qdgDpwpQaDb4jfByS+7poAH6TqHNCFQ2QtlLlhGhs4cfPB0Auc0gOgBnFAw4gKwFRjQLekAIfpdHp3Hih1CWiAAvS3G8ifB6BBQEUFDjZmGFBIR3TDTSpXoGdV4JeNSwakzkWIDi0IudRHY86BjJQHQmReDQNp8p8DKHUNQmReDgNeP5VPAspgieFa8xGHmqYdkwALTDEcSgMBOLvd7kcYMKGYAIwAQAsDRQnMnAdE33GcaTJgghrNzliDfBJggiUnE4ptxAwHPHq+xAFLvdYhrWnjggNbes7iQFn94+gMryOKIwYE+fk7DlTV0DAQ13PEZQBkkNA40FKC755lGjyNUgzg2S2AP2kZfDK82Zp5gNMtURoZngBcXIjwVhJohmiDALY24gQEMMMHkUBKipLvz+8AKxgrILls3xf0RYrKInBtBPf4d75hx92TR8FZX2nmDvluUFPLDIuyN4BHZJrQbwlMhDP1RZmRhewZ8ZH7TAN25DHf2A6AtChkslR6rrFh5Q8N/3gDhb0ryu2df3hayVKpFGO+pHc6UrypdKLlPlnZdqyhJKt5Wcv6vCle3naTG/sXPx0u+jj58ufPfwvVmA6yZGtSAAAAAElFTkSuQmCC\"","const cdn = require('./cdn/index')\nconst utils = require('./utils/index')\nconst cloud = require('./utils/cloud')\nconst request = require('./request/index')\nconst extendApp = require('./extend/index')\n\nmodule.exports = {\n cdn,\n utils,\n cloud,\n request,\n extendApp\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAbFBMVEUAAABmms1om89omc2NwPNnmc1mms1nms1nmc1mmcxom81mmcxnms1nms1onNBwpNVnmc1mmcxnmc1nmsxpm85onM9omc1oms5nms50otlmmc1mmcxmms1oms5on9Fqo9Vnms5nmsxomc1mmcxarfKKAAAAI3RSTlMAwECAAtHwj+iWPfq0dDEL2lAofjcZbGRWCMq5n0ohEoaDZ3nneVgAAAE+SURBVEjH7dbbcoIwEIDhDc2BIBBBUDy33fd/x5qdOikGU5Kb2hn+u4z5RmaBIbD00nElRZ1qT4goErHCWxL8eFtkExW92/KBNuXTbY7TrXbwXUXrkj9aw/BpkgO1oxXbw2Maf8UDLQ7Gs50nvMs+r+xCXJ9MUWeBgRVk1z34lfYHCFRLa/MLTMTsJAK2zcm2kIAvZGUHCbhf0+AySMBXQfYMCdgc0DZAAt4zsp+QgkuyFaTgjOw7ULwqKx6BB2v1j9eqisBGIJ7u/3a8bTtGDawpxtsCuBboEjVQczFZp+OwHGEZh9UIqzgMzebt3qaBCOy14Khpe2OPus8uFf+EuWT8s+0S8W+Vs/Wr36r/hN33OZj94JWBk0EoPX2Q6nB2HXjpuVaDn2HzLDPOeCfAcPmWO+GdPYMVLYelP+oL4kpjZNk247oAAAAASUVORK5CYII=\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-slogan.vue?vue&type=style&index=0&id=12170a5c&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAYAAAA6/NlyAAAABGdBTUEAALGPC/xhBQAABVFJREFUaAXtml1oXEUUx7sbg0nF+CBaH0qLSlQIabKbvCiFvhUflEZ9UFQofjwoBYViYotQwQp+tJRSqqBg1JeigrYVkdIHwfr1kmwI+2KJH61obaWWNtAGDbvxd/Te9u7s3M7cmbmLhXthmZkzZ875/8983rm7bFnxFBEoIlBEoIjA/zcCpbyh1ev1FYuLi+uXlpbW4+sW0hWlUukm8Uv+JPlTZH8iPdzd3X14cHBQyrk9uRGenp6+B9Rb+d0JMSs/kF5C/zt+r4yMjHxGGvyxApLFa61WW9dsNnfRppqlnUa3Vi6XN1er1S81dc6isnNLpSG9WJ6amtpG+gVVvmTFelVsRTaD4QzSw3Nzc1fPz88fAODdShyCFBnqh/r6+sb6+/v/8jXoHTnpWcjuy4usEBTbkQ9vvN4GWJx2A+h+38ib2osP8WXSM9V7DemZmZm7WKC+BoyXHRPIuF5WcRaytZVK5dtYljV17mFIlhuNxt5OkRVi4ivy6YzbuSHbzxgYKrYRpneO85tAf01vb++18pO8yKTO1g56lch3hiaXVK+6lM2WI9oP2baA0Oussts0q2wdG3VW+T0sSi9hUwJifCLfnxgVNQpOc292dvYajot/YG+5xqYqGh8dHd2pCnVl9tznkO/Q1SmyCxxDbxwaGjqvyI1FpyHNPFqDZRuyB23JCtJI96ARNb4jDBaqrSpOhFmZV7aa0Zfohef1NZeVbrlsbVRpi0G15USYOWlDuMaQO6o6NJXp5e/RqZn0LDG0mXEijJXuNkuKAEBTisi6aNnWacF1Igyg0yb06Pxp0kmrt2xrxKCz70SYbeGEzlhShs71yXKWvE1bdH7LYjPWdSVsHK4AGo2dZE1t2nJwMWLQ+XUizMJymmH3g85gQlZlv749UbbKshffgaLpffrowMDAGSuDipIT4ciG8QqGw8lrij+b4qsmJYL9qUknrd6ZME4/SjOakG+ITk8JUXo20t2QrnGx5sOLuYwZp6Ol+GCelXg/lT3zNpNPgpN2lv63aXRjsh2b4yZb1NeZUnLSc3qcCYs3euRpkjdtPENa3ojegNQhFpyfpc3CwsLNyOVaaBPy1SIzPeg/xo3meya9tHpfwssBcAywN6Q5CCz/lWDdyoL1t6td5zksDhlaF0hecHWetR23HRM+ZMWfVw+LAXq3zFyWPdH6MkDaOTzfEOC1Du1amnj1sFhiSDf5PdtiNXBBfGDymRBmvQkLCBaRrwD1QQhAOhuMokl61/gGpWuryoIQFqOA2kzidKBXQSllWahc3qsVM/8VgxGmB37v6uraSE/LB7FQT4OF6hHXY6QORDDCYpz74s9JvC/LY6AEbzsf047E5RBpUMICqKenZwtAp33BYeMIZF/2taO2D05Y9knm84M48rkAOMH0eBjSDRWwbzk4YQHEfP6RZAzAmb/20eY8Abt3eHjY6QXfFJBcCEek5ZvT4yYAyXrINmWRCrUFJW3H+dwIiwOA7yN5MXZmSiE8zsJncy9tMpVa7320TLWcqODoKR/dNiVEbVnI7uAAM9FWEVjQEcKQlXfnd8G+UYcfsm9B9ildXWhZRwgLaEiX+er3PumjSRKQnWT7eZI05IEl6aIln+scTnqCUBNichKbjOXk3+4k2dhvR1MZ3tyU7GSI23wl7Ci2wlkRgSswAkFWaebjLubmE/DvyykG8yxw77B1yTu31+NNmAVI/tyy3wuFfeP7OL0dsFdv1wyxLa1uN5ubxNtXCML7GW5nc6MYGY58eI8k7yEteBjWqwD0ANnrInyhk3OsER8znH8JbbiwV0SgiMCVFYF/APeGtvv7ACQlAAAAAElFTkSuQmCC\"","export const BUILDING_STATUS = {\n '热门楼盘': '热门楼盘',\n '即将预售': '即将取证',\n '最新取证': '最新开盘',\n '最新摇号': '最新摇号',\n '摇号剩余': '摇号剩余',\n '在售': '在售',\n '在售楼盘': '在售'\n}\n\nexport const SHARE_PARAM_KEYS = [\n 'wx_scene_id',\n 'share_info',\n 'device_info'\n]\n\nexport const SHOW_CALL_TIP = true\n\nexport const CONSULATANT_CARD_IS_CALL = false\n\nexport const LEVEL_MAP = {\n gold: '金牌',\n silver: '银牌',\n copper: '铜牌'\n}\n\nexport const MEDAL_TYPE = {\n ROOKIE: '超凡新星',\n GREAT: '超神',\n PHONE: '来电秒接',\n MSG: '在线秒回',\n EXPERT: '行业资深',\n LEARNED: '楼市百晓生'\n}\n\nexport const CUSTOMER_SOURCE_TYPES = {\n TIM: 'tim',\n CALL: 'call'\n}\nexport const CUSTOMER_SOURCE_MAP = {\n [CUSTOMER_SOURCE_TYPES.TIM]: '微聊咨询',\n [CUSTOMER_SOURCE_TYPES.CALL]: '电话咨询'\n}\n\nexport const CUSTOMER_SOURCES = [\n {\n value: CUSTOMER_SOURCE_TYPES.TIM,\n name: CUSTOMER_SOURCE_MAP[CUSTOMER_SOURCE_TYPES.TIM]\n },\n {\n value: CUSTOMER_SOURCE_TYPES.CALL,\n name: CUSTOMER_SOURCE_MAP[CUSTOMER_SOURCE_TYPES.CALL]\n }\n]\n\nexport const CUSTOMER_MARKS = [\n '意向客户',\n '潜在客户',\n '到访客户',\n '登记客户',\n '成交客户',\n '无效客户'\n]\n\nexport const BUILDING_RANK_MAP = {\n comments: '热评榜',\n views: '人气榜',\n follows: '关注榜'\n}\n\nexport const C_MP_SERVICE = {\n link: 'https://mp.weixin.qq.com/s/E9xhe0v_nd_B7p5Kc2GPew',\n name: '成都购房者之家'\n}\nexport const PREVIEW_CATE_ORDER = ['样板间', '户型图', 'vr看房', '看航拍', '看总平', '周边配套', '看日照', '户型VR']\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAASCAMAAAByxz6RAAAAaVBMVEUAAAAAvJgAsY0AupUAsY4AsY4A27cAsY0AsY4Aso8AsY4As5AAsY0AsY0AsY4AsY0AsY4AsY4Aso4Aso8AsY4AspAAsY8AtJAAsY4AsI4AsY0AsY4AsY4AsI4AsY8AspAAtY4AspMAsI0rC2f2AAAAInRSTlMACPgNwIQD9d5XUDzxu7axqY10amBMRifY1tWtnH59NS0hqJGsawAAAIZJREFUGNN1z+kOgyAQBGChUpF6ttXeh/P+D+kYNaIu+2vIlzC7UWAOVRyQ2xNGliYLyQf4yjUlcJZr7iFxGXCR4GiwiOr8moJynV+VNmrOf+tLFAOP0xjThJJ6f9BQK9bUDJqyMet++SBuvZXKMY1u1kIrJmm3QisHSVrx0heFe4r2tjvpAfgvCxT2p0g9AAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAMAAABg3Am1AAAAolBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8ELnaCAAAANXRSTlMA+PQE/CYfDQjev1o+7+virHtgRhTmy8aknY6AUxDZ1c+6s3ZzbGZMMSwYC6GalYmHOja3l0TgOUcAAAFySURBVEjH7ZRrb4IwFIaryE1RVFABRR06L8z71v//1+ZLSWjWHMqSfVni88HY08dj+3KU/Ts+drf9b/x8xTkfOs37TzmYhQ19I+MC12SNuEBu4WXgNfG3UKf5W/Gxnt5fQPRzZsQcbHT+HWfpH/F2xMHZqPXNAQ4SiEWvuMiwzg+XUMasxOtjWXMPZwZhLn1h+7n+YiRD+Cc5sfp7X7HdNaTEOkjMpvwd/FVaFR5tkRhBgHYTqypYSKwTUP4B7dqHqpCWiRFYE7TbS4l1RWIE9hrb71IlQiEiJ7oYtUSq3MrECOJiBojEVMSYzRw1MYIefDf8mdiD8j0M5cCUEvNFYgRmHxN9VxOjyLC9UBMjwXk3amIkKe5HJ6ZyfO4v1cRoAjxRNTGasRgZOTGPUKszX5kgdDU/enBB5vKf8IjVk4mn4Hjzbgv+mWlA1y1kwafBNEy4zNpmOnxJ9xP4GpJSdk9jizXBiTrcjSE3xrbZi7/hG1DJSFcFyU3yAAAAAElFTkSuQmCC\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAMAAACdt4HsAAAAe1BMVEUAAAC5vNuZprSZprSrs8OZprSZprSZprSgq7mZpbSYpbSZprSfq7iZprOZprSZprSZprSZp7Wap7adqreZprOZprSZprSbqLadp7aYprSZprSYprSZprSZprSZprSap7abp7WZprSZprSap7WaprScp7aZprWZpbSYpbMTV0/tAAAAKHRSTlMAA/nIB4vo4RDO73gV9vTXo1g4Guu3mTAh29G+snJsRT6rn1NlJpJ691+0HAAAAgFJREFUWMPtVseCgjAQJfTeBUTaYln+/wuXFAUCCca9eGAu6kzmJVN8M9Ih3y9FVRX/cFd/vWHwHPVT/y4YkATdR+5uOLwkdIXdwc1GrmmKPuwGiPnHCr46M80Mf7Nikdf32KmMEZiFf/XvxgFq/Hq/Bk+FLxJHS3L/k0y65Ic8qd11z0/46LmlYM9Yf+Gn4k5u8tfNozo+tlU5u2/DZ9mTLXPyMjO6O5OxXYmnax+pUa+LK2ebAKRvrzOVBjXRTHElqWACGLdFpQyoOy071OACULnzUUhUNrkA0j6AJALgHQCS/B0A1gHAB6BPg41/ePkugD4aKOZOEQ0udeao0jcBIP1TfPeAADeKdsmj1gL5GNPRgtIc6th1yTEUf/XSrsBRp21PcxIcXwDMS7dtsiGDLjFHDj13qwhsxojrISkvbNaqD0DACfQOO6GhKkuF1cCxcOflR855ADmkmExiSeLDsWpOigvVSK4BB2ciMSVCMbuzLa8sq2LyV+aTitkLQ8C4IgmgVeNX+YQGXLxly/GgAzu7ZYXGr7OGdmTkr+52Wog3EapUxQWpQ+p+dh4GWZtVw9TkgYqfJ62OTuuNSsJqUqxo394TyaqkO+Z4u6OTtU1k340M7GRrmo2/GZHgpl8TRwJUi+/8puY93T2cUHEIBwViwEx8KCBSlAhIh3y7/AFFXmPGUJ0tPQAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAilBMVEUAAAD7iRr8ixv7ihr6iRv7ixz7ihr7ihn7iRn/jhv7ihn7iRr6iRr8ixv/jh7/jRv/lyL8ihn7iRr7iRr7jBr6iRn7ihr/jB3/zVr7iRn8ihr6ihn7iRv7ihn6ihr8ixv+ixv/liX7ihn7iRr7ihn7ixr7ihn7ihr8ihn6ixz/jR/7ihr8iRr6iRnB9uUqAAAALXRSTlMAgEn6aD6Hg4QkzOKpUhkUDphyd0TXxCoC6k2jj/SbXzAI8rqOe8CzWTcgsJN1D7OkAAABlUlEQVRIx+XX6W6CQBSG4SMjtoLsIosKat3b7/5vrzNQFbTJwDFNmvj+YcbwBDPGeKSXznfCQYdCx3+gXiDQMRF4bZvY6JGdtJ4rbS/dfHaAngWNsxIARORSh9youvl2ag5kEXUsgsy5bkPI3K7YhSy8bgeQUecgG/wRzvP0uh5ut+M+eLyEbVw2M2DaA3sxEPs87FvAMiEWdpVVt+8mVRmwr1elFq9sQORq9YG7FjocCmBpEA9LkZ2IzLV8/+MqCyjrlafDZzFziU5is+Ac2DQlWscAC6sKwDaNn2Jgd1n7ehwCMOf4pZUWOwL4Ih5WFkNy3hrNAVtdXQ0uBSrcygQs/YGlC4CNcwDZQWHPaBQBsbxMNR+VhSwZKWzgsY0GH+MzsXHqU43H743UacvLQINlNZalZZC2D6wH3gMjNp4CyLlYLTKPi9VXc8LFCiHhYvq0TGJjL6XcME35yqw/lh1QNWfhI1TZqiN2isK87dwi2O6cNd3h//jj3gfzBxr+KMUf4p4eH/mDK39kfm5Y5/9NeOW+AWdauQcGL2pDAAAAAElFTkSuQmCC\"","import getUserInfo from '@/common/utils/getUserInfo'\n\nconst navToConsultant = (e, params) => {\n wx.navigateTo({\n url: `/consultants/card/main?${params}`\n })\n}\n\nexport default {\n methods: {\n goCard (e) {\n const { id } = e.currentTarget.dataset\n navToConsultant(e, `id=${id}`)\n },\n goCardFromExcellenct (e) {\n const { id } = e.currentTarget.dataset\n navToConsultant(e, `id=${id}&from=excellent_consultants`)\n }\n }\n}\n","module.exports = \"data:image/png;base64,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\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_top_tabs.vue?vue&type=style&index=0&id=3051c7b8&lang=scss&scoped=true&\"","export const APPLY_PIC = 'https://cdn.vip-wifi.com/njxfy/img/share/consultants-apply.png?v=1'\nexport const DEFAULT_PER = 10\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAABGdBTUEAALGPC/xhBQAAAMNJREFUaAXt2DEOhCAQQFGx8EScy8rO2s7Kc3EiGhwiJEIwJgZijJ9kXceZBfdhMbHrGAgggAACCCCAwGMBdfVLrfXinJskP8jHKqVWY8x8rs9qzqma58W14wJ9PMm/5eZHueZv3o8hxEcUjllNkqsYFNeO81/+ARHfpMiGQq/g42RkNUmuYlBcu+L8TIUAAggg8GEBWgnZvNhutNpHWolWssyLAAIIIPC+AK2E7AGtxM2DyFuJGyDSCCCAAAIIIPBfgR1REXIQYt9m2QAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAYAAABV7bNHAAAABGdBTUEAALGPC/xhBQAAAcNJREFUeAHt2s1thDAQhmFI0gGn1EEBqWIPySE9rJQu9pAeckgOWwV3qCMnOkhEZqRFQharRfkZf1ZeLmsDwvaz45FsqCoOBBBAAAEEEEAAAQQQQAABBBBAAAEEEEAAAQRiBOqYZqpqmqbrYRj2dV3fWblr2/bZyp9R7X+3nTCgvu+frJOHRUePhvRgSB+Lc3LFq6geeeQkbe0sol4tmm6S81LVMCCfVisjl0cKm2IG5DnozZB2K1Cy0y0sgjwhe84xnOMKkGwkhUXQjOI5x3OP1YuIpHAghyoJKQtQSUjZgEpBygpUAlJ2IHUkCSBlJBkgVSQpIEUkOaCNSPdRWyVhSw0f+NbDt0AuLEv2W5/10/skgXxQjtQ0zaMV39NB2rV06yS95dfqskC+HBnH8cVGepuO1q516bm/qpODLsjKRdDGhWzYXrZUBG3ECd3DlgFSxPHZJwGkiiMBpIyTHUgdJytQCTjZgErByQJUEk44UGk4oUCGw5tVFz93+Kcvdq2Il4XLMYStxc5sUci+k5+RwoBsinVzo6dfeRzvZ9hS45SDivvCLPlTqSKAAAIIIIAAAggggAACCCCAAAIIIPC/Bb4Ac5Yo07rwxlYAAAAASUVORK5CYII=\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-consultant-promise.vue?vue&type=style&index=0&id=6df51b8b&lang=scss&scoped=true&\"","import { UserLog } from '@/utils/log'\nimport Service from '@/service/public'\nimport { App_User } from '@/data/user_info'\nexport default {\n methods: {\n callConsultant (e, tip_content) {\n const { id } = e.target.dataset\n this.callConsultantById(id, tip_content)\n },\n callConsultantById (id, tip_content) {\n App_User.get().then((data) => {\n if (this.is_index && data.tag_list && data.tag_list[0] == \"天府通游客\") {\n wx.navigateTo({\n url: '/logging_in'\n })\n } else {\n this.$showCallModal(() => {\n Service.getPhonePosition({\n consultant_id: id\n }).then(({ phone }) => {\n this.$wx.makePhoneCall({\n phoneNumber: phone,\n success: () => {}\n })\n UserLog.callConsultant(id)\n })\n }, '置业顾问名牌——电话拨打', tip_content)\n }\n })\n }\n }\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAgVBMVEUAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9d3yJTAAAAKnRSTlMAgPvrFOAl9/HSmVoIeHMEiWI3Kh3by7uRcGhTSUU9GQ/67tnBs6ylgjEANwUSAAABgklEQVRIx+2V2ZKDIBBF0QQFxGXURI1L9o3//8CZUmkSswipmZoXz1s3fUy41aXorwjroqjDz9wvLH7AXx+oTiZ6MsfULVwBuIWRmizFHctEPyhrKwZsLc3gYqp+Uf0DGmuoPLfhrn4Y+nB3O+djbo2F5OC0qR+ggeu36obBJFnJ5opAk21eu+UMxo6paqdHaM/KF+r6pGa8+yNPPfW0frqNOxg4z4eH8zMc7h73Nc1ULhV6QqWSzNSVHkPRClPhQ3/foJc0exjzb6Ky5SJE/O0CRTC4VlnJFbyiEa5ydVVqltxGNIrcV2sgX5AWl6EMtQbWJE/yL8mJFwRe8onMg4VoWQTcVI6xAHBsJpeuuMEtTeS4c5Ud68sciwGYa8tBr1DGqOgItOUuZ+K1HwvSZa4rJ6LF6yqvqxINWY1TWVJ41JisrsxkyeDSI/KbcpInWYho3hO1Ze705IPTB9kYJfvmsg9yZS5Xg9eOCZgjoCFmLmnQDSmjM4DYTyDqnLIU/TPfPHW6wyoQTMwAAAAASUVORK5CYII=\"","const TIMEOUT_CODES = [-604102, 87015]\n\nconst SENSITIVE_CODE = 87014\n\nconst MAX_ERR_COUNT = 3\n\nconst SUCCESS_CODE = 0\n\nconst msgCheck = (content, options = { loading: true }) => {\n try {\n if (options.loading) {\n wx.showLoading({\n title: ''\n })\n }\n return wx.cloud\n .init()\n .then(() => {\n return wx.cloud.callFunction({\n name: 'validityCheck',\n data: {\n content\n }\n })\n })\n .then((res) => {\n console.error('cloud check error', res)\n if (options.loading) {\n wx.hideLoading()\n }\n const { errCode } = res.result\n if (errCode === SENSITIVE_CODE) {\n wx.showToast({\n title: '内容含有敏感信息',\n icon: 'none'\n })\n } else if (TIMEOUT_CODES.indexOf(errCode) > -1 && msgCheck.error_count < MAX_ERR_COUNT) {\n msgCheck.error_count++\n return msgCheck(content, options)\n } else if (errCode != SUCCESS_CODE) {\n const is_cloud_err = msgCheck.error_count >= MAX_ERR_COUNT\n if (is_cloud_err) {\n msgCheck.error_count = 0\n return SUCCESS_CODE\n }\n }\n return errCode\n })\n .catch((err) => {\n console.error('msgCheck error', err)\n if (options.loading) {\n wx.hideLoading()\n }\n wx.showToast({\n title: '网络出问题啦,请重试',\n icon: 'none'\n })\n return 500\n })\n } catch (err) {\n return SUCCESS_CODE\n }\n}\n\nmsgCheck.error_count = 0\n\nconst imgCheck = (value) => {\n wx.cloud.init()\n return wx.cloud\n .callFunction({\n // 云函数名称\n name: 'imgCheck',\n // 传给云函数的参数\n data: {\n value\n }\n })\n .then((res) => {\n console.error(res)\n if (res.result.errCode !== SUCCESS_CODE) {\n if (TIMEOUT_CODES.indexOf(res.result.errCode) > -1 && imgCheck.error_count < MAX_ERR_COUNT) {\n console.error(res.result)\n imgCheck.error_count++\n return imgCheck(value)\n } else {\n const is_cloud_err = imgCheck.error_count >= MAX_ERR_COUNT\n imgCheck.error_count = 0\n if (is_cloud_err) {\n return SUCCESS_CODE\n }\n let content = '内容含有敏感信息'\n if (res.result.errCode == 413) {\n content = '上传图片不能超过1M'\n }\n wx.showModal({\n title: '提示',\n content,\n showCancel: false\n })\n }\n }\n return res.result.errCode\n })\n .catch((err) => {\n console.error('cloud error', err)\n wx.hideLoading()\n wx.showToast({\n title: '网络出问题啦,请重试',\n icon: 'none'\n })\n return 500\n })\n}\nimgCheck.error_count = 0\n\nmodule.exports = {\n msgCheck,\n imgCheck\n}\n","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEgAAABICAMAAABiM0N1AAAAclBMVEUAAACLkZmLk5upqamKkpqLkpmLkpqMk5qNlZuKkZmLkpqLkpmLkpqMkpuMkpmQl5uOmZuKkpmMk5mPlZuOlZuLkZqLkpqKkZqMkpuLkpqMkpqZmZmVlaqLkZqLkZqNlJqKkZmLkpmLkpqOnJyfn5+KkZlZUG4LAAAAJXRSTlMAgEAD5tFvOC778d23aJQeGJpQKCX1sY9So1cPDMusTNrOhBIIH2M5mAAAAXRJREFUWMPtltu2QzAQhgdBSlUPWoeiR+//ittk28teDRnEVVe+S/71S2bGzIDBYPgW9gm3P/F5/IZZ+DvWDLPZeiVM5XRpVLDIgUl4m4bgEQONc2homA8knY9r+XvpBmVS5OcGCU7kvYQuzMazefhVvIg4i/hsryrNURwqByUX4UNkxRZf48r6Eae+AkEkPqdS7FCRAYmLur1CwDBfQHNEowhG4fjeApo3xruGUW5o5MMEtq2wUgaxv3oaNBIu/1e2DEaxUOz8hUGmD+ATGwFh1Jf4AIGkJI3iYMgonW8EsWdJHGGOkQpjpGFEZE3Ol34dpbJyWWUHsnLZv+bKykV/v8ulVsrW6kfuCh3SwdPWK/TsrOvZ2lOkQl280ly76E9aLma2rT37nTtqcs1tBAlbxfmlsx91D1IUnLQ2ttBKcBsR5aa7Q953RdKXG73V0iR6e3ZPAdPgt8j6pLMnjWgc+/noIshK0KS0vbwK6wQMBoOh5QeDFWxnbSwzNQAAAABJRU5ErkJggg==\"","const CAPTURE_DATE = 'CAPTURE_DATE'\nconst listenCaptureScreen = (sendCtmEvtLog) => {\n if (wx.onUserCaptureScreen && typeof wx.onUserCaptureScreen === 'function') {\n wx.onUserCaptureScreen(function () {\n const pages = getCurrentPages()\n let page = ''\n if (pages && pages.length && pages[pages.length - 1]) {\n page = pages[pages.length - 1].route\n }\n\n const showMsg = () => {\n const msg = [\n '把截图分享给您的好友,邀请TA一起看房选房~',\n '截图可以分享给好友哦,祝你摇号必中~',\n '爱分享的人运气不会差,祝你摇号必中~'\n ][Math.floor(Math.random() * 3)]\n\n wx.showToast({\n title: msg,\n icon: 'none',\n duration: 2000\n })\n wx.setStorage({\n key: CAPTURE_DATE,\n data: new Date().getTime()\n })\n }\n\n wx.getStorage({\n key: CAPTURE_DATE,\n success: ({ data }) => {\n console.error('data', data)\n const current_time = new Date().getTime()\n const is_expired = !data || current_time - new Date(data).getTime() >= 24 * 60 * 60 * 1000\n if (is_expired) {\n showMsg()\n }\n },\n fail: showMsg\n })\n\n sendCtmEvtLog &&\n sendCtmEvtLog('用户截屏', {\n page\n })\n })\n }\n}\n\nmodule.exports = {\n listenCaptureScreen\n}\n","import Base64 from 'crypto-js/enc-base64'\nimport Utf8 from 'crypto-js/enc-utf8'\nimport AES from 'crypto-js/aes'\nimport Pkcs7 from 'crypto-js/pad-pkcs7'\nimport CryptoJSCore from 'crypto-js/core'\nimport Cookie from '@/utils/cookie'\n\nimport wx from './wx'\n\nexport const FALLBACK_KEY = {\n fuzz_key: null,\n OPEN_CODE: 506,\n CLOSE_CODE: 507,\n getKey () {\n try {\n const fuzz_key = Cookie.getItem('fuzz_key')\n if (fuzz_key) {\n FALLBACK_KEY.fuzz_key = JSON.parse(fuzz_key)\n return FALLBACK_KEY.fuzz_key\n\n }\n } catch (err) {\n console.error(err)\n }\n return null\n },\n resetKey () {\n Cookie.setItem('fuzz_key', '')\n FALLBACK_KEY.fuzz_key = null\n },\n setKey (key) {\n if (key) {\n const [ encryptKey, iv ] = key.split(';')\n FALLBACK_KEY.fuzz_key = {\n encryptKey,\n iv,\n version: 0\n }\n Cookie.setItem('fuzz_key', JSON.stringify(FALLBACK_KEY.fuzz_key))\n console.log('FALLBACK_KEY', FALLBACK_KEY.fuzz_key)\n }\n }\n}\n\nconst content_type = 'application/rptkfuzz';\n\nconst extraKey = \"a41fe1d992154ddb\"\n\nconst { errorLog } = require('@/utils/log')\n\nconst getLatestUserKey = () => {\n const fallback_key = FALLBACK_KEY.getKey()\n return Promise.resolve(fallback_key)\n}\n\nconst encode = (orig_content_type, data, encryptKey, iv) => {\n let data_s;\n let buf = new Uint8Array();\n if (typeof data === 'object' && data instanceof ArrayBuffer) {\n data_s = String.fromCharCode(new Uint8Array(buf));\n } else if (typeof data === 'object') {\n data_s = JSON.stringify(data);\n } else if (typeof data === 'string') {\n data_s = data\n } else {\n data_s = ''\n }\n return encrypt(orig_content_type, encryptKey, iv) + '\\n' + encrypt(data_s, encryptKey, iv)\n};\n\n\nconst encrypt = (plainText, key, iv) => {\n key = Base64.parse(key)\n key = key.concat(Utf8.parse(extraKey))\n iv = Utf8.parse(iv)\n const textHex = Utf8.parse(plainText)\n const cipherText = AES.encrypt(\n textHex, key, {\n \"iv\": iv,\n \"mode\": CryptoJSCore.mode.CBC,\n \"padding\": Pkcs7\n });\n return cipherText.toString()\n}\n\nconst decrypt = (cipherText, key, iv) => {\n try {\n key = Base64.parse(key);\n key = key.concat(Utf8.parse(extraKey))\n iv = Utf8.parse(iv)\n const plainText = AES.decrypt(\n cipherText, key, {\n \"iv\": iv,\n \"mode\": CryptoJSCore.mode.CBC,\n \"padding\": Pkcs7\n })\n return Utf8.stringify(plainText)\n } catch (err) {\n console.error(err)\n }\n}\n\nconst decode = (resp, encryptKey, iv) => {\n let buf = new Uint8Array();\n let raws = resp['data'].split('\\n');\n let content_type = decrypt(raws[0], encryptKey, iv);\n buf = decrypt(raws[1], encryptKey, iv)\n if (content_type.includes('application/json')) {\n resp['data'] = JSON.parse(buf);\n } else {\n resp['data'] = buf;\n }\n if (resp['header']) {\n resp['header']['Content-Type'] = content_type\n }\n return resp\n};\n\nexport const request = async (obj) => {\n\n if (typeof obj !== 'object') {\n return wx.request(obj)\n }\n\n if (obj['fuzz'] !== true) {\n return wx.request(obj)\n }\n\n const { encryptKey = '', iv = '', version = 1 } = await getLatestUserKey() || {}\n\n // fuzz version\n if (typeof obj['header'] === 'object') {\n obj['header']['WX-KEY-VERSION'] = version\n } else {\n obj['header'] = {};\n obj['header']['WX-KEY-VERSION'] = version\n }\n\n // encode request\n if (obj['method'] === 'POST' || obj['method'] === 'PUT' || obj['method'] === 'DELETE') {\n let orig_content_type = obj['header']['content-type'] || 'application/json';\n obj['header']['content-type'] = content_type;\n obj['data'] = encode(orig_content_type, obj['data'], encryptKey, iv)\n }\n\n // decode response\n if (typeof obj['success'] === 'function') {\n const cb = obj['success'];\n obj['success'] = (resp) => {\n try {\n let resp_data = resp\n if (resp.statusCode === 401) {\n } else if (resp.statusCode === 200 || resp.statusCode === 422) {\n resp_data = decode(resp, encryptKey, iv)\n }\n cb(resp_data)\n } catch (err) {\n const err_msg = `wxafuzz response handler error: ${err}; other: ${JSON.stringify(obj)}`\n console.error('fuzz error', err_msg)\n }\n }\n }\n\n return wx.request(obj)\n}\n","export const padStart = (num) => {\n if (num >= 10) {\n return num\n }\n return `0${num}`\n}\nexport function formatNumber (n) {\n const str = n.toString()\n return str[1] ? str : `0${str}`\n}\n\nexport const handleSeconds = (time) => {\n const duration = parseInt(time)\n const seconds = padStart(duration % 60)\n const minutes = padStart(Math.floor(duration / 60))\n return minutes + ':' + seconds\n}\n\nexport function formatActivityDate (time_str) {\n const date_str = time_str.substring(0, 10)\n const join_char = date_str.indexOf('-') > -1 ? '-' : '/'\n return date_str.split(join_char).map((item) => {\n return Number(item)\n }).join('.') + time_str.substring(10, 16)\n}\n\nexport function formatTimeStr (time) {\n const second_time = 1000\n const min_time = 60 * second_time\n const hour_time = 60 * min_time\n const day_time = 24 * hour_time\n const day = parseInt(time / day_time)\n const day_str = day ? `${day}天` : ''\n let spare_time = time % day_time\n const hour = parseInt(spare_time / hour_time)\n const hour_str = hour ? `${padStart(hour)}时` : ''\n spare_time = spare_time % hour_time\n const min = parseInt(spare_time / min_time)\n const min_str = min ? `${padStart(min)}分` : ''\n spare_time = spare_time % min_time\n const second = parseInt(spare_time / second_time)\n const second_str = second ? `${padStart(second)}秒` : ''\n return `${day_str}${hour_str}${min_str}${second_str}`\n}\n\nexport function formatTime (date) {\n const year = date.getFullYear()\n const month = date.getMonth() + 1\n const day = date.getDate()\n\n const hour = date.getHours()\n const minute = date.getMinutes()\n const second = date.getSeconds()\n\n const t1 = [year, month, day].map(formatNumber).join('/')\n const t2 = [hour, minute, second].map(formatNumber).join(':')\n\n return `${t1} ${t2}`\n}\n\nexport function throttle (fn, delay, isTimeStamp) {\n let timeout = null\n let start = 0\n return function () {\n return new Promise((resolve) => {\n if (isTimeStamp) {\n const now = new Date().getTime()\n if (now - start > delay) {\n start = now\n resolve(fn.apply(this, arguments))\n }\n } else {\n if (!timeout) {\n setTimeout(() => {\n timeout = null\n resolve(fn.apply(this, arguments))\n }, delay)\n }\n }\n })\n }\n}\n\nexport const getWeekByDateStr = (str) => {\n const weeks = ['日', '一', '二', '三', '四', '五', '六']\n return `星期${weeks[new Date(str).getDay()]}`\n}\n\nexport function accSub (arg1, arg2) {\n let r1, r2, m, n\n try {\n r1 = arg1.toString().split('.')[1].length\n }\n catch (e) {\n r1 = 0\n }\n try {\n r2 = arg2.toString().split('.')[1].length\n }\n catch (e) {\n r2 = 0\n }\n m = Math.pow(10, Math.max(r1, r2))\n n = (r1 >= r2) ? r1 : r2\n return ((arg1 * m - arg2 * m) / m).toFixed(n)\n}\n\nexport const formatRate = (rate) => {\n const rates = rate.toFixed(4).split('.')\n let suffix = Number(rates[1]) === 0 ? 0 : (rates[1] / 10000).toString().split('.')[1]\n return rates[0] + '.' + suffix\n}\n\nexport const formatNumberInput = (e) => {\n const { value } = e.target\n const num = Number(value)\n if (isNaN(num)) {\n return 0\n }\n return num\n}\n\nexport const getLocalDate = (str) => {\n const [str1, str2] = str.split(' ')\n const [year, month, day] = str1.split('-')\n let rs = `${year}年${month}月${day}日`\n if (str2) {\n const [hour, minute, second] = str2.split(':')\n rs += `${hour}时${minute}分${second}秒`\n }\n return rs\n}\n\nexport function debounce (func, wait = 100, immediate = false) {\n let timeout\n return function(...args) {\n clearTimeout(timeout)\n timeout = setTimeout(() => {\n timeout = null\n if (!immediate) func.apply(this, args)\n }, wait)\n if (immediate && !timeout) func.apply(this, [...args])\n }\n }","module.exports = __webpack_public_path__ + \"img/64_call.9718b43d.png\";","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAaVBMVEUAAACzm3CzmnC1nG+0m3C0mnC9tI61nHG/qX20mm+1m3C0m3Czm3C0m3C0m2+0m2+1nHC1m3K2nXG2nnG6one0m3C0m3C0m2+1nHC1n3G4nnG5n3W0mm+0m2+0m3C3nXG7oHK0m2+zmm+qaDHnAAAAInRSTlMAgM51mokGcAvEYPPt26uOUEk+OR/gsKJXLScY9uSTMhK3+smlOwAAAT9JREFUSMft1cuSgjAUBNDmGZ6CiILKAOb/P3I2UwGVdC6zmqrxLCm6qDRJLj7+gnvWpWWel2mX3XdGj6leSY+Qa3z9wm+kWU9v8ETR+KE3PWJB+KAtDu7sqK1GV/akiRM4n4V9nq314hxck+QanPWilrYVxT/tR8LOksG8F8AIzMMhEdV1wcpFVFlv3rph5WYe9ySsTK+Wf6BI2KwuxJNwacIuM1XjiSk8Y8fY9WV2sGfXmmcQJW+7BFPx/xzxQ8V32ASqZHvbB6fYqcrAJYW2+orhkNnDPQ3yuySFW2MLT/j93RvKRlyx2dYsnHJb4QZCFR9VXOy/NR1DrC1eFrxrvjfDOptP2KXXdFDIJ7zCbiO5Adw6srMkaZ7lQpJ1qyL8C1WuN+WVO1u/x+S7VNnDSnIaLYoW7rTyNqkWH8A3IEBz546IXogAAAAASUVORK5CYII=\"","module.exports = __webpack_public_path__ + \"img/nconv.a2a09543.png\";","module.exports = __webpack_public_path__ + \"img/dora.3d97e3c8.png\";","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./index.vue?vue&type=style&index=0&id=19a3d28e&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-empty-box.vue?vue&type=style&index=0&id=317e6c6f&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD0AAAA8CAYAAADVPrJMAAAACXBIWXMAABCcAAAQnAEmzTo0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAFhSURBVHgB7dkxbsJAEIXhwQU1R+AISeHCXXITboJzg9wo6SzZsnwFjpDasuXsjIRkRQQpkmfnJXlfBS4Yfi2sDCtCRERERES/2jAMh67rngTQThz0fX9elqW2AbvdZRzH56qqLgKiEAcp+LR6fNzv929N0xwFhEt0clg/QQv3WumXG9dgwl2iy7J8RQ532ciu0u5dp43s/PV69ObmGq0Qw92jFVp4lmiFFJ4tWqGEZ41WCOHZo1V0eEi0igwPi1ZR4aHRKiI8PFrdCy+K4jH5kA15/cr6kXSvXn93rz5N00k2BhGt0oout66n8E1X2WYJgPU/LWv68Z7n+V02Fv6dvhf8JzeyiGB7fQkSFWwzJEBksM2RzKKDbZZkhBBs8yQTlGCbKRkgBdtccYYWbLPFEWKwzRcnqMH2HsQBcrByP7W8QjqyzXJqiXZG7X5qiXgo70ZPJtu2fRAiIiIiIvq3PgGf3F5AymNx8AAAAABJRU5ErkJggg==\"","export default {\n getItem (sKey) {\n return decodeURIComponent(document.cookie.replace(new RegExp(`(?:(?:^|.*;)\\\\s*${encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&')}\\\\s*\\\\=\\\\s*([^;]*).*$)|^.*$`), '$1'))\n },\n setItem (sKey, sValue, opts = {}) {\n let sExpires = ''\n if (!sKey || /^(?:expires|max\\-age|path|domain|secure)$/i.test(sKey)) {\n return false\n }\n if (opts.vEnd) {\n switch (opts.vEnd.constructor) {\n case Number:\n sExpires = opts.vEnd === Infinity ? '; expires=Fri, 31 Dec 9999 23:59:59 GMT' : `; max-age=${opts.vEnd}`\n break\n case String:\n sExpires = `; expires=${opts.vEnd}`\n break\n case Date:\n sExpires = `; expires=${opts.vEnd.toGMTString()}`\n break\n }\n }\n document.cookie = `${encodeURIComponent(sKey)}=${encodeURIComponent(sValue)}${sExpires}${opts.sDomain ? `; domain=${opts.sDomain}` : ''}${opts.sPath ? `; path=${opts.sPath}` : ''}${opts.bSecure ? '; secure' : ''}`\n return true\n },\n removeItem (sKey, sPath, sDomain) {\n if (!this.hasItem(sKey)) { return false }\n document.cookie = `${encodeURIComponent(sKey)}=; expires=Thu, 01 Jan 1970 00:00:00 GMT${sDomain ? `; domain=${sDomain}` : ''}${sPath ? `; path=${sPath}` : ''}`\n return true\n },\n hasItem (sKey) {\n if (!sKey) {\n return false\n }\n return (new RegExp(`(?:^|;\\\\s*)${encodeURIComponent(sKey).replace(/[\\-\\.\\+\\*]/g, '\\\\$&')}\\\\s*\\\\=`)).test(document.cookie)\n },\n clearItems () {\n let cookies = document.cookie.split(';')\n for (let i = 0; i < cookies.length; i++) {\n let cookie = cookies[i]\n let eqPos = cookie.indexOf('=')\n let name = eqPos > -1 ? cookie.substr(0, eqPos) : cookie\n document.cookie = `${name}=;expires=Thu, 01 Jan 1970 00:00:00 GMT`\n }\n }\n}\n","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-head-img.vue?vue&type=style&index=0&id=27a4fc52&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAIVBMVEUAAAA0NDQzMzMzMzMzMzMzMzM0NDQ1NTU1NTUzMzMzMzNRimgeAAAACnRSTlMAgNsjc+/FZjUZXHa93QAAAGlJREFUOMtjGIKgbRUcZCCLc0YhJJZOQJJgX4UECpAkGFcJIDPpL2EEcpEyFgkvkMQSnDro41xoEGNaDg1iTOcighjTuSAC3Q7aSmBajhm6IGKQOJckCWatVehgkQFIgmUVJnDArWOIAQAXaZgDphHmFAAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAS1BMVEUAAAAzMzM1NTUzMzMzMzM0NDQzMzM1NTUzMzMzMzM0NDQzMzM/Pz9AQEA0NDQ0NDQ4ODg0NDQzMzM1NTU0NDQzMzMzMzM0NDQzMzOXC47CAAAAGHRSTlMAvSb69JNaMq6qdSMMBHbZEuPgSzvkwoByURH9AAAAx0lEQVQ4y61TURaDIAwTRBBBUOe23v+ko3vTojD7seVHfU2bUGLzT8ggolJRBFktGwE7hCnKYwcHdOOxPmF7a7X0Xmrb4pDp0I/13m2frkdGPgPnD3nHgCqZP6rnDHIq0vyz66Qi9vMnf+5McMnpto8AYJsCFiCQgi4JmjQiDiOQcPy8KgBfEjyAYgmcxMKaZI/JLcpwq+Yua+WumwkMpu4qcpS6emjfnMV8i/1jNQs+1a3y48ziKTdRmJsSJHpJQOj5jhI/4wWMwxRtrI4txwAAAABJRU5ErkJggg==\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAMAAABEpIrGAAAAQlBMVEUAAACZpbOZprOap7WZprOZpbSZprSYprSZpbSZp7SaprSZqbSZqrWep7mfr7+2traYprOZprWaprOZprSZqLaYpbN8w9ZxAAAAFXRSTlMAgPlN18Tw5KqFVUEtHRAH85B5cyNNX/JvAAAAjklEQVQ4y+2QyQ6AIAxElcV91/n/X1UZjRIQPZh48d3ovJS20TNyAQeRn4QOHrr7Dh9RFMG4zYCsvc4bjQXdXOW1gkHV/rxKsZFWvrxMAKEBLYCk9Ixv6jEQG9NZZmTnVeBfo533nI0Cp+3PueR2FPZ9pS3wPhR4MWm14IvCUXGhQH4hwAAMQWFSaopeZgb+2w5RQ34IbAAAAABJRU5ErkJggg==\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./_consultants.vue?vue&type=style&index=0&id=8776b1b8&lang=scss&scoped=true&\"","export * from \"-!../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--8-oneOf-1-0!../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./bottom_tip.vue?vue&type=style&index=0&id=2e13ca1f&lang=scss&scoped=true&\"","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwBAMAAAClLOS0AAAAFVBMVEUAAACAv797ipl8ip97ipp6ipl6iZkUxegAAAAABnRSTlMABKoln5SGzR2zAAAASElEQVQ4y2MYMYDZAIdEWIoAdg1paYq4JJKwa3HDpUUIlxZGtaGoJYUBlxYDkiQQRhG2HOHcoaEBkRgIJx9EgiOURDET9cgCAKG4IK2fWjJeAAAAAElFTkSuQmCC\"","function getMixin (selector) {\n return {\n data () {\n return {\n webp: false,\n can_load_img: true,\n }\n }\n }\n}\n\nexport default getMixin\n\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"wrap\",class:[{ 'scroll-wrap': _vm.scroll }],style:([{ width: _vm.width }])},[(_vm.scroll)?_c('div',{staticClass:\"tabs\",attrs:{\"scroll-x\":\"\",\"scroll-with-animation\":\"\",\"scroll-into-view\":_vm.scroll_into_view}},_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:[{ active: _vm.selected === tab.key, bottom_active: _vm.selected === tab.key && _vm.tabs.length > 1 }],attrs:{\"data-key\":tab.key,\"id\":(\"tab-\" + i)},on:{\"click\":_vm.onChange}},[_vm._v(\" \"+_vm._s(tab.name)+\" \"),(tab.new)?_c('i',{staticClass:\"new\"}):_vm._e()])}),0):_c('ul',{staticClass:\"tabs\"},_vm._l((_vm.tabs),function(tab,i){return _c('li',{key:i,class:[{ active: _vm.selected === tab.key, bottom_active: _vm.selected === tab.key && _vm.tabs.length > 1 }],attrs:{\"data-key\":tab.key},on:{\"click\":_vm.onChange}},[_vm._v(\" \"+_vm._s(tab.name)+\" \"),(tab.new)?_c('i',{staticClass:\"new\"}):_vm._e()])}),0)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\nexport default {\n methods: {\n onChange (e) {\n this.$emit('change', e.currentTarget.dataset.key)\n }\n },\n computed: {\n scroll_into_view () {\n let view_id\n const len = this.tabs.length\n for (let i = 0; i < len; i++) {\n const tab = this.tabs[i]\n if (tab.key === this.selected) {\n if (i > 0 && i < len - 1) {\n view_id = `tab-${i - 1}`\n } else {\n view_id = `tab-${i}`\n }\n break\n }\n }\n console.error(view_id)\n return view_id\n }\n },\n props: {\n scroll: {\n type: Boolean,\n default: false\n },\n width: {\n type: String\n },\n tabs: {\n type: Array,\n validator (value) {\n if (value.length) {\n return value.every(({ key, name }) => {\n return key != undefined && name != undefined\n })\n }\n return true\n }\n },\n selected: {\n type: [ String, Number ]\n }\n }\n}\n","import mod from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-tabs.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../node_modules/thread-loader/dist/cjs.js!../../../node_modules/babel-loader/lib/index.js!../../../loader/img_version_loader/index.js!../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./fangchan-common-tabs.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./fangchan-common-tabs.vue?vue&type=template&id=e288ed90&scoped=true&\"\nimport script from \"./fangchan-common-tabs.vue?vue&type=script&lang=js&\"\nexport * from \"./fangchan-common-tabs.vue?vue&type=script&lang=js&\"\nimport style0 from \"./fangchan-common-tabs.vue?vue&type=style&index=0&id=e288ed90&lang=scss&scoped=true&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"e288ed90\",\n null\n \n)\n\nexport default component.exports"],"sourceRoot":""}