export default {
	data() {
		return {
			minScrollTop: 100, // 设置回到顶端按钮显示要求，最小页面滚动距离
			wechatQrcode: '', // 公众号二维码
			diyRoute: '/pages/index/index'
		};
	},
	onLoad(option) {
		// #ifdef H5
		// H5地图选择位置回调数据
		if (option.module && option.module == 'locationPicker') {
			option.name = ''; // 清空地址
		}
		// #endif
		this.name = option.name || 'DIY_VIEW_INDEX'; // 根据店铺运营模式，打开平台（shop）或者连锁门店（stroe）页面，接口会自行判断

	},
	onShow() {
		// 获取关注公众号二维码
		this.getFollowQrcode();
	},
	mounted() {
		// 监听图片、文字、商品列表等组件的点击事件
		this.unsubscribe = this.$eventBus?.onMany([
			'rubik-cube-tap',
			'picture-tap', 
			'text-tap',
			'goods-list-tap',
			'presale-tap',
			'notes-tap',
			'merch-list-tap',
			'map-tap',
			'img-ads-tap',
			'many-goods-list-tap',
			'search-tap',
		], this._handleDiyGroupInteractionEvent);
	},
	beforeDestroy() {
		// 移除图片点击事件监听
		if (this.unsubscribe) this.unsubscribe();
	},
	methods: {
		// 关注公众号
		getFollowQrcode() {
			if (!this.$util.isWeiXin()) return;
			this.$api.sendRequest({
				url: '/wechat/api/wechat/followqrcode',
				success: res => {
					if (res.code >= 0 && res.data) {
						this.wechatQrcode = res.data.qrcode;
					}
				}
			});
		},
		officialAccountsOpen() {
			this.$refs.officialAccountsPopup.open();
		},
		officialAccountsClose() {
			this.$refs.officialAccountsPopup.close();
		},
		// 统一处理点击及触摸事件
		_handleDiyGroupInteractionEvent(payload) {
			// #ifdef H5
			// 如果是 H5 环境，直接返回 true 继续传播
			return true;
			// #endif

			// 如果已登录，直接返回 true 继续传播
			if (this.storeToken) {
				return true;
			}

			// 打开登录弹窗
			// console.log('==> _handleDiyGroupInteractionEvent, 未登录，打开登录弹窗', { payload })
			this.$refs.login?.open();

			// 阻止事件继续传播
			return false;
		}
	}
}