diff --git a/template/xcx/README.en.md b/template/xcx/README.en.md new file mode 100644 index 000000000..9f9d94e3d --- /dev/null +++ b/template/xcx/README.en.md @@ -0,0 +1,36 @@ +# cremb_xcx_v3.0 + +#### Description +{**When you're done, you can delete the content in this README and update the file with details for others getting started with your repository**} + +#### Software Architecture +Software architecture description + +#### Installation + +1. xxxx +2. xxxx +3. xxxx + +#### Instructions + +1. xxxx +2. xxxx +3. xxxx + +#### Contribution + +1. Fork the repository +2. Create Feat_xxx branch +3. Commit your code +4. Create Pull Request + + +#### Gitee Feature + +1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md +2. Gitee blog [blog.gitee.com](https://blog.gitee.com) +3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore) +4. The most valuable open source project [GVP](https://gitee.com/gvp) +5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help) +6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/) \ No newline at end of file diff --git a/template/xcx/README.md b/template/xcx/README.md new file mode 100644 index 000000000..c29c57146 --- /dev/null +++ b/template/xcx/README.md @@ -0,0 +1,122 @@ +# CRMEB XCX v3.x + +#### 介绍 + CRMEB 3.x 小程序 + +#### 使用说明 + +1. 配置config.js 中的 HTTP_REQUEST_URL 修改为自己的域名 +2. 配置微信开发工具中小程序的appid +3. 前往CRMEB后台配置小程序 appid 和 AppSecret +3. 前往微信小程序后台配置业务,下载 合法域名 +5. 删除readme/images文件夹再进行打包上传,不然会提示超包。 + +### 小程序直播使用 +方法1,修改app.copy.json文件名称为app.json覆盖原有app.json文件 +方法2,修改根目录下的./app.json文件再第:73行加上 +``` +"plugins": { + "live-player-plugin": { + "version": "1.2.4", + "provider": "wx2b03c6e691cd7370" + } +} +``` + +### 目录结构 + +~~~ +└─view 小程序存放根目录 + ├─api 接口统一存放目录 + │ ├─activity.js 营销接口 + │ ├─api.js 公共接口 + │ ├─order.js 订单接口 + │ ├─store.js 产品接口 + │ └─user.js 用户接口 + ├─components 组件目录 + │ ├─address-window 订单页选择地址组件 + │ ├─authorize 授权组件 + │ ├─coupon-list-window 优惠券列表组件 + │ ├─coupon-window 优惠券弹出框组件 + │ ├─goodList 商品展示组件 + │ ├─home 悬浮导航组件 + │ ├─navbar 头部导航组件 + │ ├─orderGoods 订单产品展示组件 + │ ├─payment 支付弹出框组件 + │ ├─productConSwiper Swiper产品轮播图组件 + │ ├─product-window 为您推荐组件 + │ ├─promotionGood 促销产品组件 + │ ├─recommend 热门推荐组件 + │ ├─share-red-packets 产品页分享组件 + │ ├─swipers swipers轮播组件 + │ └─userEvaluation 产品页评论组件 + ├─css 全局css + ├─font icon字体库 + ├─images 图片目录 + ├─pages 小程序页面目录 + │ ├─activity + │ │ ├─goods_bargain 砍价列表 + │ │ ├─goods_bargain_details 砍价详情 + │ │ ├─goods_combination 拼团列表 + │ │ ├─goods_combination_details 拼团详情 + │ │ ├─goods_combination_status 拼团状态 + │ │ ├─goods_seckill 秒杀列表 + │ │ ├─goods_seckill_details 秒杀详情 + │ │ ├─poster-poster 海报页面 + │ │ └─user_goods_bargain_list 砍价记录 + │ ├─cash-audit 提现审核 + │ ├─first-new-product 精品推荐,热门榜单,首发新品,促销单品 + │ ├─goods_cate 产品分类 + │ ├─goods_comment_con 产品评价 + │ ├─goods_comment_list 产品评价列表 + │ ├─goods_details 产品详情 + │ ├─goods_list 产品列表 + │ ├─goods_logistics 产品物流信息 + │ ├─goods_return 申请退款 + │ ├─goods_search 搜索 + │ ├─index 主页 + │ ├─news_details 新闻详情 + │ ├─news_list 新闻列表 + │ ├─order_addcart 购物车 + │ ├─order_confirm 订单确认 + │ ├─order_details 订单详情 + │ ├─order_list 订单列表 + │ ├─order_pay_status 订单支付状态 + │ ├─promoter-list 推广人列表 + │ ├─promoter-order 推广人订单 + │ ├─promotional-items 促销单品 + │ ├─user 我的页面 + │ ├─user_address 添加地址 + │ ├─user_address_list 地址列表 + │ ├─user_bill 账单明细 + │ ├─user_cash 提现 + │ ├─user_coupon 我的优惠卷 + │ ├─user_get_coupon 领取优惠卷 + │ ├─user_goods_collection 收藏产品 + │ ├─user_info 个人资料 + │ ├─user_integral 积分明细 + │ ├─user_money 我的账户 + │ ├─user_payment 充值 + │ ├─user_phone 手机号绑定 + │ ├─user_pwd_edit 修改密码 + │ ├─user_return_list 退款列表 + │ ├─user_sgin 签到 + │ ├─user_sgin_list 签到记录 + │ ├─user_spread_code 分销海报 + │ ├─user_spread_money 佣金明细 + │ ├─user_spread_user 我的推广 + │ └─user_vip 会员页面 + ├─utils 工具类目录 + │ ├─autuLogin.js 自动授权登陆 + │ ├─request.js 请求基类 + │ ├─Server.js Socket类 + │ ├─util.js 工具函数 + │ └─wxh.js 帮助类函数 + ├─wxParse WX分析类 + ├─app.js 入口文件 + ├─app.json 配置文件 + ├─app.wxss 样式 + ├─config.js 程序配置 + └─project.config.json 项目配置 + +~~~ diff --git a/template/xcx/api/activity.js b/template/xcx/api/activity.js new file mode 100644 index 000000000..eccb8fd1c --- /dev/null +++ b/template/xcx/api/activity.js @@ -0,0 +1,161 @@ +import request from "./../utils/request.js"; +/** + * + * 所有活动接口 包括:拼团,砍价,秒杀 + * +*/ + +/** + * 拼团列表 + * +*/ +export function getCombinationList(data) { + return request.get('combination/list', data,{noAuth:true}); +} + +/** + * 拼团详情 + * +*/ +export function getCombinationDetail(id) { + return request.get('combination/detail/'+id); +} + +/** + * 拼团 开团 + */ +export function getCombinationPink(id) { + return request.get("combination/pink/" + id); +} + +/** + * 拼团 取消开团 + */ +export function postCombinationRemove(data) { + return request.post("combination/remove",data); +} + +/** + * 砍价列表 + */ +export function getBargainList(data) { + return request.get("bargain/list", data,{noAuth:true}); +} + +/** + * + * 砍价列表(已参与) + * @param object data +*/ +export function getBargainUserList(data){ + return request.get('bargain/user/list',data); +} + + +/** + * + * 取消砍价 + * @param int bargainId +*/ +export function bargainUserCancel(bargainId){ + return request.post('bargain/user/cancel', { bargainId: bargainId}) +} + +/** + * 砍价产品详情 + */ +export function getBargainDetail(id) { + return request.get("bargain/detail/" + id); +} + +/** + * 砍价 开启砍价用户信息 + */ +export function postBargainStartUser(data) { + return request.post("bargain/start/user", data); +} + +/** + * 砍价开启 + */ +export function postBargainStart(bargainId) { + return request.post("bargain/start", { bargainId: bargainId}); +} + +/** + * 砍价 帮助好友砍价 + */ +export function postBargainHelp(data) { + return request.post("bargain/help", data); +} + +/** + * 砍价 砍掉金额 + */ +export function postBargainHelpPrice(data) { + return request.post("bargain/help/price", data); +} + +/** + * 砍价 砍价帮 + */ +export function postBargainHelpList(data) { + return request.post("bargain/help/list", data); +} + +/** + * 砍价 砍价帮总人数、剩余金额、进度条、已经砍掉的价格 + */ +export function postBargainHelpCount(data) { + return request.post("bargain/help/count", data); +} + +/** + * 砍价 观看/分享/参与次数 + */ +export function postBargainShare(bargainId) { + return request.post("bargain/share", { bargainId: bargainId}); +} + +/** + * 秒杀产品时间区间 + * +*/ +export function getSeckillIndexTime(){ + return request.get('seckill/index',{},{noAuth:true}); +} + +/** + * 秒杀产品列表 + * @param int time + * @param object data +*/ +export function getSeckillList(time,data){ + return request.get('seckill/list/'+time,data,{noAuth:true}); +} + +/** + * 秒杀产品详情 + * @param int id +*/ +export function getSeckillDetail(id){ + return request.get('seckill/detail/'+id); +} + +/** + * 砍价海报 + * @param object data + * +*/ +export function getBargainPoster(data){ + return request.post('bargain/poster',data) +} + +/** + * 拼团海报 + * @param object data + * +*/ +export function getCombinationPoster(data){ + return request.post('combination/poster',data) +} \ No newline at end of file diff --git a/template/xcx/api/api.js b/template/xcx/api/api.js new file mode 100644 index 000000000..e95d1df8f --- /dev/null +++ b/template/xcx/api/api.js @@ -0,0 +1,192 @@ +import request from "./../utils/request.js"; +/** + * 公共接口 ,优惠券接口 , 行业此讯 , 手机号码注册 + * +*/ + +/** + * 获取主页数据 无需授权 + * +*/ +export function getIndexData() +{ + return request.get("index",{},{ noAuth : true}); +} + +/** + * 获取登录授权login + * +*/ +export function getLogo() +{ + return request.get('wechat/get_logo', {}, { noAuth : true}); +} + +/** + * 保存form_id + * @param string formId + */ +export function setFormId(formId) { + return request.post("wechat/set_form_id", { formId: formId}); +} + +/** + * 领取优惠卷 + * @param int couponId + * +*/ +export function setCouponReceive(couponId){ + return request.post('coupon/receive', { couponId: couponId}); +} +/** + * 优惠券列表 + * @param object data +*/ +export function getCoupons(data){ + return request.get('coupons',data,{noAuth:true}) +} + +/** + * 我的优惠券 + * @param int types 0全部 1未使用 2已使用 +*/ +export function getUserCoupons(types){ + return request.get('coupons/user/'+types) +} + +/** + * 文章分类列表 + * +*/ +export function getArticleCategoryList(){ + return request.get('article/category/list',{},{noAuth:true}) +} + +/** + * 文章列表 + * @param int cid + * +*/ +export function getArticleList(cid,data){ + return request.get('article/list/' + cid, data,{noAuth:true}) +} + +/** + * 文章 热门列表 + * +*/ +export function getArticleHotList(){ + return request.get('article/hot/list',{},{noAuth:true}); +} + +/** + * 文章 轮播列表 + * +*/ +export function getArticleBannerList(){ + return request.get('article/banner/list',{},{noAuth:true}) +} + +/** + * 文章详情 + * @param int id + * +*/ +export function getArticleDetails(id){ + return request.get('article/details/'+id,{},{noAuth:true}); +} + +/** + * 手机号+验证码登录接口 + * @param object data +*/ +export function loginMobile(data){ + return request.post('login/mobile',data,{noAuth:true}) +} + +/** + * 验证码发送 + * @param object phone +*/ +export function registerVerify(code, key, phone, reset){ + return request.post('register/verify', { code: code, key: key, phone: phone, type: reset === undefined ? 'reset' : reset },{noAuth:true}) +} + +/** + * 手机号注册 + * @param object data + * +*/ +export function phoneRegister(data){ + return request.post('register',data,{noAuth:true}); +} + +/** + * 手机号修改密码 + * @param object data + * +*/ +export function phoneRegisterReset(data){ + return request.post('register/reset',data,{noAuth:true}) +} + +/** + * 手机号+密码登录 + * @param object data + * +*/ +export function phoneLogin(data){ + return request.post('login',data,{noAuth:true}) +} + +/** + * 切换H5登录 + * @param object data +*/ +export function switchH5Login(){ + return request.post('switch_h5', { 'from':'routine'}); +} + +/** + * 绑定手机号 + * +*/ +export function bindingPhone(data){ + return request.post('binding',data); +} + +/** + * 退出登錄 + * +*/ +export function logout(){ + return request.get('logout'); +} + +/** + * 获取订阅消息id + */ +export function getTemlIds() +{ + return request.get('wechat/teml_ids', {}, { noAuth:true}); +} + +/** + * 获取小程序直播列表 + */ +export function getLiveList(page,limit) { + return request.get('wechat/live', { page, limit}, { noAuth: true }); +} + +/** + * 获取key值 + */ +export function verifyCode() { + return request.get('verify_code', {}, { noAuth: true }); +} +/** + * 获取城市信息 + */ +export function getCity() { + return request.get('city_list', { }, { noAuth: true }); +} \ No newline at end of file diff --git a/template/xcx/api/order.js b/template/xcx/api/order.js new file mode 100644 index 000000000..4b3df780f --- /dev/null +++ b/template/xcx/api/order.js @@ -0,0 +1,194 @@ +import request from "./../utils/request.js"; +/** + * + * 订单相关接口 + * +*/ + +/** + * 获取购物车列表 + * + */ +export function getCartList() { + return request.get("cart/list"); +} + +/** + * 获取购物车列表 + * @param numType boolean true 购物车数量,false=购物车产品数量 + */ +export function getCartCounts(numType) { + return request.get("cart/count", { numType: numType === undefined ? true : numType }); +} + + +/** + * 修改购物车数量 + * @param int cartId 购物车id + * @param int number 修改数量 + */ +export function changeCartNum(cartId, number) { + return request.post("cart/num", { id: cartId, number: number }); +} + +/** + * 清除购物车 + * @param object ids join(',') 切割成字符串 +*/ +export function cartDel(ids){ + if (typeof id === 'object') + ids = ids.join(','); + return request.post('cart/del', { ids: ids}); +} + +/** + * 订单列表 + * @param object data +*/ +export function getOrderList(data){ + return request.get('order/list',data); +} + +/** + * 订单确认获取订单详细信息 + * @param string cartId +*/ +export function orderConfirm(cartId){ + return request.post('order/confirm', { cartId: cartId}); +} + +/** + * 再次下单 + * @param string uni + * +*/ +export function orderAgain(uni){ + return request.post('order/again',{uni:uni}); +} + +/** + * 订单支付 + * @param object data +*/ +export function orderPay(data){ + return request.post('order/pay',data); +} + +/** + * 订单详情 + * @param string uni +*/ +export function getOrderDetail(uni){ + return request.get('order/detail/'+uni); +} + +/** + * 删除已完成订单 + * @param string uni + * +*/ +export function orderDel(uni){ + return request.post('order/del',{uni:uni}); +} + +/** + * 订单收货 + * @param string uni + * +*/ +export function orderTake(uni){ + return request.post('order/take',{uni:uni}); +} + +/** + * 订单查看物流 + * @param string uni +*/ +export function orderExpress(uni){ + return request.get('order/express/'+uni); +} + +/** + * 订单评价 + * @param object data + * +*/ +export function orderComment(data){ + return request.post('order/comment',data); +} + +/** + * 订单取消 + * @param string id + * +*/ +export function orderCancel(id){ + return request.post('order/cancel',{id:id}); +} + +/** + * 订单产品信息 + * @param string unique +*/ +export function orderProduct(unique){ + return request.post('order/product', { unique: unique}); +} + +/** + * 订单退款审核 + * @param object data +*/ +export function orderRefundVerify(data){ + return request.post('order/refund/verify',data); +} + +/** + * 获取退款理由 + * +*/ +export function ordeRefundReason(){ + return request.get('order/refund/reason'); +} + +/** + * 订单统计数据 +*/ +export function orderData(){ + return request.get('order/data') +} + +/** + * 获取当前金额能使用的优惠卷 + * @param string price + * +*/ +export function getCouponsOrderPrice(price, data){ + return request.get('coupons/order/' + price, data) +} + +/** + * 订单创建 + * @param string key + * @param object data + * +*/ +export function orderCreate(key,data){ + return request.post('order/create/'+key,data); +} +/** + * 订单查询物流信息 + * @returns {*} + */ +export function express(uni) { + return request.get("order/express/" + uni); +} + +/** + * 计算订单金额 + * @param key + * @param data + * @returns {*} + */ +export function postOrderComputed(key, data) { + return request.post("/order/computed/" + key, data); +} \ No newline at end of file diff --git a/template/xcx/api/store.js b/template/xcx/api/store.js new file mode 100644 index 000000000..e30c87079 --- /dev/null +++ b/template/xcx/api/store.js @@ -0,0 +1,136 @@ +import request from "./../utils/request.js"; +/** + * + * 产品相关接口 + * +*/ + +/** + * 获取推荐产品 + * + */ +export function getProductHot(page,limit) { + return request.get("product/hot", { + page: page === undefined ? 1 : page, + limit:limit === undefined ? 4 :limit + },{noAuth:true}); +} + +/** + * 购车添加 + * +*/ +export function postCartAdd(data) { + return request.post('cart/add', data); +} + +/** + * 获取收藏列表 + * @param object data +*/ +export function getCollectUserList(data) { + return request.get('collect/user', data) +} + +/** + * 批量收藏 + * + * @param object id 产品编号 join(',') 切割成字符串 + * @param string category +*/ +export function collectAll(id, category) { + return request.post('collect/all', { id: id, category: category === undefined ? 'product' : category }); +} + +/** + * 删除收藏产品 + * @param int id + * @param string category product=普通产品,product_seckill=秒杀产品 +*/ +export function collectDel(id, category) { + return request.post('collect/del', { id: id, category: category === undefined ? 'product' : category }); +} + +/** + * 添加收藏 + * @param int id + * @param string category product=普通产品,product_seckill=秒杀产品 +*/ +export function collectAdd(id, category){ + return request.post('collect/add', { id: id, 'product': category === undefined ? 'product' : category }); +} + +/** + * 获取产品详情 + * @param int id + * +*/ +export function getProductDetail(id){ + return request.get('product/detail/' + id, {}, { noAuth : true }); +} + +/** + * 产品分享二维码 推广员 + * @param int id +*/ +export function getProductCode(id){ + return request.get('product/code/' + id, { user_type:'routine'}); +} + +/** + * 获取产品评论 + * @param int id + * @param object data + * +*/ +export function getReplyList(id,data){ + return request.get('reply/list/'+id,data) +} + +/** + * 产品评价数量和好评度 + * @param int id +*/ +export function getReplyConfig(id){ + return request.get('reply/config/'+id); +} + +/** + * 获取分类列表 + * +*/ +export function getCategoryList(){ + return request.get('category', {}, { noAuth:true}) +} + +/** + * 获取产品列表 + * @param object data +*/ +export function getProductslist(data){ + return request.get('products',data,{noAuth:true}); +} + +/** + * 首页产品的轮播图和产品信息 + * @param int type + * +*/ +export function getGroomList(type,data){ + return request.get('groom/list/'+type,data,{noAuth:true}); +} + +/** + * 获取搜索关键字获取 + * +*/ +export function getSearchKeyword(){ + return request.get('search/keyword',{},{noAuth:true}); +} +/** + * 门店列表 + * @returns {*} + */ +export function storeListApi(data) { + return request.get("store_list", data); +} \ No newline at end of file diff --git a/template/xcx/api/user.js b/template/xcx/api/user.js new file mode 100644 index 000000000..5ce009092 --- /dev/null +++ b/template/xcx/api/user.js @@ -0,0 +1,278 @@ +import request from "./../utils/request.js"; +/** + * + * 用户相关接口 + * +*/ + +/** + * 小程序用户登录 + * @param data object 小程序用户登陆信息 + */ +export function login(data) { + return request.post("wechat/mp_auth", data, { noAuth : true }); +} + + +/** + * 获取用户中心菜单 + * + */ +export function getMenuList() { + return request.get("menu/user"); +} + +/** + * 获取用户信息 + * +*/ +export function getUserInfo(){ + return request.get('user'); +} + +/** + * 修改用户信息 + * @param object +*/ +export function userEdit(data){ + return request.post('user/edit',data); +} + + +/** + * 会员等级列表 + * +*/ +export function userLevelGrade(){ + return request.get('user/level/grade'); +} + +/** + * 获取某个等级任务 + * @param int id 任务id +*/ +export function userLevelTask(id){ + return request.get('user/level/task/'+id); +} + +/** + * 检查用户是否可以成为会员 + * +*/ +export function userLevelDetection(){ + return request.get('user/level/detection'); +} + +/** + * 获取分销海报图片 + * +*/ +export function spreadBanner(){ + return request.get('spread/banner',{type:1}); +} + +/** + * + * 获取推广用户一级和二级 + * @param object data +*/ +export function spreadPeople(data){ + return request.post('spread/people',data); +} + +/** + * + * 推广佣金明细 + * @param int type + * @param object data +*/ +export function spreadCommission(type,data){ + return request.get('spread/commission/'+type,data); +} + +/** + * + * 推广佣金/提现总和 + * @param int type +*/ +export function spreadCount(type){ + return request.get('spread/count/'+type); +} + +/** + * + * 推广订单 + * @param object data +*/ +export function spreadOrder(data){ + return request.post('spread/order',data); +} + +/** + * 提现申请 + * @param object data +*/ +export function extractCash(data){ + return request.post('extract/cash',data) +} + +/** + * 提现银行/提现最低金额 + * +*/ +export function extractBank(){ + return request.get('extract/bank'); +} + +/** + * 活动状态 + * +*/ +export function userActivity(){ + return request.get('user/activity'); +} + +/** + * 小程序充值 + * +*/ +export function rechargeRoutine(data){ + return request.post('recharge/routine',data) +} + +/** + * + * 地址列表 + * @param object data +*/ +export function getAddressList(data){ + return request.get('address/list',data); +} + +/** + * 设置默认地址 + * @param int id +*/ +export function setAddressDefault(id){ + return request.post('address/default/set',{id:id}) +} + +/** + * 获取默认地址 + * +*/ +export function getAddressDefault(){ + return request.get('address/default'); +} +/** + * 删除地址 + * @param int id + * +*/ +export function delAddress(id){ + return request.post('address/del',{id:id}) +} + +/** + * 修改 添加地址 + * @param object data +*/ +export function editAddress(data){ + return request.post('address/edit',data); +} + +/** + * 获取单个地址 + * @param int id +*/ +export function getAddressDetail(id){ + return request.get('address/detail/'+id); +} + +/** + * 设置用户分享 + * +*/ +export function userShare(){ + return request.post('user/share'); +} + +/** + * 获取签到配置 + * +*/ +export function getSignConfig(){ + return request.get('sign/config') +} + +/** + * 获取签到列表 + * @param object data +*/ +export function getSignList(data){ + return request.get('sign/list',data); +} + +/** + * 签到列表(年月) + * @param object data + * +*/ +export function getSignMonthList(data){ + return request.get('sign/month',data) +} + +/** + * 用户签到 +*/ +export function setSignIntegral(){ + return request.post('sign/integral') +} +/* + * 资金明细(types|0=全部,1=消费,2=充值,3=返佣,4=提现) + * */ +export function getCommissionInfo(q, types) { + return request.get("spread/commission/" + types, q); +} +/* + * 签到用户信息 + * */ +export function postSignUser(sign) { + return request.post("sign/user", sign); +} +/* + * 积分记录 + * */ +export function getIntegralList(q) { + return request.get("integral/list", q); +} +/* + * 点击领取优惠券 + * */ +export function getCouponReceive(couponId) { + return request.post("coupon/receive", couponId); +} +/* + * 领取优惠券列表 + * */ +export function getCoupon(q) { + return request.get("coupons", q); +} +/* + * 获取推广人排行 + * */ +export function getRankList(q) { + return request.get("rank", q); +} +/* + * 获取佣金排名 + * */ +export function getBrokerageRank(q) { + return request.get("brokerage_rank", q); +} +/** + * 充值金额选择 +*/ +export function getRechargeApi() { + return request.get('recharge/index') +} \ No newline at end of file diff --git a/template/xcx/app.copy.json b/template/xcx/app.copy.json new file mode 100644 index 000000000..7df996f9d --- /dev/null +++ b/template/xcx/app.copy.json @@ -0,0 +1,130 @@ +{ + "pages": [ + "pages/index/index", + "pages/goods_cate/goods_cate", + "pages/order_details/index", + "pages/user_sgin/index", + "pages/user/user", + "pages/user_get_coupon/index", + "pages/order_confirm/index", + "pages/goods_list/goods_list", + "pages/user_coupon/index", + "pages/goods_comment_list/index", + "pages/user_goods_collection/index", + "pages/user_address_list/index", + "pages/news_list/index", + "pages/user_phone/index", + "pages/user_pwd_edit/index", + "pages/goods_search/index", + "pages/user_vip/index", + "pages/user_spread_money/index", + "pages/user_integral/index", + "pages/user_bill/index", + "pages/user_money/index", + "pages/user_spread_user/index", + "pages/user_sgin_list/index", + "pages/order_list/index", + "pages/goods_details/index", + "pages/goods_details_store/index", + "pages/news_details/index", + "pages/promoter-list/index", + "pages/promoter-order/index", + "pages/cash-audit/index", + "pages/user_cash/index", + "pages/user_return_list/index", + "pages/goods_return/index", + "pages/goods_comment_con/index", + "pages/promotional-items/index", + "pages/first-new-product/index", + "pages/user_spread_code/index", + "pages/user_info/index", + "pages/order_pay_status/index", + "pages/goods_logistics/index", + "pages/user_address/index", + "pages/order_addcart/order_addcart", + "pages/user_payment/index", + "pages/order_cancellation/index", + "pages/commission_rank/index", + "pages/promoter_rank/index", + "components/navbar/index", + "components/recommend/index", + "components/share-red-packets/index", + "components/orderGoods/index", + "components/swipers/index", + "components/goodList/index", + "components/promotionGood/index", + "components/productConSwiper/index", + "components/userEvaluation/index", + "components/coupon-window/index", + "components/product-window/index", + "components/coupon-list-window/index", + "components/address-window/index", + "components/home/index", + "components/write-off/index", + "components/general-window/index" + ], + "subPackages": [ + { + "root": "pages/activity", + "name": "activity", + "pages": [ + "goods_seckill_details/index", + "goods_seckill/index" + ], + "plugins": { + "live-player-plugin": { + "version": "1.2.4", + "provider": "wx2b03c6e691cd7370" + } + } + } + ], + "window": { + "backgroundTextStyle": "dark", + "navigationBarBackgroundColor": "#fff", + "navigationBarTitleText": "WeChat", + "navigationBarTextStyle": "black", + "navigationStyle": "custom" + }, + "tabBar": { + "backgroundColor": "#ffffff", + "color": "#282828", + "selectedColor": "#e93323", + "borderStyle": "white", + "list": [ + { + "pagePath": "pages/index/index", + "iconPath": "images/1-001.png", + "selectedIconPath": "images/1-002.png", + "text": "首页" + }, + { + "pagePath": "pages/goods_cate/goods_cate", + "iconPath": "images/2-001.png", + "selectedIconPath": "images/2-002.png", + "text": "分类" + }, + { + "pagePath": "pages/order_addcart/order_addcart", + "iconPath": "images/3-001.png", + "selectedIconPath": "images/3-002.png", + "text": "购物车" + }, + { + "pagePath": "pages/user/user", + "iconPath": "images/4-001.png", + "selectedIconPath": "images/4-002.png", + "text": "我的" + } + ] + }, + "permission": { + "scope.userLocation": { + "desc": "你的位置信息将用于获取附近门店" + } + }, + "requiredBackgroundModes": [ + "location" + ], + "sitemapLocation": "sitemap.json" +} diff --git a/template/xcx/app.js b/template/xcx/app.js new file mode 100644 index 000000000..c293148e2 --- /dev/null +++ b/template/xcx/app.js @@ -0,0 +1,119 @@ +import { HTTP_REQUEST_URL, CACHE_USERINFO, CACHE_TOKEN, CACHE_EXPIRES_TIME } from './config.js'; +import Server from './utils/Server.js'; +import util from './utils/util.js'; + +App({ + onLaunch: function (option) { + if (HTTP_REQUEST_URL==''){ + console.error("请配置根目录下的config.js文件中的 'HTTP_REQUEST_URL'\n\n请修改开发者工具中【详情】->【AppID】改为自己的Appid\n\n请前往后台【小程序】->【小程序配置】填写自己的 appId and AppSecret"); + return false; + } + let that = this; + let token = wx.getStorageSync(CACHE_TOKEN); + let expiresTime = wx.getStorageSync(CACHE_EXPIRES_TIME); + let userInfo = wx.getStorageSync(CACHE_USERINFO); + this.globalData.isLog = !!userInfo && util.checkLogin(token, expiresTime,true); + if (this.globalData.isLog) { + this.globalData.token = token; + this.globalData.expiresTime = expiresTime; + this.globalData.userInfo = userInfo ? JSON.parse(userInfo) : {}; + } + if (option.query.hasOwnProperty('scene')){ + switch (option.scene) { + //扫描小程序码 + case 1047: + that.globalData.code = option.query.scene; + break; + //长按图片识别小程序码 + case 1048: + that.globalData.code = option.query.scene; + break; + //手机相册选取小程序码 + case 1049: + that.globalData.code = option.query.scene; + break; + //直接进入小程序 + case 1001: + that.globalData.spid = option.query.scene; + break; + } + } + // 获取导航高度; + wx.getSystemInfo({ + success: res => { + //导航高度 + this.globalData.navHeight = res.statusBarHeight * (750 / res.windowWidth) + 97; + }, fail(err) {} + }); + const updateManager = wx.getUpdateManager(); + + updateManager.onCheckForUpdate(function (res) { + // 请求完新版本信息的回调 + + }) + + updateManager.onUpdateReady(function () { + wx.showModal({ + title: '更新提示', + content: '新版本已经准备好,是否重启应用?', + success: function (res) { + if (res.confirm) { + // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 + updateManager.applyUpdate() + } + } + }) + }); + + updateManager.onUpdateFailed(function () { + return that.Tips({title:'新版本下载失败'}); + }) + //实例化聊天服务 + this.$chat = new Server(this); + }, + $chat:null, + globalData: { + navHeight: 0, + routineStyle: '#ffffff', + openPages: '', + spid: 0, + code:0, + urlImages: '', + url: HTTP_REQUEST_URL, + token: '', + isLog:false, + expiresTime:0, + MyMenus:[], + userInfo:{}, + loginType:'routine' + }, + /** + * 聊天事件快捷注册 + * + */ + $on: function (name, action){ + this.$chat.$on(name,action); + }, + /* + * 信息提示 + 跳转 + * @param object opt {title:'提示语',icon:''} | url + * @param object to_url 跳转url 有5种跳转方式 {tab:1-5,url:跳转地址} + */ + Tips: function (opt, to_url) { + return util.Tips(opt, to_url); + }, + /** + * 快捷调取助手函数 + */ + help:function() + { + return util.$h; + }, + /* + * 合并数组 + * @param array list 请求返回数据 + * @param array sp 原始数组 + * @return array + */ + SplitArray: function (list, sp) { return util.SplitArray(list, sp)}, +}) \ No newline at end of file diff --git a/template/xcx/app.json b/template/xcx/app.json new file mode 100644 index 000000000..3fd988387 --- /dev/null +++ b/template/xcx/app.json @@ -0,0 +1,124 @@ +{ + "pages": [ + "pages/index/index", + "pages/goods_cate/goods_cate", + "pages/order_details/index", + "pages/user_sgin/index", + "pages/user/user", + "pages/user_get_coupon/index", + "pages/order_confirm/index", + "pages/goods_list/goods_list", + "pages/user_coupon/index", + "pages/goods_comment_list/index", + "pages/user_goods_collection/index", + "pages/user_address_list/index", + "pages/news_list/index", + "pages/user_phone/index", + "pages/user_pwd_edit/index", + "pages/goods_search/index", + "pages/user_vip/index", + "pages/user_spread_money/index", + "pages/user_integral/index", + "pages/user_bill/index", + "pages/user_money/index", + "pages/user_spread_user/index", + "pages/user_sgin_list/index", + "pages/order_list/index", + "pages/goods_details/index", + "pages/goods_details_store/index", + "pages/news_details/index", + "pages/promoter-list/index", + "pages/promoter-order/index", + "pages/cash-audit/index", + "pages/user_cash/index", + "pages/user_return_list/index", + "pages/goods_return/index", + "pages/goods_comment_con/index", + "pages/promotional-items/index", + "pages/first-new-product/index", + "pages/user_spread_code/index", + "pages/user_info/index", + "pages/order_pay_status/index", + "pages/goods_logistics/index", + "pages/user_address/index", + "pages/order_addcart/order_addcart", + "pages/user_payment/index", + "pages/order_cancellation/index", + "pages/commission_rank/index", + "pages/promoter_rank/index", + "components/navbar/index", + "components/recommend/index", + "components/share-red-packets/index", + "components/orderGoods/index", + "components/swipers/index", + "components/goodList/index", + "components/promotionGood/index", + "components/productConSwiper/index", + "components/userEvaluation/index", + "components/coupon-window/index", + "components/product-window/index", + "components/coupon-list-window/index", + "components/address-window/index", + "components/home/index", + "components/write-off/index", + "components/general-window/index" + ], + "subPackages": [ + { + "root": "pages/activity", + "name": "activity", + "pages": [ + "goods_seckill_details/index", + "goods_seckill/index" + ] + } + ], + "window": { + "backgroundTextStyle": "dark", + "navigationBarBackgroundColor": "#fff", + "navigationBarTitleText": "WeChat", + "navigationBarTextStyle": "black", + "navigationStyle": "custom" + }, + "tabBar": { + "backgroundColor": "#ffffff", + "color": "#282828", + "selectedColor": "#e93323", + "borderStyle": "white", + "list": [ + { + "pagePath": "pages/index/index", + "iconPath": "images/1-001.png", + "selectedIconPath": "images/1-002.png", + "text": "首页" + }, + { + "pagePath": "pages/goods_cate/goods_cate", + "iconPath": "images/2-001.png", + "selectedIconPath": "images/2-002.png", + "text": "分类" + }, + { + "pagePath": "pages/order_addcart/order_addcart", + "iconPath": "images/3-001.png", + "selectedIconPath": "images/3-002.png", + "text": "购物车" + }, + { + "pagePath": "pages/user/user", + "iconPath": "images/4-001.png", + "selectedIconPath": "images/4-002.png", + "text": "我的" + } + ] + }, + "permission": { + "scope.userLocation": { + "desc": "你的位置信息将用于获取附近门店" + } + }, + "requiredBackgroundModes": [ + "location" + ], + "sitemapLocation": "sitemap.json" +} \ No newline at end of file diff --git a/template/xcx/app.wxss b/template/xcx/app.wxss new file mode 100644 index 000000000..9e44a1f16 --- /dev/null +++ b/template/xcx/app.wxss @@ -0,0 +1,70 @@ +/**app.wxss**/ +@import '/font/iconfont.wxss'; +@import '/css/style.wxss'; +@import '/css/animate.wxss'; +.start{width: 122rpx; height: 30rpx;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAHoAAADMCAYAAAC8yreMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA4BpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpDMDg0NEE2QTVFNUQxMUU4QUI3RkNGOTgwNDYyRUZDOCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDozODU5QzVENDMwRjcxMUU5OTQ0QzlEOTQ5RkE1MTlBRiIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDozODU5QzVEMzMwRjcxMUU5OTQ0QzlEOTQ5RkE1MTlBRiIgeG1wOkNyZWF0b3JUb29sPSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoV2luZG93cykiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDpkN2ZhZTM5NC0wNmE4LTkzNGYtODA0OS0zNjBjNTcxOTU2YjAiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDpmYWI1M2NhMC04MWE1LTE5NGItYmJlYi1jMzI2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');background-repeat: no-repeat; background-size: 122rpx auto;} +.start.star5{background-position: 0 3rpx;} +.start.star4{background-position: 0 -30rpx;} +.start.star3{background-position: 0 -70rpx;} +.start.star2{background-position: 0 -105rpx;} +.start.star1{background-position: 0 -140rpx;} +.start.star0{background-position: 0 -175rpx;} +page{font-size:28rpx;background-color: #f5f5f5; color: #333;} +view{box-sizing:border-box;} +.acea-row{display:flex;flex-wrap:wrap;} +.acea-row.row-top{align-items:flex-start;} +.acea-row.row-middle{align-items:center;} +.acea-row.row-bottom{align-items:flex-end;} +.acea-row.row-left{justify-content:flex-start;} +.acea-row.row-center{justify-content:center;} +.acea-row.row-right{justify-content:flex-end;} +.acea-row.row-between{justify-content:space-between;} +.acea-row.row-around{justify-content:space-around;} +.acea-row.row-column{flex-direction:column;} +.acea-row.row-column-between{flex-direction:column;justify-content:space-between;} +.acea-row.row-column-around{flex-direction:column;justify-content:space-around;} +.acea-row.row-center-wrapper{align-items:center;justify-content:center;} +.acea-row.row-between-wrapper{align-items:center;justify-content:space-between;} +.font-color{color:#fc4141!important;} +.bg-color{background-color:#e93323!important;} +.icon-color{color:#ff3c2b;} +.cart-color{color:#ff3700!important;border:1px solid #ff3700!important;} +/* 单选 */ +radio .wx-radio-input{border-radius:50%;width:38rpx;height:38rpx;} +radio .wx-radio-input.wx-radio-input-checked{border: 1px solid #e93323 !important; +background-color: #e93323 !important;} +/* 多选 */ +checkbox .wx-checkbox-input{border-radius:50%;width:38rpx;height:38rpx;} +checkbox .wx-checkbox-input.wx-checkbox-input-checked{ +border: 1px solid #e93323 !important;background-color: #e93323 !important;color:#fff!important;} +checkbox .wx-checkbox-input.wx-checkbox-input-checked::before {font-size:35rpx;} +.line1{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;} +.line2{word-break:break-all;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;} +.mask{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#000;opacity:0.5;z-index:5;} +button{padding:0;margin:0;line-height:normal;background-color:#fff;} +button::after{border:0;} +@keyframes load + { + from {transform: rotate(0deg);} + to {transform: rotate(360deg);} + } +.loadingpic { + animation: load 3s linear 1s infinite; +} + .loading-list { + animation: load linear 1s infinite; + font-size:40rpx;margin-right:22rpx; +} +.loading{width:100%;height:100rpx;line-height:100rpx;align-items:center;justify-content:center;position: relative;text-align:center;} +.loading .line{position: absolute;width: 450rpx;left: 150rpx;top: 50rpx;height: 1px;border-top:1px solid #eee ;} +.loading .text{position: relative;display: inline-block;padding: 0 20rpx;background: #fff;z-index: 2;color: #777;} + +.loadingicon .loading {animation: load linear 1s infinite;font-size:45rpx;color:#000;} +.loadingicon{width:100%;height:80rpx;} +.mt-30{margin-top:30rpx;} +.mt-20{margin-top:20rpx;} +.mr-10{margin-right:10rpx;} + + + + diff --git a/template/xcx/components/address-window/index.js b/template/xcx/components/address-window/index.js new file mode 100644 index 000000000..ad30265ef --- /dev/null +++ b/template/xcx/components/address-window/index.js @@ -0,0 +1,58 @@ +import { getAddressList } from '../../api/user.js'; + +var app = getApp(); +Component({ + properties: { + //跳转url链接 + pagesUrl:{ + type:String, + value:'', + }, + address:{ + type: Object, + value:{ + address:true, + addressId:0, + } + }, + isLog:{ + type:Boolean, + value:false, + }, + }, + data: { + active: 0, + //地址列表 + addressList:[], + is_loading:true, + }, + attached: function () { + + }, + methods: { + tapAddress: function (e) { + this.setData({ active: e.currentTarget.dataset.id }); + this.triggerEvent('OnChangeAddress', e.currentTarget.dataset.addressid); + }, + close: function () { + this.setData({ 'address.address': false }); + this.triggerEvent('changeTextareaStatus'); + }, + goAddressPages:function(){ + this.setData({ 'address.address': false }); + this.triggerEvent('changeTextareaStatus'); + wx.navigateTo({url: this.data.pagesUrl}); + }, + getAddressList:function(){ + var that=this; + getAddressList({page:1,limit:5}).then(res=>{ + var addressList = res.data; + //处理默认选中项 + for (var i = 0, leng = addressList.length; i < leng; i++) { + if (addressList[i].id == that.data.address.addressId) that.setData({ active: i }); + } + that.setData({ addressList: addressList,is_loading:false }); + }) + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/address-window/index.json b/template/xcx/components/address-window/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/address-window/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/address-window/index.wxml b/template/xcx/components/address-window/index.wxml new file mode 100644 index 000000000..8e3322815 --- /dev/null +++ b/template/xcx/components/address-window/index.wxml @@ -0,0 +1,17 @@ + + 选择地址 + + + + + {{item.real_name}}{{item.phone}} + {{item.province}}{{item.city}}{{item.district}}{{item.detail}} + + + + + + + 选择其地址 + + diff --git a/template/xcx/components/address-window/index.wxss b/template/xcx/components/address-window/index.wxss new file mode 100644 index 000000000..2f825d0db --- /dev/null +++ b/template/xcx/components/address-window/index.wxss @@ -0,0 +1,15 @@ +@import '/app.wxss'; +.address-window{background-color:#fff;position:fixed;bottom:0;left:0;width:100%;z-index:101;transform:translate3d(0,100%,0);transition:all .3s cubic-bezier(.25,.5,.5,.9);} +.address-window.on{transform:translate3d(0,0,0);} +.address-window .title{font-size:32rpx;font-weight:bold;text-align:center;height:123rpx;line-height:123rpx;position:relative;} +.address-window .title .iconfont{position:absolute;right:30rpx;color:#8a8a8a;font-size:35rpx;} +.address-window .list .item{margin-left:30rpx;padding-right:30rpx;border-bottom:1px solid #eee;height:129rpx;font-size:25rpx;color:#333;} +.address-window .list .item .iconfont{font-size:37rpx;color:#2c2c2c;} +.address-window .list .item .iconfont.icon-complete{font-size:30rpx;color:#fff;} +.address-window .list .item .address{width:560rpx;} +.address-window .list .item .address .name{font-size:28rpx;font-weight:bold;color:#282828;margin-bottom:4rpx;} +.address-window .list .item .address .name .phone{margin-left:18rpx;} +.address-window .addressBnt{font-size:30rpx;font-weight:bold;color:#fff;width:690rpx;height:86rpx;border-radius:43rpx;text-align:center;line-height:86rpx;margin:85rpx auto;} +.address-window .pictrue{width:414rpx;height:336rpx;margin:0 auto;} +.address-window .pictrue image{width:100%;height:100%;} + diff --git a/template/xcx/components/authorize/authorize.js b/template/xcx/components/authorize/authorize.js new file mode 100644 index 000000000..5d3133d91 --- /dev/null +++ b/template/xcx/components/authorize/authorize.js @@ -0,0 +1,133 @@ +import { CACHE_USERINFO, CACHE_TOKEN, CACHE_EXPIRES_TIME } from '../../config.js'; +import Util from '../../utils/util.js'; +import { getLogo } from '../../api/api.js'; +import { login } from '../../api/user.js'; + +let app = getApp(); + +Component({ + properties: { + iShidden: { + type: Boolean, + value: true, + }, + //是否自动登录 + isAuto: { + type: Boolean, + value: true, + }, + isGoIndex:{ + type: Boolean, + value:true, + }, + }, + data: { + cloneIner: null, + loading:false, + errorSum:0, + errorNum:3 + }, + attached() { + this.get_logo_url(); + this.setAuthStatus(); + }, + methods: { + close(){ + let pages = getCurrentPages(); + let currPage = pages[pages.length - 1]; + if(this.data.isGoIndex){ + wx.switchTab({url:'/pages/index/index'}); + }else{ + this.setData({ + iShidden: true + }); + if (currPage && currPage.data.iShidden != undefined){ + currPage.setData({ iShidden:true}); + } + } + }, + get_logo_url: function () { + var that = this; + if (wx.getStorageSync('logo_url')) return this.setData({ logo_url: wx.getStorageSync('logo_url') }); + getLogo().then(res=>{ + wx.setStorageSync('logo_url', res.data.logo_url); + that.setData({ logo_url: res.data.logo_url }); + }); + }, + //检测登录状态并执行自动登录 + setAuthStatus() { + var that = this; + Util.chekWxLogin().then((res)=> { + let pages = getCurrentPages(); + let currPage = pages[pages.length - 1]; + if (currPage && currPage.data.iShidden != undefined) { + currPage.setData({ iShidden:true}); + } + if (res.isLogin) { + if (!Util.checkLogin()) return Promise.reject({ authSetting: true, msg: '用户token失效', userInfo: res.userInfo}); + that.triggerEvent('onLoadFun', app.globalData.userInfo); + }else{ + wx.showLoading({ title: '正在登录中' }); + that.setUserInfo(res.userInfo,true); + } + }).catch(res=>{ + if (res.authSetting === false) { + //没有授权不会自动弹出登录框 + if (that.data.isAuto === false) return; + //自动弹出授权 + that.setData({ iShidden: false }); + } else if (res.authSetting){ + //授权后登录token失效了 + that.setUserInfo(res.userInfo); + } + }) + }, + //授权 + setUserInfo(userInfo,isLogin) { + let that = this; + wx.showLoading({ title: '正在登录中' }); + if (isLogin){ + that.getWxUserInfo(userInfo); + }else{ + Util.getCodeLogin((res)=>{ + Util.wxgetUserInfo().then(userInfo=>{ + userInfo.code = res.code; + that.getWxUserInfo(userInfo); + }).catch(res=>{ + wx.hideLoading(); + }); + }); + } + }, + getWxUserInfo: function (userInfo){ + let that = this; + userInfo.spread_spid = app.globalData.spid;//获取推广人ID + userInfo.spread_code = app.globalData.code;//获取推广人分享二维码ID + login(userInfo).then(res => { + app.globalData.token = res.data.token; + app.globalData.isLog = true; + app.globalData.userInfo = res.data.userInfo; + app.globalData.expiresTime = res.data.expires_time; + wx.setStorageSync(CACHE_TOKEN, res.data.token); + wx.setStorageSync(CACHE_EXPIRES_TIME, res.data.expires_time); + wx.setStorageSync(CACHE_USERINFO, JSON.stringify(res.data.userInfo)); + if (res.data.cache_key) wx.setStorage({ key: 'cache_key', data: res.data.cache_key }); + //取消登录提示 + wx.hideLoading(); + //关闭登录弹出窗口 + that.setData({ iShidden: true, errorSum: 0 }); + //执行登录完成回调 + that.triggerEvent('onLoadFun', app.globalData.userInfo); + }).catch((err) => { + wx.hideLoading(); + that.data.errorSum++; + that.setData({ errorSum: that.data.errorSum }); + if (that.data.errorSum >= that.data.errorNum) { + Util.Tips({ title: err }); + } else { + that.setUserInfo(userInfo); + } + }); + } + }, +}) \ No newline at end of file diff --git a/template/xcx/components/authorize/authorize.json b/template/xcx/components/authorize/authorize.json new file mode 100644 index 000000000..b5ecd1b5f --- /dev/null +++ b/template/xcx/components/authorize/authorize.json @@ -0,0 +1,3 @@ +{ + "component":true +} \ No newline at end of file diff --git a/template/xcx/components/authorize/authorize.wxml b/template/xcx/components/authorize/authorize.wxml new file mode 100644 index 000000000..fb344211d --- /dev/null +++ b/template/xcx/components/authorize/authorize.wxml @@ -0,0 +1,11 @@ + + + \ No newline at end of file diff --git a/template/xcx/components/authorize/authorize.wxss b/template/xcx/components/authorize/authorize.wxss new file mode 100644 index 000000000..6e498430f --- /dev/null +++ b/template/xcx/components/authorize/authorize.wxss @@ -0,0 +1,12 @@ +/* pages/authorize/authorize.wxss */ +@import "../../app.wxss"; + +.Popup{width:500rpx;background-color:#fff;position:fixed;top:50%;left:50%;margin-left:-250rpx;transform:translateY(-50%);z-index:320;} +.Popup image{width:150rpx;height:150rpx;margin:-67rpx auto 0 auto;display:block;border: 8rpx solid #fff;border-radius: 50%} +.Popup .title{font-size:28rpx;color:#000;text-align:center;margin-top: 30rpx} +.Popup .tip{font-size:22rpx;color:#555;padding:0 24rpx;margin-top:25rpx;} +.Popup .bottom .item{width:50%;height:80rpx;background-color:#eeeeee;text-align:center;line-height:80rpx;font-size:24rpx;color:#666;margin-top:54rpx;} +.Popup .bottom .item.on{width: 100%} +.flex{display:flex;} +.Popup .bottom .item.grant{font-size:28rpx;color:#fff;font-weight:bold;background-color:#e93323;border-radius:0;padding:0;} +.mask{position:fixed;top:0;right:0;left:0;bottom:0;background-color:rgba(0,0,0,0.65);z-index:310;} \ No newline at end of file diff --git a/template/xcx/components/coupon-list-window/index.js b/template/xcx/components/coupon-list-window/index.js new file mode 100644 index 000000000..ca643cdd3 --- /dev/null +++ b/template/xcx/components/coupon-list-window/index.js @@ -0,0 +1,55 @@ +import { setCouponReceive } from '../../api/api.js'; +const app = getApp(); +Component({ + properties: { + coupon: { + type: Object, + value:{ + list:[], + statusTile:'' + }, + }, + cartId: { + type: String, + value: '', + }, + //打开状态 0=领取优惠券,1=使用优惠券 + openType:{ + type:Number, + value:0, + } + }, + data: { + }, + attached: function () { + console.log(this.data.cartId) + }, + methods: { + close: function () { + this.triggerEvent('ChangCouponsClone'); + }, + getCouponUser:function(e){ + var that = this; + var id = e.currentTarget.dataset.id; + var index = e.currentTarget.dataset.index; + var list = that.data.coupon.list; + if (list[index].is_use == true && this.data.openType==0) return true; + switch (this.data.openType){ + case 0: + //领取优惠券 + setCouponReceive(id).then(res=>{ + list[index].is_use = true; + that.setData({ + ['coupon.list']: list + }); + app.Tips({ title: '领取成功' }); + that.triggerEvent('ChangCoupons', list[index]); + }); + break; + case 1: + that.triggerEvent('ChangCoupons',index); + break; + } + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/coupon-list-window/index.json b/template/xcx/components/coupon-list-window/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/coupon-list-window/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/coupon-list-window/index.wxml b/template/xcx/components/coupon-list-window/index.wxml new file mode 100644 index 000000000..74e2aaae4 --- /dev/null +++ b/template/xcx/components/coupon-list-window/index.wxml @@ -0,0 +1,28 @@ + + 优惠券 + + + + ¥{{item.coupon_price}} + 满{{item.use_min_price}}元可用 + + + + 通用劵 + 品类券 + 商品券 + {{item.title}} + + + {{item.start_time ? item.start_time+'-' : ''}}{{item.end_time}} + {{item.use_title || '已领取'}} + {{coupon.statusTile || '立即领取'}} + + + + + + + + + diff --git a/template/xcx/components/coupon-list-window/index.wxss b/template/xcx/components/coupon-list-window/index.wxss new file mode 100644 index 000000000..373e0d43e --- /dev/null +++ b/template/xcx/components/coupon-list-window/index.wxss @@ -0,0 +1,26 @@ +@import '/app.wxss'; +.coupon-list-window{position:fixed;bottom:0;left:0;width:100%;background-color:#f5f5f5;border-radius:16rpx 16rpx 0 0;transform:translate3d(0,100%,0);transition:all .3s cubic-bezier(.25,.5,.5,.9);z-index: 1000} +.coupon-list-window.on{transform:translate3d(0,0,0);} +.coupon-list-window .title{height:124rpx;width:100%;text-align:center;line-height:124rpx;font-size:32rpx;font-weight:bold;position:relative;} +.coupon-list-window .title .iconfont{position:absolute;right:30rpx;top:50%;transform:translateY(-50%);font-size:35rpx;color:#8a8a8a;font-weight:normal;width: 100rpx;display: block;text-align: right;} +.coupon-list-window .coupon-list{margin:0 0 50rpx 0;height:550rpx;overflow:auto;} +.coupon-list-window .pictrue{width:414rpx;height:336rpx;margin:0 auto 50rpx auto;} +.coupon-list-window .pictrue image{width:100%;height:100%;} +.pic-num{color: #fff;font-size: 24rpx;} +.line-title{ + width:90rpx; + padding: 0 10rpx; + box-sizing: border-box; + background:rgba(255,247,247,1); + border:1px solid rgba(232,51,35,1); + opacity:1; + border-radius:20rpx; + font-size:20rpx; + color: #E83323; + margin-right: 12rpx; +} +.line-title.gray{ + border-color:#BBB; + color:#bbb; + background-color:#F5F5F5; +} diff --git a/template/xcx/components/coupon-window/index.js b/template/xcx/components/coupon-window/index.js new file mode 100644 index 000000000..bb4c78a62 --- /dev/null +++ b/template/xcx/components/coupon-window/index.js @@ -0,0 +1,24 @@ +var app = getApp(); +Component({ + properties: { + window:{ + type: Boolean, + value: false, + }, + couponList:{ + type:Array, + value:[], + } + }, + data: { + + }, + attached: function () { + + }, + methods: { + close:function(){ + this.triggerEvent('onColse'); + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/coupon-window/index.json b/template/xcx/components/coupon-window/index.json new file mode 100644 index 000000000..8835af069 --- /dev/null +++ b/template/xcx/components/coupon-window/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/template/xcx/components/coupon-window/index.wxml b/template/xcx/components/coupon-window/index.wxml new file mode 100644 index 000000000..153ee26f5 --- /dev/null +++ b/template/xcx/components/coupon-window/index.wxml @@ -0,0 +1,24 @@ + + + + + ¥{{item.coupon_price}} + 满{{item.use_min_price}}元可用 + + + + {{item.title}} + {{item.start_time ? item.start_time+'-' : ''}}{{item.end_time}} + + 通用劵 + 品类券 + 商品券 + + + + + 立即领取 + + + + diff --git a/template/xcx/components/coupon-window/index.wxss b/template/xcx/components/coupon-window/index.wxss new file mode 100644 index 000000000..2837e53ed --- /dev/null +++ b/template/xcx/components/coupon-window/index.wxss @@ -0,0 +1,18 @@ +@import '/app.wxss'; +.coupon-window{background-image:url('data:image/png;base64,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');background-repeat:no-repeat;background-size:100% 100%;width:630rpx;height:649rpx;position:fixed;top:20%;z-index:99;left:50%;margin-left:-305rpx;transform:translate3d(0,-200%,0);transition:all .3s cubic-bezier(.25,.5,.5,.9);} +.coupon-window.on{transform:translate3d(0,0,0);} +.coupon-window .couponWinList{width:480rpx;margin:157rpx 0 0 60rpx;height:415rpx;overflow:auto;} +.coupon-window .couponWinList .item{width:100%;height:120rpx;background-color:#fff;position:relative;margin-bottom:17rpx;} +.coupon-window .couponWinList .item::after{content:'';position: absolute;width:18rpx;height: 18rpx;border-radius: 50%;background-color: #f2443a;left:25.5%;bottom:0;margin-bottom:-9rpx;} +.coupon-window .couponWinList .item::before{content:'';position: absolute;width:18rpx;height: 18rpx;border-radius: 50%;background-color: #f2443a;left:25.5%;top:0;margin-top:-9rpx;} +.coupon-window .couponWinList .item .money{width:130rpx;border-right:1px dashed #ddd;height:100%;text-align:center;font-size:26rpx;font-weight:bold;} +.coupon-window .couponWinList .item .money .num{font-size:40rpx;} +.coupon-window .couponWinList .item .text{width:349rpx;padding:0 20rpx;box-sizing:border-box;height: 100%;} +.coupon-window .couponWinList .item .text .pic{font-size:22rpx;color:#999;} +.coupon-window .couponWinList .item .text .name{font-size:26rpx;color:#282828;font-weight:bold;margin-bottom:9rpx;width: 260rpx;} +.coupon-window .couponWinList .item .type{display: inline-block; font-size:15.5rpx;width:27rpx;height:78rpx;color: #FFF;text-align: center;background:linear-gradient(251deg,rgba(236,51,35,1) 0%,rgba(248,76,0,1) 100%);position: relative;} +.coupon-window .couponWinList .item .type:after{content: '';position: absolute;top: 55rpx;right: 0rpx; border: 14rpx solid transparent;border-bottom-color: #fff;} +.coupon-window .lid{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAj0AAADgCAMAAADfcCfrAAAA1VBMVEUAAADuOi7uOi77TUr6TUn7Tkr8Tkv6TEj7Tkr7Tkr7Tkr7Tkv7Tkr6TUn7Tkv7Tkr8Tkv7TUn7Tkr6TUj7Tkv8Tkv7Tkr7Tkr7TUn6TUj7Tkv7Tkr7Tkv7TUn6TUn7Tkr7T0v8T0v6S0b8T0v7Tkr7Tkv7Tkr4SkT8T0v8T0v8TkvuOi7uOi7uOy7uOi7uOy7uOi7yQDf5S0X0QzrvPDD6TUn1RT7xPzT4SUP3SEHvOy75TEf2R0DzQjjwPjP7Tkr3SUL1RDz2Rj/wPTL7T0v6TEj8T0z0OnFeAAAAMXRSTlMA9otDM86SA7lo+6BeVeWHLQepdxLr3bI8I8CYcE9J8B32DdXGjHwoY4EW6WL80q+xIV6CCQAABS1JREFUeNrs2tlyokAYhuGugkZ2kH1HZFFznmNPmL7/SxqjyRCTTAUzE9PA91zDW3//dEMAvsomAF+xitqAkZgA3Gibaz47Iay2ohUBGGujyBW7IOzEd/QHAvCplXigbEDYM9oKawLwd1tDM9kVwgZlmGGLho/ZbqKytwi7Zmr6hgBcL8mpyT5C2Hu1ZHgE4LLpdOehM6qeoaAcBS3eZu/4bDCingFFQQvm5VLNBjfVMxRk4GN+cbZFS9kIhH0u0PY7AguxFg6NysYhbBw/zERcSc/dKurkio1H+vGq5FBsCczTys7Csr8N6W+j1ppiYwjNzDpyh3K+q55hCFk57hRnwiuspuq/hvRfFThZhJexadvoad0P7lLPQKXpHufYJK3szDH7wX3rGVSNpO+Q0IR4xUEu+xMO6jkrk1bHFOLfSlS0y2HFUz1nVZPuRexCvIqNNqn6Ez7rOVOplgl43eDLJrdkv3/CeT0XpmwZWIZ4sMkPodlfTKWes4pqroCLoR8TG28mzqTqufATSYnwq8ddrcW9lJT9WxOs58KU0dBdbArXqdX+Lsjxrp7mEM6yb+JFSpqUxzsixx9QUqczbHza/8du9q1sHj81i3ou1ECWsiLGh9m/eBAUaXw3M6rnVUQKIrrV2jZcrbnxnJpfPUNEqWuI+PvsM6u4yCQ5UI8c4KaeFz51rL0QYyl6Z2vn3GTDaz0vzMaxlMLGLCLrnaBYDvWP/OG2nmEWhZKrRwscRus40g9aYvZHbnFfz+uM0k4X7LnfOD5F40ohNY/8m049f1RB40idXtizesh/sAW9S0MuD6g51TNQTSprrasX4maaB5u3E/TM0kJq8rQLL6Se18qgCbW2UwzB5jslbxfle7edbjJzrOdKZdLEObWU6fkpJo/8pPVDLAq5nh0kR25qf/LFvEYel6AM6kZ2tNTqMsUoBDGOvS35Blsv3omRYOiKa0lamNDAVx9nbBn1fEgtzaCmiRyeskpby+pcV1EU3TBy4Zl4RXhWGMYpDyVzXcuy0jR1nFBuaBCU1ePSLLgeQD0wHuoBjqAeQD0wAuoBjqAeQD0wAuoBjqAeQD3wE8gv+M0uHRMxDARBADtMqeKxC/NHZQo71/wWEgaxZQ/2cMLcsGUP9hCwhyL2YA8BeyhiD/Zwwvxgyx7sIWAPRezBHgL2UMQe7CFgD0XswR4C9lDEHvbmD1v2YA8BeyhiD/YQsIci9mAPAXsoMi9s2YM9BOyhiD3YwwlzwZY92EPAHorYgz0E7KGIPdhDwB6KzANb9nzs0sEJAkAQBLBtSRQFQUHtvydbGPZz80hqCPYQsIci9mAPAXsoYg/2cMJ8Ycse7CFgD0XsYW/usGUP9hCwhyL2YA8BeyhiD/YQsIci9mAPJ8wHtuzBHgL2UMQe7OGEucKWPdhDwB6K2IM9BOyhiD3YQ8AeitiDPQTsoci8YMse7CFgD0XswR4C9lDEHuzhhLnAlj3YQ8AeitiDPQTsoYg92EPAHorYgz0E7KGIPdjDCfOALXuwh4A9FLEHewjYQxF7sIeAPRSxh715w5Y92EPAHorYgz0E7KGIPdjDCfODLXuwh4A9FLGHvbnBlj3YQ8AeitiDPQTsoYg92EPAHorYgz0E7KHIPOHffh3jAAREURR9RKJSiIaCQqP4Y6j//hdGxALMbzT3rOHmJS+KekA9+IN2B4JkDgTpcCDGNDsQc2hlfBBjizRlB8pVqZW0nfwulNrzE4+0ptMq4DvLdaNXu3VDDXyWxl63C8Kz+KuXmMKNAAAAAElFTkSuQmCC');background-repeat:no-repeat;background-size:100% 100%;width:573rpx;height:224rpx;position:fixed;left:49.8%;top:20%;margin:424rpx 0 0 -296rpx;} +.coupon-window .lid .bnt{font-size:29rpx;width:440rpx;height:80rpx;border-radius:40rpx;background-color:#f9f1d3;text-align:center;line-height:80rpx;font-weight:bold;margin:98rpx auto 0 auto;} +.coupon-window .lid .iconfont{color:#fff;font-size:60rpx;text-align:center;margin-top:87rpx;} +.pic-num{color: #BBBBBB;font-size: 18rpx;} \ No newline at end of file diff --git a/template/xcx/components/general-window/index.js b/template/xcx/components/general-window/index.js new file mode 100644 index 000000000..19519fe0c --- /dev/null +++ b/template/xcx/components/general-window/index.js @@ -0,0 +1,19 @@ +var app = getApp(); +Component({ + properties: { + generalActive: { + type: Boolean + }, + generalContent: { + type:Object + } + }, + data: {}, + attached: function () { + }, + methods: { + close: function (){ + this.triggerEvent('generalWindow'); + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/general-window/index.json b/template/xcx/components/general-window/index.json new file mode 100644 index 000000000..8835af069 --- /dev/null +++ b/template/xcx/components/general-window/index.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/template/xcx/components/general-window/index.wxml b/template/xcx/components/general-window/index.wxml new file mode 100644 index 000000000..e66d45c14 --- /dev/null +++ b/template/xcx/components/general-window/index.wxml @@ -0,0 +1,10 @@ + + + + {{generalContent.title}} + {{generalContent.promoterNum}} + 我知道了 + + + + diff --git a/template/xcx/components/general-window/index.wxss b/template/xcx/components/general-window/index.wxss new file mode 100644 index 000000000..087afcd08 --- /dev/null +++ b/template/xcx/components/general-window/index.wxss @@ -0,0 +1,12 @@ +@import '/font/iconfont.wxss'; +@import '/css/style.wxss'; +.generalWindow .generalTip{position:fixed;top:50%;left:50%;width:560rpx;margin-left:-280rpx;z-index:99;border-radius:20rpx;background-color:#fff;transition:all 0.3s ease-in-out 0s;opacity:0;transform: scale(0);padding-bottom:60rpx;margin-top:-330rpx;} +.generalWindow .generalTip.on{opacity:1;transform: scale(1);} +.generalWindow .generalTip .pictrue{width:100%;height:270rpx;} +.generalWindow .generalTip .pictrue image{width:100%;height:100%;border-radius:20rpx 20rpx 0 0;} +.generalWindow .generalTip .name{font-size:36rpx;font-weight:bold;color:#282828;text-align:center;padding:0 29rpx;margin-top:37rpx;} +.generalWindow .generalTip .info{font-size:30rpx;color:#666;padding:0 29rpx;text-align:center;margin-top:21rpx;} +.generalWindow .generalTip .info .money{font-weight:bold;margin:0 10rpx;} +.generalWindow .generalTip .help{font-size:32rpx;font-weight:bold;text-align:center;margin-top:40rpx;} +.generalWindow .generalTip .tipBnt{font-size:32rpx;color:#fff;width:360rpx;height:82rpx;border-radius:41rpx;background-image:linear-gradient(to right,#f67a38 0%,#f11b09 100%);text-align:center;line-height:82rpx;margin:50rpx auto 0 auto;} +.generalWindow .mask{position:fixed;top:0;bottom:0;left:0;right:0;background-color:rgba(0, 0, 0, 0.7);z-index:55;} \ No newline at end of file diff --git a/template/xcx/components/goodList/index.js b/template/xcx/components/goodList/index.js new file mode 100644 index 000000000..aa71e7bb9 --- /dev/null +++ b/template/xcx/components/goodList/index.js @@ -0,0 +1,36 @@ +// components/goodList/index.js +Component({ + properties: { + status: { + type: String, + value: 0, + }, + bastList: { + type: Object, + value: [], + } + }, + data: { + }, + methods: { + /** + * 商品详情跳转 + */ + goDetail: function (e) { + let item = e.currentTarget.dataset.items + if (item.activity && item.activity.type === "1") { + wx.navigateTo({ + url: `/pages/activity/goods_seckill_details/index?id=${item.activity.id}&time=${item.activity.time}&status=1` + }); + } else if (item.activity && item.activity.type === "2") { + wx.navigateTo({ url: `/pages/activity/goods_bargain_details/index?id=${item.activity.id}`}); + } else if (item.activity && item.activity.type === "3") { + wx.navigateTo({ + url: `/pages/activity/goods_combination_details/index?id=${item.activity.id}` + }); + } else { + wx.navigateTo({ url: `/pages/goods_details/index?id=${item.id}` }); + } + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/goodList/index.json b/template/xcx/components/goodList/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/goodList/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/goodList/index.wxml b/template/xcx/components/goodList/index.wxml new file mode 100644 index 000000000..6ed3dfe56 --- /dev/null +++ b/template/xcx/components/goodList/index.wxml @@ -0,0 +1,22 @@ + + + + + + 秒杀 + 砍价 + 拼团 + + + + {{item.store_name}} + ¥{{item.price}} + ¥{{item.vip_price || 0}}已售{{item.sales}}{{item.unit_name}} + 已售{{item.sales}}{{item.unit_name}} + + + + + + + diff --git a/template/xcx/components/goodList/index.wxss b/template/xcx/components/goodList/index.wxss new file mode 100644 index 000000000..f6143fbfa --- /dev/null +++ b/template/xcx/components/goodList/index.wxss @@ -0,0 +1,14 @@ +@import '/app.wxss'; +.goodList .item{position:relative;padding-left:30rpx;} +.goodList .item .pictrue{width:180rpx;height:180rpx;position:relative;} +.goodList .item .pictrue image{width:100%;height:100%;border-radius:6rpx;} +.goodList .item .pictrue .numPic{position:absolute;left:7rpx;top:7rpx;width:50rpx;height:50rpx;border-radius:50%;} +.goodList .item .underline{padding:30rpx 30rpx 30rpx 0;border-bottom:1px solid #f5f5f5;} +.goodList .item:nth-last-child(1) .underline{border-bottom:0; } +.goodList .item .text{font-size:30rpx;color:#222;width:489rpx;} +.goodList .item .text .money{font-size:26rpx;font-weight:bold;margin-top:50rpx;} +.goodList .item .text .money .num{font-size:34rpx;} +.goodList .item .text .vip-money{font-size:24rpx;color:#282828;font-weight:bold;margin-top:15rpx;} +.goodList .item .text .vip-money image{width:46rpx;height:21rpx;margin-left:5rpx;} +.goodList .item .text .vip-money .num{font-size:22rpx;color:#aaa;font-weight:normal;margin:-2rpx 0 0 22rpx;} +.goodList .item .iconfont{position:absolute;right:30rpx;width:50rpx;height:50rpx;border-radius:50%;font-size:30rpx;bottom:38rpx;} \ No newline at end of file diff --git a/template/xcx/components/home/index.js b/template/xcx/components/home/index.js new file mode 100644 index 000000000..e7da12daf --- /dev/null +++ b/template/xcx/components/home/index.js @@ -0,0 +1,77 @@ +// components/home/index.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + homeActive:false + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + + }, + setTouchMove: function (e) { + var that = this; + if (e.touches[0].clientY < 545 && e.touches[0].clientY > 66) { + that.setData({ + top: e.touches[0].clientY + }) + } + }, + open:function(){ + this.setData({ + homeActive: !this.data.homeActive + }) + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function () { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function () { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload: function () { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh: function () { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function () { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage: function () { + + } +}) \ No newline at end of file diff --git a/template/xcx/components/home/index.json b/template/xcx/components/home/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/home/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/home/index.wxml b/template/xcx/components/home/index.wxml new file mode 100644 index 000000000..d004dea8e --- /dev/null +++ b/template/xcx/components/home/index.wxml @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/template/xcx/components/home/index.wxss b/template/xcx/components/home/index.wxss new file mode 100644 index 000000000..ac6a58ae1 --- /dev/null +++ b/template/xcx/components/home/index.wxss @@ -0,0 +1,16 @@ +@import '/app.wxss'; +/* .home{position: fixed ;bottom:100rpx;color: white;text-align: center;z-index:99;right:10rpx;} +.home .homeCon{width:86rpx;border-radius:50rpx;padding:34rpx 0;box-sizing:border-box;transition:all 0.3s ease-in-out 0s;opacity:0;transform: scale(0);height:0rpx;color:#e93323;} +.home .homeCon.on{opacity:1;transform: scale(1);height:300rpx;color:#fff;} +.home .homeCon .iconfont{font-size:48rpx;} +.home .pictrue{width:86rpx;height:86rpx;border-radius:50%;margin-top:20rpx;} +.home .pictrue image{width:100%;height:100%;border-radius:50%;} */ + +.home{position: fixed ;bottom:100rpx;color: white;text-align: center;z-index:99;right:10rpx;height: 86rpx;width:96rpx;overflow:hidden;} +.home.on{width:396rpx;} +.home .homeCon{border-radius:50rpx;box-sizing:border-box;transform:translate3d(500rpx,0,0);transition:all .3s cubic-bezier(.25,.5,.5,.9);height:86rpx;background-color:#f44939;color:#f44939;} +.home .homeCon.on{transform:translate3d(0,0,0);color:#fff;} +.home .homeCon .iconfont{font-size:48rpx;width:100rpx;} +.home .pictrue{width:86rpx;height:86rpx;border-radius:50%;margin-left: 10rpx;margin-top:-86rpx;} +.home .pictrue image{width:100%;height:100%;border-radius:50%;transform: rotate(90deg);} +.home .pictrue.on{margin-top:0;} diff --git a/template/xcx/components/navbar/index.js b/template/xcx/components/navbar/index.js new file mode 100644 index 000000000..08c50bba1 --- /dev/null +++ b/template/xcx/components/navbar/index.js @@ -0,0 +1,69 @@ +var app = getApp(); +Component({ + properties: { + parameter:{ + type: Object, + value:{ + class:'0' + }, + }, + logoUrl:{ + type:String, + value:'', + } + }, + data: { + navH: "" + }, + ready: function(){ + this.setClass(); + var pages = getCurrentPages(); + if (pages.length <= 1) this.setData({'parameter.return':0}); + }, + attached: function () { + this.setData({ + navH: app.globalData.navHeight + }); + }, + methods: { + return:function(){ + wx.navigateBack({ + delta: 1 + }); + // var pages = getCurrentPages(); + // wx.navigateBack({ + // delta: pages.length-2 + // }); + }, + setGoodsSearch:function(){ + wx.navigateTo({ + url: '/pages/goods_search/index', + }) + }, + setClass:function(){ + var color = ''; + switch (this.data.parameter.class) { + case "0": case 'on': + color = 'on' + break; + case '1': case 'black': + color = 'black' + break; + case '2': case 'gray': + color = 'gray' + break; + case '3': case "red": + color = 'red' + break; + case '4': case "gradual01": + color = 'gradual01' + break; + default: + break; + } + this.setData({ + 'parameter.class': color + }) + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/navbar/index.json b/template/xcx/components/navbar/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/navbar/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/navbar/index.wxml b/template/xcx/components/navbar/index.wxml new file mode 100644 index 000000000..a5db45823 --- /dev/null +++ b/template/xcx/components/navbar/index.wxml @@ -0,0 +1,13 @@ + + + + 搜索商品 + + + + {{parameter.title}} + + + + + diff --git a/template/xcx/components/navbar/index.wxss b/template/xcx/components/navbar/index.wxss new file mode 100644 index 000000000..80ce53840 --- /dev/null +++ b/template/xcx/components/navbar/index.wxss @@ -0,0 +1,17 @@ +@import '/app.wxss'; +.navbar{position:fixed;background-color:#fff;top:0;left:0;z-index:999;width:100%;} +.navbar.on{background-color:#e93323;} +.navbar.black{background-color:#232323;} +.navbar.gray{background-color:#666;} +.navbar.red{background-color:#eb5447;} +.navbar.gradual01{background-image: linear-gradient(to right,#f67837 0%,#f11d09 100%);} +.navbar .navbarH{position:relative;} +.navbar .navbarH .navbarCon{position:absolute;bottom:0;height:100rpx;width:100%;} +.navbar .navbarH .navbarCon .name{color:#000;font-size:36rpx;font-weight:bold;width: 300rpx;text-align: center;} +.navbar .navbarH .navbarCon .name.on{color:#fff;} +.navbar .navbarH .navbarCon .icon-xiangzuo{color:#000;font-weight:bold;position:absolute;font-size:40rpx;left:16rpx;width:100rpx;height:56rpx;line-height:54rpx;top:50%;transform:translateY(-50%);} +.navbar .navbarH .navbarCon .icon-xiangzuo.on{color:#fff;} +.navbar .navbarH .navbarCon .logo{width:127rpx;height:45rpx;position:absolute;left:30rpx;top:50%;transform:translateY(-50%);} +.navbar .navbarH .navbarCon .logo image{width:100%;height:100%;display:block;} +.navbar .navbarH .navbarCon .search{width:360rpx;height:64rpx;background-color:#f7f7f7;border-radius:50rpx;padding:0 28rpx;box-sizing:border-box;font-size:28rpx;color:#bbb;margin-right:26rpx;} +.navbar .navbarH .navbarCon .search .icon-xiazai5{font-size:34rpx;margin-right:16rpx;} \ No newline at end of file diff --git a/template/xcx/components/orderGoods/index.js b/template/xcx/components/orderGoods/index.js new file mode 100644 index 000000000..f1d3f114e --- /dev/null +++ b/template/xcx/components/orderGoods/index.js @@ -0,0 +1,21 @@ +var app = getApp(); +Component({ + properties: { + evaluate: { + type: Number, + value:0, + }, + cartInfo:{ + type:Object, + value:[], + }, + orderId:{ + type:String, + value:'', + }, + }, + data: { + }, + methods: { + } +}) \ No newline at end of file diff --git a/template/xcx/components/orderGoods/index.json b/template/xcx/components/orderGoods/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/orderGoods/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/orderGoods/index.wxml b/template/xcx/components/orderGoods/index.wxml new file mode 100644 index 000000000..71e0c0dc5 --- /dev/null +++ b/template/xcx/components/orderGoods/index.wxml @@ -0,0 +1,22 @@ + + 共{{cartInfo.length}}件商品 + + + + + + + + + {{item.productInfo.store_name}} + x {{item.cart_num}} + + {{item.productInfo.attrInfo.suk}} + ¥{{item.productInfo.attrInfo.price}} + ¥{{item.productInfo.price}} + 评价 + 已评价 + + + + diff --git a/template/xcx/components/orderGoods/index.wxss b/template/xcx/components/orderGoods/index.wxss new file mode 100644 index 000000000..dd7f4c7b5 --- /dev/null +++ b/template/xcx/components/orderGoods/index.wxss @@ -0,0 +1,6 @@ +@import '/app.wxss'; +.orderGoods{background-color:#fff;margin-top:12rpx;} +.orderGoods .total{width:100%;height:86rpx;padding:0 30rpx;border-bottom:2rpx solid #f0f0f0;font-size:30rpx;color:#282828;line-height:86rpx;} + + + diff --git a/template/xcx/components/payment/index.js b/template/xcx/components/payment/index.js new file mode 100644 index 000000000..802b3c3f6 --- /dev/null +++ b/template/xcx/components/payment/index.js @@ -0,0 +1,92 @@ +import { orderPay } from '../../api/order.js'; + +const app = getApp(); + +Component({ + properties: { + payMode:{ + type:Array, + value:[], + }, + pay_close:{ + type:Boolean, + value:false, + }, + order_id:{ + type:String, + value:'' + }, + totalPrice:{ + type:String, + value:'0' + }, + }, + data: { + }, + attached: function () { + }, + methods: { + close:function(){ + this.triggerEvent('onChangeFun',{action:'pay_close'}); + }, + goPay:function(e){ + let that = this; + let paytype = e.currentTarget.dataset.value; + let number = e.currentTarget.dataset.number + if (!that.data.order_id) return app.Tips({title:'请选择要支付的订单'}); + if (paytype == 'yue' && parseFloat(number) < parseFloat(that.data.totalPrice)) return app.Tips({ title: '余额不足!' }); + wx.showLoading({ title: '支付中' }); + orderPay({ uni: that.data.order_id, paytype: paytype, 'from': 'routine' }).then(res => { + switch (paytype){ + case 'weixin': + if (res.data.result === undefined) return app.Tips({title:'缺少支付参数'}); + var jsConfig = res.data.result.jsConfig; + wx.requestPayment({ + timeStamp: jsConfig.timestamp, + nonceStr: jsConfig.nonceStr, + package: jsConfig.package, + signType: jsConfig.signType, + paySign: jsConfig.paySign, + success: function (res) { + wx.hideLoading(); + return app.Tips({ title: res.msg, icon: 'success' }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_complete' }); + }); + }, + fail: function (e) { + wx.hideLoading(); + return app.Tips({ title: '取消支付' }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_fail' }); + }); + }, + complete: function (e) { + wx.hideLoading(); + if (e.errMsg == 'requestPayment:cancel') return app.Tips({ title: '取消支付' }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_fail' }); + }); + }, + }); + break; + case 'yue': + wx.hideLoading(); + return app.Tips({ title: res.msg, icon: 'success' }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_complete' }); + });; + break; + case 'offline': + wx.hideLoading(); + return app.Tips({ title: res.msg, icon: 'success' }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_complete' }); + });; + break; + } + }).catch(err => { + wx.hideLoading(); + return app.Tips({ title: err }, () => { + that.triggerEvent('onChangeFun', { action: 'pay_fail' }); + }); + }) + }, + } + +}) \ No newline at end of file diff --git a/template/xcx/components/payment/index.json b/template/xcx/components/payment/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/payment/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/payment/index.wxml b/template/xcx/components/payment/index.wxml new file mode 100644 index 000000000..9afd18766 --- /dev/null +++ b/template/xcx/components/payment/index.wxml @@ -0,0 +1,19 @@ + + + 选择付款方式 + + + + + + {{item.name}} + + {{item.title}} ¥{{ item.number }} + + {{item.title}} + + + + + + diff --git a/template/xcx/components/payment/index.wxss b/template/xcx/components/payment/index.wxss new file mode 100644 index 000000000..16cd4a8ec --- /dev/null +++ b/template/xcx/components/payment/index.wxss @@ -0,0 +1,91 @@ +@import '/font/iconfont.wxss'; +@import '/app.wxss'; +.payment { + position: fixed; + bottom: 0; + left: 0; + width: 100%; + border-radius: 16rpx 16rpx 0 0; + background-color: #fff; + padding-bottom: 60rpx; + z-index: 99; + transition: all 0.3s cubic-bezier(0.25, 0.5, 0.5, 0.9); + transform: translate3d(0, 100%, 0); +} + +.payment.on { + transform: translate3d(0, 0, 0); +} + +.payment .title { + text-align: center; + height: 123rpx; + font-size: 32rpx; + color: #282828; + font-weight: bold; + padding-right: 30rpx; + margin-left: 30rpx; + position: relative; + border-bottom: 1rpx solid #eee; +} + +.payment .title .iconfont { + position: absolute; + right: 30rpx; + top: 50%; + transform: translateY(-50%); + font-size: 43rpx; + color: #8a8a8a; + font-weight: normal; +} + +.payment .item { + border-bottom: 1rpx solid #eee; + height: 130rpx; + margin-left: 30rpx; + padding-right: 30rpx; +} + +.payment .item .left { + width: 610rpx; +} + +.payment .item .left .text { + width: 540rpx; +} + +.payment .item .left .text .name { + font-size: 32rpx; + color: #282828; +} + +.payment .item .left .text .info { + font-size: 24rpx; + color: #999; +} + +.payment .item .left .text .info .money { + color: #ff9900; +} + +.payment .item .left .iconfont { + font-size: 45rpx; + color: #09bb07; +} + +.payment .item .left .iconfont.icon-zhifubao { + color: #00aaea; +} + +.payment .item .left .iconfont.icon-yuezhifu { + color: #ff9900; +} + +.payment .item .left .iconfont.icon-yuezhifu1 { + color: #eb6623; +} + +.payment .item .iconfont { + font-size: 0.3rpx; + color: #999; +} \ No newline at end of file diff --git a/template/xcx/components/product-window/index.js b/template/xcx/components/product-window/index.js new file mode 100644 index 000000000..306f82bef --- /dev/null +++ b/template/xcx/components/product-window/index.js @@ -0,0 +1,98 @@ +var app = getApp(); +Component({ + properties: { + iSplus:{ + type: Boolean, + value: true + }, + iSbnt:{ + type:Number, + value:0 + }, + limitNum:{ + type: Number, + value: 0 + }, + attribute: { + type: Object, + value:{} + }, + attrList:{ + type: Object, + value:[], + }, + productAttr:{ + type: Object, + value: [], + }, + productSelect:{ + type: Object, + value: { + image: '', + store_name: '', + price: 0, + unique: '', + stock:0, + } + }, + }, + data: { + attrValue:[], + attrIndex:0, + isShow: false + }, + attached: function () { + let pages = getCurrentPages(); + let currPage = null; + if (pages.length) { + currPage = pages[pages.length - 1]; + } + let route = currPage.route + this.setData({ isShow: route.indexOf("goods_details")!==-1}); + }, + methods: { + /** + * 购物车手动输入数量 + * + */ + bindCode: function (e) { + this.triggerEvent('iptCartNum', e.detail.value); + }, + close: function () { + this.triggerEvent('myevent', {'window': false}); + }, + goCat:function(){ + this.triggerEvent('goCat'); + }, + CartNumDes:function(){ + this.triggerEvent('ChangeCartNum', false); + }, + CartNumInt:function(){ + this.triggerEvent('ChangeCartNum', true); + }, + tapAttr:function(e){ + //父级index + var indexw = e.currentTarget.dataset.indexw; + //子集index + var indexn = e.currentTarget.dataset.indexn; + //每次点击获得的属性 + var attr = this.data.productAttr[indexw].attr_value[indexn]; + //设置当前点击属性 + this.data.productAttr[indexw].checked = attr['attr']; + this.setData({ + productAttr: this.data.productAttr, + }); + var value = this.getCheckedValue().sort().join(','); + this.triggerEvent('ChangeAttr',value); + }, + getCheckedValue: function () { + return this.data.productAttr.map(function (attr) { + return attr.checked; + }); + }, + ResetAttr:function(){ + for (var k in this.data.productAttr) this.data.productAttr[k].checked=''; + this.setData({ productAttr: this.data.productAttr}); + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/product-window/index.json b/template/xcx/components/product-window/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/product-window/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/product-window/index.wxml b/template/xcx/components/product-window/index.wxml new file mode 100644 index 000000000..df970632d --- /dev/null +++ b/template/xcx/components/product-window/index.wxml @@ -0,0 +1,36 @@ + + + + + {{productSelect.store_name}} + + ¥{{productSelect.price}} + 库存: {{productSelect.stock}} + 限量: {{productSelect.quota_show}} + + + + + + + {{item.attr_name}} + + {{itemn.attr}} + + + + + 数量 + + - + + + + + + + + + + 我要参团 + 已售罄 + + diff --git a/template/xcx/components/product-window/index.wxss b/template/xcx/components/product-window/index.wxss new file mode 100644 index 000000000..5a2c47b9c --- /dev/null +++ b/template/xcx/components/product-window/index.wxss @@ -0,0 +1,30 @@ +@import '/app.wxss'; +.product-window{position:fixed;bottom:0;width:100%;left:0;background-color:#fff;z-index:88;border-radius:16rpx 16rpx 0 0;padding-bottom:140rpx;transform:translate3d(0,100%,0);transition:all .3s cubic-bezier(.25,.5,.5,.9);} +.product-window.on{transform:translate3d(0,0,0);} +.product-window.join{padding-bottom: 30rpx;} +.product-window .textpic{padding:0 130rpx 0 30rpx;margin-top:29rpx;position:relative;} +.product-window .textpic .pictrue{width:150rpx;height:150rpx;} +.product-window .textpic .pictrue image{width:100%;height:100%;border-radius:10rpx;} +.product-window .textpic .text{width:410rpx;font-size:32rpx;color:#202020;} +.product-window .textpic .text .money{font-size:24rpx;margin-top:40rpx;} +.product-window .textpic .text .money .num{font-size:36rpx;} +.product-window .textpic .text .money .stock{color:#999;margin-left:18rpx;} +.product-window .textpic .iconfont{position:absolute;right:30rpx;top:-5rpx;font-size:35rpx;color:#8a8a8a;} +.product-window .productWinList{max-height:395rpx;overflow:auto;margin-top:36rpx;} +.product-window .productWinList .item~.item{margin-top:36rpx;} +.product-window .productWinList .item .title{font-size:30rpx;color:#999;padding:0 30rpx;} +.product-window .productWinList .item .listn{padding:0 30rpx 0 16rpx;} +.product-window .productWinList .item .listn .itemn{border:1px solid #bbb;font-size:26rpx;color:#282828;padding:7rpx 33rpx;border-radius:6rpx;margin:14rpx 0 0 14rpx;} +.product-window .productWinList .item .listn .itemn.on{color:#fff;background-color:#ff3700;border-color:#ff3700;} +.product-window .cart{margin-top:36rpx;padding:0 30rpx;} +.product-window .cart .title{font-size:30rpx;color:#999;} +.product-window .cart .carnum{height:54rpx;margin-top:24rpx;} +.product-window .cart .carnum view{border:1px solid #a4a4a4;width:84rpx;text-align:center;height:100%;line-height:54rpx;color:#a4a4a4;font-size:45rpx;} +.product-window .cart .carnum .reduce{border-right:0;border-radius:6rpx 0 0 6rpx;line-height:48rpx;} +.product-window .cart .carnum .reduce.on{border-color:#e3e3e3;color:#dedede;} +.product-window .cart .carnum .plus{border-left:0;border-radius:0 6rpx 6rpx 0;line-height:46rpx;} +.product-window .cart .carnum .plus.on{border-color:#e3e3e3;color:#dedede;} +.product-window .cart .carnum .num{color:#282828;font-size:28rpx;} +.product-window .joinBnt{font-size: 30rpx;width: 620rpx;height: 86rpx;border-radius: 50rpx;text-align: center;line-height: 86rpx;color: #fff;margin: 21rpx auto 0 auto;} +.product-window .joinBnt.on{background-color:#bbb;color:#fff;} + diff --git a/template/xcx/components/productConSwiper/index.js b/template/xcx/components/productConSwiper/index.js new file mode 100644 index 000000000..c0f4f9da1 --- /dev/null +++ b/template/xcx/components/productConSwiper/index.js @@ -0,0 +1,40 @@ +var app = getApp(); +Component({ + properties: { + imgUrls:{ + type:Object, + value:[] + }, + videoline: + { + type:String, + value:"" + } + }, + data: { + indicatorDots: true, + circular: true, + autoplay: false, + interval: 3000, + duration: 500, + currents: "1", + controls:true + }, + ready:function(){ + this.videoContext = wx.createVideoContext('myVideo',this); + }, + methods: { + bindPause:function(){ + this.videoContext.play(); + this.setData({ + controls:false + }); + }, + change: function (e) { + this.setData({ + currents: e.detail.current + 1 + }) + } + } +}) + diff --git a/template/xcx/components/productConSwiper/index.json b/template/xcx/components/productConSwiper/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/productConSwiper/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/productConSwiper/index.wxml b/template/xcx/components/productConSwiper/index.wxml new file mode 100644 index 000000000..ac141b77e --- /dev/null +++ b/template/xcx/components/productConSwiper/index.wxml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + + + + + + diff --git a/template/xcx/components/productConSwiper/index.wxss b/template/xcx/components/productConSwiper/index.wxss new file mode 100644 index 000000000..253f141b2 --- /dev/null +++ b/template/xcx/components/productConSwiper/index.wxss @@ -0,0 +1,10 @@ +.product-bg{width:100%;height:750rpx;position:relative;} +.product-bg swiper{width:100%;height:100%;position:relative;} +.product-bg .slide-image{width:100%;height:100%;} +.product-bg .pages{position:absolute;background-color:#fff;height:34rpx;padding:0 10rpx;border-radius:3rpx;right:30rpx;bottom:30rpx;line-height:34rpx;font-size:24rpx;color:#050505;} +#myVideo{width: 100%;height: 100%} +.product-bg .item{position:relative;width:100%;height:100%;} +.product-bg .item .poster{position:absolute;top:0;left:0;height:750rpx;width:100%;} +.product-bg .item .poster .image{width:100%;height:100%;} +.product-bg .item .stop{position:absolute;top:50%;left:50%;width:136rpx;height:136rpx;margin-top:-68rpx;margin-left:-68rpx;} +.product-bg .item .stop .image{width:100%;height:100%;} \ No newline at end of file diff --git a/template/xcx/components/promotionGood/index.js b/template/xcx/components/promotionGood/index.js new file mode 100644 index 000000000..c20baa3a8 --- /dev/null +++ b/template/xcx/components/promotionGood/index.js @@ -0,0 +1,39 @@ +var app = getApp(); +Component({ + properties: { + benefit: { + type: Object, + value: [], + } + }, + data: { + + }, + ready: function () { + + }, + attached: function () { + + }, + methods: { + /** + * 商品详情跳转 + */ + goDetail: function (e) { + let item = e.currentTarget.dataset.items + if (item.activity && item.activity.type === "1") { + wx.navigateTo({ + url: `/pages/activity/goods_seckill_details/index?id=${item.activity.id}&time=${item.activity.time}&status=1` + }); + } else if (item.activity && item.activity.type === "2") { + wx.navigateTo({ url: `/pages/activity/goods_bargain_details/index?id=${item.activity.id}`}); + } else if (item.activity && item.activity.type === "3") { + wx.navigateTo({ + url: `/pages/activity/goods_combination_details/index?id=${item.activity.id}` + }); + } else { + wx.navigateTo({ url: `/pages/goods_details/index?id=${item.id}` }); + } + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/promotionGood/index.json b/template/xcx/components/promotionGood/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/promotionGood/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/promotionGood/index.wxml b/template/xcx/components/promotionGood/index.wxml new file mode 100644 index 000000000..1dd7e5cb4 --- /dev/null +++ b/template/xcx/components/promotionGood/index.wxml @@ -0,0 +1,22 @@ + + + + + + 秒杀 + 砍价 + 拼团 + + + {{item.store_name}} + + 促销价: ¥{{item.price}} + + + 日常价:¥{{item.ot_price}} + 仅剩:{{item.stock}}{{item.unit_name}} + + + + + diff --git a/template/xcx/components/promotionGood/index.wxss b/template/xcx/components/promotionGood/index.wxss new file mode 100644 index 000000000..b68bd0ec9 --- /dev/null +++ b/template/xcx/components/promotionGood/index.wxss @@ -0,0 +1,11 @@ +@import '/app.wxss'; +.promotionGood{padding:0 30rpx;} +.promotionGood .item{border-bottom:1rpx solid #eee;height:250rpx;} +.promotionGood .item .pictrue{width:188rpx;height:188rpx;position: relative;} +.promotionGood .item .pictrue image{width:100%;height:100%;border-radius:6rpx;} +.promotionGood .item .text{font-size:24rpx;color:#999;width:472rpx;} +.promotionGood .item .text .name{font-size:30rpx;color:#333;} +.promotionGood .item .text .sp-money{margin:34rpx 0 20rpx 0;} +.promotionGood .item .text .sp-money .moneyCon{padding:0 18rpx;background-color:red;height:46rpx;line-height:46rpx;background-image:linear-gradient(to right,#ff6248 0%,#ff3e1e 100%);font-size:20rpx;color:#fff;border-radius:24rpx 3rpx 24rpx 3rpx;} +.promotionGood .item .text .sp-money .moneyCon .num{font-size:24rpx;} +.promotionGood .item .text .money{text-decoration:line-through;} \ No newline at end of file diff --git a/template/xcx/components/recommend/index.js b/template/xcx/components/recommend/index.js new file mode 100644 index 000000000..43364cedc --- /dev/null +++ b/template/xcx/components/recommend/index.js @@ -0,0 +1,34 @@ +var app = getApp(); +Component({ + properties: { + host_product:{ + type: Object, + value:[], + } + }, + data: { + }, + attached: function () { + }, + methods: { + /** + * 商品详情跳转 + */ + goDetail: function (e) { + let item = e.currentTarget.dataset.items + if (item.activity && item.activity.type === "1") { + wx.navigateTo({ + url: `/pages/activity/goods_seckill_details/index?id=${item.activity.id}&time=${item.activity.time}&status=1` + }); + } else if (item.activity && item.activity.type === "2") { + wx.navigateTo({ url: `/pages/activity/goods_bargain_details/index?id=${item.activity.id}`}); + } else if (item.activity && item.activity.type === "3") { + wx.navigateTo({ + url: `/pages/activity/goods_combination_details/index?id=${item.activity.id}` + }); + } else { + wx.navigateTo({ url: `/pages/goods_details/index?id=${item.id}` }); + } + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/recommend/index.json b/template/xcx/components/recommend/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/recommend/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/recommend/index.wxml b/template/xcx/components/recommend/index.wxml new file mode 100644 index 000000000..83ddb096e --- /dev/null +++ b/template/xcx/components/recommend/index.wxml @@ -0,0 +1,19 @@ + + + + 热门推荐 + + + + + + + 秒杀 + 砍价 + 拼团 + + {{item.store_name}} + ¥{{item.price}} + + + diff --git a/template/xcx/components/recommend/index.wxss b/template/xcx/components/recommend/index.wxss new file mode 100644 index 000000000..337bef9fb --- /dev/null +++ b/template/xcx/components/recommend/index.wxss @@ -0,0 +1,13 @@ +@import '/app.wxss'; +.recommend{background-color:#fff;} +.recommend .title{height:135rpx;font-size:28rpx;color:#282828;} +.recommend .title .name{margin:0 28rpx;} +.recommend .title .iconfont{font-size:170rpx;color:#454545;} +.recommend .title .iconfont.lefticon{transform:rotate(180deg);} +.recommend .recommendList{padding:0 30rpx;} +.recommend .recommendList .item{width:335rpx;margin-bottom:30rpx;} +.recommend .recommendList .item .pictrue{width:100%;height:335rpx;position: relative;} +.recommend .recommendList .item .pictrue image{width:100%;height:100%;border-radius:10rpx;} +.recommend .recommendList .item .name{font-size:28rpx;color:#282828;margin-top:20rpx;} +.recommend .recommendList .item .money{font-size:20rpx;margin-top:8rpx;} +.recommend .recommendList .item .money .num{font-size:28rpx;} diff --git a/template/xcx/components/share-red-packets/index.js b/template/xcx/components/share-red-packets/index.js new file mode 100644 index 000000000..fe012f25e --- /dev/null +++ b/template/xcx/components/share-red-packets/index.js @@ -0,0 +1,27 @@ +var app = getApp(); +Component({ + properties: { + sharePacket:{ + type:Object, + value:{ + isState: true, + priceName:'', + } + } + }, + data: { + + }, + attached: function () { + }, + methods: { + closeShare:function(){ + this.setData({ + "sharePacket.isState": true + }) + }, + goShare:function(){ + this.triggerEvent('listenerActionSheet'); + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/share-red-packets/index.json b/template/xcx/components/share-red-packets/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/share-red-packets/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/share-red-packets/index.wxml b/template/xcx/components/share-red-packets/index.wxml new file mode 100644 index 000000000..d1002f3a8 --- /dev/null +++ b/template/xcx/components/share-red-packets/index.wxml @@ -0,0 +1,13 @@ + + + + + + + 会员分享返 + ¥{{sharePacket.priceName}} + 下单即返佣金 + 立即分享 + + + diff --git a/template/xcx/components/share-red-packets/index.wxss b/template/xcx/components/share-red-packets/index.wxss new file mode 100644 index 000000000..b1754cfd9 --- /dev/null +++ b/template/xcx/components/share-red-packets/index.wxss @@ -0,0 +1,12 @@ +@import '/app.wxss'; +.sharing-packets{position:fixed;left:30rpx;z-index:5;transition:all 0.3s ease-in-out 0s;opacity:1;transform: scale(1);bottom:150rpx;} +.sharing-packets.on{transform: scale(0);opacity:0;} +.sharing-packets .iconfont{width:44rpx;height:44rpx;border-radius:50%;text-align:center;line-height:44rpx;background-color:#999;font-size:20rpx;color:#fff;margin:0 auto;box-sizing:border-box;padding-left:1px;} +.sharing-packets .line{width:2rpx;height:40rpx;background-color:#999;margin:0 auto;} +.sharing-packets .sharing-con{width:187rpx;height:210rpx;position:relative;} +.sharing-packets .sharing-con image{width:100%;height:100%;} +.sharing-packets .sharing-con .text{position:absolute;top:30rpx;font-size:20rpx;width:100%;text-align:center;} +.sharing-packets .sharing-con .text .money{font-size:32rpx;font-weight:bold;margin-top:5rpx;} +.sharing-packets .sharing-con .text .money .label{font-size:20rpx;} +.sharing-packets .sharing-con .text .tip{font-size:18rpx;color:#999;margin-top:5rpx;} +.sharing-packets .sharing-con .text .shareBut{font-size:22rpx;color:#fff;margin-top:18rpx;height:50rpx;line-height:50rpx;} diff --git a/template/xcx/components/swipers/index.js b/template/xcx/components/swipers/index.js new file mode 100644 index 000000000..fdefff0ba --- /dev/null +++ b/template/xcx/components/swipers/index.js @@ -0,0 +1,27 @@ +// components/swiper/index.js +var app = getApp(); +Component({ + properties: { + imgUrls: { + type: Object, + value: [] + } + }, + data: { + circular: true, + autoplay: true, + interval: 3000, + duration: 500, + currentSwiper: 0 + }, + attached: function () { + console.log(this.data.imgUrls); + }, + methods: { + swiperChange: function (e) { + this.setData({ + currentSwiper: e.detail.current + }) + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/swipers/index.json b/template/xcx/components/swipers/index.json new file mode 100644 index 000000000..4575d1b8f --- /dev/null +++ b/template/xcx/components/swipers/index.json @@ -0,0 +1,4 @@ +{ + "usingComponents": {}, + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/swipers/index.wxml b/template/xcx/components/swipers/index.wxml new file mode 100644 index 000000000..509bba0ec --- /dev/null +++ b/template/xcx/components/swipers/index.wxml @@ -0,0 +1,12 @@ + + + + + + + + + + + + diff --git a/template/xcx/components/swipers/index.wxss b/template/xcx/components/swipers/index.wxss new file mode 100644 index 000000000..1b32940bb --- /dev/null +++ b/template/xcx/components/swipers/index.wxss @@ -0,0 +1,7 @@ +@import '/app.wxss'; +.swiper{width:100%;height:282rpx;position:relative;} +.swiper swiper{width:100%;height:100%;position:relative;} +.swiper swiper .slide-image{width:100%;height:100%;} +.swiper .dots{position:absolute;right:40rpx;bottom:20rpx;} +.swiper .dots .dot{width:12rpx;height:12rpx;border:2rpx solid #fff;border-radius:50%;margin-right:15rpx;} +.swiper .dots .dot.active{border-color:#e93323;background-color:#e93323;} diff --git a/template/xcx/components/userEvaluation/index.js b/template/xcx/components/userEvaluation/index.js new file mode 100644 index 000000000..7eceac8de --- /dev/null +++ b/template/xcx/components/userEvaluation/index.js @@ -0,0 +1,24 @@ +var app = getApp(); +Component({ + properties: { + reply:{ + type:Object, + value:[], + } + }, + data: { + + }, + attached: function () { + + }, + methods: { + getpreviewImage:function(e){ + var dataset=e.currentTarget.dataset; + wx.previewImage({ + urls: this.data.reply[dataset.index].pics, + current: this.data.reply[dataset.index].pics[dataset.pic_index], + }); + }, + } +}) \ No newline at end of file diff --git a/template/xcx/components/userEvaluation/index.json b/template/xcx/components/userEvaluation/index.json new file mode 100644 index 000000000..32640e0dc --- /dev/null +++ b/template/xcx/components/userEvaluation/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/userEvaluation/index.wxml b/template/xcx/components/userEvaluation/index.wxml new file mode 100644 index 000000000..40d36fde5 --- /dev/null +++ b/template/xcx/components/userEvaluation/index.wxml @@ -0,0 +1,24 @@ + + + + + + {{item.nickname}} + + + + {{item.add_time}} {{item.suk}} + {{item.comment}} + + + + + + 店小二:{{item.merchant_reply_content}} + + + + + + + diff --git a/template/xcx/components/userEvaluation/index.wxss b/template/xcx/components/userEvaluation/index.wxss new file mode 100644 index 000000000..39aad6135 --- /dev/null +++ b/template/xcx/components/userEvaluation/index.wxss @@ -0,0 +1,14 @@ +@import '/app.wxss'; +.evaluateWtapper .evaluateItem{background-color:#fff;padding-bottom:25rpx;} +.evaluateWtapper .evaluateItem~.evaluateItem{border-top:1rpx solid #f5f5f5;} +.evaluateWtapper .evaluateItem .pic-text{font-size:26rpx;color:#282828;height:95rpx;padding:0 30rpx;} +.evaluateWtapper .evaluateItem .pic-text .pictrue{width:56rpx;height:56rpx;margin-right:20rpx;} +.evaluateWtapper .evaluateItem .pic-text .pictrue image{width:100%;height:100%;border-radius:50%;} +.evaluateWtapper .evaluateItem .pic-text .name{max-width:450rpx;margin-right:15rpx;} +.evaluateWtapper .evaluateItem .time{font-size:24rpx;color:#82848f;padding:0 30rpx;} +.evaluateWtapper .evaluateItem .evaluate-infor{font-size:28rpx;color:#282828;margin-top:19rpx;padding:0 30rpx;} +.evaluateWtapper .evaluateItem .imgList{padding:0 30rpx 0 15rpx;margin-top:25rpx;} +.evaluateWtapper .evaluateItem .imgList .pictrue{width:156rpx;height:156rpx;margin:0 0 15rpx 15rpx;} +.evaluateWtapper .evaluateItem .imgList .pictrue image{width:100%;height:100%;} +.evaluateWtapper .evaluateItem .reply{font-size:26rpx;color:#454545;background-color:#f7f7f7;border-radius:5rpx;margin:20rpx 30rpx 0 30rpx;padding:30rpx;position:relative;} +.evaluateWtapper .evaluateItem .reply::before{content: "";width: 0;height: 0;border-left:0.3rem solid transparent;border-right:0.3rem solid transparent;border-bottom:0.4rem solid #f7f7f7;position:absolute;top:-0.4rem;left:2rem;} \ No newline at end of file diff --git a/template/xcx/components/write-off/index.js b/template/xcx/components/write-off/index.js new file mode 100644 index 000000000..d32818074 --- /dev/null +++ b/template/xcx/components/write-off/index.js @@ -0,0 +1,20 @@ +var app = getApp(); +Component({ + properties: { + iShidden: { + type: Boolean, + value: false + } + }, + data: { + + }, + attached: function () { + + }, + methods: { + cancel: function () { + this.triggerEvent('cancel', false); + } + } +}) \ No newline at end of file diff --git a/template/xcx/components/write-off/index.json b/template/xcx/components/write-off/index.json new file mode 100644 index 000000000..32640e0dc --- /dev/null +++ b/template/xcx/components/write-off/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} \ No newline at end of file diff --git a/template/xcx/components/write-off/index.wxml b/template/xcx/components/write-off/index.wxml new file mode 100644 index 000000000..d40cb6905 --- /dev/null +++ b/template/xcx/components/write-off/index.wxml @@ -0,0 +1,12 @@ + diff --git a/template/xcx/components/write-off/index.wxss b/template/xcx/components/write-off/index.wxss new file mode 100644 index 000000000..d328d0b0b --- /dev/null +++ b/template/xcx/components/write-off/index.wxss @@ -0,0 +1,18 @@ +@import '/app.wxss'; +.WriteOff {width: 560rpx;height: 800rpx;background-color: #fff;border-radius: 20rpx; + position: fixed;top: 50%;left: 50%;margin-top: -400rpx;margin-left: -280rpx;z-index: 99; + padding-top: 55rpx;} +.WriteOff .pictrue {width: 340rpx;height: 340rpx;margin: 0 auto;} +.WriteOff .pictrue image {width: 100%;height: 100%;display: block;border-radius: 10rpx;} +.WriteOff .num {font-size: 30rpx;color: #666;margin: 28rpx 0 30rpx 0;} +.WriteOff .num .see {font-size: 16rpx;color: #fff;border-radius: 4rpx;background-color: #c68937;padding-left: 5rpx;margin-left: 12rpx;} +.WriteOff .num .see .iconfont {font-size: 15rpx;} +.WriteOff .tip {font-size: 36rpx;color: #282828;text-align: center;border-top: 1px dashed #ccc;padding-top: 40rpx;position: relative;} +.WriteOff .tip:after {content: "";position: absolute;width: 25rpx;height: 25rpx; +border-radius: 50%;background-color: #7f7f7f;right: -12.5rpx;top: -12.5rpx;} +.WriteOff .tip:before {content: "";position: absolute;width: 25rpx;height: 25rpx; + border-radius: 50%;background-color: #7f7f7f;left: -12.5rpx;top: -12.5rpx;} +.WriteOff .sure {font-size: 32rpx;color: #fff;text-align: center;line-height: 82rpx; + height: 82rpx;width: 460rpx;border-radius: 41rpx;margin: 40rpx auto 0 auto; + background-image: linear-gradient(to right, #f67a38 0%, #f11b09 100%);} +.WriteOff .sure.cancel {background-image: none;color: #999;margin-top: 10rpx;} \ No newline at end of file diff --git a/template/xcx/config.js b/template/xcx/config.js new file mode 100644 index 000000000..ee236c76c --- /dev/null +++ b/template/xcx/config.js @@ -0,0 +1,33 @@ +module.exports = { + // 请求域名 格式: https://您的域名 + HTTP_REQUEST_URL:'', + // Socket链接 暂不做配置 + WSS_SERVER_URL:'', + + + // 以下配置非开发者,无需修改 + // 请求头 + HEADER:{ + 'content-type': 'application/json' + }, + // Socket调试模式 + SERVER_DEBUG:true, + // 心跳间隔 + PINGINTERVAL:3000, + // 回话密钥名称 + TOKENNAME: 'Authori-zation', + //用户信息缓存名称 + CACHE_USERINFO:'USERINFO', + //token缓存名称 + CACHE_TOKEN:'TOKEN', + //token过期事件 + CACHE_EXPIRES_TIME:'EXPIRES_TIME', + //模板缓存 + CACHE_SUBSCRIBE_MESSAGE:'SUBSCRIBE_MESSAGE', + //用户信息缓存名称 + CACHE_USERINFO: 'USERINFO', + //缓存经度 + CACHE_LONGITUDE: 'LONGITUDE', + //缓存纬度 + CACHE_LATITUDE: 'LATITUDE', +} \ No newline at end of file diff --git a/template/xcx/css/animate.wxss b/template/xcx/css/animate.wxss new file mode 100644 index 000000000..98f29c245 --- /dev/null +++ b/template/xcx/css/animate.wxss @@ -0,0 +1,3494 @@ +@charset "UTF-8"; + +/*! + * animate.css -http://daneden.me/animate + * Version - 3.6.0 + * Licensed under the MIT license - http://opensource.org/licenses/MIT + * + * Copyright (c) 2018 Daniel Eden + */ + +.animated { + -webkit-animation-duration: 1s; + animation-duration: 1s; + -webkit-animation-fill-mode: both; + animation-fill-mode: both; +} + +.animated.infinite { + -webkit-animation-iteration-count: infinite; + animation-iteration-count: infinite; +} + +@-webkit-keyframes bounce { + from, + 20%, + 53%, + 80%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 40%, + 43% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + -webkit-transform: translate3d(0, -30px, 0); + transform: translate3d(0, -30px, 0); + } + + 70% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + -webkit-transform: translate3d(0, -15px, 0); + transform: translate3d(0, -15px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -4px, 0); + transform: translate3d(0, -4px, 0); + } +} + +@keyframes bounce { + from, + 20%, + 53%, + 80%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 40%, + 43% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + -webkit-transform: translate3d(0, -30px, 0); + transform: translate3d(0, -30px, 0); + } + + 70% { + -webkit-animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + animation-timing-function: cubic-bezier(0.755, 0.05, 0.855, 0.06); + -webkit-transform: translate3d(0, -15px, 0); + transform: translate3d(0, -15px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -4px, 0); + transform: translate3d(0, -4px, 0); + } +} + +.bounce { + -webkit-animation-name: bounce; + animation-name: bounce; + -webkit-transform-origin: center bottom; + transform-origin: center bottom; +} + +@-webkit-keyframes flash { + from, + 50%, + to { + opacity: 1; + } + + 25%, + 75% { + opacity: 0; + } +} + +@keyframes flash { + from, + 50%, + to { + opacity: 1; + } + + 25%, + 75% { + opacity: 0; + } +} + +.flash { + -webkit-animation-name: flash; + animation-name: flash; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes pulse { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 50% { + -webkit-transform: scale3d(1.05, 1.05, 1.05); + transform: scale3d(1.05, 1.05, 1.05); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes pulse { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 50% { + -webkit-transform: scale3d(1.05, 1.05, 1.05); + transform: scale3d(1.05, 1.05, 1.05); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.pulse { + -webkit-animation-name: pulse; + animation-name: pulse; +} + +@-webkit-keyframes rubberBand { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 30% { + -webkit-transform: scale3d(1.25, 0.75, 1); + transform: scale3d(1.25, 0.75, 1); + } + + 40% { + -webkit-transform: scale3d(0.75, 1.25, 1); + transform: scale3d(0.75, 1.25, 1); + } + + 50% { + -webkit-transform: scale3d(1.15, 0.85, 1); + transform: scale3d(1.15, 0.85, 1); + } + + 65% { + -webkit-transform: scale3d(0.95, 1.05, 1); + transform: scale3d(0.95, 1.05, 1); + } + + 75% { + -webkit-transform: scale3d(1.05, 0.95, 1); + transform: scale3d(1.05, 0.95, 1); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes rubberBand { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 30% { + -webkit-transform: scale3d(1.25, 0.75, 1); + transform: scale3d(1.25, 0.75, 1); + } + + 40% { + -webkit-transform: scale3d(0.75, 1.25, 1); + transform: scale3d(0.75, 1.25, 1); + } + + 50% { + -webkit-transform: scale3d(1.15, 0.85, 1); + transform: scale3d(1.15, 0.85, 1); + } + + 65% { + -webkit-transform: scale3d(0.95, 1.05, 1); + transform: scale3d(0.95, 1.05, 1); + } + + 75% { + -webkit-transform: scale3d(1.05, 0.95, 1); + transform: scale3d(1.05, 0.95, 1); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.rubberBand { + -webkit-animation-name: rubberBand; + animation-name: rubberBand; +} + +@-webkit-keyframes shake { + from, + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 10%, + 30%, + 50%, + 70%, + 90% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 20%, + 40%, + 60%, + 80% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } +} + +@keyframes shake { + from, + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 10%, + 30%, + 50%, + 70%, + 90% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 20%, + 40%, + 60%, + 80% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } +} + +.shake { + -webkit-animation-name: shake; + animation-name: shake; +} + +@-webkit-keyframes headShake { + 0% { + -webkit-transform: translateX(0); + transform: translateX(0); + } + + 6.5% { + -webkit-transform: translateX(-6px) rotateY(-9deg); + transform: translateX(-6px) rotateY(-9deg); + } + + 18.5% { + -webkit-transform: translateX(5px) rotateY(7deg); + transform: translateX(5px) rotateY(7deg); + } + + 31.5% { + -webkit-transform: translateX(-3px) rotateY(-5deg); + transform: translateX(-3px) rotateY(-5deg); + } + + 43.5% { + -webkit-transform: translateX(2px) rotateY(3deg); + transform: translateX(2px) rotateY(3deg); + } + + 50% { + -webkit-transform: translateX(0); + transform: translateX(0); + } +} + +@keyframes headShake { + 0% { + -webkit-transform: translateX(0); + transform: translateX(0); + } + + 6.5% { + -webkit-transform: translateX(-6px) rotateY(-9deg); + transform: translateX(-6px) rotateY(-9deg); + } + + 18.5% { + -webkit-transform: translateX(5px) rotateY(7deg); + transform: translateX(5px) rotateY(7deg); + } + + 31.5% { + -webkit-transform: translateX(-3px) rotateY(-5deg); + transform: translateX(-3px) rotateY(-5deg); + } + + 43.5% { + -webkit-transform: translateX(2px) rotateY(3deg); + transform: translateX(2px) rotateY(3deg); + } + + 50% { + -webkit-transform: translateX(0); + transform: translateX(0); + } +} + +.headShake { + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + -webkit-animation-name: headShake; + animation-name: headShake; +} + +@-webkit-keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +@keyframes swing { + 20% { + -webkit-transform: rotate3d(0, 0, 1, 15deg); + transform: rotate3d(0, 0, 1, 15deg); + } + + 40% { + -webkit-transform: rotate3d(0, 0, 1, -10deg); + transform: rotate3d(0, 0, 1, -10deg); + } + + 60% { + -webkit-transform: rotate3d(0, 0, 1, 5deg); + transform: rotate3d(0, 0, 1, 5deg); + } + + 80% { + -webkit-transform: rotate3d(0, 0, 1, -5deg); + transform: rotate3d(0, 0, 1, -5deg); + } + + to { + -webkit-transform: rotate3d(0, 0, 1, 0deg); + transform: rotate3d(0, 0, 1, 0deg); + } +} + +.swing { + -webkit-transform-origin: top center; + transform-origin: top center; + -webkit-animation-name: swing; + animation-name: swing; +} + +@-webkit-keyframes tada { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 10%, + 20% { + -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); + transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); + } + + 30%, + 50%, + 70%, + 90% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + } + + 40%, + 60%, + 80% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes tada { + from { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } + + 10%, + 20% { + -webkit-transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); + transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg); + } + + 30%, + 50%, + 70%, + 90% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg); + } + + 40%, + 60%, + 80% { + -webkit-transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg); + } + + to { + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.tada { + -webkit-animation-name: tada; + animation-name: tada; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes wobble { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 15% { + -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + } + + 30% { + -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + } + + 45% { + -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + } + + 60% { + -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + } + + 75% { + -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes wobble { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 15% { + -webkit-transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + transform: translate3d(-25%, 0, 0) rotate3d(0, 0, 1, -5deg); + } + + 30% { + -webkit-transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + transform: translate3d(20%, 0, 0) rotate3d(0, 0, 1, 3deg); + } + + 45% { + -webkit-transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + transform: translate3d(-15%, 0, 0) rotate3d(0, 0, 1, -3deg); + } + + 60% { + -webkit-transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + transform: translate3d(10%, 0, 0) rotate3d(0, 0, 1, 2deg); + } + + 75% { + -webkit-transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + transform: translate3d(-5%, 0, 0) rotate3d(0, 0, 1, -1deg); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.wobble { + -webkit-animation-name: wobble; + animation-name: wobble; +} + +@-webkit-keyframes jello { + from, + 11.1%, + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 22.2% { + -webkit-transform: skewX(-12.5deg) skewY(-12.5deg); + transform: skewX(-12.5deg) skewY(-12.5deg); + } + + 33.3% { + -webkit-transform: skewX(6.25deg) skewY(6.25deg); + transform: skewX(6.25deg) skewY(6.25deg); + } + + 44.4% { + -webkit-transform: skewX(-3.125deg) skewY(-3.125deg); + transform: skewX(-3.125deg) skewY(-3.125deg); + } + + 55.5% { + -webkit-transform: skewX(1.5625deg) skewY(1.5625deg); + transform: skewX(1.5625deg) skewY(1.5625deg); + } + + 66.6% { + -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg); + transform: skewX(-0.78125deg) skewY(-0.78125deg); + } + + 77.7% { + -webkit-transform: skewX(0.390625deg) skewY(0.390625deg); + transform: skewX(0.390625deg) skewY(0.390625deg); + } + + 88.8% { + -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + } +} + +@keyframes jello { + from, + 11.1%, + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + 22.2% { + -webkit-transform: skewX(-12.5deg) skewY(-12.5deg); + transform: skewX(-12.5deg) skewY(-12.5deg); + } + + 33.3% { + -webkit-transform: skewX(6.25deg) skewY(6.25deg); + transform: skewX(6.25deg) skewY(6.25deg); + } + + 44.4% { + -webkit-transform: skewX(-3.125deg) skewY(-3.125deg); + transform: skewX(-3.125deg) skewY(-3.125deg); + } + + 55.5% { + -webkit-transform: skewX(1.5625deg) skewY(1.5625deg); + transform: skewX(1.5625deg) skewY(1.5625deg); + } + + 66.6% { + -webkit-transform: skewX(-0.78125deg) skewY(-0.78125deg); + transform: skewX(-0.78125deg) skewY(-0.78125deg); + } + + 77.7% { + -webkit-transform: skewX(0.390625deg) skewY(0.390625deg); + transform: skewX(0.390625deg) skewY(0.390625deg); + } + + 88.8% { + -webkit-transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + transform: skewX(-0.1953125deg) skewY(-0.1953125deg); + } +} + +.jello { + -webkit-animation-name: jello; + animation-name: jello; + -webkit-transform-origin: center; + transform-origin: center; +} + +@-webkit-keyframes bounceIn { + from, + 20%, + 40%, + 60%, + 80%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + 20% { + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + 40% { + -webkit-transform: scale3d(0.9, 0.9, 0.9); + transform: scale3d(0.9, 0.9, 0.9); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(1.03, 1.03, 1.03); + transform: scale3d(1.03, 1.03, 1.03); + } + + 80% { + -webkit-transform: scale3d(0.97, 0.97, 0.97); + transform: scale3d(0.97, 0.97, 0.97); + } + + to { + opacity: 1; + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +@keyframes bounceIn { + from, + 20%, + 40%, + 60%, + 80%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + 20% { + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + 40% { + -webkit-transform: scale3d(0.9, 0.9, 0.9); + transform: scale3d(0.9, 0.9, 0.9); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(1.03, 1.03, 1.03); + transform: scale3d(1.03, 1.03, 1.03); + } + + 80% { + -webkit-transform: scale3d(0.97, 0.97, 0.97); + transform: scale3d(0.97, 0.97, 0.97); + } + + to { + opacity: 1; + -webkit-transform: scale3d(1, 1, 1); + transform: scale3d(1, 1, 1); + } +} + +.bounceIn { + -webkit-animation-duration: 0.75s; + animation-duration: 0.75s; + -webkit-animation-name: bounceIn; + animation-name: bounceIn; +} + +@-webkit-keyframes bounceInDown { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(0, -3000px, 0); + transform: translate3d(0, -3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, 25px, 0); + transform: translate3d(0, 25px, 0); + } + + 75% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, 5px, 0); + transform: translate3d(0, 5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes bounceInDown { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(0, -3000px, 0); + transform: translate3d(0, -3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, 25px, 0); + transform: translate3d(0, 25px, 0); + } + + 75% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, 5px, 0); + transform: translate3d(0, 5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.bounceInDown { + -webkit-animation-name: bounceInDown; + animation-name: bounceInDown; +} + +@-webkit-keyframes bounceInLeft { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(-3000px, 0, 0); + transform: translate3d(-3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(25px, 0, 0); + transform: translate3d(25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(5px, 0, 0); + transform: translate3d(5px, 0, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes bounceInLeft { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + 0% { + opacity: 0; + -webkit-transform: translate3d(-3000px, 0, 0); + transform: translate3d(-3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(25px, 0, 0); + transform: translate3d(25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(-10px, 0, 0); + transform: translate3d(-10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(5px, 0, 0); + transform: translate3d(5px, 0, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.bounceInLeft { + -webkit-animation-name: bounceInLeft; + animation-name: bounceInLeft; +} + +@-webkit-keyframes bounceInRight { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + from { + opacity: 0; + -webkit-transform: translate3d(3000px, 0, 0); + transform: translate3d(3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(-25px, 0, 0); + transform: translate3d(-25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(-5px, 0, 0); + transform: translate3d(-5px, 0, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes bounceInRight { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + from { + opacity: 0; + -webkit-transform: translate3d(3000px, 0, 0); + transform: translate3d(3000px, 0, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(-25px, 0, 0); + transform: translate3d(-25px, 0, 0); + } + + 75% { + -webkit-transform: translate3d(10px, 0, 0); + transform: translate3d(10px, 0, 0); + } + + 90% { + -webkit-transform: translate3d(-5px, 0, 0); + transform: translate3d(-5px, 0, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.bounceInRight { + -webkit-animation-name: bounceInRight; + animation-name: bounceInRight; +} + +@-webkit-keyframes bounceInUp { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + from { + opacity: 0; + -webkit-transform: translate3d(0, 3000px, 0); + transform: translate3d(0, 3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + 75% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -5px, 0); + transform: translate3d(0, -5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes bounceInUp { + from, + 60%, + 75%, + 90%, + to { + -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1); + } + + from { + opacity: 0; + -webkit-transform: translate3d(0, 3000px, 0); + transform: translate3d(0, 3000px, 0); + } + + 60% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + 75% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 90% { + -webkit-transform: translate3d(0, -5px, 0); + transform: translate3d(0, -5px, 0); + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.bounceInUp { + -webkit-animation-name: bounceInUp; + animation-name: bounceInUp; +} + +@-webkit-keyframes bounceOut { + 20% { + -webkit-transform: scale3d(0.9, 0.9, 0.9); + transform: scale3d(0.9, 0.9, 0.9); + } + + 50%, + 55% { + opacity: 1; + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } +} + +@keyframes bounceOut { + 20% { + -webkit-transform: scale3d(0.9, 0.9, 0.9); + transform: scale3d(0.9, 0.9, 0.9); + } + + 50%, + 55% { + opacity: 1; + -webkit-transform: scale3d(1.1, 1.1, 1.1); + transform: scale3d(1.1, 1.1, 1.1); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } +} + +.bounceOut { + -webkit-animation-duration: 0.75s; + animation-duration: 0.75s; + -webkit-animation-name: bounceOut; + animation-name: bounceOut; +} + +@-webkit-keyframes bounceOutDown { + 20% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 40%, + 45% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +@keyframes bounceOutDown { + 20% { + -webkit-transform: translate3d(0, 10px, 0); + transform: translate3d(0, 10px, 0); + } + + 40%, + 45% { + opacity: 1; + -webkit-transform: translate3d(0, -20px, 0); + transform: translate3d(0, -20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +.bounceOutDown { + -webkit-animation-name: bounceOutDown; + animation-name: bounceOutDown; +} + +@-webkit-keyframes bounceOutLeft { + 20% { + opacity: 1; + -webkit-transform: translate3d(20px, 0, 0); + transform: translate3d(20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +@keyframes bounceOutLeft { + 20% { + opacity: 1; + -webkit-transform: translate3d(20px, 0, 0); + transform: translate3d(20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +.bounceOutLeft { + -webkit-animation-name: bounceOutLeft; + animation-name: bounceOutLeft; +} + +@-webkit-keyframes bounceOutRight { + 20% { + opacity: 1; + -webkit-transform: translate3d(-20px, 0, 0); + transform: translate3d(-20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +@keyframes bounceOutRight { + 20% { + opacity: 1; + -webkit-transform: translate3d(-20px, 0, 0); + transform: translate3d(-20px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +.bounceOutRight { + -webkit-animation-name: bounceOutRight; + animation-name: bounceOutRight; +} + +@-webkit-keyframes bounceOutUp { + 20% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 40%, + 45% { + opacity: 1; + -webkit-transform: translate3d(0, 20px, 0); + transform: translate3d(0, 20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +@keyframes bounceOutUp { + 20% { + -webkit-transform: translate3d(0, -10px, 0); + transform: translate3d(0, -10px, 0); + } + + 40%, + 45% { + opacity: 1; + -webkit-transform: translate3d(0, 20px, 0); + transform: translate3d(0, 20px, 0); + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +.bounceOutUp { + -webkit-animation-name: bounceOutUp; + animation-name: bounceOutUp; +} + +@-webkit-keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +@keyframes fadeIn { + from { + opacity: 0; + } + + to { + opacity: 1; + } +} + +.fadeIn { + -webkit-animation-name: fadeIn; + animation-name: fadeIn; +} + +@-webkit-keyframes fadeInDown { + from { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInDown { + from { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInDown { + -webkit-animation-name: fadeInDown; + animation-name: fadeInDown; +} + +@-webkit-keyframes fadeInDownBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInDownBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInDownBig { + -webkit-animation-name: fadeInDownBig; + animation-name: fadeInDownBig; +} + +@-webkit-keyframes fadeInLeft { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInLeft { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInLeft { + -webkit-animation-name: fadeInLeft; + animation-name: fadeInLeft; +} + +@-webkit-keyframes fadeInLeftBig { + from { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInLeftBig { + from { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInLeftBig { + -webkit-animation-name: fadeInLeftBig; + animation-name: fadeInLeftBig; +} + +@-webkit-keyframes fadeInRight { + from { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInRight { + from { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInRight { + -webkit-animation-name: fadeInRight; + animation-name: fadeInRight; +} + +@-webkit-keyframes fadeInRightBig { + from { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInRightBig { + from { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInRightBig { + -webkit-animation-name: fadeInRightBig; + animation-name: fadeInRightBig; +} + +@-webkit-keyframes fadeInUp { + from { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInUp { + from { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInUp { + -webkit-animation-name: fadeInUp; + animation-name: fadeInUp; +} + +@-webkit-keyframes fadeInUpBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes fadeInUpBig { + from { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.fadeInUpBig { + -webkit-animation-name: fadeInUpBig; + animation-name: fadeInUpBig; +} + +@-webkit-keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +@keyframes fadeOut { + from { + opacity: 1; + } + + to { + opacity: 0; + } +} + +.fadeOut { + -webkit-animation-name: fadeOut; + animation-name: fadeOut; +} + +@-webkit-keyframes fadeOutDown { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +@keyframes fadeOutDown { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +.fadeOutDown { + -webkit-animation-name: fadeOutDown; + animation-name: fadeOutDown; +} + +@-webkit-keyframes fadeOutDownBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +@keyframes fadeOutDownBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, 2000px, 0); + transform: translate3d(0, 2000px, 0); + } +} + +.fadeOutDownBig { + -webkit-animation-name: fadeOutDownBig; + animation-name: fadeOutDownBig; +} + +@-webkit-keyframes fadeOutLeft { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +@keyframes fadeOutLeft { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +.fadeOutLeft { + -webkit-animation-name: fadeOutLeft; + animation-name: fadeOutLeft; +} + +@-webkit-keyframes fadeOutLeftBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +@keyframes fadeOutLeftBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(-2000px, 0, 0); + transform: translate3d(-2000px, 0, 0); + } +} + +.fadeOutLeftBig { + -webkit-animation-name: fadeOutLeftBig; + animation-name: fadeOutLeftBig; +} + +@-webkit-keyframes fadeOutRight { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +@keyframes fadeOutRight { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +.fadeOutRight { + -webkit-animation-name: fadeOutRight; + animation-name: fadeOutRight; +} + +@-webkit-keyframes fadeOutRightBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +@keyframes fadeOutRightBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(2000px, 0, 0); + transform: translate3d(2000px, 0, 0); + } +} + +.fadeOutRightBig { + -webkit-animation-name: fadeOutRightBig; + animation-name: fadeOutRightBig; +} + +@-webkit-keyframes fadeOutUp { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +@keyframes fadeOutUp { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +.fadeOutUp { + -webkit-animation-name: fadeOutUp; + animation-name: fadeOutUp; +} + +@-webkit-keyframes fadeOutUpBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +@keyframes fadeOutUpBig { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(0, -2000px, 0); + transform: translate3d(0, -2000px, 0); + } +} + +.fadeOutUpBig { + -webkit-animation-name: fadeOutUpBig; + animation-name: fadeOutUpBig; +} + +@-webkit-keyframes flip { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 40% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 50% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 80% { + -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95); + transform: perspective(400px) scale3d(0.95, 0.95, 0.95); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } +} + +@keyframes flip { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + transform: perspective(400px) rotate3d(0, 1, 0, -360deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 40% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -190deg); + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; + } + + 50% { + -webkit-transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + transform: perspective(400px) translate3d(0, 0, 150px) rotate3d(0, 1, 0, -170deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 80% { + -webkit-transform: perspective(400px) scale3d(0.95, 0.95, 0.95); + transform: perspective(400px) scale3d(0.95, 0.95, 0.95); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } +} + +.animated.flip { + -webkit-backface-visibility: visible; + backface-visibility: visible; + -webkit-animation-name: flip; + animation-name: flip; +} + +@-webkit-keyframes flipInX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +@keyframes flipInX { + from { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + transform: perspective(400px) rotate3d(1, 0, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + transform: perspective(400px) rotate3d(1, 0, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +.flipInX { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInX; + animation-name: flipInX; +} + +@-webkit-keyframes flipInY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +@keyframes flipInY { + from { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + opacity: 0; + } + + 40% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + transform: perspective(400px) rotate3d(0, 1, 0, -20deg); + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; + } + + 60% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + transform: perspective(400px) rotate3d(0, 1, 0, 10deg); + opacity: 1; + } + + 80% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + transform: perspective(400px) rotate3d(0, 1, 0, -5deg); + } + + to { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } +} + +.flipInY { + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipInY; + animation-name: flipInY; +} + +@-webkit-keyframes flipOutX { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutX { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + transform: perspective(400px) rotate3d(1, 0, 0, -20deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + transform: perspective(400px) rotate3d(1, 0, 0, 90deg); + opacity: 0; + } +} + +.flipOutX { + -webkit-animation-duration: 0.75s; + animation-duration: 0.75s; + -webkit-animation-name: flipOutX; + animation-name: flipOutX; + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; +} + +@-webkit-keyframes flipOutY { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +@keyframes flipOutY { + from { + -webkit-transform: perspective(400px); + transform: perspective(400px); + } + + 30% { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + transform: perspective(400px) rotate3d(0, 1, 0, -15deg); + opacity: 1; + } + + to { + -webkit-transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + transform: perspective(400px) rotate3d(0, 1, 0, 90deg); + opacity: 0; + } +} + +.flipOutY { + -webkit-animation-duration: 0.75s; + animation-duration: 0.75s; + -webkit-backface-visibility: visible !important; + backface-visibility: visible !important; + -webkit-animation-name: flipOutY; + animation-name: flipOutY; +} + +@-webkit-keyframes lightSpeedIn { + from { + -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg); + transform: translate3d(100%, 0, 0) skewX(-30deg); + opacity: 0; + } + + 60% { + -webkit-transform: skewX(20deg); + transform: skewX(20deg); + opacity: 1; + } + + 80% { + -webkit-transform: skewX(-5deg); + transform: skewX(-5deg); + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes lightSpeedIn { + from { + -webkit-transform: translate3d(100%, 0, 0) skewX(-30deg); + transform: translate3d(100%, 0, 0) skewX(-30deg); + opacity: 0; + } + + 60% { + -webkit-transform: skewX(20deg); + transform: skewX(20deg); + opacity: 1; + } + + 80% { + -webkit-transform: skewX(-5deg); + transform: skewX(-5deg); + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.lightSpeedIn { + -webkit-animation-name: lightSpeedIn; + animation-name: lightSpeedIn; + -webkit-animation-timing-function: ease-out; + animation-timing-function: ease-out; +} + +@-webkit-keyframes lightSpeedOut { + from { + opacity: 1; + } + + to { + -webkit-transform: translate3d(100%, 0, 0) skewX(30deg); + transform: translate3d(100%, 0, 0) skewX(30deg); + opacity: 0; + } +} + +@keyframes lightSpeedOut { + from { + opacity: 1; + } + + to { + -webkit-transform: translate3d(100%, 0, 0) skewX(30deg); + transform: translate3d(100%, 0, 0) skewX(30deg); + opacity: 0; + } +} + +.lightSpeedOut { + -webkit-animation-name: lightSpeedOut; + animation-name: lightSpeedOut; + -webkit-animation-timing-function: ease-in; + animation-timing-function: ease-in; +} + +@-webkit-keyframes rotateIn { + from { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, -200deg); + transform: rotate3d(0, 0, 1, -200deg); + opacity: 0; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes rotateIn { + from { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, -200deg); + transform: rotate3d(0, 0, 1, -200deg); + opacity: 0; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.rotateIn { + -webkit-animation-name: rotateIn; + animation-name: rotateIn; +} + +@-webkit-keyframes rotateInDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes rotateInDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.rotateInDownLeft { + -webkit-animation-name: rotateInDownLeft; + animation-name: rotateInDownLeft; +} + +@-webkit-keyframes rotateInDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes rotateInDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.rotateInDownRight { + -webkit-animation-name: rotateInDownRight; + animation-name: rotateInDownRight; +} + +@-webkit-keyframes rotateInUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes rotateInUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.rotateInUpLeft { + -webkit-animation-name: rotateInUpLeft; + animation-name: rotateInUpLeft; +} + +@-webkit-keyframes rotateInUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -90deg); + transform: rotate3d(0, 0, 1, -90deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +@keyframes rotateInUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -90deg); + transform: rotate3d(0, 0, 1, -90deg); + opacity: 0; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + opacity: 1; + } +} + +.rotateInUpRight { + -webkit-animation-name: rotateInUpRight; + animation-name: rotateInUpRight; +} + +@-webkit-keyframes rotateOut { + from { + -webkit-transform-origin: center; + transform-origin: center; + opacity: 1; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, 200deg); + transform: rotate3d(0, 0, 1, 200deg); + opacity: 0; + } +} + +@keyframes rotateOut { + from { + -webkit-transform-origin: center; + transform-origin: center; + opacity: 1; + } + + to { + -webkit-transform-origin: center; + transform-origin: center; + -webkit-transform: rotate3d(0, 0, 1, 200deg); + transform: rotate3d(0, 0, 1, 200deg); + opacity: 0; + } +} + +.rotateOut { + -webkit-animation-name: rotateOut; + animation-name: rotateOut; +} + +@-webkit-keyframes rotateOutDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } +} + +@keyframes rotateOutDownLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, 45deg); + transform: rotate3d(0, 0, 1, 45deg); + opacity: 0; + } +} + +.rotateOutDownLeft { + -webkit-animation-name: rotateOutDownLeft; + animation-name: rotateOutDownLeft; +} + +@-webkit-keyframes rotateOutDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +@keyframes rotateOutDownRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutDownRight { + -webkit-animation-name: rotateOutDownRight; + animation-name: rotateOutDownRight; +} + +@-webkit-keyframes rotateOutUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +@keyframes rotateOutUpLeft { + from { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: left bottom; + transform-origin: left bottom; + -webkit-transform: rotate3d(0, 0, 1, -45deg); + transform: rotate3d(0, 0, 1, -45deg); + opacity: 0; + } +} + +.rotateOutUpLeft { + -webkit-animation-name: rotateOutUpLeft; + animation-name: rotateOutUpLeft; +} + +@-webkit-keyframes rotateOutUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 90deg); + transform: rotate3d(0, 0, 1, 90deg); + opacity: 0; + } +} + +@keyframes rotateOutUpRight { + from { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + opacity: 1; + } + + to { + -webkit-transform-origin: right bottom; + transform-origin: right bottom; + -webkit-transform: rotate3d(0, 0, 1, 90deg); + transform: rotate3d(0, 0, 1, 90deg); + opacity: 0; + } +} + +.rotateOutUpRight { + -webkit-animation-name: rotateOutUpRight; + animation-name: rotateOutUpRight; +} + +@-webkit-keyframes hinge { + 0% { + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 20%, + 60% { + -webkit-transform: rotate3d(0, 0, 1, 80deg); + transform: rotate3d(0, 0, 1, 80deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 40%, + 80% { + -webkit-transform: rotate3d(0, 0, 1, 60deg); + transform: rotate3d(0, 0, 1, 60deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 700px, 0); + transform: translate3d(0, 700px, 0); + opacity: 0; + } +} + +@keyframes hinge { + 0% { + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 20%, + 60% { + -webkit-transform: rotate3d(0, 0, 1, 80deg); + transform: rotate3d(0, 0, 1, 80deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + } + + 40%, + 80% { + -webkit-transform: rotate3d(0, 0, 1, 60deg); + transform: rotate3d(0, 0, 1, 60deg); + -webkit-transform-origin: top left; + transform-origin: top left; + -webkit-animation-timing-function: ease-in-out; + animation-timing-function: ease-in-out; + opacity: 1; + } + + to { + -webkit-transform: translate3d(0, 700px, 0); + transform: translate3d(0, 700px, 0); + opacity: 0; + } +} + +.hinge { + -webkit-animation-duration: 2s; + animation-duration: 2s; + -webkit-animation-name: hinge; + animation-name: hinge; +} + +@-webkit-keyframes jackInTheBox { + from { + opacity: 0; + -webkit-transform: scale(0.1) rotate(30deg); + transform: scale(0.1) rotate(30deg); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + } + + 50% { + -webkit-transform: rotate(-10deg); + transform: rotate(-10deg); + } + + 70% { + -webkit-transform: rotate(3deg); + transform: rotate(3deg); + } + + to { + opacity: 1; + -webkit-transform: scale(1); + transform: scale(1); + } +} + +@keyframes jackInTheBox { + from { + opacity: 0; + -webkit-transform: scale(0.1) rotate(30deg); + transform: scale(0.1) rotate(30deg); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + } + + 50% { + -webkit-transform: rotate(-10deg); + transform: rotate(-10deg); + } + + 70% { + -webkit-transform: rotate(3deg); + transform: rotate(3deg); + } + + to { + opacity: 1; + -webkit-transform: scale(1); + transform: scale(1); + } +} + +.jackInTheBox { + -webkit-animation-name: jackInTheBox; + animation-name: jackInTheBox; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes rollIn { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes rollIn { + from { + opacity: 0; + -webkit-transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + transform: translate3d(-100%, 0, 0) rotate3d(0, 0, 1, -120deg); + } + + to { + opacity: 1; + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.rollIn { + -webkit-animation-name: rollIn; + animation-name: rollIn; +} + +/* originally authored by Nick Pettit - https://github.com/nickpettit/glide */ + +@-webkit-keyframes rollOut { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + } +} + +@keyframes rollOut { + from { + opacity: 1; + } + + to { + opacity: 0; + -webkit-transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + transform: translate3d(100%, 0, 0) rotate3d(0, 0, 1, 120deg); + } +} + +.rollOut { + -webkit-animation-name: rollOut; + animation-name: rollOut; +} + +@-webkit-keyframes zoomIn { + from { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + 50% { + opacity: 1; + } +} + +@keyframes zoomIn { + from { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + 50% { + opacity: 1; + } +} + +.zoomIn { + -webkit-animation-name: zoomIn; + animation-name: zoomIn; +} + +@-webkit-keyframes zoomInDown { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomInDown { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomInDown { + -webkit-animation-name: zoomInDown; + animation-name: zoomInDown; +} + +@-webkit-keyframes zoomInLeft { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomInLeft { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(-1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomInLeft { + -webkit-animation-name: zoomInLeft; + animation-name: zoomInLeft; +} + +@-webkit-keyframes zoomInRight { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomInRight { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(1000px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(-10px, 0, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomInRight { + -webkit-animation-name: zoomInRight; + animation-name: zoomInRight; +} + +@-webkit-keyframes zoomInUp { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomInUp { + from { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 1000px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + 60% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomInUp { + -webkit-animation-name: zoomInUp; + animation-name: zoomInUp; +} + +@-webkit-keyframes zoomOut { + from { + opacity: 1; + } + + 50% { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + to { + opacity: 0; + } +} + +@keyframes zoomOut { + from { + opacity: 1; + } + + 50% { + opacity: 0; + -webkit-transform: scale3d(0.3, 0.3, 0.3); + transform: scale3d(0.3, 0.3, 0.3); + } + + to { + opacity: 0; + } +} + +.zoomOut { + -webkit-animation-name: zoomOut; + animation-name: zoomOut; +} + +@-webkit-keyframes zoomOutDown { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomOutDown { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, -60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, 2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomOutDown { + -webkit-animation-name: zoomOutDown; + animation-name: zoomOutDown; +} + +@-webkit-keyframes zoomOutLeft { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0); + transform: scale(0.1) translate3d(-2000px, 0, 0); + -webkit-transform-origin: left center; + transform-origin: left center; + } +} + +@keyframes zoomOutLeft { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(0.1) translate3d(-2000px, 0, 0); + transform: scale(0.1) translate3d(-2000px, 0, 0); + -webkit-transform-origin: left center; + transform-origin: left center; + } +} + +.zoomOutLeft { + -webkit-animation-name: zoomOutLeft; + animation-name: zoomOutLeft; +} + +@-webkit-keyframes zoomOutRight { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(0.1) translate3d(2000px, 0, 0); + transform: scale(0.1) translate3d(2000px, 0, 0); + -webkit-transform-origin: right center; + transform-origin: right center; + } +} + +@keyframes zoomOutRight { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(-42px, 0, 0); + } + + to { + opacity: 0; + -webkit-transform: scale(0.1) translate3d(2000px, 0, 0); + transform: scale(0.1) translate3d(2000px, 0, 0); + -webkit-transform-origin: right center; + transform-origin: right center; + } +} + +.zoomOutRight { + -webkit-animation-name: zoomOutRight; + animation-name: zoomOutRight; +} + +@-webkit-keyframes zoomOutUp { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +@keyframes zoomOutUp { + 40% { + opacity: 1; + -webkit-transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + transform: scale3d(0.475, 0.475, 0.475) translate3d(0, 60px, 0); + -webkit-animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + animation-timing-function: cubic-bezier(0.55, 0.055, 0.675, 0.19); + } + + to { + opacity: 0; + -webkit-transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0); + transform: scale3d(0.1, 0.1, 0.1) translate3d(0, -2000px, 0); + -webkit-transform-origin: center bottom; + transform-origin: center bottom; + -webkit-animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + animation-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1); + } +} + +.zoomOutUp { + -webkit-animation-name: zoomOutUp; + animation-name: zoomOutUp; +} + +@-webkit-keyframes slideInDown { + from { + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInDown { + from { + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInDown { + -webkit-animation-name: slideInDown; + animation-name: slideInDown; +} + +@-webkit-keyframes slideInLeft { + from { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInLeft { + from { + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInLeft { + -webkit-animation-name: slideInLeft; + animation-name: slideInLeft; +} + +@-webkit-keyframes slideInRight { + from { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInRight { + from { + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInRight { + -webkit-animation-name: slideInRight; + animation-name: slideInRight; +} + +@-webkit-keyframes slideInUp { + from { + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +@keyframes slideInUp { + from { + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + visibility: visible; + } + + to { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } +} + +.slideInUp { + -webkit-animation-name: slideInUp; + animation-name: slideInUp; +} + +@-webkit-keyframes slideOutDown { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +@keyframes slideOutDown { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, 100%, 0); + transform: translate3d(0, 100%, 0); + } +} + +.slideOutDown { + -webkit-animation-name: slideOutDown; + animation-name: slideOutDown; +} + +@-webkit-keyframes slideOutLeft { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +@keyframes slideOutLeft { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(-100%, 0, 0); + transform: translate3d(-100%, 0, 0); + } +} + +.slideOutLeft { + -webkit-animation-name: slideOutLeft; + animation-name: slideOutLeft; +} + +@-webkit-keyframes slideOutRight { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +@keyframes slideOutRight { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(100%, 0, 0); + transform: translate3d(100%, 0, 0); + } +} + +.slideOutRight { + -webkit-animation-name: slideOutRight; + animation-name: slideOutRight; +} + +@-webkit-keyframes slideOutUp { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +@keyframes slideOutUp { + from { + -webkit-transform: translate3d(0, 0, 0); + transform: translate3d(0, 0, 0); + } + + to { + visibility: hidden; + -webkit-transform: translate3d(0, -100%, 0); + transform: translate3d(0, -100%, 0); + } +} + +.slideOutUp { + -webkit-animation-name: slideOutUp; + animation-name: slideOutUp; +} diff --git a/template/xcx/css/guildford.wxss b/template/xcx/css/guildford.wxss new file mode 100644 index 000000000..4b43b8b11 --- /dev/null +++ b/template/xcx/css/guildford.wxss @@ -0,0 +1,16 @@ +@font-face { + font-family: 'Guildford Pro'; + src: url('GuildfordPro.eot'); + font-weight: normal; + font-style: normal; +} +@font-face { + font-family: 'Guildford Pro'; + src: url(data:application/font-woff2;charset=utf-8;base64,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) format('woff2'), + url(data:application/font-woff;charset=utf-8;base64,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) format('woff'), + url('GuildfordPro.ttf') format('truetype'), + url('GuildfordPro.svg#GuildfordPro') format('svg'); + font-weight: normal; + font-style: normal; +} + diff --git a/template/xcx/css/style.wxss b/template/xcx/css/style.wxss new file mode 100644 index 000000000..150d20973 --- /dev/null +++ b/template/xcx/css/style.wxss @@ -0,0 +1,143 @@ +.product-con .wrapper{background-color:#fff;} +.product-con .wrapper .share{margin:0 30rpx;padding-top:25rpx;} +.product-con .wrapper .share .money{font-size:28rpx;font-weight:bold;} +.product-con .wrapper .share .money .num{font-size:48rpx;} +.product-con .wrapper .share .money .vip-money{color:#282828;margin-left:13rpx;} +.product-con .wrapper .share .money image{width:46rpx;height:21rpx;margin-left:7rpx;} +.product-con .wrapper .share .money .vip-money{color:#282828;margin-left:13rpx;} +.product-con .wrapper .share .iconfont{color:#515151;font-size:40rpx;margin-bottom:10rpx; +} +.product-con .wrapper .introduce{font-size:32rpx;font-weight:bold;margin:23rpx 30rpx 0 30rpx;} +.product-con .wrapper .label{margin:0 30rpx;font-size:24rpx;color:#82848f;margin-top:22rpx;} +.product-con .wrapper .coupon{padding:0 30rpx;border-top:1rpx solid #f5f5f5;margin-top:25rpx;height:80rpx;font-size:26rpx;color:#82848f;} +.product-con .wrapper .coupon .hide{width:540rpx;height:80rpx;line-height:80rpx;} +.product-con .wrapper .coupon .activity{height:40rpx;padding:0 20rpx;border:1rpx solid #f2857b;color:#e93323;font-size:24rpx;line-height:40rpx;position:relative;margin:19rpx 0 19rpx 15rpx;} +.product-con .wrapper .coupon .activity:before { + content: ' '; + position: absolute; + width:7rpx; + height:10rpx; + border-radius:0 7rpx 7rpx 0; + border:1rpx solid #f2857b; + background-color:#fff; + bottom:50%; + left:-1rpx; + margin-bottom: -5rpx; + border-left-color:#fff; +} +.product-con .wrapper .coupon .activity:after { + content: ' '; + position: absolute; + width:7rpx; + height:10rpx; + border-radius:7rpx 0 0 7rpx; + border:1rpx solid #f2857b; + background-color:#fff; + right:-1rpx; + bottom:50%; + margin-bottom: -5rpx; + border-right-color:#fff; +} +.product-con .wrapper .coupon .iconfont{color:#7a7a7a;font-size:28rpx;} +.product-con .attribute{background-color:#fff;padding:0 30rpx;font-size:26rpx;color:#82848f;margin-top:20rpx;height:80rpx;} +.product-con .attribute .atterTxt{font-size:28rpx;color:#282828;} +.product-con .attribute .iconfont{font-size:28rpx;color:#7a7a7a;} +.product-con .userEvaluation{margin-top:20rpx;background-color:#fff;} +.product-con .userEvaluation .title{height:86rpx;border-bottom:1rpx solid #eee;font-size:28rpx;color:#282828;margin-left:30rpx;padding-right:30rpx;} +.product-con .userEvaluation .title .praise{font-size:28rpx;color:#808080;} +.product-con .userEvaluation .title .praise .iconfont{color:#7a7a7a;font-size:28rpx;vertical-align:1rpx;margin-left:8rpx;} +.product-con .product-intro{margin-top:20rpx;} +.product-con .product-intro .title{font-size:30rpx;color:#282828;height:86rpx;width:100%;background-color:#fff;text-align:center;line-height:86rpx;} +.product-con .product-intro .conter{width:100%;overflow:hidden;} +.product-con .product-intro .conter image{width:100%!important;display:block!important;} +.goodsStyle{margin-top:1rpx;background-color:#fff;padding:22rpx 30rpx;} +.goodsStyle .pictrue{width:120rpx;height:120rpx;} +.goodsStyle .pictrue image{width:100%;height:100%;border-radius:6rpx;} +.goodsStyle .text{width:545rpx;font-size:28rpx;color:#999;} +.goodsStyle .text .name{width:360rpx;color:#282828;height:75rpx;} +.goodsStyle .text .money{text-align:right;} +.goodsStyle .text .money .num{margin-top:7rpx;} +.goodWrapper .item{margin-left:30rpx;padding-right:30rpx;border-bottom:2rpx solid #f0f0f0;height:180rpx;} +.goodWrapper .item .pictrue{width:130rpx;height:130rpx;} +.goodWrapper .item .pictrue image{width:100%;height:100%;border-radius:6rpx;} +.goodWrapper .item .text{width:537rpx;position:relative;} +.goodWrapper .item .text .name{font-size:28rpx;color:#282828;width:453rpx;} +.goodWrapper .item .text .num{font-size:26rpx;color:#868686;} +.goodWrapper .item .text .attr{font-size:20rpx;color:#868686;margin-top:7rpx;} +.goodWrapper .item .text .money{font-size:26rpx;margin-top:17rpx;} +.goodWrapper .item .text .evaluate{position:absolute;width:114rpx;height:46rpx;border:1rpx solid #bbb;border-radius:4rpx;text-align:center;line-height:46rpx;right:0;bottom:-5rpx;} +.goodWrapper .item .text .evaluate.userEvaluated{font-size:26rpx;color:#aaa;background-color:#f7f7f7;border-color:#f7f7f7;} +.promoterHeader{width:100%;height:220rpx;} +.promoterHeader .headerCon{width:100%;height:100%;padding:0 88rpx 0 55rpx;box-sizing:border-box;font-size:28rpx;color:#fff;background-image:url('data:image/png;base64,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');background-repeat:no-repeat;background-size:100% 100%;} +.promoterHeader .headerCon .name{margin-bottom:10rpx;} +.promoterHeader .headerCon .num{font-size:50rpx;} +.promoterHeader .headerCon .iconfont{font-size:125rpx;} +.sign-record .list .item .data{height:80rpx;line-height:80rpx;padding:0 30rpx;font-size:24rpx;color:#666;} +.sign-record .list .item .listn{background-color:#fff;font-size:24rpx;color:#999;} +.sign-record .list .item .listn .itemn{height:120rpx;border-bottom:1rpx solid #eee;padding-right:30rpx;margin-left:30rpx;} +.sign-record .list .item .listn .itemn .name{width:390rpx;font-size:28rpx;color:#282828;margin-bottom:10rpx;} +.sign-record .list .item .listn .itemn .num{font-size:36rpx;font-family: 'Guildford Pro';color:#16ac57;} +.coupon-list{padding:0 30rpx;margin-top:25rpx;} +.coupon-list .item{width:100%;height:170rpx;margin-bottom:16rpx;} +.coupon-list .item .money{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAACqCAMAAACknjIxAAAArlBMVEUAAAD9ZFf9ZFf9ZFf4Ylb/aVz8ZVj/aFv8YVP+ZVj7XlHrQTL9Y1XzU0X6XE7wSTryT0HuRjf5WkzzUUPtQzX4VkjuPi/1V0rrPy/4WEr4YFP0Vkj1WUz3XlDxTT/wSzz1UUP1VUftPCzySz33Wk3ySTr3XE/vQTLwRDXtQTL0T0H5YlXxRjfsOSr1U0XvQzTzTj/3VEX6Z1n5ZFfwRjj0TD3qMyPrNyf7aFzqNSXs5hklAAAAB3RSTlMAE3ZuqadUJqTWHgAAHvdJREFUeNqsnHlXGkkUxXXmzOZMCwhqEFQIokAI4Nic4/f/ZPOWqrpV9QoqPSeXbmdJ/vnlvq0WcgH90VV//fFXSf/88w+9QX+mukp0fXWtuqHHaXwzpod1Sw80J72Tdu+72W43i7RxOmwOh8ORPofj8bhQLYN6vd5yuQXvZUdYxQUzcM/QpsTXkOJCYyWOpbT0Mu0OtBGvBz6KImBiZbVtBPx7J156idbigtgCW4tBe21gWRHt7e27aKcq+Mu4DOwVHIbF2xj4t464kHUYsqwlh2u8QhuAg72CPpwluIcCbk8+y2273AL48rOTwVVaVR7RRdrUYNDGvLdzH8+KC176TwBnuItgLhG32y09nQyGkL0dAjrBTYENrwFWeyWiI9xGLA60CfAyUdvbslrP+0s3e/8o4YK2Xp+zcnUd4dqChXCOcdXfYTMcir+qzF4Y3ApvcPjXc4RJsDMr/+gez8ZfVCxjb9qPYmKlnTOtODwczojY0SpvoVy1SzIYDl+aeK4ZXE7gj5gWvKC1xOV4vmVeAEsG70L+7uaC3hB9MxRt1FwYHKevr88qov39t8/O80Ylf4ELYJvBqgj35lR9ZsJg75zsffch3QA46b4o0Ay8Vd6Wfnacr+Cu4a2XK/DGqhSsOaKZxLjibyP46i8cFl6V4tJD2i6VF8A/uSP9SU8lgZG+tfJ868vzTHhZGs9N0zDxDMAs4AbkrSvQ8rMO/GknDhvN9fYLnTCXHvACOMzPMa4QK62IcZX2iPxld+V1tC0Try5+kr+MjPytD1iWuVyvXEQD912Itf963j7qc2pwbu9qtbq4/PWz4m993hBcABud6kcVXAZG/s5V9M+GidVhlfcXBRrq6cThebeYOX6GvfX2ewVak74G+B3jFRmrYnbh9QG94QyO6jMkNTrYu6KHkLkL163F+qhib16wbPeF6vOkE+HeK+27z99mNpOKpcQw2KwI/byhtCsLbGmBXAzoIi5UTV7Li+xVsbuIZwGeyYAVgAPuMnO4ZVJ9GZmFkK7U51o/Kpcrs/qF4vp8Y+P5XSbKneLeB+BdoxW6CbgbyuFQoBkYE4ewxrQoWl3mSduRwMtPHbe84M/TVz2e39/PJ6m/TeN4AWzKcw/jpNgM4Ep9RrWqO6y09f57w082TdoGrLq/v59MCFj0rv7KRA1i7koOF+mrDgfglQfeX1Rx7QYWWPmtAwMX9dnw2uWC4rLBCuzKFT07wG64DW8K66Olx20Jt115XnG4Hs+nzD3rL3ir47PtR3MJZgUO0oGDCxaAN/1+n9qSp0U8b6OOFLTfSw7XF8D0fma0pvl2WfCrME4W1r9zZ2+gZV7SMK5XhCuCw0zL44YPZ5fAW8e7rw4e9f06tCOwnqvP5eUgFOPeM+/EFazGLfmhvid+yv1tFVcFfwX48meNV/X52RoMXvg7F1wlhnaSviJnsCCLDv1D2pCW2nsVGfbWgTWgK/Ya4hy2th+bTc+399Ox4w0dSQVc4kVIHw70LrAelIDGiAWDT4X0Z0BV6E7jleXNzlOAe1NsR5TQ4+l46uyduARmXFUU0I6VftDLSaz7V60GtFRo4IreULRAC50JZzB32t9IHbbA8/l0TMoCWhf88g4jbQSYPqIn0uLpebmM14M5L/pwNaDr7bfM22nBwO6SuUHwl2kz3v7GhTPDCi7reYH1YDRwrBiXBOBODTiR3a+r45YXwOMXwp0mwJOJ4w3BDGB6RN5e1fOzFGmbvm8G2Kz36wXaGmzsrdVnlOeXl6kIuCrMWAkvJMAL5zATtyxtv+quJw45DNpP4JLFVdxcJ8szThdOhPOYeNnfsaPFUEnKDaaz0YD79OTyV+wlXJK3F8BvClwePFyB7nA6WF0wFHfcE9wpAYu74rDiemAZoAMxOcpeHp8Ul184rMRJwQLumoEvYWzHeLbElfIMg427pDEVaE/LsPc+oMVgWKwbdioK5r4vWTBYiFNexX1T4PqOO2DhsaX9oRVw6bTsRSTpi/yFv27GGsocvTlGvMuFC2d+YTADK6vjVa1J5ZAm2Ho82wE6w8WGXXHHLrFX5f1NVsGNSmh1w24RtCRihHMM3HrgPcnz0qtFi55cZV4wA7d+QCi8Lwkxc8Jdb/DY04rDgRcz1kZvcCisSswNDiOmBVhxPTB/LlCis1kDyB0vrMBf8KIdCTDWg2PgZg3YK1ozCKzgHqPt52dENAnAmK58OEvRynxFAlfXR13W+7YjWVzQgpfrVQhoPS+zJ/yLRWjBC6JFSEfzhvf47qJer6Af7b+G1hRoE81UozPiieDOg70b7689ABZ7Ec8ZsDOYaMnkOwweKFcgtvZCnY9DxyhZwV0YTG/KG1YNHveYHJjFigsWgI29qNJ2fu6av93XvzevpMB7D1yTwaQN7iMVNmS3S8yUQUhgpaWHdYc+DOAqrp2fbbkqr4BDhRbaAIxw9lMHiOdsrwKjISXbOcst4tmr3atgL713d28ArsxXqb2wuHIcWlotjCmaX9VfFYcziOf0RNoBN7/AgQMGwkU8w+C3pCORvSQT0kXcc8e/GWz5fBDMHhe8MkRH9upOpZjczDmalffMhdFtLzO4jcuV4pKYF0ULrJV+ZM+Puq0HGVd5oaQpEewE9jrgQ/E6A4uXvs9OAAav/3BAM7DZouxYn9P2exI46BW8MXBUnpHBiqsGW3/JXIlnAJMEN1SsaIYmWHW4Xp+TeO58v04FXAs8ZYU1IRK4CbjFeqX3c0S91OC2VVzwcr1aG2Bpv5+V+1emPtfrFeL55fHR46IlmVWS08xdKMRt4GPGu/Rnvw4YxIK7h72Ka3K42I8SXBvPZp48Hc83j6LXpCMBN10mzZQWwEqbFCy/HWtT+A0NWLLY4aJKI31r/aiCC1jDS6wADv6qIlwZshpvb96Al7ziV2i+brZERKdNWGhhMIQ+/APXzc4f759EFndfQRulMHDBO6HaDFyxGMCHcJIkAQ2DmRfIYu9aecXgdQ7cbTtHeavxDOCX4G6axFMzVRLvzH2BAfYCV3mJWA4Y3PFvYq9W6bdIgEVIK/Bn7Xyw24UkfEUlRPPjWYMnzLtjWuQvVkiCq6KoJk5WKFkJb2+A+vwGe1G0Tm3owOIQzcCt2Iv1/qMXcF+zBowSzbAAjgfKfsR7OEhH0vOjHnjRl5gW/sbA3H7LuGcS+OzxLxoSP68PDzkvHM470gy8aTwf+0NsQ/M+9HN0PBjnb0sPSydKnjcMMHg7xTOIrzPgSITLQvqqzMih0mgGL+w9AJcS+EDEC2Xl04UWDjNwq9qLw3e5vl7U96/QfqEzBkd6UdyHzF/gqtTeHewNUnsP7hQJx0j0Rse/vYhXNKBPu9cBC8zI4UqFro2TJ3kfHwBMMvn7EhlMczPk7BXe47GfnPQzLYthSQIMtUGDwWDFMZ0Z/JWrdIm2w/KInvwACdEcMhjECGj0pF1Ci906xQXxk9czzkOZGPIWs1aj0WgwWgNXgS9r8waAa99Pga4fYK/S0qO8tiVRNM8cbSjPEs/HQ4AdemB1uMfxvHJKeHsAHqmA/LUCjJDu+vWFByi2NxuhFXkefX8QtKwD3EWJFuhnzV5/4G1ymO1lXhCrvwjpyv4VcG0HtrhXBVzrrxo8p4ve4MX+BnCHbG8W0b3kQtI+JR54gyH1l0VF69+zt+sAXLkAHdWqb8C16QtijWYOZ0hwJYf7OOV3tFy14gzG4aAj9vWKmelXA+6eiIlVgasLpI77Oa8GFwFtMnhe/D6sTJT+NFjczQ0mKolmIK9aBkbJainBB6soqCmgLbBd/1a6L4RaBWAQG3/V4ZkKvJq/gts0Ea4p0YSzBa6u9wceVvxlDUarFfu731MWw+HU3bMG1/YnH759C7hAthO04O6MvQqsuM7gOKKRwWQvyeWvHO/rSoH+bSS8AwVejVZES/6uyWKSzeHKdh2ISwPl4zfwRj3ptWjw3LgrCrgMrBLaRG0azjjwVurBij8iTmB+1+sAjCoNYOjceh/EGs2ANRZL/oLX41rg43Hjj4KhHHihAa24Qux53WpfcAMxvfRb1l+I1vTh/3Vd5dpFsw1nKPIX0QxeOOxwM+AMuQd7zXas7Nj5gGYxrgEu+lvFBfC1Ji+AQWyKFuzdDGfAdbUKwEkXPkTIi0XP4DKs5yWN1FwOAOXl/y+83xHS+fhsVObVaFaltLYLv/Kp6ATupgFNuHMPDKW3z5T4OZQrAOt5igNej1wwswiXqpY4/B1Fy9aryvwMfx89bkbMMjuziOY8fzcWF6skCeqD4pJ6AI7LFZYJKyZGOLO+iMHfL+oLfhvQCfCDw+UXtOUpa/p+6u9X6Td8dGaBMVUG8cFZGx3vAxkLfj9h7RV4L7xi8YWnLZ4v1O+LKm6xYNmNWUpeCLj0GRJuEGWycVjs1ftJjhi8qM9Be6aFwcL7nUQ5XAL+4QHrSlktsCWmaE7sjVdIhDsnhxHSDdzFxk7A1bsNjMz9xzMn+1ejwYBoRSPJYLGXmV0O1873y8DfYiU12i6Cp5K8AIYIl2EhE8/Y5zCXk0i6fcUGQ/RHEeIZCczSKm0PVECbFyzgflha4Covonk3K5arDdUqFXgjmfuy4cpsguzOQyGu0Hst0EIsuB74snI/NlaUvB/EC1lchDPj7k7Y20wmBV5Icftwl5qSAKc7d+u7FHgwYHPhsPACuMMF6CufvB+iH6lYlLw76y+iGbR2xlKhH4mCuwAe3KUGs7m+Yo1GmcO/VG8DW94Ple3AlndKuMyLcgVcf94P3iyBFVlwcUF4EewF8UhAkcIcz/xZq74orRatj9r5EWiDhJaeWoFWe4XWELvrOgC2MxYWhodw/xv+ApiUAotkzeAEh2vtqDxPPsBgUbogRMUaM24xgXcTPgpWXJvA6i2QVR4XxDhqiGv02q/6g8N/B4svshtJ9rpoef0rOVwqWlk0S/pa3qGcFDp/DS8Th1WSOIwx2mZwLwf+uhbcEXfgoOBw/fuwWP9ie0OCuoyLFeF/hZ1vcxo3EMbjTqfTKSUHMTEYg8lhTEwpJrFp7Hz/L9b9I+nR7gry3IHzKjO/eXZXq5NOyJlfPqA1eXVHtGjYP18cg/OTaAD7p9AROLcchjjm8MXxyD+gnF9sOCieKXmBa7K3x1YOdpduKAU0fSDgeoNP5Un0uAa+0XpF8QwNBmg8foEbeUWXW8pFr7hxPHpm3BjOqNFKXNFWKewGpWohqeIlYHaXP8qa8zg/APABHXnjigosbvFuPsvpG95fwVVlfy0vgNFiOX8NMHh3BZapdtxj0Q3igVLPZgCGWsRxuXsDXAe8JVxS4zjGL5S6IA68Stt+VImeEsvfWFiZYLmMdSNzJYQzX4Q8I0lIR38d7/7FAKu2Z+L5VnBD/tLVL7BZh4Ri5QsWHnJg0hB5FVmWCRUXxBMZhgHMAT0g3MENF60wHjmD/3x5edkLrd3BMffEOZpx3FcN/DyFvaye7po2JjDyV5E1oM32FbXY4LJmR5k4IJ75Wx32CRztfX1h/VUMxmYky4toxoFu0HA6XVhiBPU5f+mDadLKGqzCGIwMVuIJSe3Vm/3dMTB4IRvNqtew3cxZrNHc94nWAFPy2u2FATjmbxyPMEkCbMcxrbQMDO2ODAxijmd1GLBN3KJ5wcXxk1KpC++m79XeMAD3djsWsxKt6SobuAQMrVShxeJls2yw0axymDRLohzex4KF5H3PBr+SxYmWP6pqZZSSV3GRwcDdTEHMPbS6e9lfqVfgfUA4+zHpiGiudFjPcolmscW5Sp9rKF/f35VXieeN/fzzrO2tHhiUgeHuM8GyTPL6niM2lARc8xKxLVhYG5UxOOCq2GkFngH4yoYzcJO9sLjOX32dfVPsJd5mvZpuCDYg61M70A6jvypU6CTY23V5pR/A4IXWu4GUq8vAe6GFZHLkX8ehO+P2dH+HvZm49zuEa4P7Cw0HHtthkiS8IFYxsIvog/KCmKK6Bv4tZu+f7ySHmy225zFSUG8/q+zxz4rLaytmv53guoCOvN9ItcGtmiUL3+rx2ungpAajaBmHpVYJb0J+1UstJlhBBvHmVmH73per54UsNgA4qxc1pgyIaBfQK7ocMHnLl2iHiG45/HaYVQ7X/RVqFQx+5U/W8tPF8wmVtyQvKRqs+sVDHT8gla5yZbvKTOxLlsF9Y48tsKokrwg5DN79a+tAN2QvDGZcAMPePCQB2RXoSJxY4S8sLjreeFjwihrASF7Fjbx7evI+T6y34XxRHCAryasy9dk4TEI0x46jHc/QmD4weDwB8cEDC/PB5DAKlrqLdsP6y8yb1vlIiZeUknfb3C+bgHv50hqdYfmGubHDCsB5PxYrbbYT3GAwgG2VZncleVWghXT+2+RFPHM0E67K4WZ3Gdf0lAY3ZHBoosdsLmoWmHfytfYR7YGv1OC/3ysV3hdPvAn1KlcsDee7jXkFC/2GD2co1iuoncC5XgEYG0kr5De6WsC8H2kPWO+wW1QBr61YJE7evPRNF3DhMPnb7CmLuXQVWLpNyQJvB2BYrMCstfJCLqR55IWQxc5e1dbW59RviL4vwvZRW5+1Qle4ANZDoWgH4coVaAgFS3uOkzEYxINMDOR1XbTmOZqhWKGheUzgZ9UU2+2SuxXvXSZm3uiw4OqGs39XCOcmsaYvaOmG0uzIOmzH4VSbITNr8LwbexwjGkrCJZnNlHHGLyHdesiRDhgVHTEjrISSNYbgMKSPZAkXxLMKOHdWbX+1qQTwMvZXyttvyu4zEKO/qon71lKhOXDzpMQeuCC7ePbi2e8g1SsAw+H3oDgI54Ll6nN5xEG4JBic4jlWaEZuGHwPXHK4c/5GYCjQTgayzhBKFnK4JjWwbhSebyxuX34AabG12+30VA6Mv1Z9o4d+0HhWXgKO8bxKsNJ1dJ7Y1ix2eJ1g4TCqdE1Ml4lnNFlanaHMS7VKaFWL8I6sYcWgZFcZOjh8JIcR0D6BV4RocL2/RCuanQe+qnEh6+/ylmT8lQwWXLNHGAmMcAYvqrQl7ipcclhHYWfvaiyfsR2Dnb8U0HxZ4J8RGO6+J1oDPP+EbsNG9MZtxjIGe4/BC+BRAcbu55UA18So0EjhJrGEM+tQAx8aIf1yPoFlxgBitJP91G230/TNgzDKswj1KvaUvAMaxITbTuBLY9KO6xWUWfUrFi1lNryIZlZjuqC44FV7YXFMYIerSsDgdcCKW7w9BYfHyVyO55zC68pf0hrAgAWujWbwmh9s+7z1288WKX3bM2DUZ5vBNXB6XYPy14XzCsiQmzUIMEoWgFke+EWu6O9+G3iJlnE3BleB5QKzt3jou2jMC835sU/IXtdC80V3JFYhoA8e+A3ASGAo435snc/PWsTtsiCFw42Go/1KQ12yjic765eopvEoIUPooz3yDLDCC2Lk8IuRe2RnePuellg8MNGywNtoooHrtyfdm/MJT8ZdW6MtbpQxWGkz8dpU6Zc6oFmSvELsyzONvE46R1o0eS9OgvkS4KMOwArcgVfdVX8R0M7eGNOWF8xpr2VpKfFolpO3ff7z561/YSW+RBkKlo3nxsq3eR2ng73eYSCDF7hCjIh2vD/480OAGRUeM/Ey4cYM3oDXVq0WL1LY4Q6x94y1qve370z6Fn+DwxMnjMNr4DpmAuaQBuo702o004V2A8fV90sLXEo03aR2TxkHYMAC+GuSba+EWPtoV6EjLoBFDlaApWgBlsN5//GT4rZ/8GljcPPZOsoKYDM7Ai+YRzVxJ7j5PEbTcyg0vL1ADGDUZwP8g4H/Un/RRAsuFH8fNvq74Qu8jGuRQ0tJn/o55amEM91PAGZb2dgc1J464OYc/hkimv0V4I97MxzN7fov1PMt098peDEEk8VA1niG+Mzca4M74ixOuAL8tQjAHQ6dEebYZMV4xrAUcDPwx4p3L7hFbn6U1wc3oUQrKIAXibeXgB49krqHUT0ME/JoWB5EjzWF9V2NsYlo7TgC7gTM6q+z2MdzET+1LPZ+BK8D7uv1wd6/972AvX5zw5DCufzg4v21Gky4fF0Xh5/K0ZOkU6ElVrY5MccsjhENYmMukKVKv74L7l+f3Hq3f6JT1kMX4UV3ay8LFn97FFz5vePVSHivwctiYLxA2CGiiRUNZQdQtZa/IEd8qJD5ypKVB7Mrydu74S+7O+e7mTWAtrEQTJam38fJP9d2z7FsF79H9eFXBIxJMNyN+QuHW2nMa+CymPhGtA6Y6tb+3A8S0FaspTTQ4CVN8QqW8MaNK9CoU2DyNyF3qeXA2pkEcybucvoqKXgBy9+hy7K00PpNURHSn7ADK5XnwrvlfWe3fdh9RahL8NYOB+KHjgP6VP0W0Onf7t7sl11le1lfFVeq84S3t1vcdlMZ/DU6/DBFa3v2/PaN7i1cMq7dAN2rv5gvWH8r4Gsctym4+nsxdAgW/CXgXZXEYrDiskB8qal0vIEYwOa464A7F91m3i9Fm63IlmfUq3oMJiGc2eiyviDMDCzuEjS/brXLQ2/ZH0uG/rrH8kXLEQPY7jYDsNk5+tltv6J/SbVq+ms07ORE5E5g9VbiI9+dro12iZdwGViId9gwOvPPovWGQHuWGcOS2T+JEWlpXuDYuP2Ess6/IGTrrqpqKAlYjidERPvjCk4rAn5iYL0T8JPZLrpr9ByGdtLAtcSHOofjcLTdvypwVh9e1/hC3SQEYmMv6QEJLL/wrLjVARzHp68KSxKHBRfALIc7UZNd9l4mNlXaHFfPGyjDO3bbjAti3qnTCOjw1G5VEvjJrKeQzGnX/G0ON6uAB5fa6F8G9EFjGuNwnb+cvPVLo7DY0LIWEJAtruh6xe4mZBvQeqJMmiWxuwZ4DdWo+gXmZkA7f6nxMsBVAi8pmiEcYWD9ZQ1TzYIicEK+72CvSGD5hsU3XsC1hXpiaUUt4pnRmwnpsp1wa94prE+Kmsb3Yaeel2V4MT0arbK9MJhJFZfUwIVmdX2exHnhxMNmXFD/RNHalIbyk+DCYvDS3ThOpgV8/pHOw6kGVlSW8u4sbvQXyBN4PDhjL0I6VGnUK0remncOh4V5EXi/3V2aNEBY5+8Y150no2PwBYN3NppRnolUPufCedAch6V/5nup9mbe+NL3d8Y15xP+Y3nvbEgDdzgsT7BWY8VlYoUFbpN34EYkNXjAF/0VWgetqAOXwd5hTd72K7IJeBPOk/lv6MakaSzRdA1lQlgeuhOyqVY7D0sXktfzjk3/fK5Gw2DwIodz8oK3farOs/FXNBVave4WrkTjeY6bAJ9Qr0ghf4tuQhet/gqtIgM4MkNueqjJ68tzJN7icJV8INQ19p+ZaDYL/SO5ACzJXI7njw6f6SiBq7EM2pZiI41xGPuDf3EuxzQbjPNF+xTRd3wprXwRc1joh3gOPCZ/+ToXzzu/jFRoJX2du7GtpAsGR2CVpY3nGHwJB8j+ExcahohoBzy071Cemv6qbnwo08OamwmoRahXXrZs+SceF+PZPHWfVqcD8xdpmCo0cOm2/uoju8aO6FXsrxLu0fHODqyBRjN7rC6f9beMSxiDUbRiArftZeIv9fmEqlifrbtapOkG8H3mBagFdisrg0OSbymb9gru+ZAGbjOe/bEr9vz2B7pHhOt4QcwFOl3wN+HyLNjTqgYd0QJ3nXnfFBPQDZeVE81HG3j/61N1EvBQz4+tj6vnfsPhYlCiC/5iA/jqfsz95Nc28K5e7p/VL2wkUglrzP0byKAduCotvMANJ/mBd7nY0qXjEV3KS8Tf3JgUDOaQdgG9Olp33fuhNnkB/DaDvWMY7IER0Yp8iA4D2MOqxF0mXvSMi5+LYQ0tsanOavC1S98x3G13HJLCGs3AZcFfuZrK5sLlnwZ4zxfdzPtaWwzaJdvLHpP+QUAz7SNdksNxkiRfzl/WiaO5TYug1qHI8arFBHy+ZNn8RVCjSl/98TvmR+16JfZuOaK5ycgFGr9wNaI0riIaDqNcIX+7dPzkxQnhAdEM2gQ8AGszf1NMs+D1WwFmXf2u7uKsxliwlhLRrGv7+zgksjgOShTNgEV9fkrz31YGg5c8tvYm5INamz+kiI70hcVA/qD6jUn5Miq4BMv+KvEUvI9J9xm3GIzxCJLsbf++RvOF2OjwOpOaEh2IrYrh8r9+cMSBF1u/i64Z1xB32kDXBmNJ1NTn9nR/3HU3FnfteBlZOi3psS7iorfUL6sPWb+f67EIlW69kr4hnEkIagzBItQrNFc64TfEsuTfTSxwjOfDzD7HupTGeiWZOgbgKwtrapayQkPx9xEGP3YjdVeZIZO/rGPI38lKBIsDrvCusUyYkSMqPjPUbBvcH2Dx+bODl0v4C4vtD7YN3aRwpElc0tfMF3bALev9Y+A27B24tdEgxSxX/mMtNsB/wF9n8JKKFl3Q9K7OX/n+l+uWwc1FC/2kUHfG4fGqqBtIeQ7ZiwaLoIO/EVpvIDuLAXwV0he/SCH+bhMta/RY20sh/e/JhDNwhyWJ6QkeN9HHBu5YtmQxb3RYx6Lo72Vi1C7XjXyAEM70gdIIvLSP67LBnQDzSsqDAIPXTRqIVWcNq4x7dJvAxyGkczSPwQpcww1eG9T4m/U/pbPgD0llZKoAAAAASUVORK5CYII=');background-repeat:no-repeat;background-size:100% 100%;width:240rpx;height:100%;color:#fff;font-size:36rpx;font-weight:bold;text-align:center;display: flex;flex-direction: column;align-items: center;justify-content: center;} +.coupon-list .item .money.moneyGray{background-image:url('data:image/png;base64,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');} +.coupon-list .item .money .num{font-size:60rpx;} +.coupon-list .item .text{width:450rpx;padding:0 17rpx 0 24rpx;box-sizing:border-box;background-color:#fff;} +.coupon-list .item .text .condition{font-size:30rpx;color:#282828;height:93rpx;line-height:93rpx;border-bottom:1rpx solid #f0f0f0;} +.coupon-list .item .text .data{font-size:20rpx;color:#999;height:76rpx;} +.coupon-list .item .text .data .bnt{width:136rpx;height:44rpx;border-radius:22rpx;font-size:22rpx;text-align:center;line-height:44rpx;color:#fff;} +.coupon-list .item .text .data .bnt.gray{background-color:#ccc;} +.noCommodity{border-top:7rpx solid #f5f5f5;} +.noCommodity .pictrue{width:414rpx;height:336rpx;margin:75rpx auto 30rpx auto;} +.noCommodity .pictrue image{width:100%;height:100%;} +/**订单列表订单**/ +.pos-order-goods{padding:30rpx;background-color: #fff;box-sizing: border-box;border-bottom: 1px solid #eee;} +.pos-order-goods .goods~.goods{border-top:1px dashed #e5e5e5;} +.pos-order-goods .goods .picTxt{width:515rpx;} +.pos-order-goods .goods .picTxt .pictrue{width:130rpx;height:130rpx;} +.pos-order-goods .goods .picTxt .pictrue image{width:100%;height:100%;border-radius:6rpx;} +.pos-order-goods .goods .picTxt .text{width:365rpx;height:130rpx;} +.pos-order-goods .goods .picTxt .text .info{font-size:28rpx;color:#282828;} +.pos-order-goods .goods .picTxt .text .attr{font-size:20rpx;color:#999;} +.pos-order-goods .goods .money{width:164rpx;text-align:right;font-size:28rpx;} +.pos-order-goods .goods .money .x-money{color:#282828;} +.pos-order-goods .goods .money .num{color:#ff9600;margin:5rpx 0;} +.pos-order-goods .goods .money .y-money{color:#999;text-decoration:line-through;} +.public-total{font-size:28rpx;color:#282828;border-top:1px solid #eee;height:92rpx;line-height:92rpx;text-align:right;padding:0 30rpx;background-color: #fff;box-sizing: border-box;} +.public-total .money{color:#ff4c3c;} +.font-color-red {color: #fc4141 !important;} +/*商品标签公用样式*/ +.pictrue_log_class{ + background: linear-gradient(90deg,rgba(246, 122, 56, 1) 0%,rgba(241, 27, 9, 1) 100%); + opacity: 1; + position: absolute; + top: 0; + left: 0; + color: #fff; + text-align: center; +} +.pictrue_log { + width: 80rpx; + height: 40rpx; + border-radius: 6rpx 0 12rpx 0; + line-height: 40rpx; + font-size: 24rpx; +} +.pictrue_log_medium { + width: 80rpx; + height: 44rpx; + border-radius: 12rpx 0 16rpx 0; + line-height: 44rpx; + text-align: center; + font-size: 26rpx; +} +.pictrue_log_big{ + width:100rpx; + height:46rpx; + line-height: 46rpx; + border-radius:10rpx 0 16rpx 0; + font-size: 28rpx; +} +.bg-color-hui{ + background: #bbbbbb !important; +} \ No newline at end of file diff --git a/template/xcx/font/iconfont.wxss b/template/xcx/font/iconfont.wxss new file mode 100644 index 000000000..2ba808d61 --- /dev/null +++ b/template/xcx/font/iconfont.wxss @@ -0,0 +1,757 @@ +@font-face {font-family: "iconfont"; + src: url('iconfont.eot?t=1583910898195'); /* IE9 */ + src: url('iconfont.eot?t=1583910898195#iefix') format('embedded-opentype'), /* IE6-IE8 */ + url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'), + url('iconfont.woff?t=1583910898195') format('woff'), + url('iconfont.ttf?t=1583910898195') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ + url('iconfont.svg?t=1583910898195#iconfont') format('svg'); /* iOS 4.1- */ +} + +.iconfont { + font-family: "iconfont" !important; + font-size: 16px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-zhibojieshux:before { + content: "\e63d"; +} + +.icon-zhibo:before { + content: "\e63e"; +} + +.icon-VIP:before { + content: "\e751"; +} + +.icon-tuiguang:before { + content: "\e63b"; +} + +.icon-geren1:before { + content: "\e750"; +} + +.icon-gouwuche4:before { + content: "\e74f"; +} + +.icon-fenlei1:before { + content: "\e74e"; +} + +.icon-shouye3:before { + content: "\e74c"; +} + +.icon-geren:before { + content: "\e74b"; +} + +.icon-gouwuche3:before { + content: "\e74a"; +} + +.icon-fenlei:before { + content: "\e749"; +} + +.icon-shouye2:before { + content: "\e748"; +} + +.icon-mzshopping:before { + content: "\e746"; +} + +.icon-gongneng:before { + content: "\e63a"; +} + +.icon-gerenzhongxin-copy:before { + content: "\ebc0"; +} + +.icon-shouye1-copy:before { + content: "\ebc1"; +} + +.icon-gerenzhongxin:before { + content: "\e636"; +} + +.icon-shouye1:before { + content: "\e637"; +} + +.icon-gouwuche2:before { + content: "\e638"; +} + +.icon-fenleiyemian:before { + content: "\e639"; +} + +.icon-gouwuche2-copy:before { + content: "\ebc2"; +} + +.icon-fenleiyemian-copy:before { + content: "\ebc3"; +} + +.icon-tonghua:before { + content: "\e740"; +} + +.icon-youjian:before { + content: "\e677"; +} + +.icon-dadianhua01:before { + content: "\e623"; +} + +.icon-paihang:before { + content: "\e73e"; +} + +.icon-weizhi:before { + content: "\e62d"; +} + +.icon-paihang1:before { + content: "\e633"; +} + +.icon-shuoming1:before { + content: "\e673"; +} + +.icon-dianhau:before { + content: "\e634"; +} + +.icon-shijian:before { + content: "\e635"; +} + +.icon-huabanfuben:before { + content: "\e654"; +} + +.icon-jian:before { + content: "\e621"; +} + +.icon-jia:before { + content: "\e7e0"; +} + +.icon-xiugai:before { + content: "\e61f"; +} + +.icon-anniu_jiantouzhankai_o:before { + content: "\eb89"; +} + +.icon-jiantou_xiayiye_o:before { + content: "\eb8f"; +} + +.icon-jiantou_shangxiaqiehuan_o:before { + content: "\eb90"; +} + +.icon-shangxiazhankai_o:before { + content: "\eb9a"; +} + +.icon-dianhua_o:before { + content: "\ebaf"; +} + +.icon-yunshangchuan_o:before { + content: "\ebb3"; +} + +.icon-bingtu_o:before { + content: "\ebb4"; +} + +.icon-baoguo_huanbaohe_o:before { + content: "\ebb6"; +} + +.icon-baoguo_quxiaoshouhuo_o:before { + content: "\ebb7"; +} + +.icon-baoguo_shouhuo_o:before { + content: "\ebb8"; +} + +.icon-baoguo_lingjian_o:before { + content: "\ebb9"; +} + +.icon-baoguo_shouna_o:before { + content: "\ebbe"; +} + +.icon-xianxiazhifu:before { + content: "\e6e1"; +} + +.icon-icon_im_keyboard:before { + content: "\eb97"; +} + +.icon-tupian-:before { + content: "\e73f"; +} + +.icon-icon_im_face:before { + content: "\eb96"; +} + +.icon-yuezhifu:before { + content: "\e65e"; +} + +.icon-yuezhifu1:before { + content: "\e61a"; +} + +.icon-weixinzhifu:before { + content: "\e632"; +} + +.icon-zhifubao:before { + content: "\e61d"; +} + +.icon-haibao:before { + content: "\e73b"; +} + +.icon-weixin3:before { + content: "\e618"; +} + +.icon-crmeb1:before { + content: "\e739"; +} + +.icon-crmeb:before { + content: "\e735"; +} + +.icon-xuanzhong2:before { + content: "\e731"; +} + +.icon-shujutongji:before { + content: "\e732"; +} + +.icon-xiangxishuju:before { + content: "\e733"; +} + +.icon-gengduo:before { + content: "\e734"; +} + +.icon-up:before { + content: "\e617"; +} + +.icon-yonghu2:before { + content: "\e60a"; +} + +.icon-zhinengkefu-:before { + content: "\e616"; +} + +.icon-xiangshang1:before { + content: "\e622"; +} + +.icon-xiangxia2:before { + content: "\ebbd"; +} + +.icon-code_:before { + content: "\e723"; +} + +.icon-code_1:before { + content: "\e724"; +} + +.icon-phone_:before { + content: "\e725"; +} + +.icon-xiala:before { + content: "\e67f"; +} + +.icon-shezhi:before { + content: "\e619"; +} + +.icon-bianji1:before { + content: "\e614"; +} + +.icon-jiazai:before { + content: "\e62c"; +} + +.icon-2:before { + content: "\e684"; +} + +.icon-tuandui:before { + content: "\e685"; +} + +.icon-jinbi1:before { + content: "\e655"; +} + +.icon-guanbi3:before { + content: "\e6c5"; +} + +.icon-wenti:before { + content: "\e758"; +} + +.icon-ziyuan-xianxing:before { + content: "\e8a4"; +} + +.icon-yonghu1:before { + content: "\e644"; +} + +.icon-dingdan:before { + content: "\e61e"; +} + +.icon-suozi:before { + content: "\e631"; +} + +.icon-quanxianguanlisuozi:before { + content: "\e6d2"; +} + +.icon-lingxing:before { + content: "\e6ff"; +} + +.icon-miaosha:before { + content: "\e6c3"; +} + +.icon-hebingxingzhuang:before { + content: "\e656"; +} + +.icon-kanjia1:before { + content: "\e613"; +} + +.icon-qiandai:before { + content: "\e6b1"; +} + +.icon-tongji:before { + content: "\e687"; +} + +.icon-erweima:before { + content: "\e607"; +} + +.icon-icon34:before { + content: "\e62b"; +} + +.icon-yinhangqia:before { + content: "\e72c"; +} + +.icon-yituikuan:before { + content: "\e6fd"; +} + +.icon-tuikuanzhong:before { + content: "\e6fe"; +} + +.icon-sousuo2:before { + content: "\e757"; +} + +.icon-caidan:before { + content: "\e62a"; +} + +.icon-icon25201:before { + content: "\e70d"; +} + +.icon-kongxinxing:before { + content: "\e6fc"; +} + +.icon-shitixing:before { + content: "\e6fb"; +} + +.icon-pintuanchenggong:before { + content: "\e6f9"; +} + +.icon-pintuanshibai:before { + content: "\e6fa"; +} + +.icon-laba:before { + content: "\e612"; +} + +.icon-xiaolian:before { + content: "\e60f"; +} + +.icon-kanjia:before { + content: "\e69b"; +} + +.icon-shuoming:before { + content: "\e630"; +} + +.icon-mingxi:before { + content: "\e6f7"; +} + +.icon-tishengfenzhi:before { + content: "\e6f8"; +} + +.icon-guanbi2:before { + content: "\e61c"; +} + +.icon-yuandianxiao:before { + content: "\e82f"; +} + +.icon-webicon318:before { + content: "\e6c2"; +} + +.icon-tianjiadizhi:before { + content: "\e640"; +} + +.icon-shanchu:before { + content: "\e628"; +} + +.icon-weixin2:before { + content: "\e604"; +} + +.icon-icon-test:before { + content: "\e6f6"; +} + +.icon-guanbi1:before { + content: "\e6f5"; +} + +.icon-shoucang:before { + content: "\e606"; +} + +.icon-kefu:before { + content: "\e6b2"; +} + +.icon-shoucang1:before { + content: "\e714"; +} + +.icon-biankuang:before { + content: "\e6f4"; +} + +.icon-zhuangshixian:before { + content: "\e6f1"; +} + +.icon-jishuzhichi:before { + content: "\e6f3"; +} + +.icon-xuanzhong1:before { + content: "\e6ef"; +} + +.icon-weixuanzhong:before { + content: "\e6f0"; +} + +.icon-xiangshang:before { + content: "\ebbb"; +} + +.icon-xiangxia:before { + content: "\e8ca"; +} + +.icon-cuxiaoguanli:before { + content: "\e60e"; +} + +.icon-shanchu1:before { + content: "\e611"; +} + +.icon-caigou-xianxing:before { + content: "\e887"; +} + +.icon-caigou:before { + content: "\e888"; +} + +.icon-yingyongchengxu-xianxing:before { + content: "\e8a1"; +} + +.icon-yingyongchengxu:before { + content: "\e8a2"; +} + +.icon-shouye:before { + content: "\e8b9"; +} + +.icon-shouye-xianxing:before { + content: "\e8ba"; +} + +.icon-yonghu-xianxing:before { + content: "\e8c8"; +} + +.icon-yonghu:before { + content: "\e8c9"; +} + +.icon-sousuo:before { + content: "\e67d"; +} + +.icon-sousuo1:before { + content: "\e64c"; +} + +.icon-kefu_o:before { + content: "\eb63"; +} + +.icon-liwu_o:before { + content: "\eb65"; +} + +.icon-huobiliu_o:before { + content: "\eb9f"; +} + +.icon-jinbi_o:before { + content: "\eba1"; +} + +.icon-gerentouxiang_o:before { + content: "\ebac"; +} + +.icon-qunzu_o:before { + content: "\ebad"; +} + +.icon-shoucang_o:before { + content: "\ebae"; +} + +.icon-didiandingwei_o:before { + content: "\ebba"; +} + +.icon-xiangyou:before { + content: "\e679"; +} + +.icon-jingpintuijian:before { + content: "\e60d"; +} + +.icon-xinpin:before { + content: "\e610"; +} + +.icon-remen:before { + content: "\e67c"; +} + +.icon-xiangzuo:before { + content: "\ebbc"; +} + +.icon-ditu:before { + content: "\e906"; +} + +.icon-guanbi:before { + content: "\e62f"; +} + +.icon-liulan:before { + content: "\e629"; +} + +.icon-shenhezhong:before { + content: "\e6ce"; +} + +.icon-chongzhi:before { + content: "\e602"; +} + +.icon-iconfontguanbi:before { + content: "\e643"; +} + +.icon-zhekou:before { + content: "\e790"; +} + +.icon-duihao2:before { + content: "\e601"; +} + +.icon-duihao:before { + content: "\e64e"; +} + +.icon-jingyanzhi:before { + content: "\e62e"; +} + +.icon-wuliu:before { + content: "\e6f2"; +} + +.icon-pintuan-copy:before { + content: "\ebbf"; +} + +.icon-arrow:before { + content: "\e627"; +} + +.icon-pintuan:before { + content: "\e60c"; +} + +.icon-youhuiquan:before { + content: "\e6e4"; +} + +.icon-gouwuche1:before { + content: "\e642"; +} + +.icon-pailie:before { + content: "\e61b"; +} + +.icon-tupianpailie:before { + content: "\e620"; +} + +.icon-xiazai5:before { + content: "\e605"; +} + +.icon-weixin1:before { + content: "\e66e"; +} + +.icon-gouwuche:before { + content: "\e669"; +} + +.icon-jiantou:before { + content: "\e641"; +} + +.icon-huiyuan:before { + content: "\e60b"; +} + +.icon-xuanzhong:before { + content: "\e615"; +} + +.icon-complete:before { + content: "\e646"; +} + +.icon-xiala1:before { + content: "\e609"; +} + +.icon-dizhi:before { + content: "\e608"; +} + +.icon-weixin:before { + content: "\e600"; +} + +.icon-fenxiang:before { + content: "\e603"; +} + +.icon-bianji:before { + content: "\e6cc"; +} + +.icon-huangguan:before { + content: "\e624"; +} + +.icon-huangguan1:before { + content: "\e625"; +} + +.icon-huangguan2:before { + content: "\e626"; +} + diff --git a/template/xcx/images/1-001.png b/template/xcx/images/1-001.png new file mode 100644 index 000000000..c2d7fae88 Binary files /dev/null and b/template/xcx/images/1-001.png differ diff --git a/template/xcx/images/1-002.png b/template/xcx/images/1-002.png new file mode 100644 index 000000000..c6bd22828 Binary files /dev/null and b/template/xcx/images/1-002.png differ diff --git a/template/xcx/images/2-001.png b/template/xcx/images/2-001.png new file mode 100644 index 000000000..a25cf9370 Binary files /dev/null and b/template/xcx/images/2-001.png differ diff --git a/template/xcx/images/2-002.png b/template/xcx/images/2-002.png new file mode 100644 index 000000000..76aa0d23d Binary files /dev/null and b/template/xcx/images/2-002.png differ diff --git a/template/xcx/images/3-001.png b/template/xcx/images/3-001.png new file mode 100644 index 000000000..b55ee3113 Binary files /dev/null and b/template/xcx/images/3-001.png differ diff --git a/template/xcx/images/3-002.png b/template/xcx/images/3-002.png new file mode 100644 index 000000000..4a0ca4193 Binary files /dev/null and b/template/xcx/images/3-002.png differ diff --git a/template/xcx/images/4-001.png b/template/xcx/images/4-001.png new file mode 100644 index 000000000..26d7fbe56 Binary files /dev/null and b/template/xcx/images/4-001.png differ diff --git a/template/xcx/images/4-002.png b/template/xcx/images/4-002.png new file mode 100644 index 000000000..f3304d796 Binary files /dev/null and b/template/xcx/images/4-002.png differ diff --git a/template/xcx/images/accountBg.png b/template/xcx/images/accountBg.png new file mode 100644 index 000000000..0299e5779 Binary files /dev/null and b/template/xcx/images/accountBg.png differ diff --git a/template/xcx/images/address.png b/template/xcx/images/address.png new file mode 100644 index 000000000..408b0cac7 Binary files /dev/null and b/template/xcx/images/address.png differ diff --git a/template/xcx/images/alter.png b/template/xcx/images/alter.png new file mode 100644 index 000000000..5ae334707 Binary files /dev/null and b/template/xcx/images/alter.png differ diff --git a/template/xcx/images/angle.png b/template/xcx/images/angle.png new file mode 100644 index 000000000..68865ab83 Binary files /dev/null and b/template/xcx/images/angle.png differ diff --git a/template/xcx/images/balance.png b/template/xcx/images/balance.png new file mode 100644 index 000000000..ef7344fec Binary files /dev/null and b/template/xcx/images/balance.png differ diff --git a/template/xcx/images/bargain.png b/template/xcx/images/bargain.png new file mode 100644 index 000000000..309fb9465 Binary files /dev/null and b/template/xcx/images/bargain.png differ diff --git a/template/xcx/images/bargainBg.jpg b/template/xcx/images/bargainBg.jpg new file mode 100644 index 000000000..ccf9b61c5 Binary files /dev/null and b/template/xcx/images/bargainBg.jpg differ diff --git a/template/xcx/images/close.gif b/template/xcx/images/close.gif new file mode 100644 index 000000000..4de18b411 Binary files /dev/null and b/template/xcx/images/close.gif differ diff --git a/template/xcx/images/code_1.png b/template/xcx/images/code_1.png new file mode 100644 index 000000000..9d98bd9e5 Binary files /dev/null and b/template/xcx/images/code_1.png differ diff --git a/template/xcx/images/code_2.png b/template/xcx/images/code_2.png new file mode 100644 index 000000000..9bb836997 Binary files /dev/null and b/template/xcx/images/code_2.png differ diff --git a/template/xcx/images/collection.png b/template/xcx/images/collection.png new file mode 100644 index 000000000..b22fde2c2 Binary files /dev/null and b/template/xcx/images/collection.png differ diff --git a/template/xcx/images/commission.jpg b/template/xcx/images/commission.jpg new file mode 100644 index 000000000..e8df341b8 Binary files /dev/null and b/template/xcx/images/commission.jpg differ diff --git a/template/xcx/images/coupon-window.png b/template/xcx/images/coupon-window.png new file mode 100644 index 000000000..e50ae1014 Binary files /dev/null and b/template/xcx/images/coupon-window.png differ diff --git a/template/xcx/images/coupon-window2.png b/template/xcx/images/coupon-window2.png new file mode 100644 index 000000000..ac3cb8b5c Binary files /dev/null and b/template/xcx/images/coupon-window2.png differ diff --git a/template/xcx/images/coupon.png b/template/xcx/images/coupon.png new file mode 100644 index 000000000..27e634012 Binary files /dev/null and b/template/xcx/images/coupon.png differ diff --git a/template/xcx/images/coupon2.png b/template/xcx/images/coupon2.png new file mode 100644 index 000000000..de9d6aad4 Binary files /dev/null and b/template/xcx/images/coupon2.png differ diff --git a/template/xcx/images/customer.png b/template/xcx/images/customer.png new file mode 100644 index 000000000..dc97ca81f Binary files /dev/null and b/template/xcx/images/customer.png differ diff --git a/template/xcx/images/dfh.png b/template/xcx/images/dfh.png new file mode 100644 index 000000000..0a1fc0464 Binary files /dev/null and b/template/xcx/images/dfh.png differ diff --git a/template/xcx/images/dfk.png b/template/xcx/images/dfk.png new file mode 100644 index 000000000..4e6f62f7c Binary files /dev/null and b/template/xcx/images/dfk.png differ diff --git a/template/xcx/images/down.png b/template/xcx/images/down.png new file mode 100644 index 000000000..344123968 Binary files /dev/null and b/template/xcx/images/down.png differ diff --git a/template/xcx/images/dpj.png b/template/xcx/images/dpj.png new file mode 100644 index 000000000..4df4d545e Binary files /dev/null and b/template/xcx/images/dpj.png differ diff --git a/template/xcx/images/dsh.png b/template/xcx/images/dsh.png new file mode 100644 index 000000000..71ca61302 Binary files /dev/null and b/template/xcx/images/dsh.png differ diff --git a/template/xcx/images/examine.png b/template/xcx/images/examine.png new file mode 100644 index 000000000..d43e7f9c6 Binary files /dev/null and b/template/xcx/images/examine.png differ diff --git a/template/xcx/images/extension.png b/template/xcx/images/extension.png new file mode 100644 index 000000000..d34cb521f Binary files /dev/null and b/template/xcx/images/extension.png differ diff --git a/template/xcx/images/gift.png b/template/xcx/images/gift.png new file mode 100644 index 000000000..2f1e984cf Binary files /dev/null and b/template/xcx/images/gift.png differ diff --git a/template/xcx/images/h5.png b/template/xcx/images/h5.png new file mode 100644 index 000000000..bc115ca34 Binary files /dev/null and b/template/xcx/images/h5.png differ diff --git a/template/xcx/images/horn.png b/template/xcx/images/horn.png new file mode 100644 index 000000000..d0ca022f8 Binary files /dev/null and b/template/xcx/images/horn.png differ diff --git a/template/xcx/images/left.png b/template/xcx/images/left.png new file mode 100644 index 000000000..6c79bbeca Binary files /dev/null and b/template/xcx/images/left.png differ diff --git a/template/xcx/images/light.png b/template/xcx/images/light.png new file mode 100644 index 000000000..efa92080b Binary files /dev/null and b/template/xcx/images/light.png differ diff --git a/template/xcx/images/line.jpg b/template/xcx/images/line.jpg new file mode 100644 index 000000000..1640f55ce Binary files /dev/null and b/template/xcx/images/line.jpg differ diff --git a/template/xcx/images/ling.png b/template/xcx/images/ling.png new file mode 100644 index 000000000..17f052879 Binary files /dev/null and b/template/xcx/images/ling.png differ diff --git a/template/xcx/images/lock.png b/template/xcx/images/lock.png new file mode 100644 index 000000000..e3fde19ca Binary files /dev/null and b/template/xcx/images/lock.png differ diff --git a/template/xcx/images/lock2.png b/template/xcx/images/lock2.png new file mode 100644 index 000000000..d791ab983 Binary files /dev/null and b/template/xcx/images/lock2.png differ diff --git a/template/xcx/images/logo.png b/template/xcx/images/logo.png new file mode 100644 index 000000000..883548b8e Binary files /dev/null and b/template/xcx/images/logo.png differ diff --git a/template/xcx/images/medal01.png b/template/xcx/images/medal01.png new file mode 100644 index 000000000..cca6a3107 Binary files /dev/null and b/template/xcx/images/medal01.png differ diff --git a/template/xcx/images/medal02.png b/template/xcx/images/medal02.png new file mode 100644 index 000000000..7f14fcea8 Binary files /dev/null and b/template/xcx/images/medal02.png differ diff --git a/template/xcx/images/medal03.png b/template/xcx/images/medal03.png new file mode 100644 index 000000000..3e92ecb94 Binary files /dev/null and b/template/xcx/images/medal03.png differ diff --git a/template/xcx/images/member.png b/template/xcx/images/member.png new file mode 100644 index 000000000..b637ae4bf Binary files /dev/null and b/template/xcx/images/member.png differ diff --git a/template/xcx/images/memberCenter.png b/template/xcx/images/memberCenter.png new file mode 100644 index 000000000..978edd273 Binary files /dev/null and b/template/xcx/images/memberCenter.png differ diff --git a/template/xcx/images/money.png b/template/xcx/images/money.png new file mode 100644 index 000000000..9d8aa075c Binary files /dev/null and b/template/xcx/images/money.png differ diff --git a/template/xcx/images/news.png b/template/xcx/images/news.png new file mode 100644 index 000000000..dd3f87316 Binary files /dev/null and b/template/xcx/images/news.png differ diff --git a/template/xcx/images/noAddress.png b/template/xcx/images/noAddress.png new file mode 100644 index 000000000..bb6e36333 Binary files /dev/null and b/template/xcx/images/noAddress.png differ diff --git a/template/xcx/images/noCart.png b/template/xcx/images/noCart.png new file mode 100644 index 000000000..23212587c Binary files /dev/null and b/template/xcx/images/noCart.png differ diff --git a/template/xcx/images/noCollection.png b/template/xcx/images/noCollection.png new file mode 100644 index 000000000..f967720bb Binary files /dev/null and b/template/xcx/images/noCollection.png differ diff --git a/template/xcx/images/noCoupon.png b/template/xcx/images/noCoupon.png new file mode 100644 index 000000000..e2da350df Binary files /dev/null and b/template/xcx/images/noCoupon.png differ diff --git a/template/xcx/images/noEvaluate.png b/template/xcx/images/noEvaluate.png new file mode 100644 index 000000000..de6f5381a Binary files /dev/null and b/template/xcx/images/noEvaluate.png differ diff --git a/template/xcx/images/noNews.png b/template/xcx/images/noNews.png new file mode 100644 index 000000000..755d20680 Binary files /dev/null and b/template/xcx/images/noNews.png differ diff --git a/template/xcx/images/noOrder.png b/template/xcx/images/noOrder.png new file mode 100644 index 000000000..425aaca70 Binary files /dev/null and b/template/xcx/images/noOrder.png differ diff --git a/template/xcx/images/noSearch.png b/template/xcx/images/noSearch.png new file mode 100644 index 000000000..e4fa6601c Binary files /dev/null and b/template/xcx/images/noSearch.png differ diff --git a/template/xcx/images/noShopper.png b/template/xcx/images/noShopper.png new file mode 100644 index 000000000..fb39ca2e6 Binary files /dev/null and b/template/xcx/images/noShopper.png differ diff --git a/template/xcx/images/one.png b/template/xcx/images/one.png new file mode 100644 index 000000000..f598487fb Binary files /dev/null and b/template/xcx/images/one.png differ diff --git a/template/xcx/images/open.gif b/template/xcx/images/open.gif new file mode 100644 index 000000000..4943b5263 Binary files /dev/null and b/template/xcx/images/open.gif differ diff --git a/template/xcx/images/orderTime.png b/template/xcx/images/orderTime.png new file mode 100644 index 000000000..681c7352c Binary files /dev/null and b/template/xcx/images/orderTime.png differ diff --git a/template/xcx/images/phone_1.png b/template/xcx/images/phone_1.png new file mode 100644 index 000000000..9c63ead60 Binary files /dev/null and b/template/xcx/images/phone_1.png differ diff --git a/template/xcx/images/poster-close.png b/template/xcx/images/poster-close.png new file mode 100644 index 000000000..189b6bcb1 Binary files /dev/null and b/template/xcx/images/poster-close.png differ diff --git a/template/xcx/images/posterbackgd.png b/template/xcx/images/posterbackgd.png new file mode 100644 index 000000000..c49cb91c4 Binary files /dev/null and b/template/xcx/images/posterbackgd.png differ diff --git a/template/xcx/images/priceTag.png b/template/xcx/images/priceTag.png new file mode 100644 index 000000000..1472091de Binary files /dev/null and b/template/xcx/images/priceTag.png differ diff --git a/template/xcx/images/promoter.png b/template/xcx/images/promoter.png new file mode 100644 index 000000000..53c135175 Binary files /dev/null and b/template/xcx/images/promoter.png differ diff --git a/template/xcx/images/promotionBg.png b/template/xcx/images/promotionBg.png new file mode 100644 index 000000000..9943d095c Binary files /dev/null and b/template/xcx/images/promotionBg.png differ diff --git a/template/xcx/images/qh.png b/template/xcx/images/qh.png new file mode 100644 index 000000000..e435b7337 Binary files /dev/null and b/template/xcx/images/qh.png differ diff --git a/template/xcx/images/record1.png b/template/xcx/images/record1.png new file mode 100644 index 000000000..4a24c3322 Binary files /dev/null and b/template/xcx/images/record1.png differ diff --git a/template/xcx/images/record2.png b/template/xcx/images/record2.png new file mode 100644 index 000000000..ddaaaa687 Binary files /dev/null and b/template/xcx/images/record2.png differ diff --git a/template/xcx/images/record3.png b/template/xcx/images/record3.png new file mode 100644 index 000000000..fdceadba0 Binary files /dev/null and b/template/xcx/images/record3.png differ diff --git a/template/xcx/images/record4.png b/template/xcx/images/record4.png new file mode 100644 index 000000000..84c9d8d02 Binary files /dev/null and b/template/xcx/images/record4.png differ diff --git a/template/xcx/images/red-packets.png b/template/xcx/images/red-packets.png new file mode 100644 index 000000000..436ab7669 Binary files /dev/null and b/template/xcx/images/red-packets.png differ diff --git a/template/xcx/images/redBg.png b/template/xcx/images/redBg.png new file mode 100644 index 000000000..2b777fa48 Binary files /dev/null and b/template/xcx/images/redBg.png differ diff --git a/template/xcx/images/register.png b/template/xcx/images/register.png new file mode 100644 index 000000000..9eb6cf7ca Binary files /dev/null and b/template/xcx/images/register.png differ diff --git a/template/xcx/images/routine.png b/template/xcx/images/routine.png new file mode 100644 index 000000000..bd4deb55a Binary files /dev/null and b/template/xcx/images/routine.png differ diff --git a/template/xcx/images/rushBuy.jpg b/template/xcx/images/rushBuy.jpg new file mode 100644 index 000000000..805f856f6 Binary files /dev/null and b/template/xcx/images/rushBuy.jpg differ diff --git a/template/xcx/images/scan.gif b/template/xcx/images/scan.gif new file mode 100644 index 000000000..95ed7fa31 Binary files /dev/null and b/template/xcx/images/scan.gif differ diff --git a/template/xcx/images/score.png b/template/xcx/images/score.png new file mode 100644 index 000000000..f0be9fe31 Binary files /dev/null and b/template/xcx/images/score.png differ diff --git a/template/xcx/images/sh.png b/template/xcx/images/sh.png new file mode 100644 index 000000000..3d92d7765 Binary files /dev/null and b/template/xcx/images/sh.png differ diff --git a/template/xcx/images/sort1.png b/template/xcx/images/sort1.png new file mode 100644 index 000000000..2a88241a1 Binary files /dev/null and b/template/xcx/images/sort1.png differ diff --git a/template/xcx/images/sort2.png b/template/xcx/images/sort2.png new file mode 100644 index 000000000..74faf73b1 Binary files /dev/null and b/template/xcx/images/sort2.png differ diff --git a/template/xcx/images/sort3.png b/template/xcx/images/sort3.png new file mode 100644 index 000000000..c3ce7d42b Binary files /dev/null and b/template/xcx/images/sort3.png differ diff --git a/template/xcx/images/spot.png b/template/xcx/images/spot.png new file mode 100644 index 000000000..dc26b0c5f Binary files /dev/null and b/template/xcx/images/spot.png differ diff --git a/template/xcx/images/stars1.png b/template/xcx/images/stars1.png new file mode 100644 index 000000000..b2f620c4b Binary files /dev/null and b/template/xcx/images/stars1.png differ diff --git a/template/xcx/images/stars2.png b/template/xcx/images/stars2.png new file mode 100644 index 000000000..c26dcb3d2 Binary files /dev/null and b/template/xcx/images/stars2.png differ diff --git a/template/xcx/images/stars3.png b/template/xcx/images/stars3.png new file mode 100644 index 000000000..9e72c5f80 Binary files /dev/null and b/template/xcx/images/stars3.png differ diff --git a/template/xcx/images/stop.png b/template/xcx/images/stop.png new file mode 100644 index 000000000..6cd5b0246 Binary files /dev/null and b/template/xcx/images/stop.png differ diff --git a/template/xcx/images/support.png b/template/xcx/images/support.png new file mode 100644 index 000000000..b562a1520 Binary files /dev/null and b/template/xcx/images/support.png differ diff --git a/template/xcx/images/three.png b/template/xcx/images/three.png new file mode 100644 index 000000000..8eee090cd Binary files /dev/null and b/template/xcx/images/three.png differ diff --git a/template/xcx/images/time.png b/template/xcx/images/time.png new file mode 100644 index 000000000..d52fda333 Binary files /dev/null and b/template/xcx/images/time.png differ diff --git a/template/xcx/images/transparent.png b/template/xcx/images/transparent.png new file mode 100644 index 000000000..4760ebb73 Binary files /dev/null and b/template/xcx/images/transparent.png differ diff --git a/template/xcx/images/two.png b/template/xcx/images/two.png new file mode 100644 index 000000000..14bc79607 Binary files /dev/null and b/template/xcx/images/two.png differ diff --git a/template/xcx/images/up.png b/template/xcx/images/up.png new file mode 100644 index 000000000..567db181a Binary files /dev/null and b/template/xcx/images/up.png differ diff --git a/template/xcx/images/vacancy.png b/template/xcx/images/vacancy.png new file mode 100644 index 000000000..0cf3ffe5f Binary files /dev/null and b/template/xcx/images/vacancy.png differ diff --git a/template/xcx/images/value.jpg b/template/xcx/images/value.jpg new file mode 100644 index 000000000..b47d08d31 Binary files /dev/null and b/template/xcx/images/value.jpg differ diff --git a/template/xcx/images/vip.png b/template/xcx/images/vip.png new file mode 100644 index 000000000..904fa5081 Binary files /dev/null and b/template/xcx/images/vip.png differ diff --git a/template/xcx/images/writeOff.jpg b/template/xcx/images/writeOff.jpg new file mode 100644 index 000000000..f642a1207 Binary files /dev/null and b/template/xcx/images/writeOff.jpg differ diff --git a/template/xcx/images/数据.jpg b/template/xcx/images/数据.jpg new file mode 100644 index 000000000..b4dad3faa Binary files /dev/null and b/template/xcx/images/数据.jpg differ diff --git a/template/xcx/package-lock.json b/template/xcx/package-lock.json new file mode 100644 index 000000000..4e72ee479 --- /dev/null +++ b/template/xcx/package-lock.json @@ -0,0 +1,13 @@ +{ + "name": "cremb_xcx_v3.0", + "version": "1.0.0", + "lockfileVersion": 1, + "requires": true, + "dependencies": { + "vant-weapp": { + "version": "0.5.19", + "resolved": "https://registry.npmjs.org/vant-weapp/-/vant-weapp-0.5.19.tgz", + "integrity": "sha512-/ixRsmyPgghw7qFghC/uBih62SK/GJRWxhCvvbnRt/M9w7gCAGS73KPReaQ2vFSqmNqn50gqWb/IpSDP9pYxMQ==" + } + } +} diff --git a/template/xcx/pages/activity/goods_seckill/index.js b/template/xcx/pages/activity/goods_seckill/index.js new file mode 100644 index 000000000..2c9d7e8ca --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill/index.js @@ -0,0 +1,145 @@ +import wxh from '../../../utils/wxh.js'; +import { getSeckillIndexTime, getSeckillList } from '../../../api/activity.js'; +const app = getApp(); +Page({ + + /** + * 页面的初始数据 + */ + data: { + topImage:'', + parameter: { + 'navbar': '1', + 'return': '1', + 'title': '限时秒杀', + 'color': true, + 'class': '0' + }, + seckillList:[], + timeList:[], + active:5, + scrollLeft:0, + interval:0, + status:1, + countDownHour: "00", + countDownMinute: "00", + countDownSecond: "00", + page : 1, + limit : 20, + loading:false, + loadend:false + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (e) { + this.getSeckillConfig(); + }, + goDetails:function(e){ + wx.navigateTo({ + url: '/pages/activity/goods_seckill_details/index?id=' + e.currentTarget.dataset.id + '&time=' + this.data.timeList[this.data.active].stop + '&status=' + this.data.status + }) + }, + settimeList:function(e){ + var that = this; + that.setData({ active: e.currentTarget.dataset.index }); + if (that.data.interval) { + clearInterval(that.data.interval); + that.setData({ interval: null }); + } + that.setData({ + interval: 0, + countDownHour: "00", + countDownMinute: "00", + countDownSecond: "00", + status: that.data.timeList[that.data.active].status, + loadend:false, + page:1, + seckillList:[], + }); + // wxh.time(e.currentTarget.dataset.stop, that); + that.getSeckillList(); + }, + getSeckillConfig: function () { + let that = this; + getSeckillIndexTime().then(res=>{ + that.setData({ topImage: res.data.lovely, timeList: res.data.seckillTime, active: res.data.seckillTimeIndex }); + if (that.data.timeList.length) { + // wxh.time(that.data.timeList[that.data.active].stop, that); + that.setData({ scrollLeft: (that.data.active - 1.37) * 100 }); + // setTimeout(function () { that.setData({ loading: true }) }, 2000); + that.setData({ seckillList: [], page: 1 }); + that.setData({ status: that.data.timeList[that.data.active].status }); + that.getSeckillList(); + } + }); + }, + getSeckillList: function () { + var that = this; + var data = { page: that.data.page, limit: that.data.limit}; + if(that.data.loading) return; + if(that.data.loadend) return; + that.setData({loading:true,loadTitle:'正在搜索'}); + getSeckillList(that.data.timeList[that.data.active].id, data).then(res=>{ + wx.hideLoading(); + var seckillList = res.data; + var loadend = seckillList.length < that.data.limit; + that.data.seckillList = app.SplitArray(seckillList, that.data.seckillList); + that.setData({ + seckillList: that.data.seckillList, + loading: false, + loadend: loadend, + page: that.data.page + 1, + loadTitle: loadend ? '已全部加载' : '加载更多', + }); + }).catch(err=>{ + wx.hideLoading(); + that.setData({ loading: false, loadTitle: "加载更多" }); + }); + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function () { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function () { + if(this.data.interval){ + clearInterval(this.data.interval); + this.setData({ interval: null }); + } + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload: function () { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh: function () { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function () { + this.getSeckillList(); + } +}) \ No newline at end of file diff --git a/template/xcx/pages/activity/goods_seckill/index.json b/template/xcx/pages/activity/goods_seckill/index.json new file mode 100644 index 000000000..322eb75fc --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill/index.json @@ -0,0 +1,7 @@ +{ + "usingComponents": { + "navbar": "/components/navbar/index", + "home": "/components/home/index" + }, + "navigationBarTextStyle": "white" +} \ No newline at end of file diff --git a/template/xcx/pages/activity/goods_seckill/index.wxml b/template/xcx/pages/activity/goods_seckill/index.wxml new file mode 100644 index 000000000..85e45a1b5 --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill/index.wxml @@ -0,0 +1,100 @@ + + + + + + + + + + + + + + + {{item.time}} + {{item.state}} + + + + + + + + + + + + + + {{item.title}} + ¥ + {{item.price}} + ¥{{item.ot_price}} + + 限量 {{item.quota}}件 + + + 已抢{{item.percent}}% + + + + + 马上抢 + 未开始 + 已结束 + + + + + {{loadTitle}} + + + + + + + \ No newline at end of file diff --git a/template/xcx/pages/activity/goods_seckill/index.wxss b/template/xcx/pages/activity/goods_seckill/index.wxss new file mode 100644 index 000000000..b367d7aec --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill/index.wxss @@ -0,0 +1,31 @@ +page{background-color:#F5F5F5!important;} +.flash-sale .header{width:710rpx;height:300rpx;margin: -215rpx auto 0 auto;border-radius: 20rpx;} +.flash-sale .header image{width:100%;height:100%;border-radius:20rpx;} +.flash-sale .seckillList{padding:0 20rpx;} +.flash-sale .seckillList .priceTag{width:75rpx;height:70rpx;} +.flash-sale .seckillList .priceTag image{width:100%;height:100%;} +.flash-sale .timeLsit{width:610rpx;white-space:nowrap;margin: 10rpx 0;} +.flash-sale .timeLsit .item{display:inline-block;font-size:20rpx;color:#666;text-align:center;padding:11rpx 0;box-sizing:border-box;height:96rpx;margin-right: 35rpx; +} +.flash-sale .timeLsit .item .time{font-size:36rpx;font-weight:600;color:#333;} +.flash-sale .timeLsit .item.on .time{color:#E93323;} +.flash-sale .timeLsit .item.on .state{width:90rpx;height:30rpx;border-radius:15rpx;background:linear-gradient(90deg,rgba(252,25,75,1) 0%,rgba(252,60,32,1) 100%);color:#fff;} +.flash-sale .countDown{height:92rpx;border-bottom:1rpx solid #f0f0f0;margin-top:-14rpx;font-size:28rpx;color:#282828;} +.flash-sale .countDown .num{font-size:28rpx;font-weight:bold;background-color:#ffcfcb;padding:4rpx 7rpx;border-radius:3rpx;} +.flash-sale .countDown .text{font-size:28rpx;color:#282828;margin-right:13rpx;} +.flash-sale .list .item{height:230rpx;position:relative;width: 710rpx;margin: 0 auto 20rpx auto;background-color: #fff;border-radius: 20rpx;padding: 0 25rpx;} +.flash-sale .list .item .pictrue{width:180rpx;height:180rpx;border-radius:10rpx;} +.flash-sale .list .item .pictrue image{width:100%;height:100%;border-radius:10rpx;} +.flash-sale .list .item .text{width:460rpx;font-size:30rpx;color:#333;height:166rpx;} +.flash-sale .list .item .text .name{width:100%;} +.flash-sale .list .item .text .money{font-size:30rpx;color:#E93323;} +.flash-sale .list .item .text .money .num{font-size:40rpx;font-weight:500;font-family: 'Guildford Pro';} +.flash-sale .list .item .text .money .y_money{font-size:24rpx;color:#999;text-decoration-line:line-through;margin-left:15rpx;} +.flash-sale .list .item .text .limit{font-size:22rpx;color:#999;margin-bottom: 5rpx;} +.flash-sale .list .item .text .limit .limitPrice{margin-left:10rpx;} +.flash-sale .list .item .text .progress {overflow: hidden;background-color:#FFEFEF;width:260rpx;border-radius:18rpx;height:18rpx;position:relative;} +.flash-sale .list .item .text .progress .bg-reds{width: 0;height: 100%;transition: width 0.6s ease;background:linear-gradient(90deg,rgba(233,51,35,1) 0%,rgba(255,137,51,1) 100%);} +.flash-sale .list .item .text .progress .piece{position:absolute;left:8%;transform:translate(0%,-50%);top:49%;font-size:16rpx;color:#FFB9B9;} +.flash-sale .list .item .grab{font-size:28rpx;color:#fff;width:150rpx;height:54rpx;border-radius:27rpx;text-align:center;line-height:54rpx;position:absolute;right:30rpx;bottom:30rpx;} +.flash-sale .saleBox {width: 100%;height: 230rpx;background: rgba(233, 51, 35, 1);border-radius: 0 0 50rpx 50rpx;} + diff --git a/template/xcx/pages/activity/goods_seckill_details/index.js b/template/xcx/pages/activity/goods_seckill_details/index.js new file mode 100644 index 000000000..b288c928a --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill_details/index.js @@ -0,0 +1,467 @@ +import wxh from '../../../utils/wxh.js'; +import wxParse from '../../../wxParse/wxParse.js'; +import { getSeckillDetail } from '../../../api/activity.js'; +import { postCartAdd, collectAdd, collectDel } from '../../../api/store.js'; + +const app = getApp(); + +Page({ + /** + * 页面的初始数据 + */ + data: { + id: 0, + time:0, + countDownHour: "00", + countDownMinute: "00", + countDownSecond: "00", + storeInfo:[], + imgUrls: [], + parameter: { + 'navbar': '1', + 'return': '1', + 'title': '抢购详情页', + 'color': false + }, + attribute: { + 'cartAttr': false + }, + productSelect: [], + productAttr: [], + productValue: [], + isOpen: false, + attr: '请选择', + attrValue: '', + status: 1, + isAuto: false, + iShidden: false, + limitNum: 1,//限制本属性产品的个数; + personNum:0, //限制用户购买的个数; + iSplus:false, + replyCount: 0,//总评论数量 + reply: [],//评论列表 + replyChance:0, + navH: "", + navList: ['商品', '评价', '详情'], + opacity: 0, + scrollY: 0, + topArr: [], + toView: '', + height: 0, + heightArr: [], + lock: false, + scrollTop:0 + }, + returns: function () { + wx.navigateBack(); + }, + tap: function (e) { + var id = e.currentTarget.dataset.id; + var index = e.currentTarget.dataset.index; + var that = this; + // if (!this.data.good_list.length && id == "past2") { + // id = "past3" + // } + this.setData({ + toView: id, + navActive: index, + lock: true, + scrollTop:index>0?that.data.topArr[index]-(app.globalData.navHeight/2):that.data.topArr[index] + }); + }, + scroll: function (e) { + var that = this, scrollY = e.detail.scrollTop; + var opacity = scrollY / 450; + opacity = opacity > 1 ? 1 : opacity; + that.setData({ + opacity: opacity, + scrollY: scrollY + }) + if (that.data.lock) { + that.setData({ + lock: false + }) + return; + } + for (var i = 0; i < that.data.topArr.length; i++) { + if (scrollY < that.data.topArr[i] - (app.globalData.navHeight/2) + that.data.heightArr[i]) { + that.setData({ + navActive: i + }); + break + } + } + }, + onLoadFun:function(){ + this.getSeckillDetail(); + }, + /** + * 生命周期函数--监听页面加载 + */ + onLoad: function (options) { + var that = this; + this.setData({ + navH: app.globalData.navHeight + }); + //设置商品列表高度 + wx.getSystemInfo({ + success: function (res) { + that.setData({ + height: res.windowHeight + //res.windowHeight:获取整个窗口高度为px,*2为rpx;98为头部占据的高度; + }) + }, + }); + if (options.hasOwnProperty('id') && options.hasOwnProperty('time') && options.hasOwnProperty('status')) { + this.setData({ id: options.id, time: options.time, status: options.status}); + app.globalData.openPages = '/pages/activity/goods_seckill_details/index?id=' + this.data.id + '&time=' + this.data.time + '&status=' + options.status; + }else + return app.Tips({ title:'参数错误'},{tab:3,url:1}) + }, + infoScroll: function () { + var that = this, topArr = [], heightArr = []; + for (var i = 0; i < that.data.navList.length; i++) { //productList + //获取元素所在位置 + var query = wx.createSelectorQuery().in(this); + var idView = "#past" + i; + // if (!that.data.good_list.length && i == 2) { + // var idView = "#past" + 3; + // } + query.select(idView).boundingClientRect(); + query.exec(function (res) { + var top = res[0].top; + var height = res[0].height; + topArr.push(top); + heightArr.push(height); + that.setData({ + topArr: topArr, + heightArr: heightArr + }); + }); + }; + }, + onMyEvent: function (e) { + this.setData({ 'attribute.cartAttr': e.detail.window, isOpen: false }) + }, + /** + * 收藏商品 + */ + setCollect: function () { + if (app.globalData.isLog === false) { + this.setData({ + isAuto: true, + iShidden: false, + }); + } else { + var that = this; + if (this.data.storeInfo.userCollect) { + collectDel(this.data.storeInfo.product_id).then(res => { + that.setData({ + ['storeInfo.userCollect']: !that.data.storeInfo.userCollect + }) + }) + } else { + collectAdd(this.data.storeInfo.product_id).then(res => { + that.setData({ + ['storeInfo.userCollect']: !that.data.storeInfo.userCollect + }) + }) + } + } + }, + /** + * 购物车手动填写 + * + */ + iptCartNum: function (e) { + this.data.productSelect.cart_num = e.detail; + this.setData({ + productSelect: this.data.productSelect, + cart_num: e.detail + }) + }, + /** + * 购物车数量加和数量减 + * + */ + ChangeCartNum: function (e) { + //是否 加|减 + var changeValue = e.detail; + //获取当前变动属性 + var productSelect = this.data.productValue[this.data.attrValue]; + //如果没有属性,赋值给商品默认库存 + if (productSelect === undefined && !this.data.productAttr.length) productSelect = this.data.productSelect; + //不存在不加数量 + if (productSelect === undefined) return; + + if (this.data.cart_num) { + productSelect.cart_num = this.data.cart_num; + } + //提取库存 + var stock = productSelect.stock || 0; + var productStock = productSelect.product_stock || 0; + var quota = productSelect.quota || 0; + var quotaShow = productSelect.quota_show || 0; + var num = this.data.storeInfo.num || 0; + //设置默认数据 + if (productSelect.cart_num == undefined) productSelect.cart_num = 1; + //数量+ + if (changeValue) { + productSelect.cart_num++; + //大于库存时,等于库存 + let arrMin = []; + arrMin.push(num); + arrMin.push(quota); + arrMin.push(productStock); + let minN = Math.min.apply(null,arrMin); + if (productSelect.cart_num >= minN) productSelect.cart_num = minN ? minN : 1; + // if (quotaShow >= productStock) { + // if (productSelect.cart_num >= productStock) productSelect.cart_num = productStock; + // } else { + // if (productSelect.cart_num >= quotaShow) productSelect.cart_num = quotaShow; + // } + this.setData({ + ['productSelect.cart_num']: productSelect.cart_num, + cart_num: productSelect.cart_num + }); + } else { + //数量减 + productSelect.cart_num--; + //小于1时,等于1 + if (productSelect.cart_num < 1) productSelect.cart_num = 1; + this.setData({ + ['productSelect.cart_num']: productSelect.cart_num, + cart_num: productSelect.cart_num + }); + } + }, + /** + * 属性变动赋值 + * + */ + ChangeAttr: function (e) { + var values = e.detail; + var productSelect = this.data.productValue[values]; + var storeInfo = this.data.storeInfo; + this.setData({ + cart_num: 1, + ["productSelect.num"]: storeInfo.num + }); + if (productSelect) { + this.setData({ + ["productSelect.image"]: productSelect.image, + ["productSelect.price"]: productSelect.price, + ["productSelect.quota"]: productSelect.quota, + ["productSelect.stock"]: productSelect.stock, + ["productSelect.quota_show"]: productSelect.quota_show, + ["productSelect.product_stock"]: productSelect.product_stock, + ['productSelect.unique']: productSelect.unique, + ['productSelect.cart_num']: 1, + attrValue: values, + attr: '已选择' + }); + } else { + this.setData({ + ["productSelect.image"]: storeInfo.image, + ["productSelect.price"]: storeInfo.price, + ["productSelect.quota_show"]: 0, + ["productSelect.quota"]: 0, + ['productSelect.unique']: '', + ['productSelect.cart_num']: 1, + attrValue: '', + attr: '请选择' + }); + } + }, + /** + * 默认选中属性 + * + */ + DefaultSelect: function () { + var productAttr = this.data.productAttr, storeInfo = this.data.storeInfo, productValue = this.data.productValue, value = []; + for (var key in productValue) { + if (productValue[key].quota > 0 && productValue[key].product_stock > 0) { + value = this.data.productAttr.length ? key.split(",") : []; + break; + } + } + for (var i = 0, len = productAttr.length; i < len; i++) { + if (productAttr[i].attr_value[0]) productAttr[i].checked = value[i]; + } + var productSelect = this.data.productValue[value.sort().join(',')]; + if (productSelect) { + this.setData({ + ["productSelect.store_name"]: storeInfo.store_name, + ["productSelect.image"]: productSelect.image, + ["productSelect.price"]: productSelect.price, + ["productSelect.quota"]: productSelect.quota, + ["productSelect.stock"]: productSelect.stock, + ["productSelect.quota_show"]: productSelect.quota_show, + ["productSelect.product_stock"]: productSelect.product_stock, + ['productSelect.unique']: productSelect.unique, + ['productSelect.cart_num']: 1, + attrValue: value, + attr: '已选择' + }); + } else { + this.setData({ + ["productSelect.store_name"]: storeInfo.store_name, + ["productSelect.image"]: storeInfo.image, + ["productSelect.price"]: storeInfo.price, + ["productSelect.quota_show"]: storeInfo.quota_show || 0, + ["productSelect.quota"]: storeInfo.quota || 0, + ["productSelect.product_stock"]: storeInfo.product_stock || 0, + ['productSelect.unique']: '', + ['productSelect.cart_num']: 1, + attrValue: '', + attr: '请选择' + }); + } + this.setData({ productAttr: productAttr, ["productSelect.num"]: storeInfo.num, cart_num: 1}); + }, + selecAttr: function () { + if(this.data.status == 1) + this.setData({ + 'attribute.cartAttr': true + }); + }, + /* + * 单独购买 + */ + openAlone: function () { + wx.navigateTo({ + url: `/pages/goods_details/index?id=${this.data.storeInfo.product_id}` + }) + + }, + /* + * 下订单 + */ + goCat: function () { + var that = this; + var productSelect = this.data.productValue[this.data.attrValue]; + //打开属性 + if (this.data.isOpen) + this.setData({ 'attribute.cartAttr': true }) + else + this.setData({ 'attribute.cartAttr': !this.data.attribute.cartAttr }); + //只有关闭属性弹窗时进行加入购物车 + if (this.data.attribute.cartAttr === true && this.data.isOpen == false) return this.setData({ isOpen: true }); + //如果有属性,没有选择,提示用户选择 + if (this.data.productAttr.length && productSelect === undefined && this.data.isOpen == true) return app.Tips({ title: '请选择属性' }); + postCartAdd({ + productId: that.data.storeInfo.product_id, + secKillId: that.data.id, + bargainId: 0, + combinationId: 0, + cartNum: that.data.cart_num, + uniqueId: productSelect !== undefined ? productSelect.unique : '', + 'new': 1 + }).then(res=>{ + that.setData({ isOpen: false }); + wx.navigateTo({ url: '/pages/order_confirm/index?cartId=' + res.data.cartId }); + }).catch(err=>{ + return app.Tips({title:err}); + }); + }, + /** + * 生命周期函数--监听页面显示 + */ + onShow: function () { + if(this.data.isClone && app.globalData.isLog) this.getSeckillDetail(); + }, + getSeckillDetail: function () { + let that = this; + getSeckillDetail(that.data.id).then(res=>{ + let title = res.data.storeInfo.title; + that.setData({ + // ["parameter.title"]: title.length > 10 ? title.substring(0, 10) + '...' : title, + storeInfo: res.data.storeInfo, + imgUrls: res.data.storeInfo.images, + productAttr: res.data.productAttr, + productValue: res.data.productValue, + personNum: res.data.storeInfo.num, + replyCount: res.data.replyCount, + reply: res.data.reply ? [res.data.reply] : [], + replyChance: res.data.replyChance + }); + that.setProductSelect(); + that.DefaultSelect(); + setTimeout(function () { + that.infoScroll(); + }, 500); + app.globalData.openPages = '/pages/activity/goods_seckill_details/index?id=' + that.data.id + '&time=' + that.data.time + '&status=' + that.data.status + '&scene=' + that.data.storeInfo.uid; + wxParse.wxParse('description', 'html', that.data.storeInfo.description || '', that, 0); + wxh.time(that.data.time, that); + }).catch(err=>{ + return app.Tips({ title: err }, { tab: 3, url: 1 }); + }); + }, + setProductSelect:function(){ + var that = this; + if (that.data.productSelect.length == 0){ + that.setData({ + ['productSelect.image']: that.data.storeInfo.image, + ['productSelect.store_name']: that.data.storeInfo.title, + ['productSelect.price']: that.data.storeInfo.price, + ['productSelect.quota']: that.data.storeInfo.quota, + ['productSelect.unique']: '', + ['productSelect.cart_num']: 1, + cart_num: 1, + ["productSelect.num"]: that.data.storeInfo.num, + ['productSelect.is_on']: that.data.storeInfo.num <= 1, + }) + } + }, + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady: function () { + + }, + /** + * 生命周期函数--监听页面隐藏 + */ + onHide: function () { + this.setData({isClone:true}); + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload: function () { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh: function () { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom: function () { + + }, + /** + * 用户点击右上角分享 + */ + onShareAppMessage: function () { + var that = this; + return { + title: that.data.storeInfo.title, + path: app.globalData.openPages , + imageUrl: that.data.storeInfo.image, + success: function () { + wx.showToast({ + title: '分享成功', + icon: 'success', + duration: 2000 + }) + } + } + } +}) \ No newline at end of file diff --git a/template/xcx/pages/activity/goods_seckill_details/index.json b/template/xcx/pages/activity/goods_seckill_details/index.json new file mode 100644 index 000000000..0db3fdee5 --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill_details/index.json @@ -0,0 +1,10 @@ +{ + "usingComponents": { + "productConSwiper": "/components/productConSwiper/index", + "home": "/components/home/index", + "product-window": "/components/product-window/index", + "navbar": "/components/navbar/index", + "userEvaluation": "/components/userEvaluation/index", + "authorize": "/components/authorize/authorize" + } +} \ No newline at end of file diff --git a/template/xcx/pages/activity/goods_seckill_details/index.wxml b/template/xcx/pages/activity/goods_seckill_details/index.wxml new file mode 100644 index 000000000..726db422b --- /dev/null +++ b/template/xcx/pages/activity/goods_seckill_details/index.wxml @@ -0,0 +1,107 @@ + + + + + + + {{ item }} + + + + + + + + + + + + + + + + + + + + ¥{{storeInfo.price}}¥{{storeInfo.ot_price}} + + + 距秒杀结束仅剩 + + {{countDownHour}}: + {{countDownMinute}}: + {{countDownSecond}} + + + + + + + + + {{storeInfo.title}} + + + + + 累计销售:{{storeInfo.total?storeInfo.total:0}}件 + 限量: {{ storeInfo.quota ? storeInfo.quota : 0 }} 件 + + + + {{attr}}:{{attrValue}} + + + + + + 用户评价({{replyCount}}) + + {{replyChance}}%好评率 + + + + + + + 产品介绍 + +