diff --git a/app/.gitignore b/app/.gitignore index 95cfff7..78a752d 100644 --- a/app/.gitignore +++ b/app/.gitignore @@ -1,15 +1,14 @@ .DS_Store -node_modules -/dist - -# local env files -.env.local -.env.*.local - -# Log files +node_modules/ +dist/ npm-debug.log* yarn-debug.log* yarn-error.log* +**/*.log + +tests/**/coverage/ +tests/e2e/reports +selenium-debug.log # Editor directories and files .idea @@ -18,7 +17,7 @@ yarn-error.log* *.ntvs* *.njsproj *.sln -*.sw? -build.sh -.idea -unpackage \ No newline at end of file +*.local + +package-lock.json +yarn.lock diff --git a/app/.hbuilderx/launch.json b/app/.hbuilderx/launch.json deleted file mode 100644 index 261ce48..0000000 --- a/app/.hbuilderx/launch.json +++ /dev/null @@ -1,24 +0,0 @@ -{ // launch.json 配置了启动调试时相关设置,configurations下节点名称可为 app-plus/h5/mp-weixin/mp-baidu/mp-alipay/mp-qq/mp-toutiao/mp-360/ - // launchtype项可配置值为local或remote, local代表前端连本地云函数,remote代表前端连云端云函数 - "version": "0.0", - "configurations": [{ - "app-plus" : - { - "launchtype" : "remote" - }, - "default" : - { - "launchtype" : "remote" - }, - "h5" : - { - "launchtype" : "remote" - }, - "mp-weixin" : - { - "launchtype" : "remote" - }, - "type" : "uniCloud" - } - ] -} diff --git a/app/App.vue b/app/App.vue deleted file mode 100644 index 11d0090..0000000 --- a/app/App.vue +++ /dev/null @@ -1,229 +0,0 @@ - - - diff --git a/app/api/activity.js b/app/api/activity.js deleted file mode 100644 index fe62b3d..0000000 --- a/app/api/activity.js +++ /dev/null @@ -1,220 +0,0 @@ -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 getCombinationMore(data) { - return request.get("combination/more",data,{noAuth:true}); -} - -/** - * 砍价列表 - */ -export function getBargainList(data) { - return request.get("bargain/list", data,{noAuth:true}); -} - -/** - * - * 砍价列表(已参与) - * @param object data -*/ -export function getBargainUserList(data){ - return request.get('bargain/record',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 getBargainUser(data) { - return request.get("bargain/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(params,data) { - return request.get("bargain/help/list?limit="+params.limit+"&page="+params.page, data,{}); -} - -/** - * 秒杀产品时间区间 - * -*/ -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) -} - -/** - * 砍价取消 - */ -export function getBargainUserCancel(data) { - return request.post("/bargain/user/cancel", data); -} - -/** - * 获取秒杀小程序二维码 - */ -export function seckillCode(id,data) { - return request.get("seckill/code/"+id,data); -} - -/** - * 获取拼团小程序二维码 - */ -export function scombinationCode(id) { - return request.get("combination/code/"+id); -} - -/** - * 秒杀产品时间区间 - * @param int id -*/ -export function getSeckillHeaderApi(){ - return request.get('seckill/header',{},{noAuth:true}); -} - -/** - * 首页秒杀产品列表 -*/ -export function getSeckillIndexApi(){ - return request.get('seckill/index',{},{noAuth:true}); -} - - -/** - * 首页拼团产品列表 -*/ -export function getCombinationIndexApi(){ - return request.get('combination/index',{},{noAuth:true}); -} - -/** - * 首页砍价产品列表 -*/ -export function getBargainIndexApi(){ - return request.get('bargain/index',{},{noAuth:true}); -} - -/** - * 首页砍价产品列表 -*/ -export function bargainHeaderApi(){ - return request.get('bargain/header'); -} - -/** - * 拼图列表头部 -*/ -export function combinationHeaderApi(){ - return request.get('combination/header'); -} \ No newline at end of file diff --git a/app/api/admin.js b/app/api/admin.js deleted file mode 100644 index d037b42..0000000 --- a/app/api/admin.js +++ /dev/null @@ -1,89 +0,0 @@ -import request from "@/utils/request.js"; - -/** - * 统计数据 - */ -export function getStatisticsInfo() { - return request.get("/admin/order/statistics", {}, { login: true }); -} -/** - * 订单月统计 - */ -export function getStatisticsMonth(where) { - return request.get("/admin/order/data", where, { login: true }); -} -/** - * 订单月统计 - */ -export function getAdminOrderList(where) { - return request.get("/admin/order/list", where, { login: true }); -} -/** - * 订单改价 - */ -export function setAdminOrderPrice(data) { - return request.post("/admin/order/price", data, { login: true }); -} -/** - * 订单备注 - */ -export function setAdminOrderRemark(data) { - return request.post("/admin/order/remark", data, { login: true }); -} -/** - * 订单详情 - */ -export function getAdminOrderDetail(orderId) { - return request.get("/admin/order/detail/" + orderId, {}, { login: true }); -} -/** - * 订单发货信息获取 - */ -export function getAdminOrderDelivery(orderId) { - return request.get( - "/admin/order/delivery/gain/" + orderId, - {}, - { login: true } - ); -} - -/** - * 订单发货保存 - */ -export function setAdminOrderDelivery(data) { - return request.post("/admin/order/delivery/keep", data, { login: true }); -} -/** - * 订单统计图 - */ -export function getStatisticsTime(data) { - return request.get("/admin/order/time", data, { login: true }); -} -/** - * 线下付款订单确认付款 - */ -export function setOfflinePay(data) { - return request.post("/admin/order/offline", data, { login: true }); -} -/** - * 订单确认退款 - */ -export function setOrderRefund(data) { - return request.post("/admin/order/refund", data, { login: true }); -} - -/** - * 获取快递公司 - * @returns {*} - */ -export function getLogistics() { - return request.get("/logistics", {}, { login: false }); -} - -/** - * 订单核销 - * @returns {*} - */ -export function orderVerific(verify_code, is_confirm) { - return request.post("order/order_verific", { verify_code, is_confirm }); -} diff --git a/app/api/api.js b/app/api/api.js deleted file mode 100644 index 8d1845b..0000000 --- a/app/api/api.js +++ /dev/null @@ -1,229 +0,0 @@ -import request from "@/utils/request.js"; -/** - * 公共接口 ,优惠券接口 , 行业此讯 , 手机号码注册 - * -*/ - -/** - * 获取主页数据 无需授权 - * -*/ -export function getIndexData() -{ - return request.get("index",{},{ noAuth : true}); -} - -/** - * 获取登录授权login - * -*/ -export function getLogo() -{ - return request.get('wechat/getLogo', {}, { 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(data){ - return request.get('coupon/list',data) -} - -/** - * 文章分类列表 - * -*/ -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/info',id,{noAuth:true}); -} - -/** - * 手机号+验证码登录接口 - * @param object data -*/ -export function loginMobile(data){ - return request.post('login/mobile',data,{noAuth:true}) -} - -/** - * 获取短信KEY - * @param object phone -*/ -export function verifyCode(){ - return request.get('verify_code', {},{noAuth:true}) -} - -/** - * 验证码发送 - * @param object phone -*/ -export function registerVerify(phone){ - return request.post('sendCode', { phone: phone },{noAuth:true},1) -} - -/** - * 手机号注册 - * @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 -*/ -// #ifdef MP -export function switchH5Login(){ - return request.post('switch_h5', { 'from':'routine'}); -} -// #endif - -/* - * h5切换公众号登录 - * */ -// #ifdef H5 -export function switchH5Login() { - return request.post("switch_h5", { 'from': "wechat" }); -} -// #endif - -/** - * 换绑手机号 - * -*/ -export function bindingPhone(data){ - return request.post('update/binding',data); -} - -/** - * 换绑手机号校验 - * -*/ -export function bindingVerify(data){ - return request.post('update/binding/verify',data); -} - -/** - * 退出登錄 - * -*/ -export function logout(){ - return request.get('logout'); -} - -/** - * 获取订阅消息id - */ -export function getTemlIds(data) -{ - return request.get('wechat/program/my/temp/list', data , { noAuth:true}); -} - -/** - * 首页拼团数据 - */ -export function pink() -{ - return request.get('pink', {}, { noAuth:true}); -} - -/** - * 获取城市信息 - */ -export function getCity() { - return request.get('city/list', { }, { noAuth: true }); -} - -/** - * 获取小程序直播列表 - */ -export function getLiveList(page,limit) { - return request.get('wechat/live', { page, limit}, { noAuth: true }); -} - -/** - * 获取小程序二维码 - */ -export function getQrcode(data) { - return request.post('qrcode/get',data,{ noAuth: true }); -} diff --git a/app/api/order.js b/app/api/order.js deleted file mode 100644 index 4efb6c7..0000000 --- a/app/api/order.js +++ /dev/null @@ -1,255 +0,0 @@ -import request from "@/utils/request.js"; - -/** - * 获取购物车列表 - * @param numType boolean true 购物车数量,false=购物车产品数量 - */ -export function getCartCounts(numType,type) { - return request.get("cart/count?numType=" + numType + "&type=" + type); -} -/** - * 获取购物车列表 - * - */ -export function getCartList(data) { - return request.get("cart/list", data); -} - -/** - * 修改购物车数量 - * @param int cartId 购物车id - * @param int number 修改数量 - */ -export function changeCartNum(cartId, number) { - return request.post("cart/num", { - id: cartId, - number: number - }, {}, 1); -} -/** - * 清除购物车 - * @param object ids join(',') 切割成字符串 - */ -export function cartDel(ids) { - if (typeof ids === 'object') - ids = ids.join(','); - return request.post('cart/delete', { - ids: ids - }, {}, 1); -} - -/** - * 购物车重选提交 - * - */ -export function getResetCart(data) { - return request.post('cart/resetcart', data); -} - -/** - * 订单列表 - * @param object data - */ -export function getOrderList(data) { - return request.get('order/list', data); -} - -/** - * 订单产品信息 - * @param string unique - */ -export function orderProduct(data) { - return request.post('order/product', data); -} - -/** - * 订单评价 - * @param object data - * - */ -export function orderComment(data) { - return request.post('order/comment', data); -} - -/** - * 订单支付 - * @param object data - */ -export function orderPay(data) { - return request.post('order/pay', data); -} - -/** - * 订单统计数据 - */ -export function orderData() { - return request.get('order/data') -} - -/** - * 订单取消 - * @param string id - * - */ -export function orderCancel(id) { - return request.post('order/cancel', { - id: id - }, {}, 1); -} - -/** - * 删除已完成订单 - * @param string uni - * - */ -export function orderDel(uni) { - return request.post('order/del', { - id: uni - }, {}, 1); -} - -/** - * 订单详情 - * @param string uni - */ -export function getOrderDetail(uni) { - return request.get('order/detail/' + uni); -} - -/** - * 再次下单 - * @param string uni - * - */ -export function orderAgain(uni) { - return request.post('order/again', { - orderNo: uni - }); -} - -/** - * 订单收货 - * @param string uni - * - */ -export function orderTake(uni) { - return request.post('order/take', { - id: uni - }, {}, 1); -} - -/** - * 订单查询物流信息 - * @returns {*} - */ -export function express(uni) { - return request.get("order/express/" + uni); -} - -/** - * 获取退款理由 - * - */ -export function ordeRefundReason() { - return request.get('order/refund/reason'); -} - -/** - * 订单退款审核 - * @param object data - */ -export function orderRefundVerify(data) { - return request.post('order/refund', data); -} - -/** - * 订单确认获取订单详细信息 - * @param string cartId - */ -export function orderConfirm(cartId, isNew, addAgain,secKill,combination,bargain) { - return request.post('order/confirm', { - cartIds: cartId, - isNew: isNew, - addAgain: addAgain, - secKill: secKill, - combination:combination, - bargain:bargain - }); -} - -/** - * 获取当前金额能使用的优惠卷 - * @param string price - * - */ -export function getCouponsOrderPrice(preOrderNo) { - return request.get(`coupons/order/${preOrderNo}`) -} - -/** - * 订单创建 - * @param string key - * @param object data - * - */ -export function orderCreate(data) { - return request.post('order/create', data); -} - -/** - * 计算订单金额 - * @param key - * @param data - * @returns {*} - */ -export function postOrderComputed(data) { - return request.post("order/computed/price", data); -} - -/** - * 将字符串 转base64 - * @param object data - */ -export function qrcodeApi(data) { - return request.post('qrcode/str2base64', data, {}, 1); -} - -/** - * 微信订单支付 - * @param object data - */ -export function wechatOrderPay(data) { - return request.post('pay/payment', data); -} - -/** - * 微信查询支付结果 - * @param object data - */ -export function wechatQueryPayResult(data) { - return request.get('pay/queryPayResult?orderNo=' + data); -} - -/** - * 申请退款商品详情 - * @param object data - */ -export function applyRefund(orderId) { - return request.get(`order/apply/refund/${orderId}`); -} - -/** - * 预下单 - * @param object data - */ -export function preOrderApi(data) { - return request.post(`order/pre/order`, data); -} - -/** - * 加载预下单 - * @param object preOrderNo - */ -export function loadPreOrderApi(preOrderNo) { - return request.get(`order/load/pre/${preOrderNo}`); -} \ No newline at end of file diff --git a/app/api/public.js b/app/api/public.js deleted file mode 100644 index 91144d0..0000000 --- a/app/api/public.js +++ /dev/null @@ -1,116 +0,0 @@ -import request from "@/utils/request.js"; -import wechat from "@/libs/wechat.js"; -import { - toLogin, - checkLogin -} from '../libs/login'; -/** - * 获取微信公众号js配置 - * @returns {*} - */ -export function getWechatConfig() { - return request.get("wechat/config",{ url: encodeURIComponent(wechat.signLink()) },{ noAuth: true }); -} - -/** - * 获取微信sdk配置 - * @returns {*} - */ -export function wechatAuth(code, spread) { - var reg=/^[0-9]+.?[0-9]*$/; //判断字符串是否为数字 ,判断正整数用/^[1-9]+[0-9]*]*$/ - spread = reg.test(spread) ? spread : 0; - return request.get( - "wechat/authorize/login?code=" + code + "&spread_spid=" + spread, {}, - { noAuth: true } - ); -} - -/** - * 获取登录授权login - * -*/ -export function getLogo() -{ - // wechat/get_logo - return request.get('wechat/getLogo', {}, { noAuth : true}); -} - -/** - * 小程序用户登录 - * @param data object 小程序用户登录信息 - */ -export function login(code,data) { - return request.post("wechat/authorize/program/login?code="+code, data, { noAuth : true }); -} -/** - * 分享 - * @returns {*} - */ -export function getShare() { - return request.get("share", {}, { noAuth: true }); -} - -/** - * 获取关注海报 - * @returns {*} - */ -export function follow() { - return request.get("wechat/follow", {}, { noAuth: true }); -} - -/** - * 获取图片base64 - * @retins {*} - * */ -export function imageBase64(image) { - return request.post("qrcode/base64",image,{ noAuth: true },1); -} - -/** - * 自动复制口令功能 - * @returns {*} - */ -export function copyWords() { - return request.get("copy_words", {}, { noAuth: true }); -} - -/** - * 首页 获取客服地址 - * @returns {*} - */ -export function kefuConfig() { - return request.get("config", {}, { noAuth: true }); -} - -/** - * 微信(公众号,小程序)绑定手机号 - * @param {Object} data - */ -export function getUserPhone(data){ - return request.post('wechat/register/binding/phone',data,{noAuth : true}); -} - -/** - * APP微信登录 - * @param {Object} data - */ -export function appAuth(data) { - return request.post("wechat/authorize/app/login", data, { noAuth : true }); -} - -/** - * 苹果登录 - * @param {Object} data - */ -export function appleLogin(data) { - return request.post("ios/login", data, { noAuth : true }); -} - - -/** - * 苹果绑定手机号 - * @param {Object} data - */ -export function iosBinding(data) { - return request.post("ios/binding/phone", data, { noAuth : true }); -} \ No newline at end of file diff --git a/app/api/store.js b/app/api/store.js deleted file mode 100644 index a775065..0000000 --- a/app/api/store.js +++ /dev/null @@ -1,191 +0,0 @@ -import request from "@/utils/request.js"; - -/** - * 获取产品详情 - * @param int id - * - */ -export function getProductDetail(id, type) { - return request.get('product/detail/' + id + '?type=' + type, {}, { - noAuth: true - }); -} - -/** - * 产品分享二维码 推广员 - * @param int id - */ -// #ifndef MP -export function getProductCode(id) { - return request.get('product/code/' + id, {}); -} -// #endif -// #ifdef MP -export function getProductCode(id) { - return request.get('product/code/' + id, { - user_type: 'routine' - }); -} -// #endif - -/** - * 添加收藏 - * @param int id - * @param string category product=普通产品,product_seckill=秒杀产品 - */ -export function collectAdd(id, category) { - return request.post('collect/add', { - id: id, - 'category': category === undefined ? 'product' : category - }); -} - -/** - * 取消收藏产品 - * @param int id - */ -export function collectDel(proId) { - return request.post(`collect/cancel/${proId}`); -} - - -/** - * 删除收藏产品 - * @param string id - */ -export function collectDelete(ids) { - return request.post(`collect/delete`,ids); -} - -/** - * 购车添加 - * - */ -export function postCartAdd(data) { - return request.post('cart/save', data, {}); -} - -/** - * 获取分类列表 - * - */ -export function getCategoryList() { - return request.get('category', {}, { - noAuth: true - }); -} - -/** - * 获取产品列表 - * @param object data - */ -export function getProductslist(data) { - return request.get('products', data, { - noAuth: true - }); -} - -/** - * 获取推荐产品 - * - */ -export function getProductHot(page, limit) { - return request.get("product/hot", { - page: page === undefined ? 1 : page, - limit: limit === undefined ? 4 : limit - }, { - noAuth: true - }); -} -/** - * 批量收藏 - * - * @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 type - * - */ -export function getGroomList(type, data) { - return request.get('index/product/' + type, data, { - noAuth: true - }); -} - -/** - * 获取收藏列表 - * @param object data - */ -export function getCollectUserList(data) { - return request.get('collect/user', data) -} - -/** - * 获取产品评论 - * @param int id - * @param object data - * - */ -export function getReplyList(id, data) { - return request.get('reply/list/' + id, data,{ - noAuth: true - }) -} - -/** - * 产品评价数量和好评度 - * @param int id - */ -export function getReplyConfig(id) { - return request.get('reply/config/' + id,{},{ - noAuth: true - }); -} - -/** - * 获取搜索关键字获取 - * - */ -export function getSearchKeyword() { - return request.get('search/keyword', {}, { - noAuth: true - }); -} - -/** - * 门店列表 - * @returns {*} - */ -export function storeListApi(data) { - return request.post("store/list", data, {}, 1); -} - - -/** - * 优品推荐 - * @param object data - */ -export function getProductGood() { - return request.get('product/good',{},{ noAuth : true}); -} - -/** - * 详情页产品评论 - * @param int id - * @param object data - * - */ -export function getReplyProduct(id) { - return request.get('reply/product/' + id, {},{ - noAuth: true - }) -} \ No newline at end of file diff --git a/app/api/user.js b/app/api/user.js deleted file mode 100644 index 4a4c187..0000000 --- a/app/api/user.js +++ /dev/null @@ -1,460 +0,0 @@ -import request from "@/utils/request.js"; -import Cache from "@/utils/cache.js" -/** - * 获取用户信息 - * -*/ -export function getUserInfo(){ - return request.get('user'); -} - -/** - * 设置用户分享 - * -*/ -export function userShare(){ - return request.post('user/share'); -} - -/** - * h5用户登录 - * @param data object 用户账号密码 - */ -export function loginH5(data) { - return request.post("login", data, { noAuth : true }); -} - -/** - * h5用户手机号登录 - * @param data object 用户手机号 也只能 - */ -export function loginMobile(data) { - return request.post("login/mobile", data, { noAuth : true }); -} - -/** - * 验证码key - */ -export function getCodeApi() { - return request.get("verify_code", {}, { noAuth: true }); -} - -/** - * h5用户发送验证码 - * @param data object 用户手机号 - */ -export function registerVerify(phone){ - return request.post('sendCode', { phone: phone },{noAuth:true},1) -} - -/** - * h5用户手机号注册 - * @param data object 用户手机号 验证码 密码 - */ -export function register(data) { - return request.post("register", data, { noAuth : true }); -} - -/** - * 用户手机号修改密码 - * @param data object 用户手机号 验证码 密码 - */ -export function registerReset(data) { - return request.post("register/reset", data, { noAuth: true }); -} - -/** - * 获取用户中心菜单 - * - */ -export function getMenuList() { - return request.get("menu/user"); -} - -/* - * 签到用户信息 - * */ -export function postSignUser(sign) { - return request.post("user/sign/user", sign); -} - -/** - * 获取签到配置 - * -*/ -export function getSignConfig(){ - return request.get('user/sign/config') -} - -/** - * 获取签到列表 - * @param object data -*/ -export function getSignList(data){ - return request.get('user/sign/list',data); -} - -/** - * 用户签到 -*/ -export function setSignIntegral(){ - return request.get('user/sign/integral') -} - -/** - * 签到列表(年月) - * @param object data - * -*/ -export function getSignMonthList(data){ - return request.get('user/sign/month',data) -} - -/** - * 活动状态 - * -*/ -export function userActivity(){ - return request.get('user/activity'); -} - -/* - * 余额明细(types|2=全部,1=支出,2=收入) - * */ -export function getCommissionInfo(data) { - return request.get("spread/commission/detail", data); -} - -/* - * 提现记录 getCountApi - * */ -export function getRecordApi(q) { - return request.get("extract/record", q); -} - -/* - * 提现总金额 - * */ -export function getCountApi() { - return request.get("extract/totalMoney"); -} - -/* - * 积分记录 - * */ -export function getIntegralList(q) { - return request.get("integral/list", q); -} - -/** - * 获取分销海报图片 - * -*/ -export function spreadBanner(data){ - return request.get('user/spread/banner',data); -} - -/** - * - * 获取推广用户一级和二级 - * @param object data -*/ -export function spreadPeople(data){ - return request.get('spread/people',data); -} - -/** - * - * 推广佣金/提现总和 - * @param int type -*/ -export function spreadCount(type){ - return request.get('spread/count/'+type); -} - -/* - * 推广数据 当前佣金 提现总金额 - * */ -export function getSpreadInfo() { - return request.get("commission"); -} - - -/** - * - * 推广订单 - * @param object data -*/ -export function spreadOrder(data){ - return request.get('spread/order',data); -} - -/* - * 获取推广人排行 - * */ -export function getRankList(q) { - return request.get("rank", q); -} - -/* - * 获取佣金排名 - * */ -export function getBrokerageRank(q) { - return request.get("brokerage_rank", q); -} - -/** - * 提现申请 - * @param object data -*/ -export function extractCash(data){ - return request.post('extract/cash',data) -} - -/** - * 提现银行/提现最低金额 - * -*/ -export function extractBank(){ - return request.get('extract/bank'); -} - -/** - * 会员等级列表 - * -*/ -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'); -} - -/** - * - * 地址列表 - * @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}) -} - -/** - * 修改 添加地址 - * @param object data -*/ -export function editAddress(data){ - return request.post('address/edit',data); -} - -/** - * 删除地址 - * @param int id - * -*/ -export function delAddress(id){ - return request.post('address/del',{id:id}) -} - -/** - * 获取单个地址 - * @param int id -*/ -export function getAddressDetail(id){ - return request.get('address/detail/'+id); -} - -/** - * 修改用户信息 - * @param object -*/ -export function userEdit(data){ - return request.post('user/edit',data); -} - -/* - * 退出登录 - * */ -export function getLogout() { - return request.get("logout"); -} -/** - * 小程序充值 - * -*/ -export function rechargeRoutine(data){ - return request.post('recharge/routine',data) -} -/* - * 公众号充值 - * */ -export function rechargeWechat(data) { - return request.post("recharge/wechat", data); -} - -/* - * app微信充值 - * */ -export function appWechat(data) { - return request.post("recharge/wechat/app", data); -} - -/* - * 余额充值 - * */ -export function transferIn(data) { - return request.post("recharge/transferIn", data,{},1); -} - -/** - * 获取默认地址 - * -*/ -export function getAddressDefault(){ - return request.get('address/default'); -} - -/** - * 充值金额选择 - */ -export function getRechargeApi() { - return request.get("recharge/index"); -} - -/** - * 登录记录 - */ -export function setVisit(data) -{ - return request.post('user/set_visit', {...data}, { noAuth:true}); -} - -/** - * 客服列表 - */ -export function serviceList() { - return request.get("user/service/lst"); -} -/** - * 客服详情 - */ -export function getChatRecord(to_uid, data) { - return request.get("user/service/record/" + to_uid, data); -} - -/** - * 静默绑定推广人 - * @param {Object} puid - */ -export function spread(puid) -{ - return request.get("user/bindSpread?spreadPid="+ puid); -} - -/** - * 当前用户在佣金排行第几名 - * - */ -export function brokerageRankNumber(data) -{ - return request.get("user/brokerageRankNumber",data); -} - -/** - * 会员等级经验值; - * - */ -export function getlevelInfo() -{ - return request.get("user/level/grade"); -} - -/** - * 经验值明细; - * - */ -export function getlevelExpList(data) -{ - return request.get("user/expList",data); -} - -/** - * 经验值明细; - * - */ -export function getuserDalance() -{ - return request.get("user/balance"); -} - - -/** - * 账单记录; - * - */ -export function getBillList(data) -{ - return request.get("recharge/bill/record",data); -} - -/* - * 积分中心详情 - * */ -export function postIntegralUser() { - return request.get("integral/user"); -} - -/* - * 立即提现 冻结期、冻结佣金、可提现佣金、最低可提现金额 - * */ -export function extractUser() { - return request.get("extract/user"); -} - -/* - * 推广人统计页 推广人数(一级+二级)、一级人数、二级人数 - * */ -export function spreadPeoCount() { - return request.get("spread/people/count"); -} - -/* -统计 -* -*/ -export function computeUser(){ - uni.request({ - url: document.location.protocol + '//shop.crmeb.net/index.php/admin/server.upgrade_api/updatewebinfo', - method:'POST', - data: { - host:window.location.host, - https:document.location.protocol, - version:'CRMEB-JAVA-KY-V1.3.4', - version_code:'gitee', - ip:Cache.has('Ip') ? Cache.get('Ip') : '' - }, - dataType:'json', - success: (res) => {} - }); -} \ No newline at end of file diff --git a/app/config/app.js b/app/config/app.js deleted file mode 100644 index be268a9..0000000 --- a/app/config/app.js +++ /dev/null @@ -1,40 +0,0 @@ -// +---------------------------------------------------------------------- -// | CRMEB [ CRMEB赋能开发者,助力企业发展 ] -// +---------------------------------------------------------------------- -// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved. -// +---------------------------------------------------------------------- -// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 -// +---------------------------------------------------------------------- -// | Author: CRMEB Team -// +---------------------------------------------------------------------- -//移动端商城API -let domain = 'http://your Front API domain' - -module.exports = { - // 请求域名 格式: https://您的域名 - HTTP_REQUEST_URL:domain, - - // #ifdef MP - HTTP_REQUEST_URL: domain, - // #endif - HTTP_ADMIN_URL:'http://your h5 domain', //PC后台的API请求地址,上传图片用,影响h5上传头像 - // #ifdef H5 - //H5接口是浏览器地址 - // HTTP_REQUEST_URL: window.location.protocol+"//"+window.location.host, - // http://api.java.crmeb.net:20001 - HTTP_REQUEST_URL:domain, - // #endif - - HEADER:{ - 'content-type': 'application/json' - }, - HEADERPARAMS:{ - 'content-type': 'application/x-www-form-urlencoded' - }, - // 回话密钥名称 请勿修改此配置 - TOKENNAME: 'Authori-zation', - // 缓存时间 0 永久 - EXPIRE:0, - //分页最多显示条数 - LIMIT: 10 -}; diff --git a/app/config/cache.js b/app/config/cache.js deleted file mode 100644 index 35fa418..0000000 --- a/app/config/cache.js +++ /dev/null @@ -1,34 +0,0 @@ -module.exports = { - //token - LOGIN_STATUS: 'LOGIN_STATUS_TOKEN', - // uid - UID:'UID', - //用户信息 - USER_INFO: 'USER_INFO', - //token 过期时间 - EXPIRES_TIME: 'EXPIRES_TIME', - //微信授权 - WX_AUTH: 'WX_AUTH', - //微信授权状态 - STATE_KEY: 'wx_authorize_state', - //登录类型 - LOGINTYPE: 'loginType', - //登录回调地址 - BACK_URL: 'login_back_url', - // 小程序授权状态 - STATE_R_KEY: 'roution_authorize_state', - //logo Url - LOGO_URL: 'LOGO_URL', - //模板缓存 - // SUBSCRIBE_MESSAGE: 'SUBSCRIBE_MESSAGE', - - TIPS_KEY: 'TIPS_KEY', - - SPREAD: 'spread', - //缓存经度 - CACHE_LONGITUDE: 'LONGITUDE', - //缓存纬度 - CACHE_LATITUDE: 'LATITUDE', - //app手机信息 - PLATFORM: 'systemPlatform' -} \ No newline at end of file diff --git a/app/config/socket.js b/app/config/socket.js deleted file mode 100644 index a73fe0a..0000000 --- a/app/config/socket.js +++ /dev/null @@ -1,8 +0,0 @@ -module.exports = { - // Socket链接 暂不做配置 - WSS_SERVER_URL:'', - // Socket调试模式 - SERVER_DEBUG:true, - // 心跳间隔 - PINGINTERVAL:3000 -} \ No newline at end of file diff --git a/app/images/gouwuche.png b/app/images/gouwuche.png new file mode 100644 index 0000000..a37263e Binary files /dev/null and b/app/images/gouwuche.png differ diff --git a/app/images/gouwuche1.png b/app/images/gouwuche1.png new file mode 100644 index 0000000..a910d3d Binary files /dev/null and b/app/images/gouwuche1.png differ diff --git a/app/images/shouye.png b/app/images/shouye.png new file mode 100644 index 0000000..2df82a0 Binary files /dev/null and b/app/images/shouye.png differ diff --git a/app/images/shouye1.png b/app/images/shouye1.png new file mode 100644 index 0000000..e3d4cf3 Binary files /dev/null and b/app/images/shouye1.png differ diff --git a/app/images/wodedangxuan.png b/app/images/wodedangxuan.png new file mode 100644 index 0000000..2721fc1 Binary files /dev/null and b/app/images/wodedangxuan.png differ diff --git a/app/images/wodedangxuan1.png b/app/images/wodedangxuan1.png new file mode 100644 index 0000000..0c334cb Binary files /dev/null and b/app/images/wodedangxuan1.png differ diff --git a/app/js_sdk/Sansnn-uQRCode/uqrcode.js b/app/js_sdk/Sansnn-uQRCode/uqrcode.js deleted file mode 100644 index e21bbb4..0000000 --- a/app/js_sdk/Sansnn-uQRCode/uqrcode.js +++ /dev/null @@ -1,1380 +0,0 @@ -//--------------------------------------------------------------------- -// github https://github.com/Sansnn/uQRCode -//--------------------------------------------------------------------- - -let uQRCode = {}; - -(function() { - //--------------------------------------------------------------------- - // QRCode for JavaScript - // - // Copyright (c) 2009 Kazuhiko Arase - // - // URL: http://www.d-project.com/ - // - // Licensed under the MIT license: - // http://www.opensource.org/licenses/mit-license.php - // - // The word "QR Code" is registered trademark of - // DENSO WAVE INCORPORATED - // http://www.denso-wave.com/qrcode/faqpatent-e.html - // - //--------------------------------------------------------------------- - - //--------------------------------------------------------------------- - // QR8bitByte - //--------------------------------------------------------------------- - - function QR8bitByte(data) { - this.mode = QRMode.MODE_8BIT_BYTE; - this.data = data; - } - - QR8bitByte.prototype = { - - getLength: function(buffer) { - return this.data.length; - }, - - write: function(buffer) { - for (var i = 0; i < this.data.length; i++) { - // not JIS ... - buffer.put(this.data.charCodeAt(i), 8); - } - } - }; - - //--------------------------------------------------------------------- - // QRCode - //--------------------------------------------------------------------- - - function QRCode(typeNumber, errorCorrectLevel) { - this.typeNumber = typeNumber; - this.errorCorrectLevel = errorCorrectLevel; - this.modules = null; - this.moduleCount = 0; - this.dataCache = null; - this.dataList = new Array(); - } - - QRCode.prototype = { - - addData: function(data) { - var newData = new QR8bitByte(data); - this.dataList.push(newData); - this.dataCache = null; - }, - - isDark: function(row, col) { - if (row < 0 || this.moduleCount <= row || col < 0 || this.moduleCount <= col) { - throw new Error(row + "," + col); - } - return this.modules[row][col]; - }, - - getModuleCount: function() { - return this.moduleCount; - }, - - make: function() { - // Calculate automatically typeNumber if provided is < 1 - if (this.typeNumber < 1) { - var typeNumber = 1; - for (typeNumber = 1; typeNumber < 40; typeNumber++) { - var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, this.errorCorrectLevel); - - var buffer = new QRBitBuffer(); - var totalDataCount = 0; - for (var i = 0; i < rsBlocks.length; i++) { - totalDataCount += rsBlocks[i].dataCount; - } - - for (var i = 0; i < this.dataList.length; i++) { - var data = this.dataList[i]; - buffer.put(data.mode, 4); - buffer.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber)); - data.write(buffer); - } - if (buffer.getLengthInBits() <= totalDataCount * 8) - break; - } - this.typeNumber = typeNumber; - } - this.makeImpl(false, this.getBestMaskPattern()); - }, - - makeImpl: function(test, maskPattern) { - - this.moduleCount = this.typeNumber * 4 + 17; - this.modules = new Array(this.moduleCount); - - for (var row = 0; row < this.moduleCount; row++) { - - this.modules[row] = new Array(this.moduleCount); - - for (var col = 0; col < this.moduleCount; col++) { - this.modules[row][col] = null; //(col + row) % 3; - } - } - - this.setupPositionProbePattern(0, 0); - this.setupPositionProbePattern(this.moduleCount - 7, 0); - this.setupPositionProbePattern(0, this.moduleCount - 7); - this.setupPositionAdjustPattern(); - this.setupTimingPattern(); - this.setupTypeInfo(test, maskPattern); - - if (this.typeNumber >= 7) { - this.setupTypeNumber(test); - } - - if (this.dataCache == null) { - this.dataCache = QRCode.createData(this.typeNumber, this.errorCorrectLevel, this.dataList); - } - - this.mapData(this.dataCache, maskPattern); - }, - - setupPositionProbePattern: function(row, col) { - - for (var r = -1; r <= 7; r++) { - - if (row + r <= -1 || this.moduleCount <= row + r) continue; - - for (var c = -1; c <= 7; c++) { - - if (col + c <= -1 || this.moduleCount <= col + c) continue; - - if ((0 <= r && r <= 6 && (c == 0 || c == 6)) || - (0 <= c && c <= 6 && (r == 0 || r == 6)) || - (2 <= r && r <= 4 && 2 <= c && c <= 4)) { - this.modules[row + r][col + c] = true; - } else { - this.modules[row + r][col + c] = false; - } - } - } - }, - - getBestMaskPattern: function() { - - var minLostPoint = 0; - var pattern = 0; - - for (var i = 0; i < 8; i++) { - - this.makeImpl(true, i); - - var lostPoint = QRUtil.getLostPoint(this); - - if (i == 0 || minLostPoint > lostPoint) { - minLostPoint = lostPoint; - pattern = i; - } - } - - return pattern; - }, - - createMovieClip: function(target_mc, instance_name, depth) { - - var qr_mc = target_mc.createEmptyMovieClip(instance_name, depth); - var cs = 1; - - this.make(); - - for (var row = 0; row < this.modules.length; row++) { - - var y = row * cs; - - for (var col = 0; col < this.modules[row].length; col++) { - - var x = col * cs; - var dark = this.modules[row][col]; - - if (dark) { - qr_mc.beginFill(0, 100); - qr_mc.moveTo(x, y); - qr_mc.lineTo(x + cs, y); - qr_mc.lineTo(x + cs, y + cs); - qr_mc.lineTo(x, y + cs); - qr_mc.endFill(); - } - } - } - - return qr_mc; - }, - - setupTimingPattern: function() { - - for (var r = 8; r < this.moduleCount - 8; r++) { - if (this.modules[r][6] != null) { - continue; - } - this.modules[r][6] = (r % 2 == 0); - } - - for (var c = 8; c < this.moduleCount - 8; c++) { - if (this.modules[6][c] != null) { - continue; - } - this.modules[6][c] = (c % 2 == 0); - } - }, - - setupPositionAdjustPattern: function() { - - var pos = QRUtil.getPatternPosition(this.typeNumber); - - for (var i = 0; i < pos.length; i++) { - - for (var j = 0; j < pos.length; j++) { - - var row = pos[i]; - var col = pos[j]; - - if (this.modules[row][col] != null) { - continue; - } - - for (var r = -2; r <= 2; r++) { - - for (var c = -2; c <= 2; c++) { - - if (r == -2 || r == 2 || c == -2 || c == 2 || - (r == 0 && c == 0)) { - this.modules[row + r][col + c] = true; - } else { - this.modules[row + r][col + c] = false; - } - } - } - } - } - }, - - setupTypeNumber: function(test) { - - var bits = QRUtil.getBCHTypeNumber(this.typeNumber); - - for (var i = 0; i < 18; i++) { - var mod = (!test && ((bits >> i) & 1) == 1); - this.modules[Math.floor(i / 3)][i % 3 + this.moduleCount - 8 - 3] = mod; - } - - for (var i = 0; i < 18; i++) { - var mod = (!test && ((bits >> i) & 1) == 1); - this.modules[i % 3 + this.moduleCount - 8 - 3][Math.floor(i / 3)] = mod; - } - }, - - setupTypeInfo: function(test, maskPattern) { - - var data = (this.errorCorrectLevel << 3) | maskPattern; - var bits = QRUtil.getBCHTypeInfo(data); - - // vertical - for (var i = 0; i < 15; i++) { - - var mod = (!test && ((bits >> i) & 1) == 1); - - if (i < 6) { - this.modules[i][8] = mod; - } else if (i < 8) { - this.modules[i + 1][8] = mod; - } else { - this.modules[this.moduleCount - 15 + i][8] = mod; - } - } - - // horizontal - for (var i = 0; i < 15; i++) { - - var mod = (!test && ((bits >> i) & 1) == 1); - - if (i < 8) { - this.modules[8][this.moduleCount - i - 1] = mod; - } else if (i < 9) { - this.modules[8][15 - i - 1 + 1] = mod; - } else { - this.modules[8][15 - i - 1] = mod; - } - } - - // fixed module - this.modules[this.moduleCount - 8][8] = (!test); - - }, - - mapData: function(data, maskPattern) { - - var inc = -1; - var row = this.moduleCount - 1; - var bitIndex = 7; - var byteIndex = 0; - - for (var col = this.moduleCount - 1; col > 0; col -= 2) { - - if (col == 6) col--; - - while (true) { - - for (var c = 0; c < 2; c++) { - - if (this.modules[row][col - c] == null) { - - var dark = false; - - if (byteIndex < data.length) { - dark = (((data[byteIndex] >>> bitIndex) & 1) == 1); - } - - var mask = QRUtil.getMask(maskPattern, row, col - c); - - if (mask) { - dark = !dark; - } - - this.modules[row][col - c] = dark; - bitIndex--; - - if (bitIndex == -1) { - byteIndex++; - bitIndex = 7; - } - } - } - - row += inc; - - if (row < 0 || this.moduleCount <= row) { - row -= inc; - inc = -inc; - break; - } - } - } - - } - - }; - - QRCode.PAD0 = 0xEC; - QRCode.PAD1 = 0x11; - - QRCode.createData = function(typeNumber, errorCorrectLevel, dataList) { - - var rsBlocks = QRRSBlock.getRSBlocks(typeNumber, errorCorrectLevel); - - var buffer = new QRBitBuffer(); - - for (var i = 0; i < dataList.length; i++) { - var data = dataList[i]; - buffer.put(data.mode, 4); - buffer.put(data.getLength(), QRUtil.getLengthInBits(data.mode, typeNumber)); - data.write(buffer); - } - - // calc num max data. - var totalDataCount = 0; - for (var i = 0; i < rsBlocks.length; i++) { - totalDataCount += rsBlocks[i].dataCount; - } - - if (buffer.getLengthInBits() > totalDataCount * 8) { - throw new Error("code length overflow. (" + - buffer.getLengthInBits() + - ">" + - totalDataCount * 8 + - ")"); - } - - // end code - if (buffer.getLengthInBits() + 4 <= totalDataCount * 8) { - buffer.put(0, 4); - } - - // padding - while (buffer.getLengthInBits() % 8 != 0) { - buffer.putBit(false); - } - - // padding - while (true) { - - if (buffer.getLengthInBits() >= totalDataCount * 8) { - break; - } - buffer.put(QRCode.PAD0, 8); - - if (buffer.getLengthInBits() >= totalDataCount * 8) { - break; - } - buffer.put(QRCode.PAD1, 8); - } - - return QRCode.createBytes(buffer, rsBlocks); - } - - QRCode.createBytes = function(buffer, rsBlocks) { - - var offset = 0; - - var maxDcCount = 0; - var maxEcCount = 0; - - var dcdata = new Array(rsBlocks.length); - var ecdata = new Array(rsBlocks.length); - - for (var r = 0; r < rsBlocks.length; r++) { - - var dcCount = rsBlocks[r].dataCount; - var ecCount = rsBlocks[r].totalCount - dcCount; - - maxDcCount = Math.max(maxDcCount, dcCount); - maxEcCount = Math.max(maxEcCount, ecCount); - - dcdata[r] = new Array(dcCount); - - for (var i = 0; i < dcdata[r].length; i++) { - dcdata[r][i] = 0xff & buffer.buffer[i + offset]; - } - offset += dcCount; - - var rsPoly = QRUtil.getErrorCorrectPolynomial(ecCount); - var rawPoly = new QRPolynomial(dcdata[r], rsPoly.getLength() - 1); - - var modPoly = rawPoly.mod(rsPoly); - ecdata[r] = new Array(rsPoly.getLength() - 1); - for (var i = 0; i < ecdata[r].length; i++) { - var modIndex = i + modPoly.getLength() - ecdata[r].length; - ecdata[r][i] = (modIndex >= 0) ? modPoly.get(modIndex) : 0; - } - - } - - var totalCodeCount = 0; - for (var i = 0; i < rsBlocks.length; i++) { - totalCodeCount += rsBlocks[i].totalCount; - } - - var data = new Array(totalCodeCount); - var index = 0; - - for (var i = 0; i < maxDcCount; i++) { - for (var r = 0; r < rsBlocks.length; r++) { - if (i < dcdata[r].length) { - data[index++] = dcdata[r][i]; - } - } - } - - for (var i = 0; i < maxEcCount; i++) { - for (var r = 0; r < rsBlocks.length; r++) { - if (i < ecdata[r].length) { - data[index++] = ecdata[r][i]; - } - } - } - - return data; - - } - - //--------------------------------------------------------------------- - // QRMode - //--------------------------------------------------------------------- - - var QRMode = { - MODE_NUMBER: 1 << 0, - MODE_ALPHA_NUM: 1 << 1, - MODE_8BIT_BYTE: 1 << 2, - MODE_KANJI: 1 << 3 - }; - - //--------------------------------------------------------------------- - // QRErrorCorrectLevel - //--------------------------------------------------------------------- - - var QRErrorCorrectLevel = { - L: 1, - M: 0, - Q: 3, - H: 2 - }; - - //--------------------------------------------------------------------- - // QRMaskPattern - //--------------------------------------------------------------------- - - var QRMaskPattern = { - PATTERN000: 0, - PATTERN001: 1, - PATTERN010: 2, - PATTERN011: 3, - PATTERN100: 4, - PATTERN101: 5, - PATTERN110: 6, - PATTERN111: 7 - }; - - //--------------------------------------------------------------------- - // QRUtil - //--------------------------------------------------------------------- - - var QRUtil = { - - PATTERN_POSITION_TABLE: [ - [], - [6, 18], - [6, 22], - [6, 26], - [6, 30], - [6, 34], - [6, 22, 38], - [6, 24, 42], - [6, 26, 46], - [6, 28, 50], - [6, 30, 54], - [6, 32, 58], - [6, 34, 62], - [6, 26, 46, 66], - [6, 26, 48, 70], - [6, 26, 50, 74], - [6, 30, 54, 78], - [6, 30, 56, 82], - [6, 30, 58, 86], - [6, 34, 62, 90], - [6, 28, 50, 72, 94], - [6, 26, 50, 74, 98], - [6, 30, 54, 78, 102], - [6, 28, 54, 80, 106], - [6, 32, 58, 84, 110], - [6, 30, 58, 86, 114], - [6, 34, 62, 90, 118], - [6, 26, 50, 74, 98, 122], - [6, 30, 54, 78, 102, 126], - [6, 26, 52, 78, 104, 130], - [6, 30, 56, 82, 108, 134], - [6, 34, 60, 86, 112, 138], - [6, 30, 58, 86, 114, 142], - [6, 34, 62, 90, 118, 146], - [6, 30, 54, 78, 102, 126, 150], - [6, 24, 50, 76, 102, 128, 154], - [6, 28, 54, 80, 106, 132, 158], - [6, 32, 58, 84, 110, 136, 162], - [6, 26, 54, 82, 110, 138, 166], - [6, 30, 58, 86, 114, 142, 170] - ], - - G15: (1 << 10) | (1 << 8) | (1 << 5) | (1 << 4) | (1 << 2) | (1 << 1) | (1 << 0), - G18: (1 << 12) | (1 << 11) | (1 << 10) | (1 << 9) | (1 << 8) | (1 << 5) | (1 << 2) | (1 << 0), - G15_MASK: (1 << 14) | (1 << 12) | (1 << 10) | (1 << 4) | (1 << 1), - - getBCHTypeInfo: function(data) { - var d = data << 10; - while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15) >= 0) { - d ^= (QRUtil.G15 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G15))); - } - return ((data << 10) | d) ^ QRUtil.G15_MASK; - }, - - getBCHTypeNumber: function(data) { - var d = data << 12; - while (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18) >= 0) { - d ^= (QRUtil.G18 << (QRUtil.getBCHDigit(d) - QRUtil.getBCHDigit(QRUtil.G18))); - } - return (data << 12) | d; - }, - - getBCHDigit: function(data) { - - var digit = 0; - - while (data != 0) { - digit++; - data >>>= 1; - } - - return digit; - }, - - getPatternPosition: function(typeNumber) { - return QRUtil.PATTERN_POSITION_TABLE[typeNumber - 1]; - }, - - getMask: function(maskPattern, i, j) { - - switch (maskPattern) { - - case QRMaskPattern.PATTERN000: - return (i + j) % 2 == 0; - case QRMaskPattern.PATTERN001: - return i % 2 == 0; - case QRMaskPattern.PATTERN010: - return j % 3 == 0; - case QRMaskPattern.PATTERN011: - return (i + j) % 3 == 0; - case QRMaskPattern.PATTERN100: - return (Math.floor(i / 2) + Math.floor(j / 3)) % 2 == 0; - case QRMaskPattern.PATTERN101: - return (i * j) % 2 + (i * j) % 3 == 0; - case QRMaskPattern.PATTERN110: - return ((i * j) % 2 + (i * j) % 3) % 2 == 0; - case QRMaskPattern.PATTERN111: - return ((i * j) % 3 + (i + j) % 2) % 2 == 0; - - default: - throw new Error("bad maskPattern:" + maskPattern); - } - }, - - getErrorCorrectPolynomial: function(errorCorrectLength) { - - var a = new QRPolynomial([1], 0); - - for (var i = 0; i < errorCorrectLength; i++) { - a = a.multiply(new QRPolynomial([1, QRMath.gexp(i)], 0)); - } - - return a; - }, - - getLengthInBits: function(mode, type) { - - if (1 <= type && type < 10) { - - // 1 - 9 - - switch (mode) { - case QRMode.MODE_NUMBER: - return 10; - case QRMode.MODE_ALPHA_NUM: - return 9; - case QRMode.MODE_8BIT_BYTE: - return 8; - case QRMode.MODE_KANJI: - return 8; - default: - throw new Error("mode:" + mode); - } - - } else if (type < 27) { - - // 10 - 26 - - switch (mode) { - case QRMode.MODE_NUMBER: - return 12; - case QRMode.MODE_ALPHA_NUM: - return 11; - case QRMode.MODE_8BIT_BYTE: - return 16; - case QRMode.MODE_KANJI: - return 10; - default: - throw new Error("mode:" + mode); - } - - } else if (type < 41) { - - // 27 - 40 - - switch (mode) { - case QRMode.MODE_NUMBER: - return 14; - case QRMode.MODE_ALPHA_NUM: - return 13; - case QRMode.MODE_8BIT_BYTE: - return 16; - case QRMode.MODE_KANJI: - return 12; - default: - throw new Error("mode:" + mode); - } - - } else { - throw new Error("type:" + type); - } - }, - - getLostPoint: function(qrCode) { - - var moduleCount = qrCode.getModuleCount(); - - var lostPoint = 0; - - // LEVEL1 - - for (var row = 0; row < moduleCount; row++) { - - for (var col = 0; col < moduleCount; col++) { - - var sameCount = 0; - var dark = qrCode.isDark(row, col); - - for (var r = -1; r <= 1; r++) { - - if (row + r < 0 || moduleCount <= row + r) { - continue; - } - - for (var c = -1; c <= 1; c++) { - - if (col + c < 0 || moduleCount <= col + c) { - continue; - } - - if (r == 0 && c == 0) { - continue; - } - - if (dark == qrCode.isDark(row + r, col + c)) { - sameCount++; - } - } - } - - if (sameCount > 5) { - lostPoint += (3 + sameCount - 5); - } - } - } - - // LEVEL2 - - for (var row = 0; row < moduleCount - 1; row++) { - for (var col = 0; col < moduleCount - 1; col++) { - var count = 0; - if (qrCode.isDark(row, col)) count++; - if (qrCode.isDark(row + 1, col)) count++; - if (qrCode.isDark(row, col + 1)) count++; - if (qrCode.isDark(row + 1, col + 1)) count++; - if (count == 0 || count == 4) { - lostPoint += 3; - } - } - } - - // LEVEL3 - - for (var row = 0; row < moduleCount; row++) { - for (var col = 0; col < moduleCount - 6; col++) { - if (qrCode.isDark(row, col) && - !qrCode.isDark(row, col + 1) && - qrCode.isDark(row, col + 2) && - qrCode.isDark(row, col + 3) && - qrCode.isDark(row, col + 4) && - !qrCode.isDark(row, col + 5) && - qrCode.isDark(row, col + 6)) { - lostPoint += 40; - } - } - } - - for (var col = 0; col < moduleCount; col++) { - for (var row = 0; row < moduleCount - 6; row++) { - if (qrCode.isDark(row, col) && - !qrCode.isDark(row + 1, col) && - qrCode.isDark(row + 2, col) && - qrCode.isDark(row + 3, col) && - qrCode.isDark(row + 4, col) && - !qrCode.isDark(row + 5, col) && - qrCode.isDark(row + 6, col)) { - lostPoint += 40; - } - } - } - - // LEVEL4 - - var darkCount = 0; - - for (var col = 0; col < moduleCount; col++) { - for (var row = 0; row < moduleCount; row++) { - if (qrCode.isDark(row, col)) { - darkCount++; - } - } - } - - var ratio = Math.abs(100 * darkCount / moduleCount / moduleCount - 50) / 5; - lostPoint += ratio * 10; - - return lostPoint; - } - - }; - - - //--------------------------------------------------------------------- - // QRMath - //--------------------------------------------------------------------- - - var QRMath = { - - glog: function(n) { - - if (n < 1) { - throw new Error("glog(" + n + ")"); - } - - return QRMath.LOG_TABLE[n]; - }, - - gexp: function(n) { - - while (n < 0) { - n += 255; - } - - while (n >= 256) { - n -= 255; - } - - return QRMath.EXP_TABLE[n]; - }, - - EXP_TABLE: new Array(256), - - LOG_TABLE: new Array(256) - - }; - - for (var i = 0; i < 8; i++) { - QRMath.EXP_TABLE[i] = 1 << i; - } - for (var i = 8; i < 256; i++) { - QRMath.EXP_TABLE[i] = QRMath.EXP_TABLE[i - 4] ^ - QRMath.EXP_TABLE[i - 5] ^ - QRMath.EXP_TABLE[i - 6] ^ - QRMath.EXP_TABLE[i - 8]; - } - for (var i = 0; i < 255; i++) { - QRMath.LOG_TABLE[QRMath.EXP_TABLE[i]] = i; - } - - //--------------------------------------------------------------------- - // QRPolynomial - //--------------------------------------------------------------------- - - function QRPolynomial(num, shift) { - - if (num.length == undefined) { - throw new Error(num.length + "/" + shift); - } - - var offset = 0; - - while (offset < num.length && num[offset] == 0) { - offset++; - } - - this.num = new Array(num.length - offset + shift); - for (var i = 0; i < num.length - offset; i++) { - this.num[i] = num[i + offset]; - } - } - - QRPolynomial.prototype = { - - get: function(index) { - return this.num[index]; - }, - - getLength: function() { - return this.num.length; - }, - - multiply: function(e) { - - var num = new Array(this.getLength() + e.getLength() - 1); - - for (var i = 0; i < this.getLength(); i++) { - for (var j = 0; j < e.getLength(); j++) { - num[i + j] ^= QRMath.gexp(QRMath.glog(this.get(i)) + QRMath.glog(e.get(j))); - } - } - - return new QRPolynomial(num, 0); - }, - - mod: function(e) { - - if (this.getLength() - e.getLength() < 0) { - return this; - } - - var ratio = QRMath.glog(this.get(0)) - QRMath.glog(e.get(0)); - - var num = new Array(this.getLength()); - - for (var i = 0; i < this.getLength(); i++) { - num[i] = this.get(i); - } - - for (var i = 0; i < e.getLength(); i++) { - num[i] ^= QRMath.gexp(QRMath.glog(e.get(i)) + ratio); - } - - // recursive call - return new QRPolynomial(num, 0).mod(e); - } - }; - - //--------------------------------------------------------------------- - // QRRSBlock - //--------------------------------------------------------------------- - - function QRRSBlock(totalCount, dataCount) { - this.totalCount = totalCount; - this.dataCount = dataCount; - } - - QRRSBlock.RS_BLOCK_TABLE = [ - - // L - // M - // Q - // H - - // 1 - [1, 26, 19], - [1, 26, 16], - [1, 26, 13], - [1, 26, 9], - - // 2 - [1, 44, 34], - [1, 44, 28], - [1, 44, 22], - [1, 44, 16], - - // 3 - [1, 70, 55], - [1, 70, 44], - [2, 35, 17], - [2, 35, 13], - - // 4 - [1, 100, 80], - [2, 50, 32], - [2, 50, 24], - [4, 25, 9], - - // 5 - [1, 134, 108], - [2, 67, 43], - [2, 33, 15, 2, 34, 16], - [2, 33, 11, 2, 34, 12], - - // 6 - [2, 86, 68], - [4, 43, 27], - [4, 43, 19], - [4, 43, 15], - - // 7 - [2, 98, 78], - [4, 49, 31], - [2, 32, 14, 4, 33, 15], - [4, 39, 13, 1, 40, 14], - - // 8 - [2, 121, 97], - [2, 60, 38, 2, 61, 39], - [4, 40, 18, 2, 41, 19], - [4, 40, 14, 2, 41, 15], - - // 9 - [2, 146, 116], - [3, 58, 36, 2, 59, 37], - [4, 36, 16, 4, 37, 17], - [4, 36, 12, 4, 37, 13], - - // 10 - [2, 86, 68, 2, 87, 69], - [4, 69, 43, 1, 70, 44], - [6, 43, 19, 2, 44, 20], - [6, 43, 15, 2, 44, 16], - - // 11 - [4, 101, 81], - [1, 80, 50, 4, 81, 51], - [4, 50, 22, 4, 51, 23], - [3, 36, 12, 8, 37, 13], - - // 12 - [2, 116, 92, 2, 117, 93], - [6, 58, 36, 2, 59, 37], - [4, 46, 20, 6, 47, 21], - [7, 42, 14, 4, 43, 15], - - // 13 - [4, 133, 107], - [8, 59, 37, 1, 60, 38], - [8, 44, 20, 4, 45, 21], - [12, 33, 11, 4, 34, 12], - - // 14 - [3, 145, 115, 1, 146, 116], - [4, 64, 40, 5, 65, 41], - [11, 36, 16, 5, 37, 17], - [11, 36, 12, 5, 37, 13], - - // 15 - [5, 109, 87, 1, 110, 88], - [5, 65, 41, 5, 66, 42], - [5, 54, 24, 7, 55, 25], - [11, 36, 12], - - // 16 - [5, 122, 98, 1, 123, 99], - [7, 73, 45, 3, 74, 46], - [15, 43, 19, 2, 44, 20], - [3, 45, 15, 13, 46, 16], - - // 17 - [1, 135, 107, 5, 136, 108], - [10, 74, 46, 1, 75, 47], - [1, 50, 22, 15, 51, 23], - [2, 42, 14, 17, 43, 15], - - // 18 - [5, 150, 120, 1, 151, 121], - [9, 69, 43, 4, 70, 44], - [17, 50, 22, 1, 51, 23], - [2, 42, 14, 19, 43, 15], - - // 19 - [3, 141, 113, 4, 142, 114], - [3, 70, 44, 11, 71, 45], - [17, 47, 21, 4, 48, 22], - [9, 39, 13, 16, 40, 14], - - // 20 - [3, 135, 107, 5, 136, 108], - [3, 67, 41, 13, 68, 42], - [15, 54, 24, 5, 55, 25], - [15, 43, 15, 10, 44, 16], - - // 21 - [4, 144, 116, 4, 145, 117], - [17, 68, 42], - [17, 50, 22, 6, 51, 23], - [19, 46, 16, 6, 47, 17], - - // 22 - [2, 139, 111, 7, 140, 112], - [17, 74, 46], - [7, 54, 24, 16, 55, 25], - [34, 37, 13], - - // 23 - [4, 151, 121, 5, 152, 122], - [4, 75, 47, 14, 76, 48], - [11, 54, 24, 14, 55, 25], - [16, 45, 15, 14, 46, 16], - - // 24 - [6, 147, 117, 4, 148, 118], - [6, 73, 45, 14, 74, 46], - [11, 54, 24, 16, 55, 25], - [30, 46, 16, 2, 47, 17], - - // 25 - [8, 132, 106, 4, 133, 107], - [8, 75, 47, 13, 76, 48], - [7, 54, 24, 22, 55, 25], - [22, 45, 15, 13, 46, 16], - - // 26 - [10, 142, 114, 2, 143, 115], - [19, 74, 46, 4, 75, 47], - [28, 50, 22, 6, 51, 23], - [33, 46, 16, 4, 47, 17], - - // 27 - [8, 152, 122, 4, 153, 123], - [22, 73, 45, 3, 74, 46], - [8, 53, 23, 26, 54, 24], - [12, 45, 15, 28, 46, 16], - - // 28 - [3, 147, 117, 10, 148, 118], - [3, 73, 45, 23, 74, 46], - [4, 54, 24, 31, 55, 25], - [11, 45, 15, 31, 46, 16], - - // 29 - [7, 146, 116, 7, 147, 117], - [21, 73, 45, 7, 74, 46], - [1, 53, 23, 37, 54, 24], - [19, 45, 15, 26, 46, 16], - - // 30 - [5, 145, 115, 10, 146, 116], - [19, 75, 47, 10, 76, 48], - [15, 54, 24, 25, 55, 25], - [23, 45, 15, 25, 46, 16], - - // 31 - [13, 145, 115, 3, 146, 116], - [2, 74, 46, 29, 75, 47], - [42, 54, 24, 1, 55, 25], - [23, 45, 15, 28, 46, 16], - - // 32 - [17, 145, 115], - [10, 74, 46, 23, 75, 47], - [10, 54, 24, 35, 55, 25], - [19, 45, 15, 35, 46, 16], - - // 33 - [17, 145, 115, 1, 146, 116], - [14, 74, 46, 21, 75, 47], - [29, 54, 24, 19, 55, 25], - [11, 45, 15, 46, 46, 16], - - // 34 - [13, 145, 115, 6, 146, 116], - [14, 74, 46, 23, 75, 47], - [44, 54, 24, 7, 55, 25], - [59, 46, 16, 1, 47, 17], - - // 35 - [12, 151, 121, 7, 152, 122], - [12, 75, 47, 26, 76, 48], - [39, 54, 24, 14, 55, 25], - [22, 45, 15, 41, 46, 16], - - // 36 - [6, 151, 121, 14, 152, 122], - [6, 75, 47, 34, 76, 48], - [46, 54, 24, 10, 55, 25], - [2, 45, 15, 64, 46, 16], - - // 37 - [17, 152, 122, 4, 153, 123], - [29, 74, 46, 14, 75, 47], - [49, 54, 24, 10, 55, 25], - [24, 45, 15, 46, 46, 16], - - // 38 - [4, 152, 122, 18, 153, 123], - [13, 74, 46, 32, 75, 47], - [48, 54, 24, 14, 55, 25], - [42, 45, 15, 32, 46, 16], - - // 39 - [20, 147, 117, 4, 148, 118], - [40, 75, 47, 7, 76, 48], - [43, 54, 24, 22, 55, 25], - [10, 45, 15, 67, 46, 16], - - // 40 - [19, 148, 118, 6, 149, 119], - [18, 75, 47, 31, 76, 48], - [34, 54, 24, 34, 55, 25], - [20, 45, 15, 61, 46, 16] - ]; - - QRRSBlock.getRSBlocks = function(typeNumber, errorCorrectLevel) { - - var rsBlock = QRRSBlock.getRsBlockTable(typeNumber, errorCorrectLevel); - - if (rsBlock == undefined) { - throw new Error("bad rs block @ typeNumber:" + typeNumber + "/errorCorrectLevel:" + errorCorrectLevel); - } - - var length = rsBlock.length / 3; - - var list = new Array(); - - for (var i = 0; i < length; i++) { - - var count = rsBlock[i * 3 + 0]; - var totalCount = rsBlock[i * 3 + 1]; - var dataCount = rsBlock[i * 3 + 2]; - - for (var j = 0; j < count; j++) { - list.push(new QRRSBlock(totalCount, dataCount)); - } - } - - return list; - } - - QRRSBlock.getRsBlockTable = function(typeNumber, errorCorrectLevel) { - - switch (errorCorrectLevel) { - case QRErrorCorrectLevel.L: - return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 0]; - case QRErrorCorrectLevel.M: - return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 1]; - case QRErrorCorrectLevel.Q: - return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 2]; - case QRErrorCorrectLevel.H: - return QRRSBlock.RS_BLOCK_TABLE[(typeNumber - 1) * 4 + 3]; - default: - return undefined; - } - } - - //--------------------------------------------------------------------- - // QRBitBuffer - //--------------------------------------------------------------------- - - function QRBitBuffer() { - this.buffer = new Array(); - this.length = 0; - } - - QRBitBuffer.prototype = { - - get: function(index) { - var bufIndex = Math.floor(index / 8); - return ((this.buffer[bufIndex] >>> (7 - index % 8)) & 1) == 1; - }, - - put: function(num, length) { - for (var i = 0; i < length; i++) { - this.putBit(((num >>> (length - i - 1)) & 1) == 1); - } - }, - - getLengthInBits: function() { - return this.length; - }, - - putBit: function(bit) { - - var bufIndex = Math.floor(this.length / 8); - if (this.buffer.length <= bufIndex) { - this.buffer.push(0); - } - - if (bit) { - this.buffer[bufIndex] |= (0x80 >>> (this.length % 8)); - } - - this.length++; - } - }; - - //--------------------------------------------------------------------- - // Support Chinese - //--------------------------------------------------------------------- - function utf16To8(text) { - var result = ''; - var c; - for (var i = 0; i < text.length; i++) { - c = text.charCodeAt(i); - if (c >= 0x0001 && c <= 0x007F) { - result += text.charAt(i); - } else if (c > 0x07FF) { - result += String.fromCharCode(0xE0 | c >> 12 & 0x0F); - result += String.fromCharCode(0x80 | c >> 6 & 0x3F); - result += String.fromCharCode(0x80 | c >> 0 & 0x3F); - } else { - result += String.fromCharCode(0xC0 | c >> 6 & 0x1F); - result += String.fromCharCode(0x80 | c >> 0 & 0x3F); - } - } - return result; - } - - uQRCode = { - - defaults: { - size: 258, - margin: 0, - backgroundColor: '#ffffff', - foregroundColor: '#000000', - fileType: 'png', // 'jpg', 'png' - correctLevel: 3, - typeNumber: -1 - }, - - make: function(options) { - var defaultOptions = { - canvasId: options.canvasId, - componentInstance: options.componentInstance, - text: options.text, - size: this.defaults.size, - margin: this.defaults.margin, - backgroundColor: this.defaults.backgroundColor, - foregroundColor: this.defaults.foregroundColor, - fileType: this.defaults.fileType, - correctLevel: this.defaults.correctLevel, - typeNumber: this.defaults.typeNumber - }; - if (options) { - for (var i in options) { - defaultOptions[i] = options[i]; - } - } - options = defaultOptions; - if (!options.canvasId) { - console.error('uQRCode: Please set canvasId!'); - return; - } - - function createCanvas() { - var qrcode = new QRCode(options.typeNumber, options.correctLevel); - qrcode.addData(utf16To8(options.text)); - qrcode.make(); - - var ctx = uni.createCanvasContext(options.canvasId, options.componentInstance); - ctx.setFillStyle(options.backgroundColor); - ctx.fillRect(0, 0, options.size, options.size); - - var tileW = (options.size - options.margin * 2) / qrcode.getModuleCount(); - var tileH = tileW; - - for (var row = 0; row < qrcode.getModuleCount(); row++) { - for (var col = 0; col < qrcode.getModuleCount(); col++) { - var style = qrcode.isDark(row, col) ? options.foregroundColor : options.backgroundColor; - ctx.setFillStyle(style); - var x = Math.round(col * tileW) + options.margin; - var y = Math.round(row * tileH) + options.margin; - var w = Math.ceil((col + 1) * tileW) - Math.floor(col * tileW); - var h = Math.ceil((row + 1) * tileW) - Math.floor(row * tileW); - ctx.fillRect(x, y, w, h); - } - } - - setTimeout(function() { - ctx.draw(false, function() { - setTimeout(function() { - uni.canvasToTempFilePath({ - canvasId: options.canvasId, - fileType: options.fileType, - width: options.size, - height: options.size, - destWidth: options.size, - destHeight: options.size, - success: function(res) { - options.success && options.success(res.tempFilePath); - }, - fail: function(error) { - options.fail && options.fail(error); - }, - complete: function(res) { - options.complete && options.complete(res); - } - }, options.componentInstance); - }, options.text.length + 100); - }); - }, 150); - } - - createCanvas(); - } - - } - -})() - -export default uQRCode diff --git a/app/libs/apps.js b/app/libs/apps.js deleted file mode 100644 index a223038..0000000 --- a/app/libs/apps.js +++ /dev/null @@ -1,24 +0,0 @@ -import { appAuth } from '../api/public'; - -class Apps{ - /** - * 授权登录获取token - * @param {Object} code - */ - authApp(code) { - return new Promise((resolve, reject) => { - appAuth(code,{'spread_spid': 0}) - .then(({ - data - }) => { - resolve(data); - Cache.set(WX_AUTH, code); - Cache.clear(STATE_KEY); - loginType && Cache.clear(LOGINTYPE); - - }) - .catch(reject); - }); - } -} -export default new Apps(); \ No newline at end of file diff --git a/app/libs/chat.js b/app/libs/chat.js deleted file mode 100644 index c25626a..0000000 --- a/app/libs/chat.js +++ /dev/null @@ -1,62 +0,0 @@ -import $store from "@/store"; -import { VUE_APP_WS_URL } from "@/utils/index.js"; - -const Socket = function() { - this.ws = new WebSocket(wss(VUE_APP_WS_URL)); - this.ws.onopen = this.onOpen.bind(this); - this.ws.onerror = this.onError.bind(this); - this.ws.onmessage = this.onMessage.bind(this); - this.ws.onclose = this.onClose.bind(this); -}; - -function wss(wsSocketUrl) { - let ishttps = document.location.protocol == 'https:'; - if (ishttps) { - return wsSocketUrl.replace('ws:', 'wss:'); - } else { - return wsSocketUrl.replace('wss:', 'ws:'); - } -} - -Socket.prototype = { - vm(vm) { - this.vm = vm; - }, - close() { - clearInterval(this.timer); - this.ws.close(); - }, - onOpen: function() { - console.log("ws open"); - this.init(); - this.send({ - type: "login", - data: $store.state.app.token - }); - this.vm.$emit("socket_open"); - }, - init: function() { - var that = this; - this.timer = setInterval(function() { - that.send({ type: "ping" }); - }, 10000); - }, - send: function(data) { - return this.ws.send(JSON.stringify(data)); - }, - onMessage: function(res) { - const { type, data = {} } = JSON.parse(res.data); - this.vm.$emit(type, data); - }, - onClose: function() { - clearInterval(this.timer); - }, - onError: function(e) { - console.log(e); - this.vm.$emit("socket_error", e); - } -}; - -Socket.prototype.constructor = Socket; - -export default Socket; diff --git a/app/libs/login.js b/app/libs/login.js deleted file mode 100644 index 0428390..0000000 --- a/app/libs/login.js +++ /dev/null @@ -1,98 +0,0 @@ -import store from "../store"; -import Cache from '../utils/cache'; -import { Debounce } from '@/utils/validate.js' -// #ifdef H5 -import { isWeixin } from "../utils"; -import auth from './wechat'; -// #endif - -import { LOGIN_STATUS, USER_INFO, EXPIRES_TIME, STATE_R_KEY, BACK_URL} from './../config/cache'; - -function prePage(){ - let pages = getCurrentPages(); - let prePage = pages[pages.length - 1]; - return prePage.route; -} - -export const toLogin = Debounce(_toLogin,800) - -export function _toLogin(push, pathLogin) { - - store.commit("LOGOUT"); - let path = prePage(); - let login_back_url = Cache.get(BACK_URL); - - // #ifdef APP - uni.navigateTo({ - url: '/pages/users/login/index' - }) - return - // #endif - - - // #ifdef H5 - // path = location.href; - path = location.pathname + location.search; - // #endif - if(!pathLogin){ - pathLogin = '/page/users/login/index' - Cache.set('login_back_url',path); - } - - // #ifdef H5 - if (isWeixin()) { - let urlData = location.pathname + location.search - if (urlData.indexOf('?') !== -1) { - urlData += '&go_longin=1'; - } else { - urlData += '?go_longin=1'; - } - if (!Cache.has('snsapiKey')) { - auth.oAuth('snsapi_base', urlData); - } else { - if (['/pages/user/index'].indexOf(login_back_url) == -1) { - uni.navigateTo({ - url: '/pages/users/wechat_login/index' - }) - } - } - } else { - if (['/pages/user/index'].indexOf(login_back_url) == -1) { - uni.navigateTo({ - url: '/pages/users/login/index' - }) - } - } - // #endif - - if (['pages/user/index','/pages/user/index'].indexOf(login_back_url) == -1) { - // #ifdef MP - uni.navigateTo({ - url: '/pages/users/wechat_login/index' - }) - // #endif - } -} - - -export function checkLogin() -{ - let token = Cache.get(LOGIN_STATUS); - let expiresTime = Cache.get(EXPIRES_TIME); - let newTime = Math.round(new Date() / 1000); - if (expiresTime < newTime || !token){ - Cache.clear(LOGIN_STATUS); - Cache.clear(EXPIRES_TIME); - Cache.clear(USER_INFO); - Cache.clear(STATE_R_KEY); - return false; - }else{ - store.commit('UPDATE_LOGIN',token); - let userInfo = Cache.get(USER_INFO,true); - if(userInfo){ - store.commit('UPDATE_USERINFO',userInfo); - } - return true; - } - -} diff --git a/app/libs/order.js b/app/libs/order.js deleted file mode 100644 index 3cdf6af..0000000 --- a/app/libs/order.js +++ /dev/null @@ -1,47 +0,0 @@ -import { - preOrderApi -} from '@/api/order.js'; -import util from 'utils/util' - -/** - * 去商品详情 - */ -export function goShopDetail(item, uid) { - return new Promise(resolve => { - if (item.activityH5 && item.activityH5.type === "1") { - uni.navigateTo({ - url: `/pages/activity/goods_seckill_details/index?id=${item.activityH5.id}` - }) - } else if (item.activityH5 && item.activityH5.type === "2") { - uni.navigateTo({ - url: `/pages/activity/goods_bargain_details/index?id=${item.activityH5.id}&startBargainUid=${uid}` - }) - } else if (item.activityH5 && item.activityH5.type === "3") { - uni.navigateTo({ - url: `/pages/activity/goods_combination_details/index?id=${item.activityH5.id}` - }) - } else { - resolve(item); - } - }); -} - -/** - * 活动商品、普通商品、购物车、再次购买预下单 - */ -export function getPreOrder(preOrderType, orderDetails) { - return new Promise((resolve, reject) => { - preOrderApi({ - "preOrderType": preOrderType, - "orderDetails": orderDetails - }).then(res => { - uni.navigateTo({ - url: '/pages/users/order_confirm/index?preOrderNo=' + res.data.preOrderNo - }); - }).catch(err => { - return util.Tips({ - title: err - }); - }) - }); -} diff --git a/app/libs/routine.js b/app/libs/routine.js deleted file mode 100644 index 1db96ed..0000000 --- a/app/libs/routine.js +++ /dev/null @@ -1,140 +0,0 @@ -import store from '../store'; -import { checkLogin } from './login'; -import { login } from '../api/public'; -import Cache from '../utils/cache'; -import { STATE_R_KEY, USER_INFO, EXPIRES_TIME, LOGIN_STATUS} from './../config/cache'; -class Routine -{ - - constructor() - { - this.scopeUserInfo = 'scope.userInfo'; - } - - async getUserCode(){ - let isAuth = await this.isAuth(), code = '' ; - if(isAuth) - code = await this.getCode(); - return code; - } - - /** - * 获取用户信息 - */ - getUserProfile(){ - let that = this , code = this.getUserCode(); - return new Promise( (resolve,reject) => { - uni.getUserProfile({ - lang: 'zh_CN', - desc: '用于完善会员资料', // 声明获取用户个人信息后的用途,后续会展示在弹窗中,请谨慎填写 - success(user) { - if(code) user.code = code; - resolve({userInfo:user,islogin:false}); - }, - fail(res){ - reject(res); - } - }) - }) - } - - /** - * 获取用户信息 - */ - authorize() - { - let that = this; - return new Promise((resolve,reject)=>{ - if(checkLogin()) - return resolve({ - userInfo:Cache.get(USER_INFO,true), - islogin:true, - }); - uni.authorize({ - scope: that.scopeUserInfo, - success() { - resolve({islogin:false}); - }, - fail(res){ - reject(res); - } - }) - }) - } - - async getCode(){ - let provider = await this.getProvider(); - return new Promise((resolve,reject)=>{ - uni.login({ - provider:provider, - success(res) { - if (res.code) Cache.set(STATE_R_KEY, res.code ,10800); - return resolve(res.code); - }, - fail(){ - return reject(null); - } - }) - }) - } - - /** - * 获取服务供应商 - */ - getProvider() - { - return new Promise((resolve,reject)=>{ - uni.getProvider({ - service:'oauth', - success(res) { - resolve(res.provider); - }, - fail() { - resolve(false); - } - }); - }); - } - - /** - * 是否授权 - */ - isAuth(){ - let that = this; - return new Promise((resolve,reject)=>{ - uni.getSetting({ - success(res) { - if (!res.authSetting[that.scopeUserInfo]) { - resolve(true) - } else { - resolve(true); - } - }, - fail(){ - resolve(false); - } - }); - }); - } - /** - * 小程序登录 - */ - authUserInfo(code,data) - { - return new Promise((resolve, reject)=>{ - login(code,data).then(res=>{ - if(res.data.type==='login'){ - store.commit('LOGIN', { - token: res.data.token - }); - store.commit("SETUID", res.data.uid); - } - return resolve(res); - }).catch(res=>{ - return reject(res); - }) - }) - } -} - -export default new Routine(); \ No newline at end of file diff --git a/app/libs/wechat.js b/app/libs/wechat.js deleted file mode 100644 index e43a00c..0000000 --- a/app/libs/wechat.js +++ /dev/null @@ -1,318 +0,0 @@ -// #ifdef H5 -import WechatJSSDK from "@/plugin/jweixin-module/index.js"; - - -import { - getWechatConfig, - wechatAuth -} from "@/api/public"; -import { - WX_AUTH, - STATE_KEY, - LOGINTYPE, - BACK_URL -} from '@/config/cache'; -import { - parseQuery -} from '@/utils'; -import store from '@/store'; -import Cache from '@/utils/cache'; - -class AuthWechat { - - constructor() { - //微信实例化对象 - this.instance = WechatJSSDK; - //是否实例化 - this.status = false; - - this.initConfig = {}; - - } - - isAndroid(){ - let u = navigator.userAgent; - return u.indexOf('Android') > -1 || u.indexOf('Adr') > -1; - } - - signLink() { - if (typeof window.entryUrl === 'undefined' || window.entryUrl === '') { - window.entryUrl = location.href.split('#')[0] - } - return /(Android)/i.test(navigator.userAgent) ? location.href.split('#')[0] : window.entryUrl; - } - - - /** - * 初始化wechat(分享配置) - */ - wechat() { - return new Promise((resolve, reject) => { - // if (this.status && !this.isAndroid()) return resolve(this.instance); - getWechatConfig() - .then(res => { - this.instance.config(res.data); - this.initConfig = res.data; - this.status = true; - this.instance.ready(() => { - resolve(this.instance); - }) - }).catch(err => { - console.log('微信分享配置失败',err); - this.status = false; - reject(err); - }); - }); - } - - /** - * 验证是否初始化 - */ - verifyInstance() { - let that = this; - return new Promise((resolve, reject) => { - if (that.instance === null && !that.status) { - that.wechat().then(res => { - resolve(that.instance); - }).catch(() => { - return reject(); - }) - } else { - return resolve(that.instance); - } - }) - } - // 微信公众号的共享地址 - openAddress() { - return new Promise((resolve, reject) => { - this.wechat().then(wx => { - this.toPromise(wx.openAddress).then(res => { - resolve(res); - }).catch(err => { - reject(err); - }); - }).catch(err => { - reject(err); - }) - }); - } - - // 获取经纬度; - location(){ - return new Promise((resolve, reject) => { - this.wechat().then(wx => { - this.toPromise(wx.getLocation,{type: 'wgs84'}).then(res => { - resolve(res); - }).catch(err => { - reject(err); - }); - }).catch(err => { - reject(err); - }) - }); - } - - // 使用微信内置地图查看位置接口; - seeLocation(config){ - return new Promise((resolve, reject) => { - this.wechat().then(wx => { - this.toPromise(wx.openLocation, config).then(res => { - resolve(res); - }).catch(err => { - reject(err); - }); - }).catch(err => { - reject(err); - }) - }); - } - - /** - * 微信支付 - * @param {Object} config - */ - pay(config) { - return new Promise((resolve, reject) => { - this.wechat().then((wx) => { - this.toPromise(wx.chooseWXPay, config).then(res => { - resolve(res); - }).catch(res => { - resolve(res); - }); - }).catch(res => { - reject(res); - }); - }); - } - - toPromise(fn, config = {}) { - return new Promise((resolve, reject) => { - fn({ - ...config, - success(res) { - resolve(res); - }, - fail(err) { - reject(err); - }, - complete(err) { - reject(err); - }, - cancel(err) { - reject(err); - } - }); - }); - } - - /** - * 自动去授权 - */ - oAuth(snsapiBase,url) { - if (uni.getStorageSync(WX_AUTH) && store.state.app.token && snsapiBase == 'snsapi_base') return; - const { - code - } = parseQuery(); - if (!code || code == uni.getStorageSync('snsapiCode')){ - return this.toAuth(snsapiBase,url); - }else{ - if(Cache.has('snsapiKey')) - return this.auth(code).catch(error=>{ - uni.showToast({ - title:error, - icon:'none' - }) - }) - } - // if (uni.getStorageSync(WX_AUTH) && store.state.app.token) return; - // const { - // code - // } = parseQuery(); - // if (!code){ - // return this.toAuth(snsapiBase,url); - // }else{ - // if(Cache.has('snsapiKey')) - // return this.auth(code).catch(error=>{ - // uni.showToast({ - // title:error, - // icon:'none' - // }) - // }) - // } - } - - clearAuthStatus() { - - } - - /** - * 授权登录获取token - * @param {Object} code - */ - auth(code) { - return new Promise((resolve, reject) => { - wechatAuth(code, Cache.get("spread")) - .then(({ - data - }) => { - resolve(data); - Cache.set(WX_AUTH, code); - Cache.clear(STATE_KEY); - // Cache.clear('spread'); - loginType && Cache.clear(LOGINTYPE); - - }) - .catch(reject); - }); - } - - /** - * 获取跳转授权后的地址 - * @param {Object} appId - */ - getAuthUrl(appId,snsapiBase,backUrl) { - let url = `${location.origin}${backUrl}` - if(url.indexOf('?') == -1){ - url = url+'?' - }else{ - url = url+'&' - } - const redirect_uri = encodeURIComponent( - `${url}scope=${snsapiBase}&back_url=` + - encodeURIComponent( - encodeURIComponent( - uni.getStorageSync(BACK_URL) ? - uni.getStorageSync(BACK_URL) : - location.pathname + location.search - ) - ) - ); - uni.removeStorageSync(BACK_URL); - const state = encodeURIComponent( - ("" + Math.random()).split(".")[1] + "authorizestate" - ); - uni.setStorageSync(STATE_KEY, state); - return `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${redirect_uri}&response_type=code&scope=snsapi_userinfo&state=${state}#wechat_redirect`; - // if(snsapiBase==='snsapi_base'){ - // return `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${redirect_uri}&response_type=code&scope=snsapi_base&state=${state}#wechat_redirect`; - // }else{ - // return `https://open.weixin.qq.com/connect/oauth2/authorize?appid=${appId}&redirect_uri=${redirect_uri}&response_type=code&scope=snsapi_userinfo&state=${state}#wechat_redirect`; - // } - } - - /** - * 跳转自动登录 - */ - toAuth(snsapiBase,backUrl) { - let that = this; - this.wechat().then(wx => { - location.href = this.getAuthUrl(that.initConfig.appId,snsapiBase,backUrl); - }) - } - - /** - * 绑定事件 - * @param {Object} name 事件名 - * @param {Object} config 参数 - */ - wechatEvevt(name, config) { - let that = this; - return new Promise((resolve, reject) => { - let configDefault = { - fail(res) { - if (that.instance) return reject({ - is_ready: true, - wx: that.instance - }); - that.verifyInstance().then(wx => { - return reject({ - is_ready: true, - wx: wx - }); - }) - }, - success(res) { - return resolve(res,2222); - } - }; - Object.assign(configDefault, config); - that.wechat().then(wx => { - if (typeof name === 'object') { - name.forEach(item => { - wx[item] && wx[item](configDefault) - }) - } else { - wx[name] && wx[name](configDefault) - } - }) - }); - } - - isWeixin() { - return navigator.userAgent.toLowerCase().indexOf("micromessenger") !== -1; - } - -} - -export default new AuthWechat(); -// #endif diff --git a/app/main.js b/app/main.js deleted file mode 100644 index 4159e5c..0000000 --- a/app/main.js +++ /dev/null @@ -1,62 +0,0 @@ -import Vue from 'vue' -import App from './App' -import store from './store' -import Cache from './utils/cache' -import util from 'utils/util' -import configs from './config/app.js' -import * as Order from './libs/order'; - -Vue.prototype.$util = util; -Vue.prototype.$config = configs; -Vue.prototype.$Cache = Cache; -Vue.prototype.$eventHub = new Vue(); -Vue.config.productionTip = false -Vue.prototype.$Order = Order; - -// #ifdef H5 -import { parseQuery } from "./utils"; -import Auth from './libs/wechat'; -import { SPREAD } from './config/cache'; -Vue.prototype.$wechat = Auth; -let cookieName = "VCONSOLE", - query = parseQuery(), - urlSpread = query["spread"], - vconsole = query[cookieName.toLowerCase()], - md5Crmeb = "b14d1e9baeced9bb7525ab19ee35f2d2", //CRMEB MD5 加密开启vconsole模式 - md5UnCrmeb = "3dca2162c4e101b7656793a1af20295c"; //UN_CREMB MD5 加密关闭vconsole模式 - -if (urlSpread !== undefined) { - var spread = Cache.get(SPREAD); - urlSpread = parseInt(urlSpread); - if (!Number.isNaN(urlSpread) && spread !== urlSpread) { - Cache.set("spread", urlSpread || 0); - } else if (spread === 0 || typeof spread !== "number") { - Cache.set("spread", urlSpread || 0); - } -} - -if (vconsole !== undefined) { - if (vconsole === md5UnCrmeb && Cache.has(cookieName)) - Cache.clear(cookieName); -} else vconsole = Cache.get(cookieName); - -import VConsole from './components/vconsole.min.js' - -if (vconsole !== undefined && vconsole === md5Crmeb) { - Cache.set(cookieName, md5Crmeb, 3600); - let vConsole = new VConsole(); -} - -// Auth.isWeixin() && Auth.oAuth(); - -// #endif - -App.mpType = 'app' - - -const app = new Vue({ - ...App, - store, - Cache -}) -app.$mount(); diff --git a/app/manifest.json b/app/manifest.json deleted file mode 100644 index 9c964e5..0000000 --- a/app/manifest.json +++ /dev/null @@ -1,182 +0,0 @@ -{ - "name" : "CRMEB Java 商城", - "appid" : "__UNI__E0D9AB1", - "description" : "CRMEB Java 商城", - "versionName" : "1.0.0", - "versionCode" : 1001, - "transformPx" : false, - /* 5+App特有相关 */ - "app-plus" : { - "usingComponents" : true, - "nvueCompiler" : "uni-app", - "splashscreen" : { - "alwaysShowBeforeRender" : false, - "waiting" : false, - "autoclose" : true, - "delay" : 0 - }, - /* 模块配置 */ - "modules" : { - "Share" : {}, - "VideoPlayer" : {}, - "OAuth" : {}, - "Payment" : {}, - "Geolocation" : {} - }, - /* 应用发布信息 */ - "distribute" : { - /* android打包配置 */ - "android" : { - "permissions" : [ - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "", - "" - ], - "abiFilters" : [ "armeabi-v7a", "arm64-v8a", "x86" ] - }, - /* ios打包配置 */ - "ios" : { - "idfa" : false, - "dSYMs" : false - }, - /* SDK配置 */ - "sdkConfigs" : { - "ad" : {}, - "geolocation" : { - "amap" : { - "__platform__" : [ "ios", "android" ], - "appkey_ios" : "", - "appkey_android" : "111111" - } - }, - "payment" : { - "weixin" : { - "__platform__" : [ "ios", "android" ], - "appid" : "111111", - "UniversalLinks" : "" - } - }, - "share" : { - "weixin" : { - "appid" : "111111", - "UniversalLinks" : "" - } - }, - "oauth" : { - "weixin" : { - "appid" : "111111", - "UniversalLinks" : "" - } - } - }, - "icons" : { - "android" : { - "hdpi" : "unpackage/res/icons/72x72.png", - "xhdpi" : "unpackage/res/icons/96x96.png", - "xxhdpi" : "unpackage/res/icons/144x144.png", - "xxxhdpi" : "unpackage/res/icons/192x192.png" - }, - "ios" : { - "appstore" : "unpackage/res/icons/1024x1024.png", - "ipad" : { - "app" : "unpackage/res/icons/76x76.png", - "app@2x" : "unpackage/res/icons/152x152.png", - "notification" : "unpackage/res/icons/20x20.png", - "notification@2x" : "unpackage/res/icons/40x40.png", - "proapp@2x" : "unpackage/res/icons/167x167.png", - "settings" : "unpackage/res/icons/29x29.png", - "settings@2x" : "unpackage/res/icons/58x58.png", - "spotlight" : "unpackage/res/icons/40x40.png", - "spotlight@2x" : "unpackage/res/icons/80x80.png" - }, - "iphone" : { - "app@2x" : "unpackage/res/icons/120x120.png", - "app@3x" : "unpackage/res/icons/180x180.png", - "notification@2x" : "unpackage/res/icons/40x40.png", - "notification@3x" : "unpackage/res/icons/60x60.png", - "settings@2x" : "unpackage/res/icons/58x58.png", - "settings@3x" : "unpackage/res/icons/87x87.png", - "spotlight@2x" : "unpackage/res/icons/80x80.png", - "spotlight@3x" : "unpackage/res/icons/120x120.png" - } - } - } - } - }, - /* 快应用特有相关 */ - "quickapp" : {}, - /* 小程序特有相关 */ - "mp-weixin" : { - "appid" : "111111", - "setting" : { - "urlCheck" : true, - "minified" : true, - "postcss" : true, - "es6" : true - }, - "permission" : { - "scope.userLocation" : { - "desc" : "你的位置信息将用于和门店的距离长度" - } - }, - // "plugins" : { - // "chat" : { - // "version" : "1.0.8", - // "provider" : "wx738958e0f4c894f9" - // } - // }, - // "sitemapLocation" : "sitemap.json", - "usingComponents" : true - }, - "mp-alipay" : { - "usingComponents" : true - }, - "mp-baidu" : { - "usingComponents" : true - }, - "mp-toutiao" : { - "usingComponents" : true - }, - "h5" : { - "devServer" : { - "https" : false - }, - "router" : { - "mode" : "history", - "base" : "" - }, - "domain" : "", - "sdkConfigs" : { - "maps" : {} - }, - "optimization" : { - "treeShaking" : { - "enable" : true - } - }, - "async" : { - "timeout" : 200000 - }, - "title" : "CRMEB" - }, - "plus" : { - "statusbar" : { - "immersed" : true - } - } -} diff --git a/app/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts b/app/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/action-sheet/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/action-sheet/index.js b/app/miniprogram_npm/@vant/weapp/action-sheet/index.js new file mode 100644 index 0000000..8403b68 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/action-sheet/index.js @@ -0,0 +1,78 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +(0, component_1.VantComponent)({ + classes: ['list-class'], + mixins: [button_1.button], + props: { + show: Boolean, + title: String, + cancelText: String, + description: String, + round: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 100, + }, + actions: { + type: Array, + value: [], + }, + overlay: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + closeOnClickAction: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onSelect: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var _a = this.data, actions = _a.actions, closeOnClickAction = _a.closeOnClickAction, canIUseGetUserProfile = _a.canIUseGetUserProfile; + var item = actions[index]; + if (item) { + this.$emit('select', item); + if (closeOnClickAction) { + this.onClose(); + } + if (item.openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: item.getUserProfileDesc || ' ', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + } + }, + onCancel: function () { + this.$emit('cancel'); + }, + onClose: function () { + this.$emit('close'); + }, + onClickOverlay: function () { + this.$emit('click-overlay'); + this.onClose(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/action-sheet/index.json b/app/miniprogram_npm/@vant/weapp/action-sheet/index.json new file mode 100644 index 0000000..19bf989 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/action-sheet/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-popup": "../popup/index", + "van-loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxml b/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxml new file mode 100644 index 0000000..6311e33 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxml @@ -0,0 +1,70 @@ + + + + + {{ title }} + + + + {{ description }} + + + + + + {{ item.name }} + {{ item.subname }} + + + + + + + + + {{ cancelText }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxss b/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxss new file mode 100644 index 0000000..eedd361 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/action-sheet/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-action-sheet{color:var(--action-sheet-item-text-color,#323233);max-height:var(--action-sheet-max-height,90%)!important}.van-action-sheet__cancel,.van-action-sheet__item{background-color:var(--action-sheet-item-background,#fff);font-size:var(--action-sheet-item-font-size,16px);line-height:var(--action-sheet-item-line-height,22px);padding:14px 16px;text-align:center}.van-action-sheet__cancel--hover,.van-action-sheet__item--hover{background-color:#f2f3f5}.van-action-sheet__cancel:after,.van-action-sheet__item:after{border-width:0}.van-action-sheet__cancel{color:var(--action-sheet-cancel-text-color,#646566)}.van-action-sheet__gap{background-color:var(--action-sheet-cancel-padding-color,#f7f8fa);display:block;height:var(--action-sheet-cancel-padding-top,8px)}.van-action-sheet__item--disabled{color:var(--action-sheet-item-disabled-text-color,#c8c9cc)}.van-action-sheet__item--disabled.van-action-sheet__item--hover{background-color:var(--action-sheet-item-background,#fff)}.van-action-sheet__subname{color:var(--action-sheet-subname-color,#969799);font-size:var(--action-sheet-subname-font-size,12px);line-height:var(--action-sheet-subname-line-height,20px);margin-top:var(--padding-xs,8px)}.van-action-sheet__header{font-size:var(--action-sheet-header-font-size,16px);font-weight:var(--font-weight-bold,500);line-height:var(--action-sheet-header-height,48px);text-align:center}.van-action-sheet__description{color:var(--action-sheet-description-color,#969799);font-size:var(--action-sheet-description-font-size,14px);line-height:var(--action-sheet-description-line-height,20px);padding:20px var(--padding-md,16px);text-align:center}.van-action-sheet__close{color:var(--action-sheet-close-icon-color,#c8c9cc);font-size:var(--action-sheet-close-icon-size,22px)!important;line-height:inherit!important;padding:var(--action-sheet-close-icon-padding,0 16px);position:absolute!important;right:0;top:0}.van-action-sheet__loading{display:flex!important} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/area/index.d.ts b/app/miniprogram_npm/@vant/weapp/area/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/area/index.js b/app/miniprogram_npm/@vant/weapp/area/index.js new file mode 100644 index 0000000..73de66d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.js @@ -0,0 +1,235 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var shared_1 = require("../picker/shared"); +var utils_1 = require("../common/utils"); +var EMPTY_CODE = '000000'; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { showToolbar: { + type: Boolean, + value: true, + }, value: { + type: String, + observer: function (value) { + this.code = value; + this.setValues(); + }, + }, areaList: { + type: Object, + value: {}, + observer: 'setValues', + }, columnsNum: { + type: null, + value: 3, + }, columnsPlaceholder: { + type: Array, + observer: function (val) { + this.setData({ + typeToColumnsPlaceholder: { + province: val[0] || '', + city: val[1] || '', + county: val[2] || '', + }, + }); + }, + } }), + data: { + columns: [{ values: [] }, { values: [] }, { values: [] }], + typeToColumnsPlaceholder: {}, + }, + mounted: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + _this.setValues(); + }); + }, + methods: { + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-area__picker'); + } + return this.picker; + }, + onCancel: function (event) { + this.emit('cancel', event.detail); + }, + onConfirm: function (event) { + var index = event.detail.index; + var value = event.detail.value; + value = this.parseValues(value); + this.emit('confirm', { value: value, index: index }); + }, + emit: function (type, detail) { + detail.values = detail.value; + delete detail.value; + this.$emit(type, detail); + }, + parseValues: function (values) { + var columnsPlaceholder = this.data.columnsPlaceholder; + return values.map(function (value, index) { + if (value && + (!value.code || value.name === columnsPlaceholder[index])) { + return __assign(__assign({}, value), { code: '', name: '' }); + } + return value; + }); + }, + onChange: function (event) { + var _this = this; + var _a; + var _b = event.detail, index = _b.index, picker = _b.picker, value = _b.value; + this.code = value[index].code; + (_a = this.setValues()) === null || _a === void 0 ? void 0 : _a.then(function () { + _this.$emit('change', { + picker: picker, + values: _this.parseValues(picker.getValues()), + index: index, + }); + }); + }, + getConfig: function (type) { + var areaList = this.data.areaList; + return (areaList && areaList["".concat(type, "_list")]) || {}; + }, + getList: function (type, code) { + if (type !== 'province' && !code) { + return []; + } + var typeToColumnsPlaceholder = this.data.typeToColumnsPlaceholder; + var list = this.getConfig(type); + var result = Object.keys(list).map(function (code) { return ({ + code: code, + name: list[code], + }); }); + if (code != null) { + // oversea code + if (code[0] === '9' && type === 'city') { + code = '9'; + } + result = result.filter(function (item) { return item.code.indexOf(code) === 0; }); + } + if (typeToColumnsPlaceholder[type] && result.length) { + // set columns placeholder + var codeFill = type === 'province' + ? '' + : type === 'city' + ? EMPTY_CODE.slice(2, 4) + : EMPTY_CODE.slice(4, 6); + result.unshift({ + code: "".concat(code).concat(codeFill), + name: typeToColumnsPlaceholder[type], + }); + } + return result; + }, + getIndex: function (type, code) { + var compareNum = type === 'province' ? 2 : type === 'city' ? 4 : 6; + var list = this.getList(type, code.slice(0, compareNum - 2)); + // oversea code + if (code[0] === '9' && type === 'province') { + compareNum = 1; + } + code = code.slice(0, compareNum); + for (var i = 0; i < list.length; i++) { + if (list[i].code.slice(0, compareNum) === code) { + return i; + } + } + return 0; + }, + setValues: function () { + var picker = this.getPicker(); + if (!picker) { + return; + } + var code = this.code || this.getDefaultCode(); + var provinceList = this.getList('province'); + var cityList = this.getList('city', code.slice(0, 2)); + var stack = []; + var indexes = []; + var columnsNum = this.data.columnsNum; + if (columnsNum >= 1) { + stack.push(picker.setColumnValues(0, provinceList, false)); + indexes.push(this.getIndex('province', code)); + } + if (columnsNum >= 2) { + stack.push(picker.setColumnValues(1, cityList, false)); + indexes.push(this.getIndex('city', code)); + if (cityList.length && code.slice(2, 4) === '00') { + code = cityList[0].code; + } + } + if (columnsNum === 3) { + stack.push(picker.setColumnValues(2, this.getList('county', code.slice(0, 4)), false)); + indexes.push(this.getIndex('county', code)); + } + return Promise.all(stack) + .catch(function () { }) + .then(function () { return picker.setIndexes(indexes); }) + .catch(function () { }); + }, + getDefaultCode: function () { + var columnsPlaceholder = this.data.columnsPlaceholder; + if (columnsPlaceholder.length) { + return EMPTY_CODE; + } + var countyCodes = Object.keys(this.getConfig('county')); + if (countyCodes[0]) { + return countyCodes[0]; + } + var cityCodes = Object.keys(this.getConfig('city')); + if (cityCodes[0]) { + return cityCodes[0]; + } + return ''; + }, + getValues: function () { + var picker = this.getPicker(); + if (!picker) { + return []; + } + return this.parseValues(picker.getValues().filter(function (value) { return !!value; })); + }, + getDetail: function () { + var values = this.getValues(); + var area = { + code: '', + country: '', + province: '', + city: '', + county: '', + }; + if (!values.length) { + return area; + } + var names = values.map(function (item) { return item.name; }); + area.code = values[values.length - 1].code; + if (area.code[0] === '9') { + area.country = names[1] || ''; + area.province = names[2] || ''; + } + else { + area.province = names[0] || ''; + area.city = names[1] || ''; + area.county = names[2] || ''; + } + return area; + }, + reset: function (code) { + this.code = code || ''; + return this.setValues(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/area/index.json b/app/miniprogram_npm/@vant/weapp/area/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/area/index.wxml b/app/miniprogram_npm/@vant/weapp/area/index.wxml new file mode 100644 index 0000000..3a437b7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.wxml @@ -0,0 +1,20 @@ + + + diff --git a/app/miniprogram_npm/@vant/weapp/area/index.wxs b/app/miniprogram_npm/@vant/weapp/area/index.wxs new file mode 100644 index 0000000..07723c1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.wxs @@ -0,0 +1,8 @@ +/* eslint-disable */ +function displayColumns(columns, columnsNum) { + return columns.slice(0, +columnsNum); +} + +module.exports = { + displayColumns: displayColumns, +}; diff --git a/app/miniprogram_npm/@vant/weapp/area/index.wxss b/app/miniprogram_npm/@vant/weapp/area/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/area/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/button/index.d.ts b/app/miniprogram_npm/@vant/weapp/button/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/button/index.js b/app/miniprogram_npm/@vant/weapp/button/index.js new file mode 100644 index 0000000..984135c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.js @@ -0,0 +1,67 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var version_1 = require("../common/version"); +var mixins = [button_1.button]; +if ((0, version_1.canIUseFormFieldButton)()) { + mixins.push('wx://form-field-button'); +} +(0, component_1.VantComponent)({ + mixins: mixins, + classes: ['hover-class', 'loading-class'], + data: { + baseStyle: '', + }, + props: { + formType: String, + icon: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + plain: Boolean, + block: Boolean, + round: Boolean, + square: Boolean, + loading: Boolean, + hairline: Boolean, + disabled: Boolean, + loadingText: String, + customStyle: String, + loadingType: { + type: String, + value: 'circular', + }, + type: { + type: String, + value: 'default', + }, + dataset: null, + size: { + type: String, + value: 'normal', + }, + loadingSize: { + type: String, + value: '20px', + }, + color: String, + }, + methods: { + onClick: function (event) { + var _this = this; + this.$emit('click', event); + var _a = this.data, canIUseGetUserProfile = _a.canIUseGetUserProfile, openType = _a.openType, getUserProfileDesc = _a.getUserProfileDesc, lang = _a.lang; + if (openType === 'getUserInfo' && canIUseGetUserProfile) { + wx.getUserProfile({ + desc: getUserProfileDesc || ' ', + lang: lang || 'en', + complete: function (userProfile) { + _this.$emit('getuserinfo', userProfile); + }, + }); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/button/index.json b/app/miniprogram_npm/@vant/weapp/button/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/button/index.wxml b/app/miniprogram_npm/@vant/weapp/button/index.wxml new file mode 100644 index 0000000..e7f60f1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.wxml @@ -0,0 +1,56 @@ + + + + + + + + {{ loadingText }} + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/button/index.wxs b/app/miniprogram_npm/@vant/weapp/button/index.wxs new file mode 100644 index 0000000..8b649fe --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.wxs @@ -0,0 +1,39 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + if (!data.color) { + return data.customStyle; + } + + var properties = { + color: data.plain ? data.color : '#fff', + background: data.plain ? null : data.color, + }; + + // hide border when color is linear-gradient + if (data.color.indexOf('gradient') !== -1) { + properties.border = 0; + } else { + properties['border-color'] = data.color; + } + + return style([properties, data.customStyle]); +} + +function loadingColor(data) { + if (data.plain) { + return data.color ? data.color : '#c9c9c9'; + } + + if (data.type === 'default') { + return '#c9c9c9'; + } + + return '#fff'; +} + +module.exports = { + rootStyle: rootStyle, + loadingColor: loadingColor, +}; diff --git a/app/miniprogram_npm/@vant/weapp/button/index.wxss b/app/miniprogram_npm/@vant/weapp/button/index.wxss new file mode 100644 index 0000000..bd8bb5a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/button/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-button{-webkit-text-size-adjust:100%;align-items:center;-webkit-appearance:none;border-radius:var(--button-border-radius,2px);box-sizing:border-box;display:inline-flex;font-size:var(--button-default-font-size,16px);height:var(--button-default-height,44px);justify-content:center;line-height:var(--button-line-height,20px);padding:0;position:relative;text-align:center;transition:opacity .2s;vertical-align:middle}.van-button:before{background-color:#000;border:inherit;border-color:#000;border-radius:inherit;content:" ";height:100%;left:50%;opacity:0;position:absolute;top:50%;transform:translate(-50%,-50%);width:100%}.van-button:after{border-width:0}.van-button--active:before{opacity:.15}.van-button--unclickable:after{display:none}.van-button--default{background:var(--button-default-background-color,#fff);border:var(--button-border-width,1px) solid var(--button-default-border-color,#ebedf0);color:var(--button-default-color,#323233)}.van-button--primary{background:var(--button-primary-background-color,#07c160);border:var(--button-border-width,1px) solid var(--button-primary-border-color,#07c160);color:var(--button-primary-color,#fff)}.van-button--info{background:var(--button-info-background-color,#1989fa);border:var(--button-border-width,1px) solid var(--button-info-border-color,#1989fa);color:var(--button-info-color,#fff)}.van-button--danger{background:var(--button-danger-background-color,#ee0a24);border:var(--button-border-width,1px) solid var(--button-danger-border-color,#ee0a24);color:var(--button-danger-color,#fff)}.van-button--warning{background:var(--button-warning-background-color,#ff976a);border:var(--button-border-width,1px) solid var(--button-warning-border-color,#ff976a);color:var(--button-warning-color,#fff)}.van-button--plain{background:var(--button-plain-background-color,#fff)}.van-button--plain.van-button--primary{color:var(--button-primary-background-color,#07c160)}.van-button--plain.van-button--info{color:var(--button-info-background-color,#1989fa)}.van-button--plain.van-button--danger{color:var(--button-danger-background-color,#ee0a24)}.van-button--plain.van-button--warning{color:var(--button-warning-background-color,#ff976a)}.van-button--large{height:var(--button-large-height,50px);width:100%}.van-button--normal{font-size:var(--button-normal-font-size,14px);padding:0 15px}.van-button--small{font-size:var(--button-small-font-size,12px);height:var(--button-small-height,30px);min-width:var(--button-small-min-width,60px);padding:0 var(--padding-xs,8px)}.van-button--mini{display:inline-block;font-size:var(--button-mini-font-size,10px);height:var(--button-mini-height,22px);min-width:var(--button-mini-min-width,50px)}.van-button--mini+.van-button--mini{margin-left:5px}.van-button--block{display:flex;width:100%}.van-button--round{border-radius:var(--button-round-border-radius,999px)}.van-button--square{border-radius:0}.van-button--disabled{opacity:var(--button-disabled-opacity,.5)}.van-button__text{display:inline}.van-button__icon+.van-button__text:not(:empty),.van-button__loading-text{margin-left:4px}.van-button__icon{line-height:inherit!important;min-width:1em;vertical-align:top}.van-button--hairline{border-width:0;padding-top:1px}.van-button--hairline:after{border-color:inherit;border-radius:calc(var(--button-border-radius, 2px)*2);border-width:1px}.van-button--hairline.van-button--round:after{border-radius:var(--button-round-border-radius,999px)}.van-button--hairline.van-button--square:after{border-radius:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/calendar/calendar.wxml b/app/miniprogram_npm/@vant/weapp/calendar/calendar.wxml new file mode 100644 index 0000000..2ddb048 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/calendar.wxml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + {{ + computed.getButtonDisabled(type, currentDate, minRange) + ? confirmDisabledText + : confirmText + }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.js b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.js new file mode 100644 index 0000000..544b3a4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.js @@ -0,0 +1,45 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + subtitle: String, + showTitle: Boolean, + showSubtitle: Boolean, + firstDayOfWeek: { + type: Number, + observer: 'initWeekDay', + }, + }, + data: { + weekdays: [], + }, + created: function () { + this.initWeekDay(); + }, + methods: { + initWeekDay: function () { + var defaultWeeks = ['日', '一', '二', '三', '四', '五', '六']; + var firstDayOfWeek = this.data.firstDayOfWeek || 0; + this.setData({ + weekdays: __spreadArray(__spreadArray([], defaultWeeks.slice(firstDayOfWeek, 7), true), defaultWeeks.slice(0, firstDayOfWeek), true), + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.json b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml new file mode 100644 index 0000000..7e56c83 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxml @@ -0,0 +1,16 @@ + + + + {{ title }} + + + + {{ subtitle }} + + + + + {{ item }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss new file mode 100644 index 0000000..272537e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/header/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar__header{box-shadow:var(--calendar-header-box-shadow,0 2px 10px hsla(220,1%,50%,.16));flex-shrink:0}.van-calendar__header-subtitle,.van-calendar__header-title{font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__header-title+.van-calendar__header-title,.van-calendar__header-title:empty{display:none}.van-calendar__header-title:empty+.van-calendar__header-title{display:block!important}.van-calendar__weekdays{display:flex}.van-calendar__weekday{flex:1;font-size:var(--calendar-weekdays-font-size,12px);line-height:var(--calendar-weekdays-height,30px);text-align:center} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts new file mode 100644 index 0000000..3ccf85a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.d.ts @@ -0,0 +1,6 @@ +export interface Day { + date: Date; + type: string; + text: number; + bottomInfo?: string; +} diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.js b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.js new file mode 100644 index 0000000..4d137f5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.js @@ -0,0 +1,158 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../../../common/component"); +var utils_1 = require("../../utils"); +(0, component_1.VantComponent)({ + props: { + date: { + type: null, + observer: 'setDays', + }, + type: { + type: String, + observer: 'setDays', + }, + color: String, + minDate: { + type: null, + observer: 'setDays', + }, + maxDate: { + type: null, + observer: 'setDays', + }, + showMark: Boolean, + rowHeight: null, + formatter: { + type: null, + observer: 'setDays', + }, + currentDate: { + type: null, + observer: 'setDays', + }, + firstDayOfWeek: { + type: Number, + observer: 'setDays', + }, + allowSameDay: Boolean, + showSubtitle: Boolean, + showMonthTitle: Boolean, + }, + data: { + visible: true, + days: [], + }, + methods: { + onClick: function (event) { + var index = event.currentTarget.dataset.index; + var item = this.data.days[index]; + if (item.type !== 'disabled') { + this.$emit('click', item); + } + }, + setDays: function () { + var days = []; + var startDate = new Date(this.data.date); + var year = startDate.getFullYear(); + var month = startDate.getMonth(); + var totalDay = (0, utils_1.getMonthEndDay)(startDate.getFullYear(), startDate.getMonth() + 1); + for (var day = 1; day <= totalDay; day++) { + var date = new Date(year, month, day); + var type = this.getDayType(date); + var config = { + date: date, + type: type, + text: day, + bottomInfo: this.getBottomInfo(type), + }; + if (this.data.formatter) { + config = this.data.formatter(config); + } + days.push(config); + } + this.setData({ days: days }); + }, + getMultipleDayType: function (day) { + var currentDate = this.data.currentDate; + if (!Array.isArray(currentDate)) { + return ''; + } + var isSelected = function (date) { + return currentDate.some(function (item) { return (0, utils_1.compareDay)(item, date) === 0; }); + }; + if (isSelected(day)) { + var prevDay = (0, utils_1.getPrevDay)(day); + var nextDay = (0, utils_1.getNextDay)(day); + var prevSelected = isSelected(prevDay); + var nextSelected = isSelected(nextDay); + if (prevSelected && nextSelected) { + return 'multiple-middle'; + } + if (prevSelected) { + return 'end'; + } + return nextSelected ? 'start' : 'multiple-selected'; + } + return ''; + }, + getRangeDayType: function (day) { + var _a = this.data, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (!Array.isArray(currentDate)) { + return ''; + } + var startDay = currentDate[0], endDay = currentDate[1]; + if (!startDay) { + return ''; + } + var compareToStart = (0, utils_1.compareDay)(day, startDay); + if (!endDay) { + return compareToStart === 0 ? 'start' : ''; + } + var compareToEnd = (0, utils_1.compareDay)(day, endDay); + if (compareToStart === 0 && compareToEnd === 0 && allowSameDay) { + return 'start-end'; + } + if (compareToStart === 0) { + return 'start'; + } + if (compareToEnd === 0) { + return 'end'; + } + if (compareToStart > 0 && compareToEnd < 0) { + return 'middle'; + } + return ''; + }, + getDayType: function (day) { + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate, currentDate = _a.currentDate; + if ((0, utils_1.compareDay)(day, minDate) < 0 || (0, utils_1.compareDay)(day, maxDate) > 0) { + return 'disabled'; + } + if (type === 'single') { + return (0, utils_1.compareDay)(day, currentDate) === 0 ? 'selected' : ''; + } + if (type === 'multiple') { + return this.getMultipleDayType(day); + } + /* istanbul ignore else */ + if (type === 'range') { + return this.getRangeDayType(day); + } + return ''; + }, + getBottomInfo: function (type) { + if (this.data.type === 'range') { + if (type === 'start') { + return '开始'; + } + if (type === 'end') { + return '结束'; + } + if (type === 'start-end') { + return '开始/结束'; + } + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.json b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml new file mode 100644 index 0000000..0c73b2f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxml @@ -0,0 +1,39 @@ + + + + + + {{ computed.formatMonthTitle(date) }} + + + + + {{ computed.getMark(date) }} + + + + + {{ item.topInfo }} + {{ item.text }} + + {{ item.bottomInfo }} + + + + + {{ item.topInfo }} + {{ item.text }} + + {{ item.bottomInfo }} + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs new file mode 100644 index 0000000..55e45a5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxs @@ -0,0 +1,71 @@ +/* eslint-disable */ +var utils = require('../../utils.wxs'); + +function getMark(date) { + return getDate(date).getMonth() + 1; +} + +var ROW_HEIGHT = 64; + +function getDayStyle(type, index, date, rowHeight, color, firstDayOfWeek) { + var style = []; + var current = getDate(date).getDay() || 7; + var offset = current < firstDayOfWeek ? (7 - firstDayOfWeek + current) : + current === 7 && firstDayOfWeek === 0 ? 0 : + (current - firstDayOfWeek); + + if (index === 0) { + style.push(['margin-left', (100 * offset) / 7 + '%']); + } + + if (rowHeight !== ROW_HEIGHT) { + style.push(['height', rowHeight + 'px']); + } + + if (color) { + if ( + type === 'start' || + type === 'end' || + type === 'start-end' || + type === 'multiple-selected' || + type === 'multiple-middle' + ) { + style.push(['background', color]); + } else if (type === 'middle') { + style.push(['color', color]); + } + } + + return style + .map(function(item) { + return item.join(':'); + }) + .join(';'); +} + +function formatMonthTitle(date) { + date = getDate(date); + return date.getFullYear() + '年' + (date.getMonth() + 1) + '月'; +} + +function getMonthStyle(visible, date, rowHeight) { + if (!visible) { + date = getDate(date); + + var totalDay = utils.getMonthEndDay( + date.getFullYear(), + date.getMonth() + 1 + ); + var offset = getDate(date).getDay(); + var padding = Math.ceil((totalDay + offset) / 7) * rowHeight; + + return 'padding-bottom:' + padding + 'px'; + } +} + +module.exports = { + getMark: getMark, + getDayStyle: getDayStyle, + formatMonthTitle: formatMonthTitle, + getMonthStyle: getMonthStyle +}; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss new file mode 100644 index 0000000..9aee73d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/components/month/index.wxss @@ -0,0 +1 @@ +@import '../../../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:100%}.van-calendar__month-title{font-size:var(--calendar-month-title-font-size,14px);font-weight:var(--font-weight-bold,500);height:var(--calendar-header-title-height,44px);line-height:var(--calendar-header-title-height,44px);text-align:center}.van-calendar__days{display:flex;flex-wrap:wrap;position:relative;-webkit-user-select:none;user-select:none}.van-calendar__month-mark{color:var(--calendar-month-mark-color,rgba(242,243,245,.8));font-size:var(--calendar-month-mark-font-size,160px);left:50%;pointer-events:none;position:absolute;top:50%;transform:translate(-50%,-50%);z-index:0}.van-calendar__day,.van-calendar__selected-day{align-items:center;display:flex;justify-content:center;text-align:center}.van-calendar__day{font-size:var(--calendar-day-font-size,16px);height:var(--calendar-day-height,64px);position:relative;width:14.285%}.van-calendar__day--end,.van-calendar__day--multiple-middle,.van-calendar__day--multiple-selected,.van-calendar__day--start,.van-calendar__day--start-end{background-color:var(--calendar-range-edge-background-color,#ee0a24);color:var(--calendar-range-edge-color,#fff)}.van-calendar__day--start{border-radius:4px 0 0 4px}.van-calendar__day--end{border-radius:0 4px 4px 0}.van-calendar__day--multiple-selected,.van-calendar__day--start-end{border-radius:4px}.van-calendar__day--middle{color:var(--calendar-range-middle-color,#ee0a24)}.van-calendar__day--middle:after{background-color:currentColor;bottom:0;content:"";left:0;opacity:var(--calendar-range-middle-background-opacity,.1);position:absolute;right:0;top:0}.van-calendar__day--disabled{color:var(--calendar-day-disabled-color,#c8c9cc);cursor:default}.van-calendar__bottom-info,.van-calendar__top-info{font-size:var(--calendar-info-font-size,10px);left:0;line-height:var(--calendar-info-line-height,14px);position:absolute;right:0}@media (max-width:350px){.van-calendar__bottom-info,.van-calendar__top-info{font-size:9px}}.van-calendar__top-info{top:6px}.van-calendar__bottom-info{bottom:6px}.van-calendar__selected-day{background-color:var(--calendar-selected-day-background-color,#ee0a24);border-radius:4px;color:var(--calendar-selected-day-color,#fff);height:var(--calendar-selected-day-size,54px);width:var(--calendar-selected-day-size,54px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.d.ts b/app/miniprogram_npm/@vant/weapp/calendar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.js b/app/miniprogram_npm/@vant/weapp/calendar/index.js new file mode 100644 index 0000000..7a7324d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.js @@ -0,0 +1,383 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +var __importDefault = (this && this.__importDefault) || function (mod) { + return (mod && mod.__esModule) ? mod : { "default": mod }; +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +var toast_1 = __importDefault(require("../toast/toast")); +var utils_2 = require("../common/utils"); +var initialMinDate = (0, utils_1.getToday)().getTime(); +var initialMaxDate = (function () { + var now = (0, utils_1.getToday)(); + return new Date(now.getFullYear(), now.getMonth() + 6, now.getDate()).getTime(); +})(); +var getTime = function (date) { + return date instanceof Date ? date.getTime() : date; +}; +(0, component_1.VantComponent)({ + props: { + title: { + type: String, + value: '日期选择', + }, + color: String, + show: { + type: Boolean, + observer: function (val) { + if (val) { + this.initRect(); + this.scrollIntoView(); + } + }, + }, + formatter: null, + confirmText: { + type: String, + value: '确定', + }, + confirmDisabledText: { + type: String, + value: '确定', + }, + rangePrompt: String, + showRangePrompt: { + type: Boolean, + value: true, + }, + defaultDate: { + type: null, + value: (0, utils_1.getToday)().getTime(), + observer: function (val) { + this.setData({ currentDate: val }); + this.scrollIntoView(); + }, + }, + allowSameDay: Boolean, + type: { + type: String, + value: 'single', + observer: 'reset', + }, + minDate: { + type: Number, + value: initialMinDate, + }, + maxDate: { + type: Number, + value: initialMaxDate, + }, + position: { + type: String, + value: 'bottom', + }, + rowHeight: { + type: null, + value: utils_1.ROW_HEIGHT, + }, + round: { + type: Boolean, + value: true, + }, + poppable: { + type: Boolean, + value: true, + }, + showMark: { + type: Boolean, + value: true, + }, + showTitle: { + type: Boolean, + value: true, + }, + showConfirm: { + type: Boolean, + value: true, + }, + showSubtitle: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + maxRange: { + type: null, + value: null, + }, + minRange: { + type: Number, + value: 1, + }, + firstDayOfWeek: { + type: Number, + value: 0, + }, + readonly: Boolean, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + subtitle: '', + currentDate: null, + scrollIntoView: '', + }, + watch: { + minDate: function () { + this.initRect(); + }, + maxDate: function () { + this.initRect(); + }, + }, + created: function () { + this.setData({ + currentDate: this.getInitialDate(this.data.defaultDate), + }); + }, + mounted: function () { + if (this.data.show || !this.data.poppable) { + this.initRect(); + this.scrollIntoView(); + } + }, + methods: { + reset: function () { + this.setData({ currentDate: this.getInitialDate(this.data.defaultDate) }); + this.scrollIntoView(); + }, + initRect: function () { + var _this = this; + if (this.contentObserver != null) { + this.contentObserver.disconnect(); + } + var contentObserver = this.createIntersectionObserver({ + thresholds: [0, 0.1, 0.9, 1], + observeAll: true, + }); + this.contentObserver = contentObserver; + contentObserver.relativeTo('.van-calendar__body'); + contentObserver.observe('.month', function (res) { + if (res.boundingClientRect.top <= res.relativeRect.top) { + // @ts-ignore + _this.setData({ subtitle: (0, utils_1.formatMonthTitle)(res.dataset.date) }); + } + }); + }, + limitDateRange: function (date, minDate, maxDate) { + if (minDate === void 0) { minDate = null; } + if (maxDate === void 0) { maxDate = null; } + minDate = minDate || this.data.minDate; + maxDate = maxDate || this.data.maxDate; + if ((0, utils_1.compareDay)(date, minDate) === -1) { + return minDate; + } + if ((0, utils_1.compareDay)(date, maxDate) === 1) { + return maxDate; + } + return date; + }, + getInitialDate: function (defaultDate) { + var _this = this; + if (defaultDate === void 0) { defaultDate = null; } + var _a = this.data, type = _a.type, minDate = _a.minDate, maxDate = _a.maxDate, allowSameDay = _a.allowSameDay; + if (!defaultDate) + return []; + var now = (0, utils_1.getToday)().getTime(); + if (type === 'range') { + if (!Array.isArray(defaultDate)) { + defaultDate = []; + } + var _b = defaultDate || [], startDay = _b[0], endDay = _b[1]; + var startDate = getTime(startDay || now); + var start = this.limitDateRange(startDate, minDate, allowSameDay ? startDate : (0, utils_1.getPrevDay)(new Date(maxDate)).getTime()); + var date = getTime(endDay || now); + var end = this.limitDateRange(date, allowSameDay ? date : (0, utils_1.getNextDay)(new Date(minDate)).getTime()); + return [start, end]; + } + if (type === 'multiple') { + if (Array.isArray(defaultDate)) { + return defaultDate.map(function (date) { return _this.limitDateRange(date); }); + } + return [this.limitDateRange(now)]; + } + if (!defaultDate || Array.isArray(defaultDate)) { + defaultDate = now; + } + return this.limitDateRange(defaultDate); + }, + scrollIntoView: function () { + var _this = this; + (0, utils_2.requestAnimationFrame)(function () { + var _a = _this.data, currentDate = _a.currentDate, type = _a.type, show = _a.show, poppable = _a.poppable, minDate = _a.minDate, maxDate = _a.maxDate; + if (!currentDate) + return; + // @ts-ignore + var targetDate = type === 'single' ? currentDate : currentDate[0]; + var displayed = show || !poppable; + if (!targetDate || !displayed) { + return; + } + var months = (0, utils_1.getMonths)(minDate, maxDate); + months.some(function (month, index) { + if ((0, utils_1.compareMonth)(month, targetDate) === 0) { + _this.setData({ scrollIntoView: "month".concat(index) }); + return true; + } + return false; + }); + }); + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + }, + onClickDay: function (event) { + if (this.data.readonly) { + return; + } + var date = event.detail.date; + var _a = this.data, type = _a.type, currentDate = _a.currentDate, allowSameDay = _a.allowSameDay; + if (type === 'range') { + // @ts-ignore + var startDay_1 = currentDate[0], endDay = currentDate[1]; + if (startDay_1 && !endDay) { + var compareToStart = (0, utils_1.compareDay)(date, startDay_1); + if (compareToStart === 1) { + var days_1 = this.selectComponent('.month').data.days; + days_1.some(function (day, index) { + var isDisabled = day.type === 'disabled' && + getTime(startDay_1) < getTime(day.date) && + getTime(day.date) < getTime(date); + if (isDisabled) { + (date = days_1[index - 1].date); + } + return isDisabled; + }); + this.select([startDay_1, date], true); + } + else if (compareToStart === -1) { + this.select([date, null]); + } + else if (allowSameDay) { + this.select([date, date], true); + } + } + else { + this.select([date, null]); + } + } + else if (type === 'multiple') { + var selectedIndex_1; + // @ts-ignore + var selected = currentDate.some(function (dateItem, index) { + var equal = (0, utils_1.compareDay)(dateItem, date) === 0; + if (equal) { + selectedIndex_1 = index; + } + return equal; + }); + if (selected) { + // @ts-ignore + var cancelDate = currentDate.splice(selectedIndex_1, 1); + this.setData({ currentDate: currentDate }); + this.unselect(cancelDate); + } + else { + // @ts-ignore + this.select(__spreadArray(__spreadArray([], currentDate, true), [date], false)); + } + } + else { + this.select(date, true); + } + }, + unselect: function (dateArray) { + var date = dateArray[0]; + if (date) { + this.$emit('unselect', (0, utils_1.copyDates)(date)); + } + }, + select: function (date, complete) { + if (complete && this.data.type === 'range') { + var valid = this.checkRange(date); + if (!valid) { + // auto selected to max range if showConfirm + if (this.data.showConfirm) { + this.emit([ + date[0], + (0, utils_1.getDayByOffset)(date[0], this.data.maxRange - 1), + ]); + } + else { + this.emit(date); + } + return; + } + } + this.emit(date); + if (complete && !this.data.showConfirm) { + this.onConfirm(); + } + }, + emit: function (date) { + this.setData({ + currentDate: Array.isArray(date) ? date.map(getTime) : getTime(date), + }); + this.$emit('select', (0, utils_1.copyDates)(date)); + }, + checkRange: function (date) { + var _a = this.data, maxRange = _a.maxRange, rangePrompt = _a.rangePrompt, showRangePrompt = _a.showRangePrompt; + if (maxRange && (0, utils_1.calcDateNum)(date) > maxRange) { + if (showRangePrompt) { + (0, toast_1.default)({ + context: this, + message: rangePrompt || "\u9009\u62E9\u5929\u6570\u4E0D\u80FD\u8D85\u8FC7 ".concat(maxRange, " \u5929"), + }); + } + this.$emit('over-range'); + return false; + } + return true; + }, + onConfirm: function () { + var _this = this; + if (this.data.type === 'range' && + !this.checkRange(this.data.currentDate)) { + return; + } + wx.nextTick(function () { + // @ts-ignore + _this.$emit('confirm', (0, utils_1.copyDates)(_this.data.currentDate)); + }); + }, + onClickSubtitle: function (event) { + this.$emit('click-subtitle', event); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.json b/app/miniprogram_npm/@vant/weapp/calendar/index.json new file mode 100644 index 0000000..397d5ae --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.json @@ -0,0 +1,10 @@ +{ + "component": true, + "usingComponents": { + "header": "./components/header/index", + "month": "./components/month/index", + "van-button": "../button/index", + "van-popup": "../popup/index", + "van-toast": "../toast/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.wxml b/app/miniprogram_npm/@vant/weapp/calendar/index.wxml new file mode 100644 index 0000000..9d0fc6b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.wxml @@ -0,0 +1,27 @@ + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.wxs b/app/miniprogram_npm/@vant/weapp/calendar/index.wxs new file mode 100644 index 0000000..0a56646 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.wxs @@ -0,0 +1,37 @@ +/* eslint-disable */ +var utils = require('./utils.wxs'); + +function getMonths(minDate, maxDate) { + var months = []; + var cursor = getDate(minDate); + + cursor.setDate(1); + + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (utils.compareMonth(cursor, getDate(maxDate)) !== 1); + + return months; +} + +function getButtonDisabled(type, currentDate, minRange) { + if (currentDate == null) { + return true; + } + + if (type === 'range') { + return !currentDate[0] || !currentDate[1]; + } + + if (type === 'multiple') { + return currentDate.length < minRange; + } + + return !currentDate; +} + +module.exports = { + getMonths: getMonths, + getButtonDisabled: getButtonDisabled +}; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/index.wxss b/app/miniprogram_npm/@vant/weapp/calendar/index.wxss new file mode 100644 index 0000000..a1f1cf0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-calendar{background-color:var(--calendar-background-color,#fff);display:flex;flex-direction:column;height:var(--calendar-height,100%)}.van-calendar__close-icon{top:11px}.van-calendar__popup--bottom,.van-calendar__popup--top{height:var(--calendar-popup-height,90%)}.van-calendar__popup--left,.van-calendar__popup--right{height:100%}.van-calendar__body{-webkit-overflow-scrolling:touch;flex:1;overflow:auto}.van-calendar__footer{flex-shrink:0;padding:0 var(--padding-md,16px)}.van-calendar__footer--safe-area-inset-bottom{padding-bottom:env(safe-area-inset-bottom)}.van-calendar__footer+.van-calendar__footer,.van-calendar__footer:empty{display:none}.van-calendar__footer:empty+.van-calendar__footer{display:block!important}.van-calendar__confirm{height:var(--calendar-confirm-button-height,36px)!important;line-height:var(--calendar-confirm-button-line-height,34px)!important;margin:var(--calendar-confirm-button-margin,7px 0)!important} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/calendar/utils.d.ts b/app/miniprogram_npm/@vant/weapp/calendar/utils.d.ts new file mode 100644 index 0000000..889e6e7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/utils.d.ts @@ -0,0 +1,12 @@ +export declare const ROW_HEIGHT = 64; +export declare function formatMonthTitle(date: Date): string; +export declare function compareMonth(date1: Date | number, date2: Date | number): 0 | 1 | -1; +export declare function compareDay(day1: Date | number, day2: Date | number): 0 | 1 | -1; +export declare function getDayByOffset(date: Date, offset: number): Date; +export declare function getPrevDay(date: Date): Date; +export declare function getNextDay(date: Date): Date; +export declare function getToday(): Date; +export declare function calcDateNum(date: [Date, Date]): number; +export declare function copyDates(dates: Date | Date[]): Date | Date[]; +export declare function getMonthEndDay(year: number, month: number): number; +export declare function getMonths(minDate: number, maxDate: number): number[]; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/utils.js b/app/miniprogram_npm/@vant/weapp/calendar/utils.js new file mode 100644 index 0000000..c9e5df7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/utils.js @@ -0,0 +1,97 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.getMonths = exports.getMonthEndDay = exports.copyDates = exports.calcDateNum = exports.getToday = exports.getNextDay = exports.getPrevDay = exports.getDayByOffset = exports.compareDay = exports.compareMonth = exports.formatMonthTitle = exports.ROW_HEIGHT = void 0; +exports.ROW_HEIGHT = 64; +function formatMonthTitle(date) { + if (!(date instanceof Date)) { + date = new Date(date); + } + return "".concat(date.getFullYear(), "\u5E74").concat(date.getMonth() + 1, "\u6708"); +} +exports.formatMonthTitle = formatMonthTitle; +function compareMonth(date1, date2) { + if (!(date1 instanceof Date)) { + date1 = new Date(date1); + } + if (!(date2 instanceof Date)) { + date2 = new Date(date2); + } + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + return year1 > year2 ? 1 : -1; +} +exports.compareMonth = compareMonth; +function compareDay(day1, day2) { + if (!(day1 instanceof Date)) { + day1 = new Date(day1); + } + if (!(day2 instanceof Date)) { + day2 = new Date(day2); + } + var compareMonthResult = compareMonth(day1, day2); + if (compareMonthResult === 0) { + var date1 = day1.getDate(); + var date2 = day2.getDate(); + return date1 === date2 ? 0 : date1 > date2 ? 1 : -1; + } + return compareMonthResult; +} +exports.compareDay = compareDay; +function getDayByOffset(date, offset) { + date = new Date(date); + date.setDate(date.getDate() + offset); + return date; +} +exports.getDayByOffset = getDayByOffset; +function getPrevDay(date) { + return getDayByOffset(date, -1); +} +exports.getPrevDay = getPrevDay; +function getNextDay(date) { + return getDayByOffset(date, 1); +} +exports.getNextDay = getNextDay; +function getToday() { + var today = new Date(); + today.setHours(0, 0, 0, 0); + return today; +} +exports.getToday = getToday; +function calcDateNum(date) { + var day1 = new Date(date[0]).getTime(); + var day2 = new Date(date[1]).getTime(); + return (day2 - day1) / (1000 * 60 * 60 * 24) + 1; +} +exports.calcDateNum = calcDateNum; +function copyDates(dates) { + if (Array.isArray(dates)) { + return dates.map(function (date) { + if (date === null) { + return date; + } + return new Date(date); + }); + } + return new Date(dates); +} +exports.copyDates = copyDates; +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +exports.getMonthEndDay = getMonthEndDay; +function getMonths(minDate, maxDate) { + var months = []; + var cursor = new Date(minDate); + cursor.setDate(1); + do { + months.push(cursor.getTime()); + cursor.setMonth(cursor.getMonth() + 1); + } while (compareMonth(cursor, maxDate) !== 1); + return months; +} +exports.getMonths = getMonths; diff --git a/app/miniprogram_npm/@vant/weapp/calendar/utils.wxs b/app/miniprogram_npm/@vant/weapp/calendar/utils.wxs new file mode 100644 index 0000000..e57f6b3 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/calendar/utils.wxs @@ -0,0 +1,25 @@ +/* eslint-disable */ +function getMonthEndDay(year, month) { + return 32 - getDate(year, month - 1, 32).getDate(); +} + +function compareMonth(date1, date2) { + date1 = getDate(date1); + date2 = getDate(date2); + + var year1 = date1.getFullYear(); + var year2 = date2.getFullYear(); + var month1 = date1.getMonth(); + var month2 = date2.getMonth(); + + if (year1 === year2) { + return month1 === month2 ? 0 : month1 > month2 ? 1 : -1; + } + + return year1 > year2 ? 1 : -1; +} + +module.exports = { + getMonthEndDay: getMonthEndDay, + compareMonth: compareMonth +}; diff --git a/app/miniprogram_npm/@vant/weapp/card/index.d.ts b/app/miniprogram_npm/@vant/weapp/card/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/card/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/card/index.js b/app/miniprogram_npm/@vant/weapp/card/index.js new file mode 100644 index 0000000..2815655 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/card/index.js @@ -0,0 +1,51 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'num-class', + 'desc-class', + 'thumb-class', + 'title-class', + 'price-class', + 'origin-price-class', + ], + mixins: [link_1.link], + props: { + tag: String, + num: String, + desc: String, + thumb: String, + title: String, + price: { + type: String, + observer: 'updatePrice', + }, + centered: Boolean, + lazyLoad: Boolean, + thumbLink: String, + originPrice: String, + thumbMode: { + type: String, + value: 'aspectFit', + }, + currency: { + type: String, + value: '¥', + }, + }, + methods: { + updatePrice: function () { + var price = this.data.price; + var priceArr = price.toString().split('.'); + this.setData({ + integerStr: priceArr[0], + decimalStr: priceArr[1] ? ".".concat(priceArr[1]) : '', + }); + }, + onClickThumb: function () { + this.jumpLink('thumbLink'); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/card/index.json b/app/miniprogram_npm/@vant/weapp/card/index.json new file mode 100644 index 0000000..e917407 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/card/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-tag": "../tag/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/card/index.wxml b/app/miniprogram_npm/@vant/weapp/card/index.wxml new file mode 100644 index 0000000..62173e4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/card/index.wxml @@ -0,0 +1,56 @@ + + + + + + + + + {{ tag }} + + + + + + + {{ title }} + + + {{ desc }} + + + + + + + + + {{ currency }} + {{ integerStr }} + {{ decimalStr }} + + + {{ currency }} {{ originPrice }} + + x {{ num }} + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/card/index.wxss b/app/miniprogram_npm/@vant/weapp/card/index.wxss new file mode 100644 index 0000000..0f4d7c5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/card/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-card{background-color:var(--card-background-color,#fafafa);box-sizing:border-box;color:var(--card-text-color,#323233);font-size:var(--card-font-size,12px);padding:var(--card-padding,8px 16px);position:relative}.van-card__header{display:flex}.van-card__header--center{align-items:center;justify-content:center}.van-card__thumb{flex:none;height:var(--card-thumb-size,88px);margin-right:var(--padding-xs,8px);position:relative;width:var(--card-thumb-size,88px)}.van-card__thumb:empty{display:none}.van-card__img{border-radius:8px;height:100%;width:100%}.van-card__content{display:flex;flex:1;flex-direction:column;justify-content:space-between;min-height:var(--card-thumb-size,88px);min-width:0;position:relative}.van-card__content--center{justify-content:center}.van-card__desc,.van-card__title{word-wrap:break-word}.van-card__title{font-weight:700;line-height:var(--card-title-line-height,16px)}.van-card__desc{color:var(--card-desc-color,#646566);line-height:var(--card-desc-line-height,20px)}.van-card__bottom{line-height:20px}.van-card__price{color:var(--card-price-color,#ee0a24);display:inline-block;font-size:var(--card-price-font-size,12px);font-weight:700}.van-card__price-integer{font-size:var(--card-price-integer-font-size,16px)}.van-card__price-decimal,.van-card__price-integer{font-family:var(--card-price-font-family,Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif)}.van-card__origin-price{color:var(--card-origin-price-color,#646566);display:inline-block;font-size:var(--card-origin-price-font-size,10px);margin-left:5px;text-decoration:line-through}.van-card__num{float:right}.van-card__tag{left:0;position:absolute!important;top:2px}.van-card__footer{flex:none;text-align:right;width:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.d.ts b/app/miniprogram_npm/@vant/weapp/cascader/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.js b/app/miniprogram_npm/@vant/weapp/cascader/index.js new file mode 100644 index 0000000..2a50556 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.js @@ -0,0 +1,228 @@ +"use strict"; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var FieldName; +(function (FieldName) { + FieldName["TEXT"] = "text"; + FieldName["VALUE"] = "value"; + FieldName["CHILDREN"] = "children"; +})(FieldName || (FieldName = {})); +var defaultFieldNames = { + text: FieldName.TEXT, + value: FieldName.VALUE, + children: FieldName.CHILDREN, +}; +(0, component_1.VantComponent)({ + props: { + title: String, + value: { + type: String, + }, + placeholder: { + type: String, + value: '请选择', + }, + activeColor: { + type: String, + value: '#1989fa', + }, + options: { + type: Array, + value: [], + }, + swipeable: { + type: Boolean, + value: false, + }, + closeable: { + type: Boolean, + value: true, + }, + ellipsis: { + type: Boolean, + value: true, + }, + showHeader: { + type: Boolean, + value: true, + }, + closeIcon: { + type: String, + value: 'cross', + }, + fieldNames: { + type: Object, + value: defaultFieldNames, + observer: 'updateFieldNames', + }, + useTitleSlot: Boolean, + }, + data: { + tabs: [], + activeTab: 0, + textKey: FieldName.TEXT, + valueKey: FieldName.VALUE, + childrenKey: FieldName.CHILDREN, + innerValue: '', + }, + watch: { + options: function () { + this.updateTabs(); + }, + value: function (newVal) { + this.updateValue(newVal); + }, + }, + created: function () { + this.updateTabs(); + }, + methods: { + updateValue: function (val) { + var _this = this; + if (val !== undefined) { + var values = this.data.tabs.map(function (tab) { return tab.selected && tab.selected[_this.data.valueKey]; }); + if (values.indexOf(val) > -1) { + return; + } + } + this.innerValue = val; + this.updateTabs(); + }, + updateFieldNames: function () { + var _a = this.data.fieldNames || defaultFieldNames, _b = _a.text, text = _b === void 0 ? 'text' : _b, _c = _a.value, value = _c === void 0 ? 'value' : _c, _d = _a.children, children = _d === void 0 ? 'children' : _d; + this.setData({ + textKey: text, + valueKey: value, + childrenKey: children, + }); + }, + getSelectedOptionsByValue: function (options, value) { + for (var i = 0; i < options.length; i++) { + var option = options[i]; + if (option[this.data.valueKey] === value) { + return [option]; + } + if (option[this.data.childrenKey]) { + var selectedOptions = this.getSelectedOptionsByValue(option[this.data.childrenKey], value); + if (selectedOptions) { + return __spreadArray([option], selectedOptions, true); + } + } + } + }, + updateTabs: function () { + var _this = this; + var options = this.data.options; + var innerValue = this.innerValue; + if (!options.length) { + return; + } + if (innerValue !== undefined) { + var selectedOptions = this.getSelectedOptionsByValue(options, innerValue); + if (selectedOptions) { + var optionsCursor_1 = options; + var tabs_1 = selectedOptions.map(function (option) { + var tab = { + options: optionsCursor_1, + selected: option, + }; + var next = optionsCursor_1.find(function (item) { return item[_this.data.valueKey] === option[_this.data.valueKey]; }); + if (next) { + optionsCursor_1 = next[_this.data.childrenKey]; + } + return tab; + }); + if (optionsCursor_1) { + tabs_1.push({ + options: optionsCursor_1, + selected: null, + }); + } + this.setData({ + tabs: tabs_1, + }); + wx.nextTick(function () { + _this.setData({ + activeTab: tabs_1.length - 1, + }); + }); + return; + } + } + this.setData({ + tabs: [ + { + options: options, + selected: null, + }, + ], + activeTab: 0, + }); + }, + onClose: function () { + this.$emit('close'); + }, + onClickTab: function (e) { + var _a = e.detail, tabIndex = _a.index, title = _a.title; + this.$emit('click-tab', { title: title, tabIndex: tabIndex }); + this.setData({ + activeTab: tabIndex, + }); + }, + // 选中 + onSelect: function (e) { + var _this = this; + var _a = e.currentTarget.dataset, option = _a.option, tabIndex = _a.tabIndex; + if (option && option.disabled) { + return; + } + var _b = this.data, valueKey = _b.valueKey, childrenKey = _b.childrenKey; + var tabs = this.data.tabs; + tabs[tabIndex].selected = option; + if (tabs.length > tabIndex + 1) { + tabs = tabs.slice(0, tabIndex + 1); + } + if (option[childrenKey]) { + var nextTab = { + options: option[childrenKey], + selected: null, + }; + if (tabs[tabIndex + 1]) { + tabs[tabIndex + 1] = nextTab; + } + else { + tabs.push(nextTab); + } + wx.nextTick(function () { + _this.setData({ + activeTab: tabIndex + 1, + }); + }); + } + this.setData({ + tabs: tabs, + }); + var selectedOptions = tabs.map(function (tab) { return tab.selected; }).filter(Boolean); + var value = option[valueKey]; + var params = { + value: value, + tabIndex: tabIndex, + selectedOptions: selectedOptions, + }; + this.innerValue = value; + this.$emit('change', params); + if (!option[childrenKey]) { + this.$emit('finish', params); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.json b/app/miniprogram_npm/@vant/weapp/cascader/index.json new file mode 100644 index 0000000..d0f75eb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-tab": "../tab/index", + "van-tabs": "../tabs/index" + } +} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.wxml b/app/miniprogram_npm/@vant/weapp/cascader/index.wxml new file mode 100644 index 0000000..8a5ab25 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.wxml @@ -0,0 +1,55 @@ + + + + + {{ title }} + + + + + + + + + + + {{ option[textKey] }} + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.wxs b/app/miniprogram_npm/@vant/weapp/cascader/index.wxs new file mode 100644 index 0000000..b1aab58 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.wxs @@ -0,0 +1,24 @@ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function isSelected(tab, valueKey, option) { + return tab.selected && tab.selected[valueKey] === option[valueKey] +} + +function optionClass(tab, valueKey, option) { + return utils.bem('cascader__option', { selected: isSelected(tab, valueKey, option), disabled: option.disabled }) +} + +function optionStyle(data) { + var color = data.option.color || (isSelected(data.tab, data.valueKey, data.option) ? data.activeColor : undefined); + return style({ + color + }); +} + + +module.exports = { + isSelected: isSelected, + optionClass: optionClass, + optionStyle: optionStyle, +}; \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/cascader/index.wxss b/app/miniprogram_npm/@vant/weapp/cascader/index.wxss new file mode 100644 index 0000000..7062486 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cascader/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cascader__header{align-items:center;display:flex;height:48px;justify-content:space-between;padding:0 16px}.van-cascader__title{font-size:16px;font-weight:600;line-height:20px}.van-cascader__close-icon{color:#c8c9cc;font-size:22px;height:22px}.van-cascader__tabs-wrap{height:48px!important;padding:0 8px}.van-cascader__tab{color:#323233!important;flex:none!important;font-weight:600!important;padding:0 8px!important}.van-cascader__tab--unselected{color:#969799!important;font-weight:400!important}.van-cascader__option{align-items:center;cursor:pointer;display:flex;font-size:14px;justify-content:space-between;line-height:20px;padding:10px 16px}.van-cascader__option:active{background-color:#f2f3f5}.van-cascader__option--selected{color:#1989fa;font-weight:600}.van-cascader__option--disabled{color:#c8c9cc;cursor:not-allowed}.van-cascader__option--disabled:active{background-color:initial}.van-cascader__options{-webkit-overflow-scrolling:touch;box-sizing:border-box;height:384px;overflow-y:auto;padding-top:6px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/cell-group/index.d.ts b/app/miniprogram_npm/@vant/weapp/cell-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/cell-group/index.js b/app/miniprogram_npm/@vant/weapp/cell-group/index.js new file mode 100644 index 0000000..34a93a6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell-group/index.js @@ -0,0 +1,13 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + title: String, + border: { + type: Boolean, + value: true, + }, + inset: Boolean, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/cell-group/index.json b/app/miniprogram_npm/@vant/weapp/cell-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/cell-group/index.wxml b/app/miniprogram_npm/@vant/weapp/cell-group/index.wxml new file mode 100644 index 0000000..311e064 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell-group/index.wxml @@ -0,0 +1,11 @@ + + + + {{ title }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/cell-group/index.wxss b/app/miniprogram_npm/@vant/weapp/cell-group/index.wxss new file mode 100644 index 0000000..08b252f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell-group--inset{border-radius:var(--cell-group-inset-border-radius,8px);margin:var(--cell-group-inset-padding,0 16px);overflow:hidden}.van-cell-group__title{color:var(--cell-group-title-color,#969799);font-size:var(--cell-group-title-font-size,14px);line-height:var(--cell-group-title-line-height,16px);padding:var(--cell-group-title-padding,16px 16px 8px)}.van-cell-group__title--inset{padding:var(--cell-group-inset-title-padding,16px 16px 8px 32px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.d.ts b/app/miniprogram_npm/@vant/weapp/cell/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.js b/app/miniprogram_npm/@vant/weapp/cell/index.js new file mode 100644 index 0000000..80f3039 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var link_1 = require("../mixins/link"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'title-class', + 'label-class', + 'value-class', + 'right-icon-class', + 'hover-class', + ], + mixins: [link_1.link], + props: { + title: null, + value: null, + icon: String, + size: String, + label: String, + center: Boolean, + isLink: Boolean, + required: Boolean, + clickable: Boolean, + titleWidth: String, + customStyle: String, + arrowDirection: String, + useLabelSlot: Boolean, + border: { + type: Boolean, + value: true, + }, + titleStyle: String, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.json b/app/miniprogram_npm/@vant/weapp/cell/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.wxml b/app/miniprogram_npm/@vant/weapp/cell/index.wxml new file mode 100644 index 0000000..8387c3c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.wxml @@ -0,0 +1,47 @@ + + + + + + + + + + {{ title }} + + + + + {{ label }} + + + + + {{ value }} + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.wxs b/app/miniprogram_npm/@vant/weapp/cell/index.wxs new file mode 100644 index 0000000..e3500c4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function titleStyle(data) { + return style([ + { + 'max-width': addUnit(data.titleWidth), + 'min-width': addUnit(data.titleWidth), + }, + data.titleStyle, + ]); +} + +module.exports = { + titleStyle: titleStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/cell/index.wxss b/app/miniprogram_npm/@vant/weapp/cell/index.wxss new file mode 100644 index 0000000..1802f8e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/cell/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-cell{background-color:var(--cell-background-color,#fff);box-sizing:border-box;color:var(--cell-text-color,#323233);display:flex;font-size:var(--cell-font-size,14px);line-height:var(--cell-line-height,24px);padding:var(--cell-vertical-padding,10px) var(--cell-horizontal-padding,16px);position:relative;width:100%}.van-cell:after{border-bottom:1px solid #ebedf0;bottom:0;box-sizing:border-box;content:" ";left:16px;pointer-events:none;position:absolute;right:16px;transform:scaleY(.5);transform-origin:center}.van-cell--borderless:after{display:none}.van-cell-group{background-color:var(--cell-background-color,#fff)}.van-cell__label{color:var(--cell-label-color,#969799);font-size:var(--cell-label-font-size,12px);line-height:var(--cell-label-line-height,18px);margin-top:var(--cell-label-margin-top,3px)}.van-cell__value{color:var(--cell-value-color,#969799);overflow:hidden;text-align:right;vertical-align:middle}.van-cell__title,.van-cell__value{flex:1}.van-cell__title:empty,.van-cell__value:empty{display:none}.van-cell__left-icon-wrap,.van-cell__right-icon-wrap{align-items:center;display:flex;font-size:var(--cell-icon-size,16px);height:var(--cell-line-height,24px)}.van-cell__left-icon-wrap{margin-right:var(--padding-base,4px)}.van-cell__right-icon-wrap{color:var(--cell-right-icon-color,#969799);margin-left:var(--padding-base,4px)}.van-cell__left-icon{vertical-align:middle}.van-cell__left-icon,.van-cell__right-icon{line-height:var(--cell-line-height,24px)}.van-cell--clickable.van-cell--hover{background-color:var(--cell-active-color,#f2f3f5)}.van-cell--required{overflow:visible}.van-cell--required:before{color:var(--cell-required-color,#ee0a24);content:"*";font-size:var(--cell-font-size,14px);left:var(--padding-xs,8px);position:absolute}.van-cell--center{align-items:center}.van-cell--large{padding-bottom:var(--cell-large-vertical-padding,12px);padding-top:var(--cell-large-vertical-padding,12px)}.van-cell--large .van-cell__title{font-size:var(--cell-large-title-font-size,16px)}.van-cell--large .van-cell__value{font-size:var(--cell-large-value-font-size,16px)}.van-cell--large .van-cell__label{font-size:var(--cell-large-label-font-size,14px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/checkbox-group/index.js b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.js new file mode 100644 index 0000000..80c93a1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.js @@ -0,0 +1,39 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('checkbox', function (target) { + this.updateChild(target); + }), + props: { + max: Number, + value: { + type: Array, + observer: 'updateChildren', + }, + disabled: { + type: Boolean, + observer: 'updateChildren', + }, + direction: { + type: String, + value: 'vertical', + }, + }, + methods: { + updateChildren: function () { + var _this = this; + this.children.forEach(function (child) { return _this.updateChild(child); }); + }, + updateChild: function (child) { + var _a = this.data, value = _a.value, disabled = _a.disabled, direction = _a.direction; + child.setData({ + value: value.indexOf(child.data.name) !== -1, + parentDisabled: disabled, + direction: direction, + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/checkbox-group/index.json b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml new file mode 100644 index 0000000..638bf9d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss new file mode 100644 index 0000000..c5666d7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox-group--horizontal{display:flex;flex-wrap:wrap} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.d.ts b/app/miniprogram_npm/@vant/weapp/checkbox/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.js b/app/miniprogram_npm/@vant/weapp/checkbox/index.js new file mode 100644 index 0000000..6247365 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.js @@ -0,0 +1,79 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +function emit(target, value) { + target.$emit('input', value); + target.$emit('change', value); +} +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('checkbox-group'), + classes: ['icon-class', 'label-class'], + props: { + value: Boolean, + disabled: Boolean, + useIconSlot: Boolean, + checkedColor: String, + labelPosition: { + type: String, + value: 'right', + }, + labelDisabled: Boolean, + shape: { + type: String, + value: 'round', + }, + iconSize: { + type: null, + value: 20, + }, + }, + data: { + parentDisabled: false, + direction: 'vertical', + }, + methods: { + emitChange: function (value) { + if (this.parent) { + this.setParentValue(this.parent, value); + } + else { + emit(this, value); + } + }, + toggle: function () { + var _a = this.data, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !parentDisabled) { + this.emitChange(!value); + } + }, + onClickLabel: function () { + var _a = this.data, labelDisabled = _a.labelDisabled, parentDisabled = _a.parentDisabled, disabled = _a.disabled, value = _a.value; + if (!disabled && !labelDisabled && !parentDisabled) { + this.emitChange(!value); + } + }, + setParentValue: function (parent, value) { + var parentValue = parent.data.value.slice(); + var name = this.data.name; + var max = parent.data.max; + if (value) { + if (max && parentValue.length >= max) { + return; + } + if (parentValue.indexOf(name) === -1) { + parentValue.push(name); + emit(parent, parentValue); + } + } + else { + var index = parentValue.indexOf(name); + if (index !== -1) { + parentValue.splice(index, 1); + emit(parent, parentValue); + } + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.json b/app/miniprogram_npm/@vant/weapp/checkbox/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.wxml b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxml new file mode 100644 index 0000000..39a7bb0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.wxs b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxs new file mode 100644 index 0000000..eb9c772 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxs @@ -0,0 +1,20 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function iconStyle(checkedColor, value, disabled, parentDisabled, iconSize) { + var styles = { + 'font-size': addUnit(iconSize), + }; + + if (checkedColor && value && !disabled && !parentDisabled) { + styles['border-color'] = checkedColor; + styles['background-color'] = checkedColor; + } + + return style(styles); +} + +module.exports = { + iconStyle: iconStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/checkbox/index.wxss b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxss new file mode 100644 index 0000000..da2272a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/checkbox/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-checkbox{align-items:center;display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-checkbox--horizontal{margin-right:12px}.van-checkbox__icon-wrap,.van-checkbox__label{line-height:var(--checkbox-size,20px)}.van-checkbox__icon-wrap{flex:none}.van-checkbox__icon{align-items:center;border:1px solid var(--checkbox-border-color,#c8c9cc);box-sizing:border-box;color:transparent;display:flex;font-size:var(--checkbox-size,20px);height:1em;justify-content:center;text-align:center;transition-duration:var(--checkbox-transition-duration,.2s);transition-property:color,border-color,background-color;width:1em}.van-checkbox__icon--round{border-radius:100%}.van-checkbox__icon--checked{background-color:var(--checkbox-checked-icon-color,#1989fa);border-color:var(--checkbox-checked-icon-color,#1989fa);color:#fff}.van-checkbox__icon--disabled{background-color:var(--checkbox-disabled-background-color,#ebedf0);border-color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__icon--disabled.van-checkbox__icon--checked{color:var(--checkbox-disabled-icon-color,#c8c9cc)}.van-checkbox__label{word-wrap:break-word;color:var(--checkbox-label-color,#323233);padding-left:var(--checkbox-label-margin,10px)}.van-checkbox__label--left{float:left;margin:0 var(--checkbox-label-margin,10px) 0 0}.van-checkbox__label--disabled{color:var(--checkbox-disabled-label-color,#c8c9cc)}.van-checkbox__label:empty{margin:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/circle/canvas.d.ts b/app/miniprogram_npm/@vant/weapp/circle/canvas.d.ts new file mode 100644 index 0000000..8a0b71e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/canvas.d.ts @@ -0,0 +1,4 @@ +/// +type CanvasContext = WechatMiniprogram.CanvasContext; +export declare function adaptor(ctx: CanvasContext & Record): CanvasContext; +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/circle/canvas.js b/app/miniprogram_npm/@vant/weapp/circle/canvas.js new file mode 100644 index 0000000..d81df74 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/canvas.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.adaptor = void 0; +function adaptor(ctx) { + // @ts-ignore + return Object.assign(ctx, { + setStrokeStyle: function (val) { + ctx.strokeStyle = val; + }, + setLineWidth: function (val) { + ctx.lineWidth = val; + }, + setLineCap: function (val) { + ctx.lineCap = val; + }, + setFillStyle: function (val) { + ctx.fillStyle = val; + }, + setFontSize: function (val) { + ctx.font = String(val); + }, + setGlobalAlpha: function (val) { + ctx.globalAlpha = val; + }, + setLineJoin: function (val) { + ctx.lineJoin = val; + }, + setTextAlign: function (val) { + ctx.textAlign = val; + }, + setMiterLimit: function (val) { + ctx.miterLimit = val; + }, + setShadow: function (offsetX, offsetY, blur, color) { + ctx.shadowOffsetX = offsetX; + ctx.shadowOffsetY = offsetY; + ctx.shadowBlur = blur; + ctx.shadowColor = color; + }, + setTextBaseline: function (val) { + ctx.textBaseline = val; + }, + createCircularGradient: function () { }, + draw: function () { }, + }); +} +exports.adaptor = adaptor; diff --git a/app/miniprogram_npm/@vant/weapp/circle/index.d.ts b/app/miniprogram_npm/@vant/weapp/circle/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/circle/index.js b/app/miniprogram_npm/@vant/weapp/circle/index.js new file mode 100644 index 0000000..e131e4b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/index.js @@ -0,0 +1,207 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var version_1 = require("../common/version"); +var canvas_1 = require("./canvas"); +function format(rate) { + return Math.min(Math.max(rate, 0), 100); +} +var PERIMETER = 2 * Math.PI; +var BEGIN_ANGLE = -Math.PI / 2; +var STEP = 1; +(0, component_1.VantComponent)({ + props: { + text: String, + lineCap: { + type: String, + value: 'round', + }, + value: { + type: Number, + value: 0, + observer: 'reRender', + }, + speed: { + type: Number, + value: 50, + }, + size: { + type: Number, + value: 100, + observer: function () { + this.drawCircle(this.currentValue); + }, + }, + fill: String, + layerColor: { + type: String, + value: color_1.WHITE, + }, + color: { + type: null, + value: color_1.BLUE, + observer: function () { + var _this = this; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + }, + type: { + type: String, + value: '', + }, + strokeWidth: { + type: Number, + value: 4, + }, + clockwise: { + type: Boolean, + value: true, + }, + }, + data: { + hoverColor: color_1.BLUE, + }, + methods: { + getContext: function () { + var _this = this; + var _a = this.data, type = _a.type, size = _a.size; + if (type === '' || !(0, version_1.canIUseCanvas2d)()) { + var ctx = wx.createCanvasContext('van-circle', this); + return Promise.resolve(ctx); + } + var dpr = (0, utils_1.getSystemInfoSync)().pixelRatio; + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(_this) + .select('#van-circle') + .node() + .exec(function (res) { + var canvas = res[0].node; + var ctx = canvas.getContext(type); + if (!_this.inited) { + _this.inited = true; + canvas.width = size * dpr; + canvas.height = size * dpr; + ctx.scale(dpr, dpr); + } + resolve((0, canvas_1.adaptor)(ctx)); + }); + }); + }, + setHoverColor: function () { + var _this = this; + var _a = this.data, color = _a.color, size = _a.size; + if ((0, validator_1.isObj)(color)) { + return this.getContext().then(function (context) { + if (!context) + return; + var LinearColor = context.createLinearGradient(size, 0, 0, 0); + Object.keys(color) + .sort(function (a, b) { return parseFloat(a) - parseFloat(b); }) + .map(function (key) { + return LinearColor.addColorStop(parseFloat(key) / 100, color[key]); + }); + _this.hoverColor = LinearColor; + }); + } + this.hoverColor = color; + return Promise.resolve(); + }, + presetCanvas: function (context, strokeStyle, beginAngle, endAngle, fill) { + var _a = this.data, strokeWidth = _a.strokeWidth, lineCap = _a.lineCap, clockwise = _a.clockwise, size = _a.size; + var position = size / 2; + var radius = position - strokeWidth / 2; + context.setStrokeStyle(strokeStyle); + context.setLineWidth(strokeWidth); + context.setLineCap(lineCap); + context.beginPath(); + context.arc(position, position, radius, beginAngle, endAngle, !clockwise); + context.stroke(); + if (fill) { + context.setFillStyle(fill); + context.fill(); + } + }, + renderLayerCircle: function (context) { + var _a = this.data, layerColor = _a.layerColor, fill = _a.fill; + this.presetCanvas(context, layerColor, 0, PERIMETER, fill); + }, + renderHoverCircle: function (context, formatValue) { + var clockwise = this.data.clockwise; + // 结束角度 + var progress = PERIMETER * (formatValue / 100); + var endAngle = clockwise + ? BEGIN_ANGLE + progress + : 3 * Math.PI - (BEGIN_ANGLE + progress); + this.presetCanvas(context, this.hoverColor, BEGIN_ANGLE, endAngle); + }, + drawCircle: function (currentValue) { + var _this = this; + var size = this.data.size; + this.getContext().then(function (context) { + if (!context) + return; + context.clearRect(0, 0, size, size); + _this.renderLayerCircle(context); + var formatValue = format(currentValue); + if (formatValue !== 0) { + _this.renderHoverCircle(context, formatValue); + } + context.draw(); + }); + }, + reRender: function () { + var _this = this; + // tofector 动画暂时没有想到好的解决方案 + var _a = this.data, value = _a.value, speed = _a.speed; + if (speed <= 0 || speed > 1000) { + this.drawCircle(value); + return; + } + this.clearMockInterval(); + this.currentValue = this.currentValue || 0; + var run = function () { + _this.interval = setTimeout(function () { + if (_this.currentValue !== value) { + if (Math.abs(_this.currentValue - value) < STEP) { + _this.currentValue = value; + } + else if (_this.currentValue < value) { + _this.currentValue += STEP; + } + else { + _this.currentValue -= STEP; + } + _this.drawCircle(_this.currentValue); + run(); + } + else { + _this.clearMockInterval(); + } + }, 1000 / speed); + }; + run(); + }, + clearMockInterval: function () { + if (this.interval) { + clearTimeout(this.interval); + this.interval = null; + } + }, + }, + mounted: function () { + var _this = this; + this.currentValue = this.data.value; + this.setHoverColor().then(function () { + _this.drawCircle(_this.currentValue); + }); + }, + destroyed: function () { + this.clearMockInterval(); + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/circle/index.json b/app/miniprogram_npm/@vant/weapp/circle/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/circle/index.wxml b/app/miniprogram_npm/@vant/weapp/circle/index.wxml new file mode 100644 index 0000000..52bc59f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/index.wxml @@ -0,0 +1,9 @@ + + + + + + + + {{ text }} + diff --git a/app/miniprogram_npm/@vant/weapp/circle/index.wxss b/app/miniprogram_npm/@vant/weapp/circle/index.wxss new file mode 100644 index 0000000..2200751 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/circle/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-circle{display:inline-block;position:relative;text-align:center}.van-circle__text{color:var(--circle-text-color,#323233);left:0;position:absolute;top:50%;transform:translateY(-50%);width:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/col/index.d.ts b/app/miniprogram_npm/@vant/weapp/col/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/col/index.js b/app/miniprogram_npm/@vant/weapp/col/index.js new file mode 100644 index 0000000..63c56eb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('row'), + props: { + span: Number, + offset: Number, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/col/index.json b/app/miniprogram_npm/@vant/weapp/col/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/col/index.wxml b/app/miniprogram_npm/@vant/weapp/col/index.wxml new file mode 100644 index 0000000..975348b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.wxml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/col/index.wxs b/app/miniprogram_npm/@vant/weapp/col/index.wxs new file mode 100644 index 0000000..507c1cb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + if (!data.gutter) { + return ''; + } + + return style({ + 'padding-right': addUnit(data.gutter / 2), + 'padding-left': addUnit(data.gutter / 2), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/col/index.wxss b/app/miniprogram_npm/@vant/weapp/col/index.wxss new file mode 100644 index 0000000..2fa265e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/col/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-col{box-sizing:border-box;float:left}.van-col--1{width:4.16666667%}.van-col--offset-1{margin-left:4.16666667%}.van-col--2{width:8.33333333%}.van-col--offset-2{margin-left:8.33333333%}.van-col--3{width:12.5%}.van-col--offset-3{margin-left:12.5%}.van-col--4{width:16.66666667%}.van-col--offset-4{margin-left:16.66666667%}.van-col--5{width:20.83333333%}.van-col--offset-5{margin-left:20.83333333%}.van-col--6{width:25%}.van-col--offset-6{margin-left:25%}.van-col--7{width:29.16666667%}.van-col--offset-7{margin-left:29.16666667%}.van-col--8{width:33.33333333%}.van-col--offset-8{margin-left:33.33333333%}.van-col--9{width:37.5%}.van-col--offset-9{margin-left:37.5%}.van-col--10{width:41.66666667%}.van-col--offset-10{margin-left:41.66666667%}.van-col--11{width:45.83333333%}.van-col--offset-11{margin-left:45.83333333%}.van-col--12{width:50%}.van-col--offset-12{margin-left:50%}.van-col--13{width:54.16666667%}.van-col--offset-13{margin-left:54.16666667%}.van-col--14{width:58.33333333%}.van-col--offset-14{margin-left:58.33333333%}.van-col--15{width:62.5%}.van-col--offset-15{margin-left:62.5%}.van-col--16{width:66.66666667%}.van-col--offset-16{margin-left:66.66666667%}.van-col--17{width:70.83333333%}.van-col--offset-17{margin-left:70.83333333%}.van-col--18{width:75%}.van-col--offset-18{margin-left:75%}.van-col--19{width:79.16666667%}.van-col--offset-19{margin-left:79.16666667%}.van-col--20{width:83.33333333%}.van-col--offset-20{margin-left:83.33333333%}.van-col--21{width:87.5%}.van-col--offset-21{margin-left:87.5%}.van-col--22{width:91.66666667%}.van-col--offset-22{margin-left:91.66666667%}.van-col--23{width:95.83333333%}.van-col--offset-23{margin-left:95.83333333%}.van-col--24{width:100%}.van-col--offset-24{margin-left:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts b/app/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts new file mode 100644 index 0000000..32157b6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/animate.d.ts @@ -0,0 +1,2 @@ +/// +export declare function setContentAnimate(context: WechatMiniprogram.Component.TrivialInstance, expanded: boolean, mounted: boolean): void; diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/animate.js b/app/miniprogram_npm/@vant/weapp/collapse-item/animate.js new file mode 100644 index 0000000..5734087 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/animate.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.setContentAnimate = void 0; +var utils_1 = require("../common/utils"); +function useAnimation(context, expanded, mounted, height) { + var animation = wx.createAnimation({ + duration: 0, + timingFunction: 'ease-in-out', + }); + if (expanded) { + if (height === 0) { + animation.height('auto').top(1).step(); + } + else { + animation + .height(height) + .top(1) + .step({ + duration: mounted ? 300 : 1, + }) + .height('auto') + .step(); + } + context.setData({ + animation: animation.export(), + }); + return; + } + animation.height(height).top(0).step({ duration: 1 }).height(0).step({ + duration: 300, + }); + context.setData({ + animation: animation.export(), + }); +} +function setContentAnimate(context, expanded, mounted) { + (0, utils_1.getRect)(context, '.van-collapse-item__content') + .then(function (rect) { return rect.height; }) + .then(function (height) { + useAnimation(context, expanded, mounted, height); + }); +} +exports.setContentAnimate = setContentAnimate; diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts b/app/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/index.js b/app/miniprogram_npm/@vant/weapp/collapse-item/index.js new file mode 100644 index 0000000..a8035e7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/index.js @@ -0,0 +1,63 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var animate_1 = require("./animate"); +(0, component_1.VantComponent)({ + classes: ['title-class', 'content-class'], + relation: (0, relation_1.useParent)('collapse'), + props: { + size: String, + name: null, + title: null, + value: null, + icon: String, + label: String, + disabled: Boolean, + clickable: Boolean, + border: { + type: Boolean, + value: true, + }, + isLink: { + type: Boolean, + value: true, + }, + }, + data: { + expanded: false, + parentBorder: true, + }, + mounted: function () { + this.updateExpanded(); + this.mounted = true; + }, + methods: { + updateExpanded: function () { + if (!this.parent) { + return; + } + var _a = this.parent.data, value = _a.value, accordion = _a.accordion, border = _a.border; + var _b = this.parent.children, children = _b === void 0 ? [] : _b; + var name = this.data.name; + var index = children.indexOf(this); + var currentName = name == null ? index : name; + var expanded = accordion + ? value === currentName + : (value || []).some(function (name) { return name === currentName; }); + if (expanded !== this.data.expanded) { + (0, animate_1.setContentAnimate)(this, expanded, this.mounted); + } + this.setData({ index: index, expanded: expanded, parentBorder: border }); + }, + onClick: function () { + if (this.data.disabled) { + return; + } + var _a = this.data, name = _a.name, expanded = _a.expanded; + var index = this.parent.children.indexOf(this); + var currentName = name == null ? index : name; + this.parent.switch(currentName, !expanded); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/index.json b/app/miniprogram_npm/@vant/weapp/collapse-item/index.json new file mode 100644 index 0000000..0e5425c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxml b/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxml new file mode 100644 index 0000000..23a27e4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxml @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxss b/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxss new file mode 100644 index 0000000..4a65b5a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-collapse-item__title .van-cell__right-icon{transform:rotate(90deg);transition:transform var(--collapse-item-transition-duration,.3s)}.van-collapse-item__title--expanded .van-cell__right-icon{transform:rotate(-90deg)}.van-collapse-item__title--disabled .van-cell,.van-collapse-item__title--disabled .van-cell__right-icon{color:var(--collapse-item-title-disabled-color,#c8c9cc)!important}.van-collapse-item__title--disabled .van-cell--hover{background-color:#fff!important}.van-collapse-item__wrapper{overflow:hidden}.van-collapse-item__content{background-color:var(--collapse-item-content-background-color,#fff);color:var(--collapse-item-content-text-color,#969799);font-size:var(--collapse-item-content-font-size,13px);line-height:var(--collapse-item-content-line-height,1.5);padding:var(--collapse-item-content-padding,15px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/collapse/index.d.ts b/app/miniprogram_npm/@vant/weapp/collapse/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/collapse/index.js b/app/miniprogram_npm/@vant/weapp/collapse/index.js new file mode 100644 index 0000000..943d542 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse/index.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('collapse-item'), + props: { + value: { + type: null, + observer: 'updateExpanded', + }, + accordion: { + type: Boolean, + observer: 'updateExpanded', + }, + border: { + type: Boolean, + value: true, + }, + }, + methods: { + updateExpanded: function () { + this.children.forEach(function (child) { + child.updateExpanded(); + }); + }, + switch: function (name, expanded) { + var _a = this.data, accordion = _a.accordion, value = _a.value; + var changeItem = name; + if (!accordion) { + name = expanded + ? (value || []).concat(name) + : (value || []).filter(function (activeName) { return activeName !== name; }); + } + else { + name = expanded ? name : ''; + } + if (expanded) { + this.$emit('open', changeItem); + } + else { + this.$emit('close', changeItem); + } + this.$emit('change', name); + this.$emit('input', name); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/collapse/index.json b/app/miniprogram_npm/@vant/weapp/collapse/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/collapse/index.wxml b/app/miniprogram_npm/@vant/weapp/collapse/index.wxml new file mode 100644 index 0000000..fd4e171 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse/index.wxml @@ -0,0 +1,3 @@ + + + diff --git a/app/miniprogram_npm/@vant/weapp/collapse/index.wxss b/app/miniprogram_npm/@vant/weapp/collapse/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/collapse/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/common/color.d.ts b/app/miniprogram_npm/@vant/weapp/common/color.d.ts new file mode 100644 index 0000000..386f307 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/color.d.ts @@ -0,0 +1,7 @@ +export declare const RED = "#ee0a24"; +export declare const BLUE = "#1989fa"; +export declare const WHITE = "#fff"; +export declare const GREEN = "#07c160"; +export declare const ORANGE = "#ff976a"; +export declare const GRAY = "#323233"; +export declare const GRAY_DARK = "#969799"; diff --git a/app/miniprogram_npm/@vant/weapp/common/color.js b/app/miniprogram_npm/@vant/weapp/common/color.js new file mode 100644 index 0000000..008a45a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/color.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.GRAY_DARK = exports.GRAY = exports.ORANGE = exports.GREEN = exports.WHITE = exports.BLUE = exports.RED = void 0; +exports.RED = '#ee0a24'; +exports.BLUE = '#1989fa'; +exports.WHITE = '#fff'; +exports.GREEN = '#07c160'; +exports.ORANGE = '#ff976a'; +exports.GRAY = '#323233'; +exports.GRAY_DARK = '#969799'; diff --git a/app/miniprogram_npm/@vant/weapp/common/component.d.ts b/app/miniprogram_npm/@vant/weapp/common/component.d.ts new file mode 100644 index 0000000..1d0fd27 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/component.d.ts @@ -0,0 +1,4 @@ +/// +import { VantComponentOptions } from 'definitions/index'; +declare function VantComponent(vantOptions: VantComponentOptions): void; +export { VantComponent }; diff --git a/app/miniprogram_npm/@vant/weapp/common/component.js b/app/miniprogram_npm/@vant/weapp/common/component.js new file mode 100644 index 0000000..66da00e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/component.js @@ -0,0 +1,49 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.VantComponent = void 0; +var basic_1 = require("../mixins/basic"); +function mapKeys(source, target, map) { + Object.keys(map).forEach(function (key) { + if (source[key]) { + target[map[key]] = source[key]; + } + }); +} +function VantComponent(vantOptions) { + var options = {}; + mapKeys(vantOptions, options, { + data: 'data', + props: 'properties', + watch: 'observers', + mixins: 'behaviors', + methods: 'methods', + beforeCreate: 'created', + created: 'attached', + mounted: 'ready', + destroyed: 'detached', + classes: 'externalClasses', + }); + // add default externalClasses + options.externalClasses = options.externalClasses || []; + options.externalClasses.push('custom-class'); + // add default behaviors + options.behaviors = options.behaviors || []; + options.behaviors.push(basic_1.basic); + // add relations + var relation = vantOptions.relation; + if (relation) { + options.relations = relation.relations; + options.behaviors.push(relation.mixin); + } + // map field to form-field behavior + if (vantOptions.field) { + options.behaviors.push('wx://form-field'); + } + // add default options + options.options = { + multipleSlots: true, + addGlobalClass: true, + }; + Component(options); +} +exports.VantComponent = VantComponent; diff --git a/app/miniprogram_npm/@vant/weapp/common/index.wxss b/app/miniprogram_npm/@vant/weapp/common/index.wxss new file mode 100644 index 0000000..a73bb7a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/index.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3}.van-clearfix:after{clear:both;content:"";display:table}.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/common/relation.d.ts b/app/miniprogram_npm/@vant/weapp/common/relation.d.ts new file mode 100644 index 0000000..10193fa --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/relation.d.ts @@ -0,0 +1,15 @@ +/// +type TrivialInstance = WechatMiniprogram.Component.TrivialInstance; +export declare function useParent(name: string, onEffect?: (this: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export declare function useChildren(name: string, onEffect?: (this: TrivialInstance, target: TrivialInstance) => void): { + relations: { + [x: string]: WechatMiniprogram.Component.RelationOption; + }; + mixin: string; +}; +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/common/relation.js b/app/miniprogram_npm/@vant/weapp/common/relation.js new file mode 100644 index 0000000..008256c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/relation.js @@ -0,0 +1,65 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.useChildren = exports.useParent = void 0; +function useParent(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'ancestor', + linked: function () { + onEffect && onEffect.call(this); + }, + linkChanged: function () { + onEffect && onEffect.call(this); + }, + unlinked: function () { + onEffect && onEffect.call(this); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'parent', { + get: function () { return _this.getRelationNodes(path)[0]; }, + }); + Object.defineProperty(this, 'index', { + // @ts-ignore + get: function () { var _a, _b; return (_b = (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.children) === null || _b === void 0 ? void 0 : _b.indexOf(_this); }, + }); + }, + }), + }; +} +exports.useParent = useParent; +function useChildren(name, onEffect) { + var _a; + var path = "../".concat(name, "/index"); + return { + relations: (_a = {}, + _a[path] = { + type: 'descendant', + linked: function (target) { + onEffect && onEffect.call(this, target); + }, + linkChanged: function (target) { + onEffect && onEffect.call(this, target); + }, + unlinked: function (target) { + onEffect && onEffect.call(this, target); + }, + }, + _a), + mixin: Behavior({ + created: function () { + var _this = this; + Object.defineProperty(this, 'children', { + get: function () { return _this.getRelationNodes(path) || []; }, + }); + }, + }), + }; +} +exports.useChildren = useChildren; diff --git a/app/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss b/app/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss new file mode 100644 index 0000000..442246f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/style/clearfix.wxss @@ -0,0 +1 @@ +.van-clearfix:after{clear:both;content:"";display:table} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss b/app/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss new file mode 100644 index 0000000..ee701df --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/style/ellipsis.wxss @@ -0,0 +1 @@ +.van-ellipsis{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.van-multi-ellipsis--l2{-webkit-line-clamp:2}.van-multi-ellipsis--l2,.van-multi-ellipsis--l3{-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden;text-overflow:ellipsis}.van-multi-ellipsis--l3{-webkit-line-clamp:3} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/common/style/hairline.wxss b/app/miniprogram_npm/@vant/weapp/common/style/hairline.wxss new file mode 100644 index 0000000..f7c6260 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/style/hairline.wxss @@ -0,0 +1 @@ +.van-hairline,.van-hairline--bottom,.van-hairline--left,.van-hairline--right,.van-hairline--surround,.van-hairline--top,.van-hairline--top-bottom{position:relative}.van-hairline--bottom:after,.van-hairline--left:after,.van-hairline--right:after,.van-hairline--surround:after,.van-hairline--top-bottom:after,.van-hairline--top:after,.van-hairline:after{border:0 solid #ebedf0;bottom:-50%;box-sizing:border-box;content:" ";left:-50%;pointer-events:none;position:absolute;right:-50%;top:-50%;transform:scale(.5);transform-origin:center}.van-hairline--top:after{border-top-width:1px}.van-hairline--left:after{border-left-width:1px}.van-hairline--right:after{border-right-width:1px}.van-hairline--bottom:after{border-bottom-width:1px}.van-hairline--top-bottom:after{border-width:1px 0}.van-hairline--surround:after{border-width:1px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss b/app/miniprogram_npm/@vant/weapp/common/style/mixins/clearfix.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss b/app/miniprogram_npm/@vant/weapp/common/style/mixins/ellipsis.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss b/app/miniprogram_npm/@vant/weapp/common/style/mixins/hairline.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/@vant/weapp/common/style/var.wxss b/app/miniprogram_npm/@vant/weapp/common/style/var.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/@vant/weapp/common/utils.d.ts b/app/miniprogram_npm/@vant/weapp/common/utils.d.ts new file mode 100644 index 0000000..a77d8c6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/utils.d.ts @@ -0,0 +1,21 @@ +/// +/// +/// +/// +/// +export { isDef } from './validator'; +export { getSystemInfoSync } from './version'; +export declare function range(num: number, min: number, max: number): number; +export declare function nextTick(cb: (...args: any[]) => void): void; +export declare function addUnit(value?: string | number): string | undefined; +export declare function requestAnimationFrame(cb: () => void): NodeJS.Timeout; +export declare function pickExclude(obj: unknown, keys: string[]): {}; +export declare function getRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise; +export declare function getAllRect(context: WechatMiniprogram.Component.TrivialInstance, selector: string): Promise; +export declare function groupSetData(context: WechatMiniprogram.Component.TrivialInstance, cb: () => void): void; +export declare function toPromise(promiseLike: Promise | unknown): Promise; +export declare function addNumber(num1: any, num2: any): number; +export declare const clamp: (num: any, min: any, max: any) => number; +export declare function getCurrentPage(): T & WechatMiniprogram.OptionalInterface & WechatMiniprogram.Page.InstanceProperties & WechatMiniprogram.Page.InstanceMethods & WechatMiniprogram.Page.Data & WechatMiniprogram.IAnyObject; +export declare const isPC: boolean; +export declare const isWxWork: boolean; diff --git a/app/miniprogram_npm/@vant/weapp/common/utils.js b/app/miniprogram_npm/@vant/weapp/common/utils.js new file mode 100644 index 0000000..1727628 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/utils.js @@ -0,0 +1,109 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isWxWork = exports.isPC = exports.getCurrentPage = exports.clamp = exports.addNumber = exports.toPromise = exports.groupSetData = exports.getAllRect = exports.getRect = exports.pickExclude = exports.requestAnimationFrame = exports.addUnit = exports.nextTick = exports.range = exports.getSystemInfoSync = exports.isDef = void 0; +var validator_1 = require("./validator"); +var version_1 = require("./version"); +var validator_2 = require("./validator"); +Object.defineProperty(exports, "isDef", { enumerable: true, get: function () { return validator_2.isDef; } }); +var version_2 = require("./version"); +Object.defineProperty(exports, "getSystemInfoSync", { enumerable: true, get: function () { return version_2.getSystemInfoSync; } }); +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +exports.range = range; +function nextTick(cb) { + if ((0, version_1.canIUseNextTick)()) { + wx.nextTick(cb); + } + else { + setTimeout(function () { + cb(); + }, 1000 / 30); + } +} +exports.nextTick = nextTick; +function addUnit(value) { + if (!(0, validator_1.isDef)(value)) { + return undefined; + } + value = String(value); + return (0, validator_1.isNumber)(value) ? "".concat(value, "px") : value; +} +exports.addUnit = addUnit; +function requestAnimationFrame(cb) { + return setTimeout(function () { + cb(); + }, 1000 / 30); +} +exports.requestAnimationFrame = requestAnimationFrame; +function pickExclude(obj, keys) { + if (!(0, validator_1.isPlainObject)(obj)) { + return {}; + } + return Object.keys(obj).reduce(function (prev, key) { + if (!keys.includes(key)) { + prev[key] = obj[key]; + } + return prev; + }, {}); +} +exports.pickExclude = pickExclude; +function getRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .select(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getRect = getRect; +function getAllRect(context, selector) { + return new Promise(function (resolve) { + wx.createSelectorQuery() + .in(context) + .selectAll(selector) + .boundingClientRect() + .exec(function (rect) { + if (rect === void 0) { rect = []; } + return resolve(rect[0]); + }); + }); +} +exports.getAllRect = getAllRect; +function groupSetData(context, cb) { + if ((0, version_1.canIUseGroupSetData)()) { + context.groupSetData(cb); + } + else { + cb(); + } +} +exports.groupSetData = groupSetData; +function toPromise(promiseLike) { + if ((0, validator_1.isPromise)(promiseLike)) { + return promiseLike; + } + return Promise.resolve(promiseLike); +} +exports.toPromise = toPromise; +// 浮点数精度处理 +function addNumber(num1, num2) { + var cardinal = Math.pow(10, 10); + return Math.round((num1 + num2) * cardinal) / cardinal; +} +exports.addNumber = addNumber; +// 限制value在[min, max]之间 +var clamp = function (num, min, max) { return Math.min(Math.max(num, min), max); }; +exports.clamp = clamp; +function getCurrentPage() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +exports.getCurrentPage = getCurrentPage; +exports.isPC = ['mac', 'windows'].includes((0, version_1.getSystemInfoSync)().platform); +// 是否企业微信 +exports.isWxWork = (0, version_1.getSystemInfoSync)().environment === 'wxwork'; diff --git a/app/miniprogram_npm/@vant/weapp/common/validator.d.ts b/app/miniprogram_npm/@vant/weapp/common/validator.d.ts new file mode 100644 index 0000000..152894a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/validator.d.ts @@ -0,0 +1,9 @@ +export declare function isFunction(val: unknown): val is Function; +export declare function isPlainObject(val: unknown): val is Record; +export declare function isPromise(val: unknown): val is Promise; +export declare function isDef(value: unknown): boolean; +export declare function isObj(x: unknown): x is Record; +export declare function isNumber(value: string): boolean; +export declare function isBoolean(value: unknown): value is boolean; +export declare function isImageUrl(url: string): boolean; +export declare function isVideoUrl(url: string): boolean; diff --git a/app/miniprogram_npm/@vant/weapp/common/validator.js b/app/miniprogram_npm/@vant/weapp/common/validator.js new file mode 100644 index 0000000..169e796 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/validator.js @@ -0,0 +1,43 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isVideoUrl = exports.isImageUrl = exports.isBoolean = exports.isNumber = exports.isObj = exports.isDef = exports.isPromise = exports.isPlainObject = exports.isFunction = void 0; +// eslint-disable-next-line @typescript-eslint/ban-types +function isFunction(val) { + return typeof val === 'function'; +} +exports.isFunction = isFunction; +function isPlainObject(val) { + return val !== null && typeof val === 'object' && !Array.isArray(val); +} +exports.isPlainObject = isPlainObject; +function isPromise(val) { + return isPlainObject(val) && isFunction(val.then) && isFunction(val.catch); +} +exports.isPromise = isPromise; +function isDef(value) { + return value !== undefined && value !== null; +} +exports.isDef = isDef; +function isObj(x) { + var type = typeof x; + return x !== null && (type === 'object' || type === 'function'); +} +exports.isObj = isObj; +function isNumber(value) { + return /^\d+(\.\d+)?$/.test(value); +} +exports.isNumber = isNumber; +function isBoolean(value) { + return typeof value === 'boolean'; +} +exports.isBoolean = isBoolean; +var IMAGE_REGEXP = /\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)/i; +var VIDEO_REGEXP = /\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv)/i; +function isImageUrl(url) { + return IMAGE_REGEXP.test(url); +} +exports.isImageUrl = isImageUrl; +function isVideoUrl(url) { + return VIDEO_REGEXP.test(url); +} +exports.isVideoUrl = isVideoUrl; diff --git a/app/miniprogram_npm/@vant/weapp/common/version.d.ts b/app/miniprogram_npm/@vant/weapp/common/version.d.ts new file mode 100644 index 0000000..3393221 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/version.d.ts @@ -0,0 +1,15 @@ +/// +interface WxWorkSystemInfo extends WechatMiniprogram.SystemInfo { + environment?: 'wxwork'; +} +interface SystemInfo extends WxWorkSystemInfo, WechatMiniprogram.SystemInfo { +} +export declare function getSystemInfoSync(): SystemInfo; +export declare function canIUseModel(): boolean; +export declare function canIUseFormFieldButton(): boolean; +export declare function canIUseAnimate(): boolean; +export declare function canIUseGroupSetData(): boolean; +export declare function canIUseNextTick(): boolean; +export declare function canIUseCanvas2d(): boolean; +export declare function canIUseGetUserProfile(): boolean; +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/common/version.js b/app/miniprogram_npm/@vant/weapp/common/version.js new file mode 100644 index 0000000..5937008 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/common/version.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.canIUseGetUserProfile = exports.canIUseCanvas2d = exports.canIUseNextTick = exports.canIUseGroupSetData = exports.canIUseAnimate = exports.canIUseFormFieldButton = exports.canIUseModel = exports.getSystemInfoSync = void 0; +var systemInfo; +function getSystemInfoSync() { + if (systemInfo == null) { + systemInfo = wx.getSystemInfoSync(); + } + return systemInfo; +} +exports.getSystemInfoSync = getSystemInfoSync; +function compareVersion(v1, v2) { + v1 = v1.split('.'); + v2 = v2.split('.'); + var len = Math.max(v1.length, v2.length); + while (v1.length < len) { + v1.push('0'); + } + while (v2.length < len) { + v2.push('0'); + } + for (var i = 0; i < len; i++) { + var num1 = parseInt(v1[i], 10); + var num2 = parseInt(v2[i], 10); + if (num1 > num2) { + return 1; + } + if (num1 < num2) { + return -1; + } + } + return 0; +} +function gte(version) { + var system = getSystemInfoSync(); + return compareVersion(system.SDKVersion, version) >= 0; +} +function canIUseModel() { + return gte('2.9.3'); +} +exports.canIUseModel = canIUseModel; +function canIUseFormFieldButton() { + return gte('2.10.3'); +} +exports.canIUseFormFieldButton = canIUseFormFieldButton; +function canIUseAnimate() { + return gte('2.9.0'); +} +exports.canIUseAnimate = canIUseAnimate; +function canIUseGroupSetData() { + return gte('2.4.0'); +} +exports.canIUseGroupSetData = canIUseGroupSetData; +function canIUseNextTick() { + try { + return wx.canIUse('nextTick'); + } + catch (e) { + return gte('2.7.1'); + } +} +exports.canIUseNextTick = canIUseNextTick; +function canIUseCanvas2d() { + return gte('2.9.0'); +} +exports.canIUseCanvas2d = canIUseCanvas2d; +function canIUseGetUserProfile() { + return !!wx.getUserProfile; +} +exports.canIUseGetUserProfile = canIUseGetUserProfile; diff --git a/app/miniprogram_npm/@vant/weapp/config-provider/index.d.ts b/app/miniprogram_npm/@vant/weapp/config-provider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/config-provider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/config-provider/index.js b/app/miniprogram_npm/@vant/weapp/config-provider/index.js new file mode 100644 index 0000000..21fb1c4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/config-provider/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + themeVars: { + type: Object, + value: {}, + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/config-provider/index.json b/app/miniprogram_npm/@vant/weapp/config-provider/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/config-provider/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/config-provider/index.wxml b/app/miniprogram_npm/@vant/weapp/config-provider/index.wxml new file mode 100644 index 0000000..3cfb461 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/config-provider/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/config-provider/index.wxs b/app/miniprogram_npm/@vant/weapp/config-provider/index.wxs new file mode 100644 index 0000000..7ca0203 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/config-provider/index.wxs @@ -0,0 +1,29 @@ +/* eslint-disable */ +var object = require('../wxs/object.wxs'); +var style = require('../wxs/style.wxs'); + +function kebabCase(word) { + var newWord = word + .replace(getRegExp("[A-Z]", 'g'), function (i) { + return '-' + i; + }) + .toLowerCase() + .replace(getRegExp("^-"), ''); + + return newWord; +} + +function mapThemeVarsToCSSVars(themeVars) { + var cssVars = {}; + object.keys(themeVars).forEach(function (key) { + var cssVarsKey = '--' + kebabCase(key); + cssVars[cssVarsKey] = themeVars[key]; + }); + + return style(cssVars); +} + +module.exports = { + kebabCase: kebabCase, + mapThemeVarsToCSSVars: mapThemeVarsToCSSVars, +}; diff --git a/app/miniprogram_npm/@vant/weapp/count-down/index.d.ts b/app/miniprogram_npm/@vant/weapp/count-down/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/count-down/index.js b/app/miniprogram_npm/@vant/weapp/count-down/index.js new file mode 100644 index 0000000..afc780b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/index.js @@ -0,0 +1,104 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("./utils"); +function simpleTick(fn) { + return setTimeout(fn, 30); +} +(0, component_1.VantComponent)({ + props: { + useSlot: Boolean, + millisecond: Boolean, + time: { + type: Number, + observer: 'reset', + }, + format: { + type: String, + value: 'HH:mm:ss', + }, + autoStart: { + type: Boolean, + value: true, + }, + }, + data: { + timeData: (0, utils_1.parseTimeData)(0), + formattedTime: '0', + }, + destroyed: function () { + clearTimeout(this.tid); + this.tid = null; + }, + methods: { + // 开始 + start: function () { + if (this.counting) { + return; + } + this.counting = true; + this.endTime = Date.now() + this.remain; + this.tick(); + }, + // 暂停 + pause: function () { + this.counting = false; + clearTimeout(this.tid); + }, + // 重置 + reset: function () { + this.pause(); + this.remain = this.data.time; + this.setRemain(this.remain); + if (this.data.autoStart) { + this.start(); + } + }, + tick: function () { + if (this.data.millisecond) { + this.microTick(); + } + else { + this.macroTick(); + } + }, + microTick: function () { + var _this = this; + this.tid = simpleTick(function () { + _this.setRemain(_this.getRemain()); + if (_this.remain !== 0) { + _this.microTick(); + } + }); + }, + macroTick: function () { + var _this = this; + this.tid = simpleTick(function () { + var remain = _this.getRemain(); + if (!(0, utils_1.isSameSecond)(remain, _this.remain) || remain === 0) { + _this.setRemain(remain); + } + if (_this.remain !== 0) { + _this.macroTick(); + } + }); + }, + getRemain: function () { + return Math.max(this.endTime - Date.now(), 0); + }, + setRemain: function (remain) { + this.remain = remain; + var timeData = (0, utils_1.parseTimeData)(remain); + if (this.data.useSlot) { + this.$emit('change', timeData); + } + this.setData({ + formattedTime: (0, utils_1.parseFormat)(this.data.format, timeData), + }); + if (remain === 0) { + this.pause(); + this.$emit('finish'); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/count-down/index.json b/app/miniprogram_npm/@vant/weapp/count-down/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/count-down/index.wxml b/app/miniprogram_npm/@vant/weapp/count-down/index.wxml new file mode 100644 index 0000000..e206e16 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/index.wxml @@ -0,0 +1,4 @@ + + + {{ formattedTime }} + diff --git a/app/miniprogram_npm/@vant/weapp/count-down/index.wxss b/app/miniprogram_npm/@vant/weapp/count-down/index.wxss new file mode 100644 index 0000000..8b957f7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-count-down{color:var(--count-down-text-color,#323233);font-size:var(--count-down-font-size,14px);line-height:var(--count-down-line-height,20px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/count-down/utils.d.ts b/app/miniprogram_npm/@vant/weapp/count-down/utils.d.ts new file mode 100644 index 0000000..876a6c1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/utils.d.ts @@ -0,0 +1,10 @@ +export type TimeData = { + days: number; + hours: number; + minutes: number; + seconds: number; + milliseconds: number; +}; +export declare function parseTimeData(time: number): TimeData; +export declare function parseFormat(format: string, timeData: TimeData): string; +export declare function isSameSecond(time1: number, time2: number): boolean; diff --git a/app/miniprogram_npm/@vant/weapp/count-down/utils.js b/app/miniprogram_npm/@vant/weapp/count-down/utils.js new file mode 100644 index 0000000..a7cfa5f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/count-down/utils.js @@ -0,0 +1,64 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.isSameSecond = exports.parseFormat = exports.parseTimeData = void 0; +function padZero(num, targetLength) { + if (targetLength === void 0) { targetLength = 2; } + var str = num + ''; + while (str.length < targetLength) { + str = '0' + str; + } + return str; +} +var SECOND = 1000; +var MINUTE = 60 * SECOND; +var HOUR = 60 * MINUTE; +var DAY = 24 * HOUR; +function parseTimeData(time) { + var days = Math.floor(time / DAY); + var hours = Math.floor((time % DAY) / HOUR); + var minutes = Math.floor((time % HOUR) / MINUTE); + var seconds = Math.floor((time % MINUTE) / SECOND); + var milliseconds = Math.floor(time % SECOND); + return { + days: days, + hours: hours, + minutes: minutes, + seconds: seconds, + milliseconds: milliseconds, + }; +} +exports.parseTimeData = parseTimeData; +function parseFormat(format, timeData) { + var days = timeData.days; + var hours = timeData.hours, minutes = timeData.minutes, seconds = timeData.seconds, milliseconds = timeData.milliseconds; + if (format.indexOf('DD') === -1) { + hours += days * 24; + } + else { + format = format.replace('DD', padZero(days)); + } + if (format.indexOf('HH') === -1) { + minutes += hours * 60; + } + else { + format = format.replace('HH', padZero(hours)); + } + if (format.indexOf('mm') === -1) { + seconds += minutes * 60; + } + else { + format = format.replace('mm', padZero(minutes)); + } + if (format.indexOf('ss') === -1) { + milliseconds += seconds * 1000; + } + else { + format = format.replace('ss', padZero(seconds)); + } + return format.replace('SSS', padZero(milliseconds, 3)); +} +exports.parseFormat = parseFormat; +function isSameSecond(time1, time2) { + return Math.floor(time1 / 1000) === Math.floor(time2 / 1000); +} +exports.isSameSecond = isSameSecond; diff --git a/app/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/datetime-picker/index.js b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.js new file mode 100644 index 0000000..e30afef --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.js @@ -0,0 +1,329 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) { + if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) { + if (ar || !(i in from)) { + if (!ar) ar = Array.prototype.slice.call(from, 0, i); + ar[i] = from[i]; + } + } + return to.concat(ar || Array.prototype.slice.call(from)); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var shared_1 = require("../picker/shared"); +var currentYear = new Date().getFullYear(); +function isValidDate(date) { + return (0, validator_1.isDef)(date) && !isNaN(new Date(date).getTime()); +} +function range(num, min, max) { + return Math.min(Math.max(num, min), max); +} +function padZero(val) { + return "00".concat(val).slice(-2); +} +function times(n, iteratee) { + var index = -1; + var result = Array(n < 0 ? 0 : n); + while (++index < n) { + result[index] = iteratee(index); + } + return result; +} +function getTrueValue(formattedValue) { + if (formattedValue === undefined) { + formattedValue = '1'; + } + while (isNaN(parseInt(formattedValue, 10))) { + formattedValue = formattedValue.slice(1); + } + return parseInt(formattedValue, 10); +} +function getMonthEndDay(year, month) { + return 32 - new Date(year, month - 1, 32).getDate(); +} +var defaultFormatter = function (type, value) { return value; }; +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { value: { + type: null, + observer: 'updateValue', + }, filter: null, type: { + type: String, + value: 'datetime', + observer: 'updateValue', + }, showToolbar: { + type: Boolean, + value: true, + }, formatter: { + type: null, + value: defaultFormatter, + }, minDate: { + type: Number, + value: new Date(currentYear - 10, 0, 1).getTime(), + observer: 'updateValue', + }, maxDate: { + type: Number, + value: new Date(currentYear + 10, 11, 31).getTime(), + observer: 'updateValue', + }, minHour: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxHour: { + type: Number, + value: 23, + observer: 'updateValue', + }, minMinute: { + type: Number, + value: 0, + observer: 'updateValue', + }, maxMinute: { + type: Number, + value: 59, + observer: 'updateValue', + } }), + data: { + innerValue: Date.now(), + columns: [], + }, + methods: { + updateValue: function () { + var _this = this; + var data = this.data; + var val = this.correctValue(data.value); + var isEqual = val === data.innerValue; + this.updateColumnValue(val).then(function () { + if (!isEqual) { + _this.$emit('input', val); + } + }); + }, + getPicker: function () { + if (this.picker == null) { + this.picker = this.selectComponent('.van-datetime-picker'); + var picker_1 = this.picker; + var setColumnValues_1 = picker_1.setColumnValues; + picker_1.setColumnValues = function () { + var args = []; + for (var _i = 0; _i < arguments.length; _i++) { + args[_i] = arguments[_i]; + } + return setColumnValues_1.apply(picker_1, __spreadArray(__spreadArray([], args, true), [false], false)); + }; + } + return this.picker; + }, + updateColumns: function () { + var _a = this.data.formatter, formatter = _a === void 0 ? defaultFormatter : _a; + var results = this.getOriginColumns().map(function (column) { return ({ + values: column.values.map(function (value) { return formatter(column.type, value); }), + }); }); + return this.set({ columns: results }); + }, + getOriginColumns: function () { + var filter = this.data.filter; + var results = this.getRanges().map(function (_a) { + var type = _a.type, range = _a.range; + var values = times(range[1] - range[0] + 1, function (index) { + var value = range[0] + index; + return type === 'year' ? "".concat(value) : padZero(value); + }); + if (filter) { + values = filter(type, values); + } + return { type: type, values: values }; + }); + return results; + }, + getRanges: function () { + var data = this.data; + if (data.type === 'time') { + return [ + { + type: 'hour', + range: [data.minHour, data.maxHour], + }, + { + type: 'minute', + range: [data.minMinute, data.maxMinute], + }, + ]; + } + var _a = this.getBoundary('max', data.innerValue), maxYear = _a.maxYear, maxDate = _a.maxDate, maxMonth = _a.maxMonth, maxHour = _a.maxHour, maxMinute = _a.maxMinute; + var _b = this.getBoundary('min', data.innerValue), minYear = _b.minYear, minDate = _b.minDate, minMonth = _b.minMonth, minHour = _b.minHour, minMinute = _b.minMinute; + var result = [ + { + type: 'year', + range: [minYear, maxYear], + }, + { + type: 'month', + range: [minMonth, maxMonth], + }, + { + type: 'day', + range: [minDate, maxDate], + }, + { + type: 'hour', + range: [minHour, maxHour], + }, + { + type: 'minute', + range: [minMinute, maxMinute], + }, + ]; + if (data.type === 'date') + result.splice(3, 2); + if (data.type === 'year-month') + result.splice(2, 3); + return result; + }, + correctValue: function (value) { + var data = this.data; + // validate value + var isDateType = data.type !== 'time'; + if (isDateType && !isValidDate(value)) { + value = data.minDate; + } + else if (!isDateType && !value) { + var minHour = data.minHour; + value = "".concat(padZero(minHour), ":00"); + } + // time type + if (!isDateType) { + var _a = value.split(':'), hour = _a[0], minute = _a[1]; + hour = padZero(range(hour, data.minHour, data.maxHour)); + minute = padZero(range(minute, data.minMinute, data.maxMinute)); + return "".concat(hour, ":").concat(minute); + } + // date type + value = Math.max(value, data.minDate); + value = Math.min(value, data.maxDate); + return value; + }, + getBoundary: function (type, innerValue) { + var _a; + var value = new Date(innerValue); + var boundary = new Date(this.data["".concat(type, "Date")]); + var year = boundary.getFullYear(); + var month = 1; + var date = 1; + var hour = 0; + var minute = 0; + if (type === 'max') { + month = 12; + date = getMonthEndDay(value.getFullYear(), value.getMonth() + 1); + hour = 23; + minute = 59; + } + if (value.getFullYear() === year) { + month = boundary.getMonth() + 1; + if (value.getMonth() + 1 === month) { + date = boundary.getDate(); + if (value.getDate() === date) { + hour = boundary.getHours(); + if (value.getHours() === hour) { + minute = boundary.getMinutes(); + } + } + } + } + return _a = {}, + _a["".concat(type, "Year")] = year, + _a["".concat(type, "Month")] = month, + _a["".concat(type, "Date")] = date, + _a["".concat(type, "Hour")] = hour, + _a["".concat(type, "Minute")] = minute, + _a; + }, + onCancel: function () { + this.$emit('cancel'); + }, + onConfirm: function () { + this.$emit('confirm', this.data.innerValue); + }, + onChange: function () { + var _this = this; + var data = this.data; + var value; + var picker = this.getPicker(); + var originColumns = this.getOriginColumns(); + if (data.type === 'time') { + var indexes = picker.getIndexes(); + value = "".concat(+originColumns[0].values[indexes[0]], ":").concat(+originColumns[1] + .values[indexes[1]]); + } + else { + var indexes = picker.getIndexes(); + var values = indexes.map(function (value, index) { return originColumns[index].values[value]; }); + var year = getTrueValue(values[0]); + var month = getTrueValue(values[1]); + var maxDate = getMonthEndDay(year, month); + var date = getTrueValue(values[2]); + if (data.type === 'year-month') { + date = 1; + } + date = date > maxDate ? maxDate : date; + var hour = 0; + var minute = 0; + if (data.type === 'datetime') { + hour = getTrueValue(values[3]); + minute = getTrueValue(values[4]); + } + value = new Date(year, month - 1, date, hour, minute); + } + value = this.correctValue(value); + this.updateColumnValue(value).then(function () { + _this.$emit('input', value); + _this.$emit('change', picker); + }); + }, + updateColumnValue: function (value) { + var _this = this; + var values = []; + var type = this.data.type; + var formatter = this.data.formatter || defaultFormatter; + var picker = this.getPicker(); + if (type === 'time') { + var pair = value.split(':'); + values = [formatter('hour', pair[0]), formatter('minute', pair[1])]; + } + else { + var date = new Date(value); + values = [ + formatter('year', "".concat(date.getFullYear())), + formatter('month', padZero(date.getMonth() + 1)), + ]; + if (type === 'date') { + values.push(formatter('day', padZero(date.getDate()))); + } + if (type === 'datetime') { + values.push(formatter('day', padZero(date.getDate())), formatter('hour', padZero(date.getHours())), formatter('minute', padZero(date.getMinutes()))); + } + } + return this.set({ innerValue: value }) + .then(function () { return _this.updateColumns(); }) + .then(function () { return picker.setValues(values); }); + }, + }, + created: function () { + var _this = this; + var innerValue = this.correctValue(this.data.value); + this.updateColumnValue(innerValue).then(function () { + _this.$emit('input', innerValue); + }); + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/datetime-picker/index.json b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.json new file mode 100644 index 0000000..a778e91 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-picker": "../picker/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml new file mode 100644 index 0000000..ade2202 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxml @@ -0,0 +1,16 @@ + diff --git a/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss new file mode 100644 index 0000000..99694d6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/datetime-picker/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/definitions/index.d.ts b/app/miniprogram_npm/@vant/weapp/definitions/index.d.ts new file mode 100644 index 0000000..c90321f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/definitions/index.d.ts @@ -0,0 +1,29 @@ +/// +interface VantComponentInstance { + parent: WechatMiniprogram.Component.TrivialInstance; + children: WechatMiniprogram.Component.TrivialInstance[]; + index: number; + $emit: (name: string, detail?: unknown, options?: WechatMiniprogram.Component.TriggerEventOption) => void; + setView: (value: Record, callback?: () => void) => void; +} +export type VantComponentOptions = { + data?: Data; + field?: boolean; + classes?: string[]; + mixins?: string[]; + props?: Props; + relation?: { + relations: Record; + mixin: string; + }; + watch?: Record any>; + methods?: Methods; + beforeCreate?: () => void; + created?: () => void; + mounted?: () => void; + destroyed?: () => void; +} & ThisType, Props, Methods> & Record>; +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/definitions/index.js b/app/miniprogram_npm/@vant/weapp/definitions/index.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/definitions/index.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/app/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts b/app/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts new file mode 100644 index 0000000..db2da5f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/dialog.d.ts @@ -0,0 +1,55 @@ +/// +/// +export type Action = 'confirm' | 'cancel' | 'overlay'; +type DialogContext = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +interface DialogOptions { + lang?: string; + show?: boolean; + title?: string; + width?: string | number | null; + zIndex?: number; + theme?: string; + context?: (() => DialogContext) | DialogContext; + message?: string; + overlay?: boolean; + selector?: string; + ariaLabel?: string; + /** + * @deprecated use custom-class instead + */ + className?: string; + customStyle?: string; + transition?: string; + /** + * @deprecated use beforeClose instead + */ + asyncClose?: boolean; + beforeClose?: null | ((action: Action) => Promise | void); + businessId?: number; + sessionFrom?: string; + overlayStyle?: string; + appParameter?: string; + messageAlign?: string; + sendMessageImg?: string; + showMessageCard?: boolean; + sendMessagePath?: string; + sendMessageTitle?: string; + confirmButtonText?: string; + cancelButtonText?: string; + showConfirmButton?: boolean; + showCancelButton?: boolean; + closeOnClickOverlay?: boolean; + confirmButtonOpenType?: string; +} +declare const Dialog: { + (options: DialogOptions): Promise; + alert(options: DialogOptions): Promise; + confirm(options: DialogOptions): Promise; + close(): void; + stopLoading(): void; + currentOptions: DialogOptions; + defaultOptions: DialogOptions; + setDefaultOptions(options: DialogOptions): void; + resetDefaultOptions(): void; +}; +export default Dialog; diff --git a/app/miniprogram_npm/@vant/weapp/dialog/dialog.js b/app/miniprogram_npm/@vant/weapp/dialog/dialog.js new file mode 100644 index 0000000..400f4f1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/dialog.js @@ -0,0 +1,92 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var queue = []; +var defaultOptions = { + show: false, + title: '', + width: null, + theme: 'default', + message: '', + zIndex: 100, + overlay: true, + selector: '#van-dialog', + className: '', + asyncClose: false, + beforeClose: null, + transition: 'scale', + customStyle: '', + messageAlign: '', + overlayStyle: '', + confirmButtonText: '确认', + cancelButtonText: '取消', + showConfirmButton: true, + showCancelButton: false, + closeOnClickOverlay: false, + confirmButtonOpenType: '', +}; +var currentOptions = __assign({}, defaultOptions); +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +var Dialog = function (options) { + options = __assign(__assign({}, currentOptions), options); + return new Promise(function (resolve, reject) { + var context = (typeof options.context === 'function' + ? options.context() + : options.context) || getContext(); + var dialog = context.selectComponent(options.selector); + delete options.context; + delete options.selector; + if (dialog) { + dialog.setData(__assign({ callback: function (action, instance) { + action === 'confirm' ? resolve(instance) : reject(instance); + } }, options)); + wx.nextTick(function () { + dialog.setData({ show: true }); + }); + queue.push(dialog); + } + else { + console.warn('未找到 van-dialog 节点,请确认 selector 及 context 是否正确'); + } + }); +}; +Dialog.alert = function (options) { return Dialog(options); }; +Dialog.confirm = function (options) { + return Dialog(__assign({ showCancelButton: true }, options)); +}; +Dialog.close = function () { + queue.forEach(function (dialog) { + dialog.close(); + }); + queue = []; +}; +Dialog.stopLoading = function () { + queue.forEach(function (dialog) { + dialog.stopLoading(); + }); +}; +Dialog.currentOptions = currentOptions; +Dialog.defaultOptions = defaultOptions; +Dialog.setDefaultOptions = function (options) { + currentOptions = __assign(__assign({}, currentOptions), options); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); + Dialog.currentOptions = currentOptions; +}; +Dialog.resetDefaultOptions(); +exports.default = Dialog; diff --git a/app/miniprogram_npm/@vant/weapp/dialog/index.d.ts b/app/miniprogram_npm/@vant/weapp/dialog/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/dialog/index.js b/app/miniprogram_npm/@vant/weapp/dialog/index.js new file mode 100644 index 0000000..9bf4601 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/index.js @@ -0,0 +1,136 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + classes: ['cancle-button-class', 'confirm-button-class'], + props: { + show: { + type: Boolean, + observer: function (show) { + !show && this.stopLoading(); + }, + }, + title: String, + message: String, + theme: { + type: String, + value: 'default', + }, + confirmButtonId: String, + className: String, + customStyle: String, + asyncClose: Boolean, + messageAlign: String, + beforeClose: null, + overlayStyle: String, + useSlot: Boolean, + useTitleSlot: Boolean, + useConfirmButtonSlot: Boolean, + useCancelButtonSlot: Boolean, + showCancelButton: Boolean, + closeOnClickOverlay: Boolean, + confirmButtonOpenType: String, + width: null, + zIndex: { + type: Number, + value: 2000, + }, + confirmButtonText: { + type: String, + value: '确认', + }, + cancelButtonText: { + type: String, + value: '取消', + }, + confirmButtonColor: { + type: String, + value: color_1.RED, + }, + cancelButtonColor: { + type: String, + value: color_1.GRAY, + }, + showConfirmButton: { + type: Boolean, + value: true, + }, + overlay: { + type: Boolean, + value: true, + }, + transition: { + type: String, + value: 'scale', + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + loading: { + confirm: false, + cancel: false, + }, + callback: (function () { }), + }, + methods: { + onConfirm: function () { + this.handleAction('confirm'); + }, + onCancel: function () { + this.handleAction('cancel'); + }, + onClickOverlay: function () { + this.close('overlay'); + }, + close: function (action) { + this.setData({ show: false }); + this.closeAction = action; + }, + onAfterLeave: function () { + var action = this.closeAction; + this.$emit('close', action); + var callback = this.data.callback; + if (callback) { + callback(action, this); + } + }, + stopLoading: function () { + this.setData({ + loading: { + confirm: false, + cancel: false, + }, + }); + }, + handleAction: function (action) { + var _a; + var _this = this; + this.$emit(action, { dialog: this }); + var _b = this.data, asyncClose = _b.asyncClose, beforeClose = _b.beforeClose; + if (!asyncClose && !beforeClose) { + this.close(action); + return; + } + this.setData((_a = {}, + _a["loading.".concat(action)] = true, + _a)); + if (beforeClose) { + (0, utils_1.toPromise)(beforeClose(action)).then(function (value) { + if (value) { + _this.close(action); + } + else { + _this.stopLoading(); + } + }); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/dialog/index.json b/app/miniprogram_npm/@vant/weapp/dialog/index.json new file mode 100644 index 0000000..43417fc --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/index.json @@ -0,0 +1,9 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-button": "../button/index", + "van-goods-action": "../goods-action/index", + "van-goods-action-button": "../goods-action-button/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/dialog/index.wxml b/app/miniprogram_npm/@vant/weapp/dialog/index.wxml new file mode 100644 index 0000000..99a6264 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/index.wxml @@ -0,0 +1,126 @@ + + + + + + {{ title }} + + + + + {{ message }} + + + + + {{ cancelButtonText }} + + + {{ confirmButtonText }} + + + + + + + + + {{ cancelButtonText }} + + + + + + + + {{ confirmButtonText }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/dialog/index.wxss b/app/miniprogram_npm/@vant/weapp/dialog/index.wxss new file mode 100644 index 0000000..507a789 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dialog/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dialog{background-color:var(--dialog-background-color,#fff);border-radius:var(--dialog-border-radius,16px);font-size:var(--dialog-font-size,16px);overflow:hidden;top:45%!important;width:var(--dialog-width,320px)}@media (max-width:321px){.van-dialog{width:var(--dialog-small-screen-width,90%)}}.van-dialog__header{font-weight:var(--dialog-header-font-weight,500);line-height:var(--dialog-header-line-height,24px);padding-top:var(--dialog-header-padding-top,24px);text-align:center}.van-dialog__header--isolated{padding:var(--dialog-header-isolated-padding,24px 0)}.van-dialog__message{-webkit-overflow-scrolling:touch;font-size:var(--dialog-message-font-size,14px);line-height:var(--dialog-message-line-height,20px);max-height:var(--dialog-message-max-height,60vh);overflow-y:auto;padding:var(--dialog-message-padding,24px);text-align:center}.van-dialog__message-text{word-wrap:break-word}.van-dialog__message--hasTitle{color:var(--dialog-has-title-message-text-color,#646566);padding-top:var(--dialog-has-title-message-padding-top,8px)}.van-dialog__message--round-button{color:#323233;padding-bottom:16px}.van-dialog__message--left{text-align:left}.van-dialog__message--right{text-align:right}.van-dialog__message--justify{text-align:justify}.van-dialog__footer{display:flex}.van-dialog__footer--round-button{padding:8px 24px 16px!important;position:relative!important}.van-dialog__button{flex:1}.van-dialog__cancel,.van-dialog__confirm{border:0!important}.van-dialog-bounce-enter{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.van-dialog-bounce-leave-active{opacity:0;transform:translate3d(-50%,-50%,0) scale(.9)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.d.ts b/app/miniprogram_npm/@vant/weapp/divider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.js b/app/miniprogram_npm/@vant/weapp/divider/index.js new file mode 100644 index 0000000..5c63844 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.js @@ -0,0 +1,14 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + dashed: Boolean, + hairline: Boolean, + contentPosition: String, + fontSize: String, + borderColor: String, + textColor: String, + customStyle: String, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.json b/app/miniprogram_npm/@vant/weapp/divider/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.wxml b/app/miniprogram_npm/@vant/weapp/divider/index.wxml new file mode 100644 index 0000000..f6a5a45 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.wxml @@ -0,0 +1,9 @@ + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.wxs b/app/miniprogram_npm/@vant/weapp/divider/index.wxs new file mode 100644 index 0000000..215b14f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style([ + { + 'border-color': data.borderColor, + color: data.textColor, + 'font-size': addUnit(data.fontSize), + }, + data.customStyle, + ]); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/divider/index.wxss b/app/miniprogram_npm/@vant/weapp/divider/index.wxss new file mode 100644 index 0000000..e91dc44 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/divider/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-divider{align-items:center;border:0 solid var(--divider-border-color,#ebedf0);color:var(--divider-text-color,#969799);display:flex;font-size:var(--divider-font-size,14px);line-height:var(--divider-line-height,24px);margin:var(--divider-margin,16px 0)}.van-divider:after,.van-divider:before{border-color:inherit;border-style:inherit;border-width:1px 0 0;box-sizing:border-box;display:block;flex:1;height:1px}.van-divider:before{content:""}.van-divider--hairline:after,.van-divider--hairline:before{transform:scaleY(.5)}.van-divider--dashed{border-style:dashed}.van-divider--center:before,.van-divider--left:before,.van-divider--right:before{margin-right:var(--divider-content-padding,16px)}.van-divider--center:after,.van-divider--left:after,.van-divider--right:after{content:"";margin-left:var(--divider-content-padding,16px)}.van-divider--left:before{max-width:var(--divider-content-left-width,10%)}.van-divider--right:after{max-width:var(--divider-content-right-width,10%)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/index.js b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.js new file mode 100644 index 0000000..826c26a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.js @@ -0,0 +1,136 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['item-title-class'], + field: true, + relation: (0, relation_1.useParent)('dropdown-menu', function () { + this.updateDataFromParent(); + }), + props: { + value: { + type: null, + observer: 'rerender', + }, + title: { + type: String, + observer: 'rerender', + }, + disabled: Boolean, + titleClass: { + type: String, + observer: 'rerender', + }, + options: { + type: Array, + value: [], + observer: 'rerender', + }, + popupStyle: String, + useBeforeToggle: { + type: Boolean, + value: false, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + data: { + transition: true, + showPopup: false, + showWrapper: false, + displayTitle: '', + safeAreaTabBar: false, + }, + methods: { + rerender: function () { + var _this = this; + wx.nextTick(function () { + var _a; + (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.updateItemListData(); + }); + }, + updateDataFromParent: function () { + if (this.parent) { + var _a = this.parent.data, overlay = _a.overlay, duration = _a.duration, activeColor = _a.activeColor, closeOnClickOverlay = _a.closeOnClickOverlay, direction = _a.direction, safeAreaTabBar = _a.safeAreaTabBar; + this.setData({ + overlay: overlay, + duration: duration, + activeColor: activeColor, + closeOnClickOverlay: closeOnClickOverlay, + direction: direction, + safeAreaTabBar: safeAreaTabBar, + }); + } + }, + onOpen: function () { + this.$emit('open'); + }, + onOpened: function () { + this.$emit('opened'); + }, + onClose: function () { + this.$emit('close'); + }, + onClosed: function () { + this.$emit('closed'); + this.setData({ showWrapper: false }); + }, + onOptionTap: function (event) { + var option = event.currentTarget.dataset.option; + var value = option.value; + var shouldEmitChange = this.data.value !== value; + this.setData({ showPopup: false, value: value }); + this.$emit('close'); + this.rerender(); + if (shouldEmitChange) { + this.$emit('change', value); + } + }, + toggle: function (show, options) { + var _this = this; + if (options === void 0) { options = {}; } + var showPopup = this.data.showPopup; + if (typeof show !== 'boolean') { + show = !showPopup; + } + if (show === showPopup) { + return; + } + this.onBeforeToggle(show).then(function (status) { + var _a; + if (!status) { + return; + } + _this.setData({ + transition: !options.immediate, + showPopup: show, + }); + if (show) { + (_a = _this.parent) === null || _a === void 0 ? void 0 : _a.getChildWrapperStyle().then(function (wrapperStyle) { + _this.setData({ wrapperStyle: wrapperStyle, showWrapper: true }); + _this.rerender(); + }); + } + else { + _this.rerender(); + } + }); + }, + onBeforeToggle: function (status) { + var _this = this; + var useBeforeToggle = this.data.useBeforeToggle; + if (!useBeforeToggle) { + return Promise.resolve(true); + } + return new Promise(function (resolve) { + _this.$emit('before-toggle', { + status: status, + callback: function (value) { return resolve(value); }, + }); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/index.json b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.json new file mode 100644 index 0000000..88d5409 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml new file mode 100644 index 0000000..63904f4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxml @@ -0,0 +1,50 @@ + + + + + + + {{ item.text }} + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss new file mode 100644 index 0000000..80505e9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-item{left:0;overflow:hidden;position:fixed;right:0}.van-dropdown-item__option{text-align:left}.van-dropdown-item__option--active .van-dropdown-item__icon,.van-dropdown-item__option--active .van-dropdown-item__title{color:var(--dropdown-menu-option-active-color,#ee0a24)}.van-dropdown-item--up{top:0}.van-dropdown-item--down{bottom:0}.van-dropdown-item__icon{display:block;line-height:inherit} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts b/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts new file mode 100644 index 0000000..774eb4c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.d.ts @@ -0,0 +1,5 @@ +export interface Option { + text: string; + value: string | number; + icon: string; +} diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.js b/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-item/shared.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.js b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.js new file mode 100644 index 0000000..aed2921 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +var ARRAY = []; +(0, component_1.VantComponent)({ + field: true, + classes: ['title-class'], + relation: (0, relation_1.useChildren)('dropdown-item', function () { + this.updateItemListData(); + }), + props: { + activeColor: { + type: String, + observer: 'updateChildrenData', + }, + overlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + zIndex: { + type: Number, + value: 10, + }, + duration: { + type: Number, + value: 200, + observer: 'updateChildrenData', + }, + direction: { + type: String, + value: 'down', + observer: 'updateChildrenData', + }, + safeAreaTabBar: { + type: Boolean, + value: false, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + observer: 'updateChildrenData', + }, + closeOnClickOutside: { + type: Boolean, + value: true, + }, + }, + data: { + itemListData: [], + }, + beforeCreate: function () { + var windowHeight = (0, utils_1.getSystemInfoSync)().windowHeight; + this.windowHeight = windowHeight; + ARRAY.push(this); + }, + destroyed: function () { + var _this = this; + ARRAY = ARRAY.filter(function (item) { return item !== _this; }); + }, + methods: { + updateItemListData: function () { + this.setData({ + itemListData: this.children.map(function (child) { return child.data; }), + }); + }, + updateChildrenData: function () { + this.children.forEach(function (child) { + child.updateDataFromParent(); + }); + }, + toggleItem: function (active) { + this.children.forEach(function (item, index) { + var showPopup = item.data.showPopup; + if (index === active) { + item.toggle(); + } + else if (showPopup) { + item.toggle(false, { immediate: true }); + } + }); + }, + close: function () { + this.children.forEach(function (child) { + child.toggle(false, { immediate: true }); + }); + }, + getChildWrapperStyle: function () { + var _this = this; + var _a = this.data, zIndex = _a.zIndex, direction = _a.direction; + return (0, utils_1.getRect)(this, '.van-dropdown-menu').then(function (rect) { + var _a = rect.top, top = _a === void 0 ? 0 : _a, _b = rect.bottom, bottom = _b === void 0 ? 0 : _b; + var offset = direction === 'down' ? bottom : _this.windowHeight - top; + var wrapperStyle = "z-index: ".concat(zIndex, ";"); + if (direction === 'down') { + wrapperStyle += "top: ".concat((0, utils_1.addUnit)(offset), ";"); + } + else { + wrapperStyle += "bottom: ".concat((0, utils_1.addUnit)(offset), ";"); + } + return wrapperStyle; + }); + }, + onTitleTap: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var child = this.children[index]; + if (!child.data.disabled) { + ARRAY.forEach(function (menuItem) { + if (menuItem && + menuItem.data.closeOnClickOutside && + menuItem !== _this) { + menuItem.close(); + } + }); + this.toggleItem(index); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.json b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml new file mode 100644 index 0000000..ec165a9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxml @@ -0,0 +1,23 @@ + + + + + + + + {{ computed.displayTitle(item) }} + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs new file mode 100644 index 0000000..6538854 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxs @@ -0,0 +1,16 @@ +/* eslint-disable */ +function displayTitle(item) { + if (item.title) { + return item.title; + } + + var match = item.options.filter(function(option) { + return option.value === item.value; + }); + var displayTitle = match.length ? match[0].text : ''; + return displayTitle; +} + +module.exports = { + displayTitle: displayTitle +}; diff --git a/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss new file mode 100644 index 0000000..dba000e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/dropdown-menu/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-dropdown-menu{background-color:var(--dropdown-menu-background-color,#fff);box-shadow:var(--dropdown-menu-box-shadow,0 2px 12px hsla(210,1%,40%,.12));display:flex;height:var(--dropdown-menu-height,50px);-webkit-user-select:none;user-select:none}.van-dropdown-menu__item{align-items:center;display:flex;flex:1;justify-content:center;min-width:0}.van-dropdown-menu__item:active{opacity:.7}.van-dropdown-menu__item--disabled:active{opacity:1}.van-dropdown-menu__item--disabled .van-dropdown-menu__title{color:var(--dropdown-menu-title-disabled-text-color,#969799)}.van-dropdown-menu__title{box-sizing:border-box;color:var(--dropdown-menu-title-text-color,#323233);font-size:var(--dropdown-menu-title-font-size,15px);line-height:var(--dropdown-menu-title-line-height,18px);max-width:100%;padding:var(--dropdown-menu-title-padding,0 24px 0 8px);position:relative}.van-dropdown-menu__title:after{border-color:transparent transparent currentcolor currentcolor;border-style:solid;border-width:3px;content:"";margin-top:-5px;opacity:.8;position:absolute;right:11px;top:50%;transform:rotate(-45deg)}.van-dropdown-menu__title--active{color:var(--dropdown-menu-title-active-text-color,#ee0a24)}.van-dropdown-menu__title--down:after{margin-top:-1px;transform:rotate(135deg)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.d.ts b/app/miniprogram_npm/@vant/weapp/empty/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.js b/app/miniprogram_npm/@vant/weapp/empty/index.js new file mode 100644 index 0000000..755e638 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.js @@ -0,0 +1,12 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + description: String, + image: { + type: String, + value: 'default', + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.json b/app/miniprogram_npm/@vant/weapp/empty/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.wxml b/app/miniprogram_npm/@vant/weapp/empty/index.wxml new file mode 100644 index 0000000..9c7b719 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.wxml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + + {{ description }} + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.wxs b/app/miniprogram_npm/@vant/weapp/empty/index.wxs new file mode 100644 index 0000000..cf92ece --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.wxs @@ -0,0 +1,15 @@ +/* eslint-disable */ +var PRESETS = ['error', 'search', 'default', 'network']; + +function imageUrl(image) { + if (PRESETS.indexOf(image) !== -1) { + return 'https://img.yzcdn.cn/vant/empty-image-' + image + '.png'; + } + + return image; +} + +module.exports = { + imageUrl: imageUrl, +}; + diff --git a/app/miniprogram_npm/@vant/weapp/empty/index.wxss b/app/miniprogram_npm/@vant/weapp/empty/index.wxss new file mode 100644 index 0000000..0fb74fe --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/empty/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-empty{align-items:center;box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;padding:32px 0}.van-empty__image{height:160px;width:160px}.van-empty__image:empty{display:none}.van-empty__image__img{height:100%;width:100%}.van-empty__image:not(:empty)+.van-empty__image{display:none}.van-empty__description{color:#969799;font-size:14px;line-height:20px;margin-top:16px;padding:0 60px}.van-empty__description:empty,.van-empty__description:not(:empty)+.van-empty__description{display:none}.van-empty__bottom{margin-top:24px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/field/index.d.ts b/app/miniprogram_npm/@vant/weapp/field/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/field/index.js b/app/miniprogram_npm/@vant/weapp/field/index.js new file mode 100644 index 0000000..ee64d5f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.js @@ -0,0 +1,152 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var props_1 = require("./props"); +(0, component_1.VantComponent)({ + field: true, + classes: ['input-class', 'right-icon-class', 'label-class'], + props: __assign(__assign(__assign(__assign({}, props_1.commonProps), props_1.inputProps), props_1.textareaProps), { size: String, icon: String, label: String, error: Boolean, center: Boolean, isLink: Boolean, leftIcon: String, rightIcon: String, autosize: null, required: Boolean, iconClass: String, clickable: Boolean, inputAlign: String, customStyle: String, errorMessage: String, arrowDirection: String, showWordLimit: Boolean, errorMessageAlign: String, readonly: { + type: Boolean, + observer: 'setShowClear', + }, clearable: { + type: Boolean, + observer: 'setShowClear', + }, clearTrigger: { + type: String, + value: 'focus', + }, border: { + type: Boolean, + value: true, + }, titleWidth: { + type: String, + value: '6.2em', + }, clearIcon: { + type: String, + value: 'clear', + }, extraEventParams: { + type: Boolean, + value: false, + } }), + data: { + focused: false, + innerValue: '', + showClear: false, + }, + watch: { + value: function (value) { + if (value !== this.value) { + this.setData({ innerValue: value }); + this.value = value; + this.setShowClear(); + } + }, + clearTrigger: function () { + this.setShowClear(); + }, + }, + created: function () { + this.value = this.data.value; + this.setData({ innerValue: this.value }); + }, + methods: { + formatValue: function (value) { + var maxlength = this.data.maxlength; + if (maxlength !== -1 && value.length > maxlength) { + return value.slice(0, maxlength); + } + return value; + }, + onInput: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + var formatValue = this.formatValue(value); + this.value = formatValue; + this.setShowClear(); + return this.emitChange(__assign(__assign({}, event.detail), { value: formatValue })); + }, + onFocus: function (event) { + this.focused = true; + this.setShowClear(); + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + this.focused = false; + this.setShowClear(); + this.$emit('blur', event.detail); + }, + onClickIcon: function () { + this.$emit('click-icon'); + }, + onClickInput: function (event) { + this.$emit('click-input', event.detail); + }, + onClear: function () { + var _this = this; + this.setData({ innerValue: '' }); + this.value = ''; + this.setShowClear(); + (0, utils_1.nextTick)(function () { + _this.emitChange({ value: '' }); + _this.$emit('clear', ''); + }); + }, + onConfirm: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + this.value = value; + this.setShowClear(); + this.$emit('confirm', value); + }, + setValue: function (value) { + this.value = value; + this.setShowClear(); + if (value === '') { + this.setData({ innerValue: '' }); + } + this.emitChange({ value: value }); + }, + onLineChange: function (event) { + this.$emit('linechange', event.detail); + }, + onKeyboardHeightChange: function (event) { + this.$emit('keyboardheightchange', event.detail); + }, + onBindNicknameReview: function (event) { + this.$emit('nicknamereview', event.detail); + }, + emitChange: function (detail) { + var extraEventParams = this.data.extraEventParams; + this.setData({ value: detail.value }); + var result; + var data = extraEventParams + ? __assign(__assign({}, detail), { callback: function (data) { + result = data; + } }) : detail.value; + this.$emit('input', data); + this.$emit('change', data); + return result; + }, + setShowClear: function () { + var _a = this.data, clearable = _a.clearable, readonly = _a.readonly, clearTrigger = _a.clearTrigger; + var _b = this, focused = _b.focused, value = _b.value; + var showClear = false; + if (clearable && !readonly) { + var hasValue = !!value; + var trigger = clearTrigger === 'always' || (clearTrigger === 'focus' && focused); + showClear = hasValue && trigger; + } + this.setView({ showClear: showClear }); + }, + noop: function () { }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/field/index.json b/app/miniprogram_npm/@vant/weapp/field/index.json new file mode 100644 index 0000000..5906c50 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index", + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/field/index.wxml b/app/miniprogram_npm/@vant/weapp/field/index.wxml new file mode 100644 index 0000000..6018993 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.wxml @@ -0,0 +1,56 @@ + + + + + + + {{ label }} + + + + + + + + + + + + + + + + + + + + + {{ value.length >= maxlength ? maxlength : value.length }}/{{ maxlength }} + + + {{ errorMessage }} + + diff --git a/app/miniprogram_npm/@vant/weapp/field/index.wxs b/app/miniprogram_npm/@vant/weapp/field/index.wxs new file mode 100644 index 0000000..78575b9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function inputStyle(autosize) { + if (autosize && autosize.constructor === 'Object') { + return style({ + 'min-height': addUnit(autosize.minHeight), + 'max-height': addUnit(autosize.maxHeight), + }); + } + + return ''; +} + +module.exports = { + inputStyle: inputStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/field/index.wxss b/app/miniprogram_npm/@vant/weapp/field/index.wxss new file mode 100644 index 0000000..5f7d306 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-field{--cell-icon-size:var(--field-icon-size,16px)}.van-field__label{color:var(--field-label-color,#646566)}.van-field__label--disabled{color:var(--field-disabled-text-color,#c8c9cc)}.van-field__body{align-items:center;display:flex}.van-field__body--textarea{box-sizing:border-box;line-height:1.2em;min-height:var(--cell-line-height,24px);padding:3.6px 0}.van-field__control:empty+.van-field__control{display:block}.van-field__control{background-color:initial;border:0;box-sizing:border-box;color:var(--field-input-text-color,#323233);display:none;height:var(--cell-line-height,24px);line-height:inherit;margin:0;min-height:var(--cell-line-height,24px);padding:0;position:relative;resize:none;text-align:left;width:100%}.van-field__control:empty{display:none}.van-field__control--textarea{height:var(--field-text-area-min-height,18px);min-height:var(--field-text-area-min-height,18px)}.van-field__control--error{color:var(--field-input-error-text-color,#ee0a24)}.van-field__control--disabled{background-color:initial;color:var(--field-input-disabled-text-color,#c8c9cc);opacity:1}.van-field__control--center{text-align:center}.van-field__control--right{text-align:right}.van-field__control--custom{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__placeholder{color:var(--field-placeholder-text-color,#c8c9cc);left:0;pointer-events:none;position:absolute;right:0;top:0}.van-field__placeholder--error{color:var(--field-error-message-color,#ee0a24)}.van-field__icon-root{align-items:center;display:flex;min-height:var(--cell-line-height,24px)}.van-field__clear-root,.van-field__icon-container{line-height:inherit;margin-right:calc(var(--padding-xs, 8px)*-1);padding:0 var(--padding-xs,8px);vertical-align:middle}.van-field__button,.van-field__clear-root,.van-field__icon-container{flex-shrink:0}.van-field__clear-root{color:var(--field-clear-icon-color,#c8c9cc);font-size:var(--field-clear-icon-size,16px)}.van-field__icon-container{color:var(--field-icon-container-color,#969799);font-size:var(--field-icon-size,16px)}.van-field__icon-container:empty{display:none}.van-field__button{padding-left:var(--padding-xs,8px)}.van-field__button:empty{display:none}.van-field__error-message{color:var(--field-error-message-color,#ee0a24);display:block;font-size:var(--field-error-message-text-font-size,12px);text-align:left}.van-field__error-message--center{text-align:center}.van-field__error-message--right{text-align:right}.van-field__word-limit{color:var(--field-word-limit-color,#646566);font-size:var(--field-word-limit-font-size,12px);line-height:var(--field-word-limit-line-height,16px);margin-top:var(--padding-base,4px);text-align:right}.van-field__word-num{display:inline}.van-field__word-num--full{color:var(--field-word-num-full-color,#ee0a24)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/field/input.wxml b/app/miniprogram_npm/@vant/weapp/field/input.wxml new file mode 100644 index 0000000..86b288b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/input.wxml @@ -0,0 +1,31 @@ + + diff --git a/app/miniprogram_npm/@vant/weapp/field/props.d.ts b/app/miniprogram_npm/@vant/weapp/field/props.d.ts new file mode 100644 index 0000000..5cd130a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/props.d.ts @@ -0,0 +1,4 @@ +/// +export declare const commonProps: WechatMiniprogram.Component.PropertyOption; +export declare const inputProps: WechatMiniprogram.Component.PropertyOption; +export declare const textareaProps: WechatMiniprogram.Component.PropertyOption; diff --git a/app/miniprogram_npm/@vant/weapp/field/props.js b/app/miniprogram_npm/@vant/weapp/field/props.js new file mode 100644 index 0000000..5ec647b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/props.js @@ -0,0 +1,59 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.textareaProps = exports.inputProps = exports.commonProps = void 0; +exports.commonProps = { + value: String, + placeholder: String, + placeholderStyle: String, + placeholderClass: String, + disabled: Boolean, + maxlength: { + type: Number, + value: -1, + }, + cursorSpacing: { + type: Number, + value: 50, + }, + autoFocus: Boolean, + focus: Boolean, + cursor: { + type: Number, + value: -1, + }, + selectionStart: { + type: Number, + value: -1, + }, + selectionEnd: { + type: Number, + value: -1, + }, + adjustPosition: { + type: Boolean, + value: true, + }, + holdKeyboard: Boolean, +}; +exports.inputProps = { + type: { + type: String, + value: 'text', + }, + password: Boolean, + confirmType: String, + confirmHold: Boolean, + alwaysEmbed: Boolean, +}; +exports.textareaProps = { + autoHeight: Boolean, + fixed: Boolean, + showConfirmBar: { + type: Boolean, + value: true, + }, + disableDefaultPadding: { + type: Boolean, + value: true, + }, +}; diff --git a/app/miniprogram_npm/@vant/weapp/field/textarea.wxml b/app/miniprogram_npm/@vant/weapp/field/textarea.wxml new file mode 100644 index 0000000..945d03e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/textarea.wxml @@ -0,0 +1,32 @@ + + + diff --git a/app/miniprogram_npm/@vant/weapp/field/types.d.ts b/app/miniprogram_npm/@vant/weapp/field/types.d.ts new file mode 100644 index 0000000..357ccbe --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/types.d.ts @@ -0,0 +1,8 @@ +export interface InputDetails { + /** 输入框内容 */ + value: string; + /** 光标位置 */ + cursor?: number; + /** keyCode 为键值 (目前工具还不支持返回keyCode参数) `2.1.0` 起支持 */ + keyCode?: number; +} diff --git a/app/miniprogram_npm/@vant/weapp/field/types.js b/app/miniprogram_npm/@vant/weapp/field/types.js new file mode 100644 index 0000000..c8ad2e5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/field/types.js @@ -0,0 +1,2 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-button/index.js b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.js new file mode 100644 index 0000000..8179e89 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.js @@ -0,0 +1,46 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var button_1 = require("../mixins/button"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + mixins: [link_1.link, button_1.button], + relation: (0, relation_1.useParent)('goods-action'), + props: { + text: String, + color: String, + size: { + type: String, + value: 'normal', + }, + loading: Boolean, + disabled: Boolean, + plain: Boolean, + type: { + type: String, + value: 'danger', + }, + customStyle: { + type: String, + value: '', + }, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + updateStyle: function () { + if (this.parent == null) { + return; + } + var index = this.index; + var _a = this.parent.children, children = _a === void 0 ? [] : _a; + this.setData({ + isFirst: index === 0, + isLast: index === children.length - 1, + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-button/index.json b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.json new file mode 100644 index 0000000..b567686 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-button": "../button/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml new file mode 100644 index 0000000..4530ab8 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxml @@ -0,0 +1,35 @@ + + + {{ text }} + + diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss new file mode 100644 index 0000000..759a1d9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-button/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{flex:1}.van-goods-action-button{--button-warning-background-color:var(--goods-action-button-warning-color,linear-gradient(to right,#ffd01e,#ff8917));--button-danger-background-color:var(--goods-action-button-danger-color,linear-gradient(to right,#ff6034,#ee0a24));--button-default-height:var(--goods-action-button-height,40px);--button-line-height:var(--goods-action-button-line-height,20px);--button-plain-background-color:var(--goods-action-button-plain-color,#fff);--button-border-width:0;display:block}.van-goods-action-button--first{--button-border-radius:999px 0 0 var(--goods-action-button-border-radius,999px);margin-left:5px}.van-goods-action-button--last{--button-border-radius:0 999px var(--goods-action-button-border-radius,999px) 0;margin-right:5px}.van-goods-action-button--first.van-goods-action-button--last{--button-border-radius:var(--goods-action-button-border-radius,999px)}.van-goods-action-button--plain{--button-border-width:1px}.van-goods-action-button__inner{font-weight:var(--font-weight-bold,500)!important;width:100%}@media (max-width:321px){.van-goods-action-button{font-size:13px}} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.js b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.js new file mode 100644 index 0000000..828e1f5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.js @@ -0,0 +1,29 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + classes: ['icon-class', 'text-class', 'info-class'], + mixins: [link_1.link, button_1.button], + props: { + text: String, + dot: Boolean, + info: String, + icon: String, + size: String, + color: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + disabled: Boolean, + loading: Boolean, + }, + methods: { + onClick: function (event) { + this.$emit('click', event.detail); + this.jumpLink(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.json b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.json new file mode 100644 index 0000000..93bfe8a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-button": "../button/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml new file mode 100644 index 0000000..30c1a8c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxml @@ -0,0 +1,41 @@ + + + + + + {{ text }} + diff --git a/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss new file mode 100644 index 0000000..6e4758d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action-icon/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-goods-action-icon{border:none!important;color:var(--goods-action-icon-text-color,#646566)!important;display:flex!important;flex-direction:column;font-size:var(--goods-action-icon-font-size,10px)!important;height:var(--goods-action-icon-height,50px)!important;justify-content:center!important;line-height:1!important;min-width:var(--goods-action-icon-width,48px)}.van-goods-action-icon__icon{color:var(--goods-action-icon-color,#323233);display:flex;font-size:var(--goods-action-icon-size,18px);margin:0 auto 5px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/goods-action/index.d.ts b/app/miniprogram_npm/@vant/weapp/goods-action/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/goods-action/index.js b/app/miniprogram_npm/@vant/weapp/goods-action/index.js new file mode 100644 index 0000000..e49bcbc --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action/index.js @@ -0,0 +1,17 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('goods-action-button', function () { + this.children.forEach(function (item) { + item.updateStyle(); + }); + }), + props: { + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/goods-action/index.json b/app/miniprogram_npm/@vant/weapp/goods-action/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/goods-action/index.wxml b/app/miniprogram_npm/@vant/weapp/goods-action/index.wxml new file mode 100644 index 0000000..569450c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/goods-action/index.wxss b/app/miniprogram_npm/@vant/weapp/goods-action/index.wxss new file mode 100644 index 0000000..7793e77 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/goods-action/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-goods-action{align-items:center;background-color:var(--goods-action-background-color,#fff);bottom:0;box-sizing:initial;display:flex;height:var(--goods-action-height,50px);left:0;position:fixed;right:0}.van-goods-action--safe{padding-bottom:env(safe-area-inset-bottom)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.d.ts b/app/miniprogram_npm/@vant/weapp/grid-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.js b/app/miniprogram_npm/@vant/weapp/grid-item/index.js new file mode 100644 index 0000000..a7d47a2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var link_1 = require("../mixins/link"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('grid'), + classes: ['content-class', 'icon-class', 'text-class'], + mixins: [link_1.link], + props: { + icon: String, + iconColor: String, + iconPrefix: { + type: String, + value: 'van-icon', + }, + dot: Boolean, + info: null, + badge: null, + text: String, + useSlot: Boolean, + }, + data: { + viewStyle: '', + }, + mounted: function () { + this.updateStyle(); + }, + methods: { + updateStyle: function () { + if (!this.parent) { + return; + } + var _a = this.parent, data = _a.data, children = _a.children; + var columnNum = data.columnNum, border = data.border, square = data.square, gutter = data.gutter, clickable = data.clickable, center = data.center, direction = data.direction, reverse = data.reverse, iconSize = data.iconSize; + this.setData({ + center: center, + border: border, + square: square, + gutter: gutter, + clickable: clickable, + direction: direction, + reverse: reverse, + iconSize: iconSize, + index: children.indexOf(this), + columnNum: columnNum, + }); + }, + onClick: function () { + this.$emit('click'); + this.jumpLink(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.json b/app/miniprogram_npm/@vant/weapp/grid-item/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.wxml b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxml new file mode 100644 index 0000000..e95087d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + + {{ text }} + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.wxs b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxs new file mode 100644 index 0000000..2cfe37d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxs @@ -0,0 +1,32 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function wrapperStyle(data) { + var width = 100 / data.columnNum + '%'; + + return style({ + width: width, + 'padding-top': data.square ? width : null, + 'padding-right': addUnit(data.gutter), + 'margin-top': + data.index >= data.columnNum && !data.square + ? addUnit(data.gutter) + : null, + }); +} + +function contentStyle(data) { + return data.square + ? style({ + right: addUnit(data.gutter), + bottom: addUnit(data.gutter), + height: 'auto', + }) + : ''; +} + +module.exports = { + wrapperStyle: wrapperStyle, + contentStyle: contentStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/grid-item/index.wxss b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxss new file mode 100644 index 0000000..acaea84 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-grid-item{box-sizing:border-box;float:left;position:relative}.van-grid-item--square{height:0}.van-grid-item__content{background-color:var(--grid-item-content-background-color,#fff);box-sizing:border-box;display:flex;flex-direction:column;height:100%;padding:var(--grid-item-content-padding,16px 8px)}.van-grid-item__content:after{border-width:0 1px 1px 0;z-index:1}.van-grid-item__content--surround:after{border-width:1px}.van-grid-item__content--center{align-items:center;justify-content:center}.van-grid-item__content--square{left:0;position:absolute;right:0;top:0}.van-grid-item__content--horizontal{flex-direction:row}.van-grid-item__content--horizontal .van-grid-item__text{margin:0 0 0 8px}.van-grid-item__content--reverse{flex-direction:column-reverse}.van-grid-item__content--reverse .van-grid-item__text{margin:0 0 8px}.van-grid-item__content--horizontal.van-grid-item__content--reverse{flex-direction:row-reverse}.van-grid-item__content--horizontal.van-grid-item__content--reverse .van-grid-item__text{margin:0 8px 0 0}.van-grid-item__content--clickable:active{background-color:var(--grid-item-content-active-color,#f2f3f5)}.van-grid-item__icon{align-items:center;display:flex;font-size:var(--grid-item-icon-size,26px);height:var(--grid-item-icon-size,26px)}.van-grid-item__text{word-wrap:break-word;color:var(--grid-item-text-color,#646566);font-size:var(--grid-item-text-font-size,12px)}.van-grid-item__icon+.van-grid-item__text{margin-top:8px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.d.ts b/app/miniprogram_npm/@vant/weapp/grid/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.js b/app/miniprogram_npm/@vant/weapp/grid/index.js new file mode 100644 index 0000000..28d14f4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.js @@ -0,0 +1,57 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('grid-item'), + props: { + square: { + type: Boolean, + observer: 'updateChildren', + }, + gutter: { + type: null, + value: 0, + observer: 'updateChildren', + }, + clickable: { + type: Boolean, + observer: 'updateChildren', + }, + columnNum: { + type: Number, + value: 4, + observer: 'updateChildren', + }, + center: { + type: Boolean, + value: true, + observer: 'updateChildren', + }, + border: { + type: Boolean, + value: true, + observer: 'updateChildren', + }, + direction: { + type: String, + observer: 'updateChildren', + }, + iconSize: { + type: String, + observer: 'updateChildren', + }, + reverse: { + type: Boolean, + value: false, + observer: 'updateChildren', + }, + }, + methods: { + updateChildren: function () { + this.children.forEach(function (child) { + child.updateStyle(); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.json b/app/miniprogram_npm/@vant/weapp/grid/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.wxml b/app/miniprogram_npm/@vant/weapp/grid/index.wxml new file mode 100644 index 0000000..2e4118f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.wxml @@ -0,0 +1,8 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.wxs b/app/miniprogram_npm/@vant/weapp/grid/index.wxs new file mode 100644 index 0000000..cd3b1bd --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + 'padding-left': addUnit(data.gutter), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/grid/index.wxss b/app/miniprogram_npm/@vant/weapp/grid/index.wxss new file mode 100644 index 0000000..e347440 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/grid/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-grid{box-sizing:border-box;overflow:hidden;position:relative} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.d.ts b/app/miniprogram_npm/@vant/weapp/icon/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.js b/app/miniprogram_npm/@vant/weapp/icon/index.js new file mode 100644 index 0000000..6758092 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['info-class'], + props: { + dot: Boolean, + info: null, + size: null, + color: String, + customStyle: String, + classPrefix: { + type: String, + value: 'van-icon', + }, + name: String, + }, + methods: { + onClick: function () { + this.$emit('click'); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.json b/app/miniprogram_npm/@vant/weapp/icon/index.json new file mode 100644 index 0000000..bf0ebe0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.wxml b/app/miniprogram_npm/@vant/weapp/icon/index.wxml new file mode 100644 index 0000000..91b47f9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.wxml @@ -0,0 +1,20 @@ + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.wxs b/app/miniprogram_npm/@vant/weapp/icon/index.wxs new file mode 100644 index 0000000..a906f76 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.wxs @@ -0,0 +1,43 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function isImage(name) { + return name.indexOf('/') !== -1; +} + +function rootClass(data) { + var classes = ['custom-class']; + + if (data.classPrefix !== 'van-icon') { + classes.push('van-icon--custom') + } + + if (data.classPrefix != null) { + classes.push(data.classPrefix); + } + + if (isImage(data.name)) { + classes.push('van-icon--image'); + } else if (data.classPrefix != null) { + classes.push(data.classPrefix + '-' + data.name); + } + + return classes.join(' '); +} + +function rootStyle(data) { + return style([ + { + color: data.color, + 'font-size': addUnit(data.size), + }, + data.customStyle, + ]); +} + +module.exports = { + isImage: isImage, + rootClass: rootClass, + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/icon/index.wxss b/app/miniprogram_npm/@vant/weapp/icon/index.wxss new file mode 100644 index 0000000..feb3d7e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/icon/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-icon{text-rendering:auto;-webkit-font-smoothing:antialiased;font:normal normal normal 14px/1 vant-icon;font:normal normal normal 14px/1 var(--van-icon-font-family,"vant-icon");font-size:inherit;position:relative}.van-icon,.van-icon:before{display:inline-block}.van-icon-contact:before{content:"\e753"}.van-icon-notes:before{content:"\e63c"}.van-icon-records:before{content:"\e63d"}.van-icon-cash-back-record:before{content:"\e63e"}.van-icon-newspaper:before{content:"\e63f"}.van-icon-discount:before{content:"\e640"}.van-icon-completed:before{content:"\e641"}.van-icon-user:before{content:"\e642"}.van-icon-description:before{content:"\e643"}.van-icon-list-switch:before{content:"\e6ad"}.van-icon-list-switching:before{content:"\e65a"}.van-icon-link-o:before{content:"\e751"}.van-icon-miniprogram-o:before{content:"\e752"}.van-icon-qq:before{content:"\e74e"}.van-icon-wechat-moments:before{content:"\e74f"}.van-icon-weibo:before{content:"\e750"}.van-icon-cash-o:before{content:"\e74d"}.van-icon-guide-o:before{content:"\e74c"}.van-icon-invitation:before{content:"\e6d6"}.van-icon-shield-o:before{content:"\e74b"}.van-icon-exchange:before{content:"\e6af"}.van-icon-eye:before{content:"\e6b0"}.van-icon-enlarge:before{content:"\e6b1"}.van-icon-expand-o:before{content:"\e6b2"}.van-icon-eye-o:before{content:"\e6b3"}.van-icon-expand:before{content:"\e6b4"}.van-icon-filter-o:before{content:"\e6b5"}.van-icon-fire:before{content:"\e6b6"}.van-icon-fail:before{content:"\e6b7"}.van-icon-failure:before{content:"\e6b8"}.van-icon-fire-o:before{content:"\e6b9"}.van-icon-flag-o:before{content:"\e6ba"}.van-icon-font:before{content:"\e6bb"}.van-icon-font-o:before{content:"\e6bc"}.van-icon-gem-o:before{content:"\e6bd"}.van-icon-flower-o:before{content:"\e6be"}.van-icon-gem:before{content:"\e6bf"}.van-icon-gift-card:before{content:"\e6c0"}.van-icon-friends:before{content:"\e6c1"}.van-icon-friends-o:before{content:"\e6c2"}.van-icon-gold-coin:before{content:"\e6c3"}.van-icon-gold-coin-o:before{content:"\e6c4"}.van-icon-good-job-o:before{content:"\e6c5"}.van-icon-gift:before{content:"\e6c6"}.van-icon-gift-o:before{content:"\e6c7"}.van-icon-gift-card-o:before{content:"\e6c8"}.van-icon-good-job:before{content:"\e6c9"}.van-icon-home-o:before{content:"\e6ca"}.van-icon-goods-collect:before{content:"\e6cb"}.van-icon-graphic:before{content:"\e6cc"}.van-icon-goods-collect-o:before{content:"\e6cd"}.van-icon-hot-o:before{content:"\e6ce"}.van-icon-info:before{content:"\e6cf"}.van-icon-hotel-o:before{content:"\e6d0"}.van-icon-info-o:before{content:"\e6d1"}.van-icon-hot-sale-o:before{content:"\e6d2"}.van-icon-hot:before{content:"\e6d3"}.van-icon-like:before{content:"\e6d4"}.van-icon-idcard:before{content:"\e6d5"}.van-icon-like-o:before{content:"\e6d7"}.van-icon-hot-sale:before{content:"\e6d8"}.van-icon-location-o:before{content:"\e6d9"}.van-icon-location:before{content:"\e6da"}.van-icon-label:before{content:"\e6db"}.van-icon-lock:before{content:"\e6dc"}.van-icon-label-o:before{content:"\e6dd"}.van-icon-map-marked:before{content:"\e6de"}.van-icon-logistics:before{content:"\e6df"}.van-icon-manager:before{content:"\e6e0"}.van-icon-more:before{content:"\e6e1"}.van-icon-live:before{content:"\e6e2"}.van-icon-manager-o:before{content:"\e6e3"}.van-icon-medal:before{content:"\e6e4"}.van-icon-more-o:before{content:"\e6e5"}.van-icon-music-o:before{content:"\e6e6"}.van-icon-music:before{content:"\e6e7"}.van-icon-new-arrival-o:before{content:"\e6e8"}.van-icon-medal-o:before{content:"\e6e9"}.van-icon-new-o:before{content:"\e6ea"}.van-icon-free-postage:before{content:"\e6eb"}.van-icon-newspaper-o:before{content:"\e6ec"}.van-icon-new-arrival:before{content:"\e6ed"}.van-icon-minus:before{content:"\e6ee"}.van-icon-orders-o:before{content:"\e6ef"}.van-icon-new:before{content:"\e6f0"}.van-icon-paid:before{content:"\e6f1"}.van-icon-notes-o:before{content:"\e6f2"}.van-icon-other-pay:before{content:"\e6f3"}.van-icon-pause-circle:before{content:"\e6f4"}.van-icon-pause:before{content:"\e6f5"}.van-icon-pause-circle-o:before{content:"\e6f6"}.van-icon-peer-pay:before{content:"\e6f7"}.van-icon-pending-payment:before{content:"\e6f8"}.van-icon-passed:before{content:"\e6f9"}.van-icon-plus:before{content:"\e6fa"}.van-icon-phone-circle-o:before{content:"\e6fb"}.van-icon-phone-o:before{content:"\e6fc"}.van-icon-printer:before{content:"\e6fd"}.van-icon-photo-fail:before{content:"\e6fe"}.van-icon-phone:before{content:"\e6ff"}.van-icon-photo-o:before{content:"\e700"}.van-icon-play-circle:before{content:"\e701"}.van-icon-play:before{content:"\e702"}.van-icon-phone-circle:before{content:"\e703"}.van-icon-point-gift-o:before{content:"\e704"}.van-icon-point-gift:before{content:"\e705"}.van-icon-play-circle-o:before{content:"\e706"}.van-icon-shrink:before{content:"\e707"}.van-icon-photo:before{content:"\e708"}.van-icon-qr:before{content:"\e709"}.van-icon-qr-invalid:before{content:"\e70a"}.van-icon-question-o:before{content:"\e70b"}.van-icon-revoke:before{content:"\e70c"}.van-icon-replay:before{content:"\e70d"}.van-icon-service:before{content:"\e70e"}.van-icon-question:before{content:"\e70f"}.van-icon-search:before{content:"\e710"}.van-icon-refund-o:before{content:"\e711"}.van-icon-service-o:before{content:"\e712"}.van-icon-scan:before{content:"\e713"}.van-icon-share:before{content:"\e714"}.van-icon-send-gift-o:before{content:"\e715"}.van-icon-share-o:before{content:"\e716"}.van-icon-setting:before{content:"\e717"}.van-icon-points:before{content:"\e718"}.van-icon-photograph:before{content:"\e719"}.van-icon-shop:before{content:"\e71a"}.van-icon-shop-o:before{content:"\e71b"}.van-icon-shop-collect-o:before{content:"\e71c"}.van-icon-shop-collect:before{content:"\e71d"}.van-icon-smile:before{content:"\e71e"}.van-icon-shopping-cart-o:before{content:"\e71f"}.van-icon-sign:before{content:"\e720"}.van-icon-sort:before{content:"\e721"}.van-icon-star-o:before{content:"\e722"}.van-icon-smile-comment-o:before{content:"\e723"}.van-icon-stop:before{content:"\e724"}.van-icon-stop-circle-o:before{content:"\e725"}.van-icon-smile-o:before{content:"\e726"}.van-icon-star:before{content:"\e727"}.van-icon-success:before{content:"\e728"}.van-icon-stop-circle:before{content:"\e729"}.van-icon-records-o:before{content:"\e72a"}.van-icon-shopping-cart:before{content:"\e72b"}.van-icon-tosend:before{content:"\e72c"}.van-icon-todo-list:before{content:"\e72d"}.van-icon-thumb-circle-o:before{content:"\e72e"}.van-icon-thumb-circle:before{content:"\e72f"}.van-icon-umbrella-circle:before{content:"\e730"}.van-icon-underway:before{content:"\e731"}.van-icon-upgrade:before{content:"\e732"}.van-icon-todo-list-o:before{content:"\e733"}.van-icon-tv-o:before{content:"\e734"}.van-icon-underway-o:before{content:"\e735"}.van-icon-user-o:before{content:"\e736"}.van-icon-vip-card-o:before{content:"\e737"}.van-icon-vip-card:before{content:"\e738"}.van-icon-send-gift:before{content:"\e739"}.van-icon-wap-home:before{content:"\e73a"}.van-icon-wap-nav:before{content:"\e73b"}.van-icon-volume-o:before{content:"\e73c"}.van-icon-video:before{content:"\e73d"}.van-icon-wap-home-o:before{content:"\e73e"}.van-icon-volume:before{content:"\e73f"}.van-icon-warning:before{content:"\e740"}.van-icon-weapp-nav:before{content:"\e741"}.van-icon-wechat-pay:before{content:"\e742"}.van-icon-warning-o:before{content:"\e743"}.van-icon-wechat:before{content:"\e744"}.van-icon-setting-o:before{content:"\e745"}.van-icon-youzan-shield:before{content:"\e746"}.van-icon-warn-o:before{content:"\e747"}.van-icon-smile-comment:before{content:"\e748"}.van-icon-user-circle-o:before{content:"\e749"}.van-icon-video-o:before{content:"\e74a"}.van-icon-add-square:before{content:"\e65c"}.van-icon-add:before{content:"\e65d"}.van-icon-arrow-down:before{content:"\e65e"}.van-icon-arrow-up:before{content:"\e65f"}.van-icon-arrow:before{content:"\e660"}.van-icon-after-sale:before{content:"\e661"}.van-icon-add-o:before{content:"\e662"}.van-icon-alipay:before{content:"\e663"}.van-icon-ascending:before{content:"\e664"}.van-icon-apps-o:before{content:"\e665"}.van-icon-aim:before{content:"\e666"}.van-icon-award:before{content:"\e667"}.van-icon-arrow-left:before{content:"\e668"}.van-icon-award-o:before{content:"\e669"}.van-icon-audio:before{content:"\e66a"}.van-icon-bag-o:before{content:"\e66b"}.van-icon-balance-list:before{content:"\e66c"}.van-icon-back-top:before{content:"\e66d"}.van-icon-bag:before{content:"\e66e"}.van-icon-balance-pay:before{content:"\e66f"}.van-icon-balance-o:before{content:"\e670"}.van-icon-bar-chart-o:before{content:"\e671"}.van-icon-bars:before{content:"\e672"}.van-icon-balance-list-o:before{content:"\e673"}.van-icon-birthday-cake-o:before{content:"\e674"}.van-icon-bookmark:before{content:"\e675"}.van-icon-bill:before{content:"\e676"}.van-icon-bell:before{content:"\e677"}.van-icon-browsing-history-o:before{content:"\e678"}.van-icon-browsing-history:before{content:"\e679"}.van-icon-bookmark-o:before{content:"\e67a"}.van-icon-bulb-o:before{content:"\e67b"}.van-icon-bullhorn-o:before{content:"\e67c"}.van-icon-bill-o:before{content:"\e67d"}.van-icon-calendar-o:before{content:"\e67e"}.van-icon-brush-o:before{content:"\e67f"}.van-icon-card:before{content:"\e680"}.van-icon-cart-o:before{content:"\e681"}.van-icon-cart-circle:before{content:"\e682"}.van-icon-cart-circle-o:before{content:"\e683"}.van-icon-cart:before{content:"\e684"}.van-icon-cash-on-deliver:before{content:"\e685"}.van-icon-cash-back-record-o:before{content:"\e686"}.van-icon-cashier-o:before{content:"\e687"}.van-icon-chart-trending-o:before{content:"\e688"}.van-icon-certificate:before{content:"\e689"}.van-icon-chat:before{content:"\e68a"}.van-icon-clear:before{content:"\e68b"}.van-icon-chat-o:before{content:"\e68c"}.van-icon-checked:before{content:"\e68d"}.van-icon-clock:before{content:"\e68e"}.van-icon-clock-o:before{content:"\e68f"}.van-icon-close:before{content:"\e690"}.van-icon-closed-eye:before{content:"\e691"}.van-icon-circle:before{content:"\e692"}.van-icon-cluster-o:before{content:"\e693"}.van-icon-column:before{content:"\e694"}.van-icon-comment-circle-o:before{content:"\e695"}.van-icon-cluster:before{content:"\e696"}.van-icon-comment:before{content:"\e697"}.van-icon-comment-o:before{content:"\e698"}.van-icon-comment-circle:before{content:"\e699"}.van-icon-completed-o:before{content:"\e69a"}.van-icon-credit-pay:before{content:"\e69b"}.van-icon-coupon:before{content:"\e69c"}.van-icon-debit-pay:before{content:"\e69d"}.van-icon-coupon-o:before{content:"\e69e"}.van-icon-contact-o:before{content:"\e69f"}.van-icon-descending:before{content:"\e6a0"}.van-icon-desktop-o:before{content:"\e6a1"}.van-icon-diamond-o:before{content:"\e6a2"}.van-icon-description-o:before{content:"\e6a3"}.van-icon-delete:before{content:"\e6a4"}.van-icon-diamond:before{content:"\e6a5"}.van-icon-delete-o:before{content:"\e6a6"}.van-icon-cross:before{content:"\e6a7"}.van-icon-edit:before{content:"\e6a8"}.van-icon-ellipsis:before{content:"\e6a9"}.van-icon-down:before{content:"\e6aa"}.van-icon-discount-o:before{content:"\e6ab"}.van-icon-ecard-pay:before{content:"\e6ac"}.van-icon-envelop-o:before{content:"\e6ae"}@font-face{font-display:auto;font-family:vant-icon;font-style:normal;font-weight:400;src:url(//at.alicdn.com/t/c/font_2553510_kfwma2yq1rs.woff2?t=1694918397022) format("woff2"),url(//at.alicdn.com/t/c/font_2553510_kfwma2yq1rs.woff?t=1694918397022) format("woff")}:host{align-items:center;display:inline-flex;justify-content:center}.van-icon--custom{position:relative}.van-icon--image{height:1em;width:1em}.van-icon__image{height:100%;width:100%}.van-icon__info{z-index:1} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/image/index.d.ts b/app/miniprogram_npm/@vant/weapp/image/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/image/index.js b/app/miniprogram_npm/@vant/weapp/image/index.js new file mode 100644 index 0000000..40f6812 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.js @@ -0,0 +1,66 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var button_1 = require("../mixins/button"); +(0, component_1.VantComponent)({ + mixins: [button_1.button], + classes: ['custom-class', 'loading-class', 'error-class', 'image-class'], + props: { + src: { + type: String, + observer: function () { + this.setData({ + error: false, + loading: true, + }); + }, + }, + round: Boolean, + width: null, + height: null, + radius: null, + lazyLoad: Boolean, + useErrorSlot: Boolean, + useLoadingSlot: Boolean, + showMenuByLongpress: Boolean, + fit: { + type: String, + value: 'fill', + }, + webp: { + type: Boolean, + value: false, + }, + showError: { + type: Boolean, + value: true, + }, + showLoading: { + type: Boolean, + value: true, + }, + }, + data: { + error: false, + loading: true, + viewStyle: '', + }, + methods: { + onLoad: function (event) { + this.setData({ + loading: false, + }); + this.$emit('load', event.detail); + }, + onError: function (event) { + this.setData({ + loading: false, + error: true, + }); + this.$emit('error', event.detail); + }, + onClick: function (event) { + this.$emit('click', event.detail); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/image/index.json b/app/miniprogram_npm/@vant/weapp/image/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/image/index.wxml b/app/miniprogram_npm/@vant/weapp/image/index.wxml new file mode 100644 index 0000000..a6f573c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.wxml @@ -0,0 +1,35 @@ + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/image/index.wxs b/app/miniprogram_npm/@vant/weapp/image/index.wxs new file mode 100644 index 0000000..cec14b8 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.wxs @@ -0,0 +1,32 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style([ + { + width: addUnit(data.width), + height: addUnit(data.height), + 'border-radius': addUnit(data.radius), + }, + data.radius ? 'overflow: hidden' : null, + ]); +} + +var FIT_MODE_MAP = { + none: 'center', + fill: 'scaleToFill', + cover: 'aspectFill', + contain: 'aspectFit', + widthFix: 'widthFix', + heightFix: 'heightFix', +}; + +function mode(fit) { + return FIT_MODE_MAP[fit]; +} + +module.exports = { + rootStyle: rootStyle, + mode: mode, +}; diff --git a/app/miniprogram_npm/@vant/weapp/image/index.wxss b/app/miniprogram_npm/@vant/weapp/image/index.wxss new file mode 100644 index 0000000..faeff9f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/image/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-image{display:inline-block;position:relative;vertical-align:top}.van-image--round{border-radius:50%;overflow:hidden}.van-image--round .van-image__img{border-radius:inherit}.van-image__error,.van-image__img,.van-image__loading{display:block;height:100%;width:100%}.van-image__error,.van-image__loading{align-items:center;background-color:var(--image-placeholder-background-color,#f7f8fa);color:var(--image-placeholder-text-color,#969799);display:flex;flex-direction:column;font-size:var(--image-placeholder-font-size,14px);justify-content:center;left:0;position:absolute;top:0}.van-image__loading-icon{color:var(--image-loading-icon-color,#dcdee0);font-size:var(--image-loading-icon-size,32px)!important}.van-image__error-icon{color:var(--image-error-icon-color,#dcdee0);font-size:var(--image-error-icon-size,32px)!important} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts b/app/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-anchor/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/index-anchor/index.js b/app/miniprogram_npm/@vant/weapp/index-anchor/index.js new file mode 100644 index 0000000..9a361a9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-anchor/index.js @@ -0,0 +1,28 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('index-bar'), + props: { + useSlot: Boolean, + index: null, + }, + data: { + active: false, + wrapperStyle: '', + anchorStyle: '', + }, + methods: { + scrollIntoView: function (scrollTop) { + var _this = this; + (0, utils_1.getRect)(this, '.van-index-anchor-wrapper').then(function (rect) { + wx.pageScrollTo({ + duration: 0, + scrollTop: scrollTop + rect.top - _this.parent.data.stickyOffsetTop, + }); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/index-anchor/index.json b/app/miniprogram_npm/@vant/weapp/index-anchor/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-anchor/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxml b/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxml new file mode 100644 index 0000000..49affa7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxml @@ -0,0 +1,14 @@ + + + + + {{ index }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxss b/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxss new file mode 100644 index 0000000..4b91560 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-anchor/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-index-anchor{background-color:var(--index-anchor-background-color,transparent);color:var(--index-anchor-text-color,#323233);font-size:var(--index-anchor-font-size,14px);font-weight:var(--index-anchor-font-weight,500);line-height:var(--index-anchor-line-height,32px);padding:var(--index-anchor-padding,0 16px)}.van-index-anchor--active{background-color:var(--index-anchor-active-background-color,#fff);color:var(--index-anchor-active-text-color,#07c160);left:0;right:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/index-bar/index.d.ts b/app/miniprogram_npm/@vant/weapp/index-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/index-bar/index.js b/app/miniprogram_npm/@vant/weapp/index-bar/index.js new file mode 100644 index 0000000..afc5412 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-bar/index.js @@ -0,0 +1,243 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +var page_scroll_1 = require("../mixins/page-scroll"); +var indexList = function () { + var indexList = []; + var charCodeOfA = 'A'.charCodeAt(0); + for (var i = 0; i < 26; i++) { + indexList.push(String.fromCharCode(charCodeOfA + i)); + } + return indexList; +}; +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('index-anchor', function () { + this.updateData(); + }), + props: { + sticky: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + highlightColor: { + type: String, + value: color_1.GREEN, + }, + stickyOffsetTop: { + type: Number, + value: 0, + }, + indexList: { + type: Array, + value: indexList(), + }, + }, + mixins: [ + (0, page_scroll_1.pageScrollMixin)(function (event) { + this.scrollTop = (event === null || event === void 0 ? void 0 : event.scrollTop) || 0; + this.onScroll(); + }), + ], + data: { + activeAnchorIndex: null, + showSidebar: false, + }, + created: function () { + this.scrollTop = 0; + }, + methods: { + updateData: function () { + var _this = this; + wx.nextTick(function () { + if (_this.timer != null) { + clearTimeout(_this.timer); + } + _this.timer = setTimeout(function () { + _this.setData({ + showSidebar: !!_this.children.length, + }); + _this.setRect().then(function () { + _this.onScroll(); + }); + }, 0); + }); + }, + setRect: function () { + return Promise.all([ + this.setAnchorsRect(), + this.setListRect(), + this.setSiderbarRect(), + ]); + }, + setAnchorsRect: function () { + var _this = this; + return Promise.all(this.children.map(function (anchor) { + return (0, utils_1.getRect)(anchor, '.van-index-anchor-wrapper').then(function (rect) { + Object.assign(anchor, { + height: rect.height, + top: rect.top + _this.scrollTop, + }); + }); + })); + }, + setListRect: function () { + var _this = this; + return (0, utils_1.getRect)(this, '.van-index-bar').then(function (rect) { + if (!(0, utils_1.isDef)(rect)) { + return; + } + Object.assign(_this, { + height: rect.height, + top: rect.top + _this.scrollTop, + }); + }); + }, + setSiderbarRect: function () { + var _this = this; + return (0, utils_1.getRect)(this, '.van-index-bar__sidebar').then(function (res) { + if (!(0, utils_1.isDef)(res)) { + return; + } + _this.sidebar = { + height: res.height, + top: res.top, + }; + }); + }, + setDiffData: function (_a) { + var target = _a.target, data = _a.data; + var diffData = {}; + Object.keys(data).forEach(function (key) { + if (target.data[key] !== data[key]) { + diffData[key] = data[key]; + } + }); + if (Object.keys(diffData).length) { + target.setData(diffData); + } + }, + getAnchorRect: function (anchor) { + return (0, utils_1.getRect)(anchor, '.van-index-anchor-wrapper').then(function (rect) { return ({ + height: rect.height, + top: rect.top, + }); }); + }, + getActiveAnchorIndex: function () { + var _a = this, children = _a.children, scrollTop = _a.scrollTop; + var _b = this.data, sticky = _b.sticky, stickyOffsetTop = _b.stickyOffsetTop; + for (var i = this.children.length - 1; i >= 0; i--) { + var preAnchorHeight = i > 0 ? children[i - 1].height : 0; + var reachTop = sticky ? preAnchorHeight + stickyOffsetTop : 0; + if (reachTop + scrollTop >= children[i].top) { + return i; + } + } + return -1; + }, + onScroll: function () { + var _this = this; + var _a = this, _b = _a.children, children = _b === void 0 ? [] : _b, scrollTop = _a.scrollTop; + if (!children.length) { + return; + } + var _c = this.data, sticky = _c.sticky, stickyOffsetTop = _c.stickyOffsetTop, zIndex = _c.zIndex, highlightColor = _c.highlightColor; + var active = this.getActiveAnchorIndex(); + this.setDiffData({ + target: this, + data: { + activeAnchorIndex: active, + }, + }); + if (sticky) { + var isActiveAnchorSticky_1 = false; + if (active !== -1) { + isActiveAnchorSticky_1 = + children[active].top <= stickyOffsetTop + scrollTop; + } + children.forEach(function (item, index) { + if (index === active) { + var wrapperStyle = ''; + var anchorStyle = "\n color: ".concat(highlightColor, ";\n "); + if (isActiveAnchorSticky_1) { + wrapperStyle = "\n height: ".concat(children[index].height, "px;\n "); + anchorStyle = "\n position: fixed;\n top: ".concat(stickyOffsetTop, "px;\n z-index: ").concat(zIndex, ";\n color: ").concat(highlightColor, ";\n "); + } + _this.setDiffData({ + target: item, + data: { + active: true, + anchorStyle: anchorStyle, + wrapperStyle: wrapperStyle, + }, + }); + } + else if (index === active - 1) { + var currentAnchor = children[index]; + var currentOffsetTop = currentAnchor.top; + var targetOffsetTop = index === children.length - 1 + ? _this.top + : children[index + 1].top; + var parentOffsetHeight = targetOffsetTop - currentOffsetTop; + var translateY = parentOffsetHeight - currentAnchor.height; + var anchorStyle = "\n position: relative;\n transform: translate3d(0, ".concat(translateY, "px, 0);\n z-index: ").concat(zIndex, ";\n color: ").concat(highlightColor, ";\n "); + _this.setDiffData({ + target: item, + data: { + active: true, + anchorStyle: anchorStyle, + }, + }); + } + else { + _this.setDiffData({ + target: item, + data: { + active: false, + anchorStyle: '', + wrapperStyle: '', + }, + }); + } + }); + } + }, + onClick: function (event) { + this.scrollToAnchor(event.target.dataset.index); + }, + onTouchMove: function (event) { + var sidebarLength = this.children.length; + var touch = event.touches[0]; + var itemHeight = this.sidebar.height / sidebarLength; + var index = Math.floor((touch.clientY - this.sidebar.top) / itemHeight); + if (index < 0) { + index = 0; + } + else if (index > sidebarLength - 1) { + index = sidebarLength - 1; + } + this.scrollToAnchor(index); + }, + onTouchStop: function () { + this.scrollToAnchorIndex = null; + }, + scrollToAnchor: function (index) { + var _this = this; + if (typeof index !== 'number' || this.scrollToAnchorIndex === index) { + return; + } + this.scrollToAnchorIndex = index; + var anchor = this.children.find(function (item) { return item.data.index === _this.data.indexList[index]; }); + if (anchor) { + anchor.scrollIntoView(this.scrollTop); + this.$emit('select', anchor.data.index); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/index-bar/index.json b/app/miniprogram_npm/@vant/weapp/index-bar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-bar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/index-bar/index.wxml b/app/miniprogram_npm/@vant/weapp/index-bar/index.wxml new file mode 100644 index 0000000..19a59cf --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-bar/index.wxml @@ -0,0 +1,22 @@ + + + + + + {{ item }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/index-bar/index.wxss b/app/miniprogram_npm/@vant/weapp/index-bar/index.wxss new file mode 100644 index 0000000..8568801 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/index-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-index-bar{position:relative}.van-index-bar__sidebar{display:flex;flex-direction:column;position:fixed;right:0;text-align:center;top:50%;transform:translateY(-50%);-webkit-user-select:none;user-select:none}.van-index-bar__index{font-size:var(--index-bar-index-font-size,10px);font-weight:500;line-height:var(--index-bar-index-line-height,14px);padding:0 var(--padding-base,4px) 0 var(--padding-md,16px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/info/index.d.ts b/app/miniprogram_npm/@vant/weapp/info/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/info/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/info/index.js b/app/miniprogram_npm/@vant/weapp/info/index.js new file mode 100644 index 0000000..e61af73 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/info/index.js @@ -0,0 +1,10 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + dot: Boolean, + info: null, + customStyle: String, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/info/index.json b/app/miniprogram_npm/@vant/weapp/info/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/info/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/info/index.wxml b/app/miniprogram_npm/@vant/weapp/info/index.wxml new file mode 100644 index 0000000..b39b524 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/info/index.wxml @@ -0,0 +1,7 @@ + + +{{ dot ? '' : info }} diff --git a/app/miniprogram_npm/@vant/weapp/info/index.wxss b/app/miniprogram_npm/@vant/weapp/info/index.wxss new file mode 100644 index 0000000..375ed5a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/info/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-info{align-items:center;background-color:var(--info-background-color,#ee0a24);border:var(--info-border-width,1px) solid #fff;border-radius:var(--info-size,16px);box-sizing:border-box;color:var(--info-color,#fff);display:inline-flex;font-family:var(--info-font-family,-apple-system-font,Helvetica Neue,Arial,sans-serif);font-size:var(--info-font-size,12px);font-weight:var(--info-font-weight,500);height:var(--info-size,16px);justify-content:center;min-width:var(--info-size,16px);padding:var(--info-padding,0 3px);position:absolute;right:0;top:0;transform:translate(50%,-50%);transform-origin:100%;white-space:nowrap}.van-info--dot{background-color:var(--info-dot-color,#ee0a24);border-radius:100%;height:var(--info-dot-size,8px);min-width:0;width:var(--info-dot-size,8px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.d.ts b/app/miniprogram_npm/@vant/weapp/loading/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.js b/app/miniprogram_npm/@vant/weapp/loading/index.js new file mode 100644 index 0000000..be9c0ef --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.js @@ -0,0 +1,18 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + color: String, + vertical: Boolean, + type: { + type: String, + value: 'circular', + }, + size: String, + textSize: String, + }, + data: { + array12: Array.from({ length: 12 }), + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.json b/app/miniprogram_npm/@vant/weapp/loading/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.wxml b/app/miniprogram_npm/@vant/weapp/loading/index.wxml new file mode 100644 index 0000000..7d4a539 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.wxml @@ -0,0 +1,19 @@ + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.wxs b/app/miniprogram_npm/@vant/weapp/loading/index.wxs new file mode 100644 index 0000000..02a0b80 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function spinnerStyle(data) { + return style({ + color: data.color, + width: addUnit(data.size), + height: addUnit(data.size), + }); +} + +function textStyle(data) { + return style({ + 'font-size': addUnit(data.textSize), + }); +} + +module.exports = { + spinnerStyle: spinnerStyle, + textStyle: textStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/loading/index.wxss b/app/miniprogram_npm/@vant/weapp/loading/index.wxss new file mode 100644 index 0000000..fc84e84 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/loading/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{font-size:0;line-height:1}.van-loading{align-items:center;color:var(--loading-spinner-color,#c8c9cc);display:inline-flex;justify-content:center}.van-loading__spinner{animation:van-rotate var(--loading-spinner-animation-duration,.8s) linear infinite;box-sizing:border-box;height:var(--loading-spinner-size,30px);max-height:100%;max-width:100%;position:relative;width:var(--loading-spinner-size,30px)}.van-loading__spinner--spinner{animation-timing-function:steps(12)}.van-loading__spinner--circular{border:1px solid transparent;border-radius:100%;border-top-color:initial}.van-loading__text{color:var(--loading-text-color,#969799);font-size:var(--loading-text-font-size,14px);line-height:var(--loading-text-line-height,20px);margin-left:var(--padding-xs,8px)}.van-loading__text:empty{display:none}.van-loading--vertical{flex-direction:column}.van-loading--vertical .van-loading__text{margin:var(--padding-xs,8px) 0 0}.van-loading__dot{height:100%;left:0;position:absolute;top:0;width:100%}.van-loading__dot:before{background-color:currentColor;border-radius:40%;content:" ";display:block;height:25%;margin:0 auto;width:2px}.van-loading__dot:first-of-type{opacity:1;transform:rotate(30deg)}.van-loading__dot:nth-of-type(2){opacity:.9375;transform:rotate(60deg)}.van-loading__dot:nth-of-type(3){opacity:.875;transform:rotate(90deg)}.van-loading__dot:nth-of-type(4){opacity:.8125;transform:rotate(120deg)}.van-loading__dot:nth-of-type(5){opacity:.75;transform:rotate(150deg)}.van-loading__dot:nth-of-type(6){opacity:.6875;transform:rotate(180deg)}.van-loading__dot:nth-of-type(7){opacity:.625;transform:rotate(210deg)}.van-loading__dot:nth-of-type(8){opacity:.5625;transform:rotate(240deg)}.van-loading__dot:nth-of-type(9){opacity:.5;transform:rotate(270deg)}.van-loading__dot:nth-of-type(10){opacity:.4375;transform:rotate(300deg)}.van-loading__dot:nth-of-type(11){opacity:.375;transform:rotate(330deg)}.van-loading__dot:nth-of-type(12){opacity:.3125;transform:rotate(1turn)}@keyframes van-rotate{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/mixins/basic.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/basic.d.ts new file mode 100644 index 0000000..b273369 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/basic.d.ts @@ -0,0 +1 @@ +export declare const basic: string; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/basic.js b/app/miniprogram_npm/@vant/weapp/mixins/basic.js new file mode 100644 index 0000000..405161a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/basic.js @@ -0,0 +1,30 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.basic = void 0; +exports.basic = Behavior({ + methods: { + $emit: function (name, detail, options) { + this.triggerEvent(name, detail, options); + }, + set: function (data) { + this.setData(data); + return new Promise(function (resolve) { return wx.nextTick(resolve); }); + }, + // high performance setData + setView: function (data, callback) { + var _this = this; + var target = {}; + var hasChange = false; + Object.keys(data).forEach(function (key) { + if (data[key] !== _this.data[key]) { + target[key] = data[key]; + hasChange = true; + } + }); + if (hasChange) { + return this.setData(target, callback); + } + return callback && callback(); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/mixins/button.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/button.d.ts new file mode 100644 index 0000000..b51db87 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/button.d.ts @@ -0,0 +1 @@ +export declare const button: string; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/button.js b/app/miniprogram_npm/@vant/weapp/mixins/button.js new file mode 100644 index 0000000..8c1c499 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/button.js @@ -0,0 +1,54 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.button = void 0; +var version_1 = require("../common/version"); +exports.button = Behavior({ + externalClasses: ['hover-class'], + properties: { + id: String, + buttonId: String, + lang: String, + businessId: Number, + sessionFrom: String, + sendMessageTitle: String, + sendMessagePath: String, + sendMessageImg: String, + showMessageCard: Boolean, + appParameter: String, + ariaLabel: String, + openType: String, + getUserProfileDesc: String, + }, + data: { + canIUseGetUserProfile: (0, version_1.canIUseGetUserProfile)(), + }, + methods: { + onGetUserInfo: function (event) { + this.triggerEvent('getuserinfo', event.detail); + }, + onContact: function (event) { + this.triggerEvent('contact', event.detail); + }, + onGetPhoneNumber: function (event) { + this.triggerEvent('getphonenumber', event.detail); + }, + onGetRealTimePhoneNumber: function (event) { + this.triggerEvent('getrealtimephonenumber', event.detail); + }, + onError: function (event) { + this.triggerEvent('error', event.detail); + }, + onLaunchApp: function (event) { + this.triggerEvent('launchapp', event.detail); + }, + onOpenSetting: function (event) { + this.triggerEvent('opensetting', event.detail); + }, + onAgreePrivacyAuthorization: function (event) { + this.triggerEvent('agreeprivacyauthorization', event.detail); + }, + onChooseAvatar: function (event) { + this.triggerEvent('chooseavatar', event.detail); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/mixins/link.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/link.d.ts new file mode 100644 index 0000000..d58043b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/link.d.ts @@ -0,0 +1 @@ +export declare const link: string; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/link.js b/app/miniprogram_npm/@vant/weapp/mixins/link.js new file mode 100644 index 0000000..14cb7e8 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/link.js @@ -0,0 +1,27 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.link = void 0; +exports.link = Behavior({ + properties: { + url: String, + linkType: { + type: String, + value: 'navigateTo', + }, + }, + methods: { + jumpLink: function (urlKey) { + if (urlKey === void 0) { urlKey = 'url'; } + var url = this.data[urlKey]; + if (url) { + if (this.data.linkType === 'navigateTo' && + getCurrentPages().length > 9) { + wx.redirectTo({ url: url }); + } + else { + wx[this.data.linkType]({ url: url }); + } + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts new file mode 100644 index 0000000..4625447 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.d.ts @@ -0,0 +1,6 @@ +/// +/// +type IPageScrollOption = WechatMiniprogram.Page.IPageScrollOption; +type Scroller = (this: WechatMiniprogram.Component.TrivialInstance, event?: IPageScrollOption) => void; +export declare function pageScrollMixin(scroller: Scroller): string; +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.js b/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.js new file mode 100644 index 0000000..fce7049 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/page-scroll.js @@ -0,0 +1,47 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.pageScrollMixin = void 0; +var validator_1 = require("../common/validator"); +var utils_1 = require("../common/utils"); +function onPageScroll(event) { + var _a = (0, utils_1.getCurrentPage)().vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a; + vanPageScroller.forEach(function (scroller) { + if (typeof scroller === 'function') { + // @ts-ignore + scroller(event); + } + }); +} +function pageScrollMixin(scroller) { + return Behavior({ + attached: function () { + var page = (0, utils_1.getCurrentPage)(); + if (!(0, utils_1.isDef)(page)) { + return; + } + var _scroller = scroller.bind(this); + var _a = page.vanPageScroller, vanPageScroller = _a === void 0 ? [] : _a; + if ((0, validator_1.isFunction)(page.onPageScroll) && page.onPageScroll !== onPageScroll) { + vanPageScroller.push(page.onPageScroll.bind(page)); + } + vanPageScroller.push(_scroller); + page.vanPageScroller = vanPageScroller; + page.onPageScroll = onPageScroll; + this._scroller = _scroller; + }, + detached: function () { + var _this = this; + var page = (0, utils_1.getCurrentPage)(); + if (!(0, utils_1.isDef)(page) || !(0, utils_1.isDef)(page.vanPageScroller)) { + return; + } + var vanPageScroller = page.vanPageScroller; + var index = vanPageScroller.findIndex(function (v) { return v === _this._scroller; }); + if (index > -1) { + page.vanPageScroller.splice(index, 1); + } + this._scroller = undefined; + }, + }); +} +exports.pageScrollMixin = pageScrollMixin; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/touch.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/touch.d.ts new file mode 100644 index 0000000..35ee831 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/touch.d.ts @@ -0,0 +1 @@ +export declare const touch: string; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/touch.js b/app/miniprogram_npm/@vant/weapp/mixins/touch.js new file mode 100644 index 0000000..d762c2c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/touch.js @@ -0,0 +1,40 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.touch = void 0; +// @ts-nocheck +var MIN_DISTANCE = 10; +function getDirection(x, y) { + if (x > y && x > MIN_DISTANCE) { + return 'horizontal'; + } + if (y > x && y > MIN_DISTANCE) { + return 'vertical'; + } + return ''; +} +exports.touch = Behavior({ + methods: { + resetTouchStatus: function () { + this.direction = ''; + this.deltaX = 0; + this.deltaY = 0; + this.offsetX = 0; + this.offsetY = 0; + }, + touchStart: function (event) { + this.resetTouchStatus(); + var touch = event.touches[0]; + this.startX = touch.clientX; + this.startY = touch.clientY; + }, + touchMove: function (event) { + var touch = event.touches[0]; + this.deltaX = touch.clientX - this.startX; + this.deltaY = touch.clientY - this.startY; + this.offsetX = Math.abs(this.deltaX); + this.offsetY = Math.abs(this.deltaY); + this.direction = + this.direction || getDirection(this.offsetX, this.offsetY); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/mixins/transition.d.ts b/app/miniprogram_npm/@vant/weapp/mixins/transition.d.ts new file mode 100644 index 0000000..dd829e5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/transition.d.ts @@ -0,0 +1 @@ +export declare function transition(showDefaultValue: boolean): string; diff --git a/app/miniprogram_npm/@vant/weapp/mixins/transition.js b/app/miniprogram_npm/@vant/weapp/mixins/transition.js new file mode 100644 index 0000000..d56b3b2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/mixins/transition.js @@ -0,0 +1,144 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.transition = void 0; +// @ts-nocheck +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var getClassNames = function (name) { return ({ + enter: "van-".concat(name, "-enter van-").concat(name, "-enter-active enter-class enter-active-class"), + 'enter-to': "van-".concat(name, "-enter-to van-").concat(name, "-enter-active enter-to-class enter-active-class"), + leave: "van-".concat(name, "-leave van-").concat(name, "-leave-active leave-class leave-active-class"), + 'leave-to': "van-".concat(name, "-leave-to van-").concat(name, "-leave-active leave-to-class leave-active-class"), +}); }; +function transition(showDefaultValue) { + return Behavior({ + properties: { + customStyle: String, + // @ts-ignore + show: { + type: Boolean, + value: showDefaultValue, + observer: 'observeShow', + }, + // @ts-ignore + duration: { + type: null, + value: 300, + }, + name: { + type: String, + value: 'fade', + }, + }, + data: { + type: '', + inited: false, + display: false, + }, + ready: function () { + if (this.data.show === true) { + this.observeShow(true, false); + } + }, + methods: { + observeShow: function (value, old) { + if (value === old) { + return; + } + value ? this.enureEnter() : this.enureLeave(); + }, + enureEnter: function () { + var _this = this; + if (this.enterPromise) + return; + this.enterPromise = new Promise(function (resolve) { return _this.enter(resolve); }); + }, + enureLeave: function () { + var _this = this; + var enterPromise = this.enterPromise; + if (!enterPromise) + return; + enterPromise + .then(function () { return new Promise(function (resolve) { return _this.leave(resolve); }); }) + .then(function () { + _this.enterPromise = null; + }); + }, + enter: function (resolve) { + var _this = this; + var _a = this.data, duration = _a.duration, name = _a.name; + var classNames = getClassNames(name); + var currentDuration = (0, validator_1.isObj)(duration) ? duration.enter : duration; + if (this.status === 'enter') { + return; + } + this.status = 'enter'; + this.$emit('before-enter'); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'enter') { + return; + } + _this.$emit('enter'); + _this.setData({ + inited: true, + display: true, + classes: classNames.enter, + currentDuration: currentDuration, + }); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'enter') { + return; + } + _this.transitionEnded = false; + _this.setData({ classes: classNames['enter-to'] }); + resolve(); + }); + }); + }, + leave: function (resolve) { + var _this = this; + if (!this.data.display) { + return; + } + var _a = this.data, duration = _a.duration, name = _a.name; + var classNames = getClassNames(name); + var currentDuration = (0, validator_1.isObj)(duration) ? duration.leave : duration; + this.status = 'leave'; + this.$emit('before-leave'); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'leave') { + return; + } + _this.$emit('leave'); + _this.setData({ + classes: classNames.leave, + currentDuration: currentDuration, + }); + (0, utils_1.requestAnimationFrame)(function () { + if (_this.status !== 'leave') { + return; + } + _this.transitionEnded = false; + setTimeout(function () { + _this.onTransitionEnd(); + resolve(); + }, currentDuration); + _this.setData({ classes: classNames['leave-to'] }); + }); + }); + }, + onTransitionEnd: function () { + if (this.transitionEnded) { + return; + } + this.transitionEnded = true; + this.$emit("after-".concat(this.status)); + var _a = this.data, show = _a.show, display = _a.display; + if (!show && display) { + this.setData({ display: false }); + } + }, + }, + }); +} +exports.transition = transition; diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts b/app/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.js b/app/miniprogram_npm/@vant/weapp/nav-bar/index.js new file mode 100644 index 0000000..376b561 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + classes: ['title-class'], + props: { + title: String, + fixed: { + type: Boolean, + observer: 'setHeight', + }, + placeholder: { + type: Boolean, + observer: 'setHeight', + }, + leftText: String, + rightText: String, + customStyle: String, + leftArrow: Boolean, + border: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + safeAreaInsetTop: { + type: Boolean, + value: true, + }, + }, + data: { + height: 46, + }, + created: function () { + var statusBarHeight = (0, utils_1.getSystemInfoSync)().statusBarHeight; + this.setData({ + statusBarHeight: statusBarHeight, + height: 46 + statusBarHeight, + }); + }, + mounted: function () { + this.setHeight(); + }, + methods: { + onClickLeft: function () { + this.$emit('click-left'); + }, + onClickRight: function () { + this.$emit('click-right'); + }, + setHeight: function () { + var _this = this; + if (!this.data.fixed || !this.data.placeholder) { + return; + } + wx.nextTick(function () { + (0, utils_1.getRect)(_this, '.van-nav-bar').then(function (res) { + if (res && 'height' in res) { + _this.setData({ height: res.height }); + } + }); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.json b/app/miniprogram_npm/@vant/weapp/nav-bar/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxml b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxml new file mode 100644 index 0000000..b6405fd --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxml @@ -0,0 +1,42 @@ + + + + + + + + + + + {{ leftText }} + + + + + {{ title }} + + + + {{ rightText }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxs b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxs new file mode 100644 index 0000000..55b4158 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function barStyle(data) { + return style({ + 'z-index': data.zIndex, + 'padding-top': data.safeAreaInsetTop ? data.statusBarHeight + 'px' : 0, + }); +} + +module.exports = { + barStyle: barStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxss b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxss new file mode 100644 index 0000000..d11c31e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/nav-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-nav-bar{background-color:var(--nav-bar-background-color,#fff);box-sizing:initial;height:var(--nav-bar-height,46px);line-height:var(--nav-bar-height,46px);position:relative;text-align:center;-webkit-user-select:none;user-select:none}.van-nav-bar__content{height:100%;position:relative}.van-nav-bar__text{color:var(--nav-bar-text-color,#1989fa);display:inline-block;margin:0 calc(var(--padding-md, 16px)*-1);padding:0 var(--padding-md,16px);vertical-align:middle}.van-nav-bar__text--hover{background-color:#f2f3f5}.van-nav-bar__arrow{color:var(--nav-bar-icon-color,#1989fa)!important;font-size:var(--nav-bar-arrow-size,16px)!important;vertical-align:middle}.van-nav-bar__arrow+.van-nav-bar__text{margin-left:-20px;padding-left:25px}.van-nav-bar--fixed{left:0;position:fixed;top:0;width:100%}.van-nav-bar__title{color:var(--nav-bar-title-text-color,#323233);font-size:var(--nav-bar-title-font-size,16px);font-weight:var(--font-weight-bold,500);margin:0 auto;max-width:60%}.van-nav-bar__left,.van-nav-bar__right{align-items:center;bottom:0;display:flex;font-size:var(--font-size-md,14px);position:absolute;top:0}.van-nav-bar__left{left:var(--padding-md,16px)}.van-nav-bar__right{right:var(--padding-md,16px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts b/app/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.js b/app/miniprogram_npm/@vant/weapp/notice-bar/index.js new file mode 100644 index 0000000..fb5b3b4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.js @@ -0,0 +1,132 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + text: { + type: String, + value: '', + observer: 'init', + }, + mode: { + type: String, + value: '', + }, + url: { + type: String, + value: '', + }, + openType: { + type: String, + value: 'navigate', + }, + delay: { + type: Number, + value: 1, + }, + speed: { + type: Number, + value: 60, + observer: 'init', + }, + scrollable: null, + leftIcon: { + type: String, + value: '', + }, + color: String, + backgroundColor: String, + background: String, + wrapable: Boolean, + }, + data: { + show: true, + }, + created: function () { + this.resetAnimation = wx.createAnimation({ + duration: 0, + timingFunction: 'linear', + }); + }, + destroyed: function () { + this.timer && clearTimeout(this.timer); + }, + mounted: function () { + this.init(); + }, + methods: { + init: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + Promise.all([ + (0, utils_1.getRect)(_this, '.van-notice-bar__content'), + (0, utils_1.getRect)(_this, '.van-notice-bar__wrap'), + ]).then(function (rects) { + var contentRect = rects[0], wrapRect = rects[1]; + var scrollable = _this.data.scrollable; + if (contentRect == null || + wrapRect == null || + !contentRect.width || + !wrapRect.width || + scrollable === false) { + return; + } + if (scrollable || wrapRect.width < contentRect.width) { + _this.initAnimation(wrapRect.width, contentRect.width); + _this.scroll(true); + } + }); + }); + }, + initAnimation: function (warpWidth, contentWidth) { + var _a = this.data, speed = _a.speed, delay = _a.delay; + this.wrapWidth = warpWidth; + this.contentWidth = contentWidth; + // begin 0 + this.contentDuration = (contentWidth / speed) * 1000; + // begin -wrapWidth + this.duration = ((warpWidth + contentWidth) / speed) * 1000; + this.animation = wx.createAnimation({ + duration: this.contentDuration, + timingFunction: 'linear', + delay: delay, + }); + }, + scroll: function (isInit) { + var _this = this; + if (isInit === void 0) { isInit = false; } + this.timer && clearTimeout(this.timer); + this.timer = null; + this.setData({ + animationData: this.resetAnimation + .translateX(isInit ? 0 : this.wrapWidth) + .step() + .export(), + }); + var duration = isInit ? this.contentDuration : this.duration; + (0, utils_1.requestAnimationFrame)(function () { + _this.setData({ + animationData: _this.animation + .translateX(-_this.contentWidth) + .step({ duration: duration }) + .export(), + }); + }); + this.timer = setTimeout(function () { + _this.scroll(); + }, duration + this.data.delay); + }, + onClickIcon: function (event) { + if (this.data.mode === 'closeable') { + this.timer && clearTimeout(this.timer); + this.timer = null; + this.setData({ show: false }); + this.$emit('close', event.detail); + } + }, + onClick: function (event) { + this.$emit('click', event); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.json b/app/miniprogram_npm/@vant/weapp/notice-bar/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxml b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxml new file mode 100644 index 0000000..21b0973 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxml @@ -0,0 +1,38 @@ + + + + + + + + + + {{ text }} + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxs b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxs new file mode 100644 index 0000000..11e6456 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxs @@ -0,0 +1,15 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + color: data.color, + 'background-color': data.backgroundColor, + background: data.background, + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxss b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxss new file mode 100644 index 0000000..497636c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notice-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-notice-bar{align-items:center;background-color:var(--notice-bar-background-color,#fffbe8);color:var(--notice-bar-text-color,#ed6a0c);display:flex;font-size:var(--notice-bar-font-size,14px);height:var(--notice-bar-height,40px);line-height:var(--notice-bar-line-height,24px);padding:var(--notice-bar-padding,0 16px)}.van-notice-bar--withicon{padding-right:40px;position:relative}.van-notice-bar--wrapable{height:auto;padding:var(--notice-bar-wrapable-padding,8px 16px)}.van-notice-bar--wrapable .van-notice-bar__wrap{height:auto}.van-notice-bar--wrapable .van-notice-bar__content{position:relative;white-space:normal}.van-notice-bar__left-icon{align-items:center;display:flex;margin-right:4px;vertical-align:middle}.van-notice-bar__left-icon,.van-notice-bar__right-icon{font-size:var(--notice-bar-icon-size,16px);min-width:var(--notice-bar-icon-min-width,22px)}.van-notice-bar__right-icon{position:absolute;right:15px;top:10px}.van-notice-bar__wrap{flex:1;height:var(--notice-bar-line-height,24px);overflow:hidden;position:relative}.van-notice-bar__content{position:absolute;white-space:nowrap}.van-notice-bar__content.van-ellipsis{max-width:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.d.ts b/app/miniprogram_npm/@vant/weapp/notify/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.js b/app/miniprogram_npm/@vant/weapp/notify/index.js new file mode 100644 index 0000000..a9526aa --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + message: String, + background: String, + type: { + type: String, + value: 'danger', + }, + color: { + type: String, + value: color_1.WHITE, + }, + duration: { + type: Number, + value: 3000, + }, + zIndex: { + type: Number, + value: 110, + }, + safeAreaInsetTop: { + type: Boolean, + value: false, + }, + top: null, + }, + data: { + show: false, + onOpened: null, + onClose: null, + onClick: null, + }, + created: function () { + var statusBarHeight = (0, utils_1.getSystemInfoSync)().statusBarHeight; + this.setData({ statusBarHeight: statusBarHeight }); + }, + methods: { + show: function () { + var _this = this; + var _a = this.data, duration = _a.duration, onOpened = _a.onOpened; + clearTimeout(this.timer); + this.setData({ show: true }); + wx.nextTick(onOpened); + if (duration > 0 && duration !== Infinity) { + this.timer = setTimeout(function () { + _this.hide(); + }, duration); + } + }, + hide: function () { + var onClose = this.data.onClose; + clearTimeout(this.timer); + this.setData({ show: false }); + wx.nextTick(onClose); + }, + onTap: function (event) { + var onClick = this.data.onClick; + if (onClick) { + onClick(event.detail); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.json b/app/miniprogram_npm/@vant/weapp/notify/index.json new file mode 100644 index 0000000..c14a65f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-transition": "../transition/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.wxml b/app/miniprogram_npm/@vant/weapp/notify/index.wxml new file mode 100644 index 0000000..42d913e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.wxml @@ -0,0 +1,21 @@ + + + + + + + {{ message }} + + diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.wxs b/app/miniprogram_npm/@vant/weapp/notify/index.wxs new file mode 100644 index 0000000..bbb94c2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + return style({ + 'z-index': data.zIndex, + top: addUnit(data.top), + }); +} + +function notifyStyle(data) { + return style({ + background: data.background, + color: data.color, + }); +} + +module.exports = { + rootStyle: rootStyle, + notifyStyle: notifyStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/notify/index.wxss b/app/miniprogram_npm/@vant/weapp/notify/index.wxss new file mode 100644 index 0000000..c030e9b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-notify{word-wrap:break-word;font-size:var(--notify-font-size,14px);line-height:var(--notify-line-height,20px);padding:var(--notify-padding,6px 15px);text-align:center}.van-notify__container{box-sizing:border-box;left:0;position:fixed;top:0;width:100%}.van-notify--primary{background-color:var(--notify-primary-background-color,#1989fa)}.van-notify--success{background-color:var(--notify-success-background-color,#07c160)}.van-notify--danger{background-color:var(--notify-danger-background-color,#ee0a24)}.van-notify--warning{background-color:var(--notify-warning-background-color,#ff976a)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/notify/notify.d.ts b/app/miniprogram_npm/@vant/weapp/notify/notify.d.ts new file mode 100644 index 0000000..d5213cb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/notify.d.ts @@ -0,0 +1,22 @@ +interface NotifyOptions { + type?: 'primary' | 'success' | 'danger' | 'warning'; + color?: string; + zIndex?: number; + top?: number; + message: string; + context?: any; + duration?: number; + selector?: string; + background?: string; + safeAreaInsetTop?: boolean; + onClick?: () => void; + onOpened?: () => void; + onClose?: () => void; +} +declare function Notify(options: NotifyOptions | string): any; +declare namespace Notify { + var clear: (options?: NotifyOptions | undefined) => void; + var setDefaultOptions: (options: NotifyOptions) => void; + var resetDefaultOptions: () => void; +} +export default Notify; diff --git a/app/miniprogram_npm/@vant/weapp/notify/notify.js b/app/miniprogram_npm/@vant/weapp/notify/notify.js new file mode 100644 index 0000000..d470431 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/notify/notify.js @@ -0,0 +1,67 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var color_1 = require("../common/color"); +var defaultOptions = { + selector: '#van-notify', + type: 'danger', + message: '', + background: '', + duration: 3000, + zIndex: 110, + top: 0, + color: color_1.WHITE, + safeAreaInsetTop: false, + onClick: function () { }, + onOpened: function () { }, + onClose: function () { }, +}; +var currentOptions = __assign({}, defaultOptions); +function parseOptions(message) { + if (message == null) { + return {}; + } + return typeof message === 'string' ? { message: message } : message; +} +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +function Notify(options) { + options = __assign(__assign({}, currentOptions), parseOptions(options)); + var context = options.context || getContext(); + var notify = context.selectComponent(options.selector); + delete options.context; + delete options.selector; + if (notify) { + notify.setData(options); + notify.show(); + return notify; + } + console.warn('未找到 van-notify 节点,请确认 selector 及 context 是否正确'); +} +exports.default = Notify; +Notify.clear = function (options) { + options = __assign(__assign({}, defaultOptions), parseOptions(options)); + var context = options.context || getContext(); + var notify = context.selectComponent(options.selector); + if (notify) { + notify.hide(); + } +}; +Notify.setDefaultOptions = function (options) { + Object.assign(currentOptions, options); +}; +Notify.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); +}; diff --git a/app/miniprogram_npm/@vant/weapp/overlay/index.d.ts b/app/miniprogram_npm/@vant/weapp/overlay/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/overlay/index.js b/app/miniprogram_npm/@vant/weapp/overlay/index.js new file mode 100644 index 0000000..9b58b5f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/index.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + show: Boolean, + customStyle: String, + duration: { + type: null, + value: 300, + }, + zIndex: { + type: Number, + value: 1, + }, + lockScroll: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onClick: function () { + this.$emit('click'); + }, + // for prevent touchmove + noop: function () { }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/overlay/index.json b/app/miniprogram_npm/@vant/weapp/overlay/index.json new file mode 100644 index 0000000..c14a65f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-transition": "../transition/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/overlay/index.wxml b/app/miniprogram_npm/@vant/weapp/overlay/index.wxml new file mode 100644 index 0000000..17fc56f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/index.wxml @@ -0,0 +1,7 @@ + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/overlay/index.wxss b/app/miniprogram_npm/@vant/weapp/overlay/index.wxss new file mode 100644 index 0000000..d1ad81a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-overlay{background-color:var(--overlay-background-color,rgba(0,0,0,.7));height:100%;left:0;position:fixed;top:0;width:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/overlay/overlay.wxml b/app/miniprogram_npm/@vant/weapp/overlay/overlay.wxml new file mode 100644 index 0000000..017e801 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/overlay/overlay.wxml @@ -0,0 +1,10 @@ + + + \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/panel/index.d.ts b/app/miniprogram_npm/@vant/weapp/panel/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/panel/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/panel/index.js b/app/miniprogram_npm/@vant/weapp/panel/index.js new file mode 100644 index 0000000..818b8c5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/panel/index.js @@ -0,0 +1,11 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['header-class', 'footer-class'], + props: { + desc: String, + title: String, + status: String, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/panel/index.json b/app/miniprogram_npm/@vant/weapp/panel/index.json new file mode 100644 index 0000000..0e5425c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/panel/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-cell": "../cell/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/panel/index.wxml b/app/miniprogram_npm/@vant/weapp/panel/index.wxml new file mode 100644 index 0000000..1843703 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/panel/index.wxml @@ -0,0 +1,19 @@ + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/panel/index.wxss b/app/miniprogram_npm/@vant/weapp/panel/index.wxss new file mode 100644 index 0000000..485edcd --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/panel/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-panel{background:var(--panel-background-color,#fff)}.van-panel__header-value{color:var(--panel-header-value-color,#ee0a24)}.van-panel__footer{padding:var(--panel-footer-padding,8px 16px)}.van-panel__footer:empty{display:none} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.d.ts b/app/miniprogram_npm/@vant/weapp/picker-column/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.js b/app/miniprogram_npm/@vant/weapp/picker-column/index.js new file mode 100644 index 0000000..9dbf17c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.js @@ -0,0 +1,122 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var DEFAULT_DURATION = 200; +(0, component_1.VantComponent)({ + classes: ['active-class'], + props: { + valueKey: String, + className: String, + itemHeight: Number, + visibleItemCount: Number, + initialOptions: { + type: Array, + value: [], + }, + defaultIndex: { + type: Number, + value: 0, + observer: function (value) { + this.setIndex(value); + }, + }, + }, + data: { + startY: 0, + offset: 0, + duration: 0, + startOffset: 0, + options: [], + currentIndex: 0, + }, + created: function () { + var _this = this; + var _a = this.data, defaultIndex = _a.defaultIndex, initialOptions = _a.initialOptions; + this.set({ + currentIndex: defaultIndex, + options: initialOptions, + }).then(function () { + _this.setIndex(defaultIndex); + }); + }, + methods: { + getCount: function () { + return this.data.options.length; + }, + onTouchStart: function (event) { + this.setData({ + startY: event.touches[0].clientY, + startOffset: this.data.offset, + duration: 0, + }); + }, + onTouchMove: function (event) { + var data = this.data; + var deltaY = event.touches[0].clientY - data.startY; + this.setData({ + offset: (0, utils_1.range)(data.startOffset + deltaY, -(this.getCount() * data.itemHeight), data.itemHeight), + }); + }, + onTouchEnd: function () { + var data = this.data; + if (data.offset !== data.startOffset) { + this.setData({ duration: DEFAULT_DURATION }); + var index = (0, utils_1.range)(Math.round(-data.offset / data.itemHeight), 0, this.getCount() - 1); + this.setIndex(index, true); + } + }, + onClickItem: function (event) { + var index = event.currentTarget.dataset.index; + this.setIndex(index, true); + }, + adjustIndex: function (index) { + var data = this.data; + var count = this.getCount(); + index = (0, utils_1.range)(index, 0, count); + for (var i = index; i < count; i++) { + if (!this.isDisabled(data.options[i])) + return i; + } + for (var i = index - 1; i >= 0; i--) { + if (!this.isDisabled(data.options[i])) + return i; + } + }, + isDisabled: function (option) { + return (0, validator_1.isObj)(option) && option.disabled; + }, + getOptionText: function (option) { + var data = this.data; + return (0, validator_1.isObj)(option) && data.valueKey in option + ? option[data.valueKey] + : option; + }, + setIndex: function (index, userAction) { + var _this = this; + var data = this.data; + index = this.adjustIndex(index) || 0; + var offset = -index * data.itemHeight; + if (index !== data.currentIndex) { + return this.set({ offset: offset, currentIndex: index }).then(function () { + userAction && _this.$emit('change', index); + }); + } + return this.set({ offset: offset }); + }, + setValue: function (value) { + var options = this.data.options; + for (var i = 0; i < options.length; i++) { + if (this.getOptionText(options[i]) === value) { + return this.setIndex(i); + } + } + return Promise.resolve(); + }, + getValue: function () { + var data = this.data; + return data.options[data.currentIndex]; + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.json b/app/miniprogram_npm/@vant/weapp/picker-column/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.wxml b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxml new file mode 100644 index 0000000..f2c8da2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxml @@ -0,0 +1,23 @@ + + + + + + {{ computed.optionText(option, valueKey) }} + + diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.wxs b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxs new file mode 100644 index 0000000..2d5a611 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxs @@ -0,0 +1,36 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function isObj(x) { + var type = typeof x; + return x !== null && (type === 'object' || type === 'function'); +} + +function optionText(option, valueKey) { + return isObj(option) && option[valueKey] != null ? option[valueKey] : option; +} + +function rootStyle(data) { + return style({ + height: addUnit(data.itemHeight * data.visibleItemCount), + }); +} + +function wrapperStyle(data) { + var offset = addUnit( + data.offset + (data.itemHeight * (data.visibleItemCount - 1)) / 2 + ); + + return style({ + transition: 'transform ' + data.duration + 'ms', + 'line-height': addUnit(data.itemHeight), + transform: 'translate3d(0, ' + offset + ', 0)', + }); +} + +module.exports = { + optionText: optionText, + rootStyle: rootStyle, + wrapperStyle: wrapperStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/picker-column/index.wxss b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxss new file mode 100644 index 0000000..519a438 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker-column/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-picker-column{color:var(--picker-option-text-color,#000);font-size:var(--picker-option-font-size,16px);overflow:hidden;text-align:center}.van-picker-column__item{padding:0 5px}.van-picker-column__item--selected{color:var(--picker-option-selected-text-color,#323233);font-weight:var(--font-weight-bold,500)}.van-picker-column__item--disabled{opacity:var(--picker-option-disabled-opacity,.3)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.d.ts b/app/miniprogram_npm/@vant/weapp/picker/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.js b/app/miniprogram_npm/@vant/weapp/picker/index.js new file mode 100644 index 0000000..06d1826 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.js @@ -0,0 +1,161 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var shared_1 = require("./shared"); +(0, component_1.VantComponent)({ + classes: ['active-class', 'toolbar-class', 'column-class'], + props: __assign(__assign({}, shared_1.pickerProps), { valueKey: { + type: String, + value: 'text', + }, toolbarPosition: { + type: String, + value: 'top', + }, defaultIndex: { + type: Number, + value: 0, + }, columns: { + type: Array, + value: [], + observer: function (columns) { + if (columns === void 0) { columns = []; } + this.simple = columns.length && !columns[0].values; + if (Array.isArray(this.children) && this.children.length) { + this.setColumns().catch(function () { }); + } + }, + } }), + beforeCreate: function () { + var _this = this; + Object.defineProperty(this, 'children', { + get: function () { return _this.selectAllComponents('.van-picker__column') || []; }, + }); + }, + methods: { + noop: function () { }, + setColumns: function () { + var _this = this; + var data = this.data; + var columns = this.simple ? [{ values: data.columns }] : data.columns; + var stack = columns.map(function (column, index) { + return _this.setColumnValues(index, column.values); + }); + return Promise.all(stack); + }, + emit: function (event) { + var type = event.currentTarget.dataset.type; + if (this.simple) { + this.$emit(type, { + value: this.getColumnValue(0), + index: this.getColumnIndex(0), + }); + } + else { + this.$emit(type, { + value: this.getValues(), + index: this.getIndexes(), + }); + } + }, + onChange: function (event) { + if (this.simple) { + this.$emit('change', { + picker: this, + value: this.getColumnValue(0), + index: this.getColumnIndex(0), + }); + } + else { + this.$emit('change', { + picker: this, + value: this.getValues(), + index: event.currentTarget.dataset.index, + }); + } + }, + // get column instance by index + getColumn: function (index) { + return this.children[index]; + }, + // get column value by index + getColumnValue: function (index) { + var column = this.getColumn(index); + return column && column.getValue(); + }, + // set column value by index + setColumnValue: function (index, value) { + var column = this.getColumn(index); + if (column == null) { + return Promise.reject(new Error('setColumnValue: 对应列不存在')); + } + return column.setValue(value); + }, + // get column option index by column index + getColumnIndex: function (columnIndex) { + return (this.getColumn(columnIndex) || {}).data.currentIndex; + }, + // set column option index by column index + setColumnIndex: function (columnIndex, optionIndex) { + var column = this.getColumn(columnIndex); + if (column == null) { + return Promise.reject(new Error('setColumnIndex: 对应列不存在')); + } + return column.setIndex(optionIndex); + }, + // get options of column by index + getColumnValues: function (index) { + return (this.children[index] || {}).data.options; + }, + // set options of column by index + setColumnValues: function (index, options, needReset) { + if (needReset === void 0) { needReset = true; } + var column = this.children[index]; + if (column == null) { + return Promise.reject(new Error('setColumnValues: 对应列不存在')); + } + var isSame = JSON.stringify(column.data.options) === JSON.stringify(options); + if (isSame) { + return Promise.resolve(); + } + return column.set({ options: options }).then(function () { + if (needReset) { + column.setIndex(0); + } + }); + }, + // get values of all columns + getValues: function () { + return this.children.map(function (child) { return child.getValue(); }); + }, + // set values of all columns + setValues: function (values) { + var _this = this; + var stack = values.map(function (value, index) { + return _this.setColumnValue(index, value); + }); + return Promise.all(stack); + }, + // get indexes of all columns + getIndexes: function () { + return this.children.map(function (child) { return child.data.currentIndex; }); + }, + // set indexes of all columns + setIndexes: function (indexes) { + var _this = this; + var stack = indexes.map(function (optionIndex, columnIndex) { + return _this.setColumnIndex(columnIndex, optionIndex); + }); + return Promise.all(stack); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.json b/app/miniprogram_npm/@vant/weapp/picker/index.json new file mode 100644 index 0000000..2fcec89 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "picker-column": "../picker-column/index", + "loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.wxml b/app/miniprogram_npm/@vant/weapp/picker/index.wxml new file mode 100644 index 0000000..8564ccc --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.wxml @@ -0,0 +1,37 @@ + + + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.wxs b/app/miniprogram_npm/@vant/weapp/picker/index.wxs new file mode 100644 index 0000000..0abbd10 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.wxs @@ -0,0 +1,42 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); +var array = require('../wxs/array.wxs'); + +function columnsStyle(data) { + return style({ + height: addUnit(data.itemHeight * data.visibleItemCount), + }); +} + +function maskStyle(data) { + return style({ + 'background-size': + '100% ' + addUnit((data.itemHeight * (data.visibleItemCount - 1)) / 2), + }); +} + +function frameStyle(data) { + return style({ + height: addUnit(data.itemHeight), + }); +} + +function columns(columns) { + if (!array.isArray(columns)) { + return []; + } + + if (columns.length && !columns[0].values) { + return [{ values: columns }]; + } + + return columns; +} + +module.exports = { + columnsStyle: columnsStyle, + frameStyle: frameStyle, + maskStyle: maskStyle, + columns: columns, +}; diff --git a/app/miniprogram_npm/@vant/weapp/picker/index.wxss b/app/miniprogram_npm/@vant/weapp/picker/index.wxss new file mode 100644 index 0000000..d924abb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-picker{-webkit-text-size-adjust:100%;background-color:var(--picker-background-color,#fff);overflow:hidden;position:relative;-webkit-user-select:none;user-select:none}.van-picker__toolbar{display:flex;height:var(--picker-toolbar-height,44px);justify-content:space-between;line-height:var(--picker-toolbar-height,44px)}.van-picker__cancel,.van-picker__confirm{font-size:var(--picker-action-font-size,14px);padding:var(--picker-action-padding,0 16px)}.van-picker__cancel--hover,.van-picker__confirm--hover{opacity:.7}.van-picker__confirm{color:var(--picker-confirm-action-color,#576b95)}.van-picker__cancel{color:var(--picker-cancel-action-color,#969799)}.van-picker__title{font-size:var(--picker-option-font-size,16px);font-weight:var(--font-weight-bold,500);max-width:50%;text-align:center}.van-picker__columns{display:flex;position:relative}.van-picker__column{flex:1 1;width:0}.van-picker__loading{align-items:center;background-color:var(--picker-loading-mask-color,hsla(0,0%,100%,.9));bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:4}.van-picker__mask{-webkit-backface-visibility:hidden;backface-visibility:hidden;background-image:linear-gradient(180deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4)),linear-gradient(0deg,hsla(0,0%,100%,.9),hsla(0,0%,100%,.4));background-position:top,bottom;background-repeat:no-repeat;height:100%;left:0;top:0;width:100%;z-index:2}.van-picker__frame,.van-picker__mask{pointer-events:none;position:absolute}.van-picker__frame{left:16px;right:16px;top:50%;transform:translateY(-50%);z-index:1} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/picker/shared.d.ts b/app/miniprogram_npm/@vant/weapp/picker/shared.d.ts new file mode 100644 index 0000000..c548045 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/shared.d.ts @@ -0,0 +1,21 @@ +export declare const pickerProps: { + title: StringConstructor; + loading: BooleanConstructor; + showToolbar: BooleanConstructor; + cancelButtonText: { + type: StringConstructor; + value: string; + }; + confirmButtonText: { + type: StringConstructor; + value: string; + }; + visibleItemCount: { + type: NumberConstructor; + value: number; + }; + itemHeight: { + type: NumberConstructor; + value: number; + }; +}; diff --git a/app/miniprogram_npm/@vant/weapp/picker/shared.js b/app/miniprogram_npm/@vant/weapp/picker/shared.js new file mode 100644 index 0000000..3d40a8c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/shared.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.pickerProps = void 0; +exports.pickerProps = { + title: String, + loading: Boolean, + showToolbar: Boolean, + cancelButtonText: { + type: String, + value: '取消', + }, + confirmButtonText: { + type: String, + value: '确认', + }, + visibleItemCount: { + type: Number, + value: 6, + }, + itemHeight: { + type: Number, + value: 44, + }, +}; diff --git a/app/miniprogram_npm/@vant/weapp/picker/toolbar.wxml b/app/miniprogram_npm/@vant/weapp/picker/toolbar.wxml new file mode 100644 index 0000000..414f612 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/picker/toolbar.wxml @@ -0,0 +1,23 @@ + + + {{ cancelButtonText }} + + {{ + title + }} + + {{ confirmButtonText }} + + diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.d.ts b/app/miniprogram_npm/@vant/weapp/popup/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.js b/app/miniprogram_npm/@vant/weapp/popup/index.js new file mode 100644 index 0000000..18b08e6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.js @@ -0,0 +1,99 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var transition_1 = require("../mixins/transition"); +(0, component_1.VantComponent)({ + classes: [ + 'enter-class', + 'enter-active-class', + 'enter-to-class', + 'leave-class', + 'leave-active-class', + 'leave-to-class', + 'close-icon-class', + ], + mixins: [(0, transition_1.transition)(false)], + props: { + round: Boolean, + closeable: Boolean, + customStyle: String, + overlayStyle: String, + transition: { + type: String, + observer: 'observeClass', + }, + zIndex: { + type: Number, + value: 100, + }, + overlay: { + type: Boolean, + value: true, + }, + closeIcon: { + type: String, + value: 'cross', + }, + closeIconPosition: { + type: String, + value: 'top-right', + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + position: { + type: String, + value: 'center', + observer: 'observeClass', + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + safeAreaInsetTop: { + type: Boolean, + value: false, + }, + safeAreaTabBar: { + type: Boolean, + value: false, + }, + lockScroll: { + type: Boolean, + value: true, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + created: function () { + this.observeClass(); + }, + methods: { + onClickCloseIcon: function () { + this.$emit('close'); + }, + onClickOverlay: function () { + this.$emit('click-overlay'); + if (this.data.closeOnClickOverlay) { + this.$emit('close'); + } + }, + observeClass: function () { + var _a = this.data, transition = _a.transition, position = _a.position, duration = _a.duration; + var updateData = { + name: transition || position, + }; + if (transition === 'none') { + updateData.duration = 0; + this.originDuration = duration; + } + else if (this.originDuration != null) { + updateData.duration = this.originDuration; + } + this.setData(updateData); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.json b/app/miniprogram_npm/@vant/weapp/popup/index.json new file mode 100644 index 0000000..88a6eab --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-overlay": "../overlay/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.wxml b/app/miniprogram_npm/@vant/weapp/popup/index.wxml new file mode 100644 index 0000000..ab824b1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.wxml @@ -0,0 +1,21 @@ + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.wxs b/app/miniprogram_npm/@vant/weapp/popup/index.wxs new file mode 100644 index 0000000..8d59f24 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function popupStyle(data) { + return style([ + { + 'z-index': data.zIndex, + '-webkit-transition-duration': data.currentDuration + 'ms', + 'transition-duration': data.currentDuration + 'ms', + }, + data.display ? null : 'display: none', + data.customStyle, + ]); +} + +module.exports = { + popupStyle: popupStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/popup/index.wxss b/app/miniprogram_npm/@vant/weapp/popup/index.wxss new file mode 100644 index 0000000..91983b4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-popup{-webkit-overflow-scrolling:touch;animation:ease both;background-color:var(--popup-background-color,#fff);box-sizing:border-box;max-height:100%;overflow-y:auto;position:fixed;transition-timing-function:ease}.van-popup--center{left:50%;top:50%;transform:translate3d(-50%,-50%,0)}.van-popup--center.van-popup--round{border-radius:var(--popup-round-border-radius,16px)}.van-popup--top{left:0;top:0;width:100%}.van-popup--top.van-popup--round{border-radius:0 0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px))}.van-popup--right{right:0;top:50%;transform:translate3d(0,-50%,0)}.van-popup--right.van-popup--round{border-radius:var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0 0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px))}.van-popup--bottom{bottom:0;left:0;width:100%}.van-popup--bottom.van-popup--round{border-radius:var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0 0}.van-popup--left{left:0;top:50%;transform:translate3d(0,-50%,0)}.van-popup--left.van-popup--round{border-radius:0 var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) var(--popup-round-border-radius,var(--popup-round-border-radius,16px)) 0}.van-popup--bottom.van-popup--safe{padding-bottom:env(safe-area-inset-bottom)}.van-popup--bottom.van-popup--safeTabBar,.van-popup--top.van-popup--safeTabBar{bottom:var(--tabbar-height,50px)}.van-popup--safeTop{padding-top:env(safe-area-inset-top)}.van-popup__close-icon{color:var(--popup-close-icon-color,#969799);font-size:var(--popup-close-icon-size,18px);position:absolute;z-index:var(--popup-close-icon-z-index,1)}.van-popup__close-icon--top-left{left:var(--popup-close-icon-margin,16px);top:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--top-right{right:var(--popup-close-icon-margin,16px);top:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-left{bottom:var(--popup-close-icon-margin,16px);left:var(--popup-close-icon-margin,16px)}.van-popup__close-icon--bottom-right{bottom:var(--popup-close-icon-margin,16px);right:var(--popup-close-icon-margin,16px)}.van-popup__close-icon:active{opacity:.6}.van-scale-enter-active,.van-scale-leave-active{transition-property:opacity,transform}.van-scale-enter,.van-scale-leave-to{opacity:0;transform:translate3d(-50%,-50%,0) scale(.7)}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-center-enter-active,.van-center-leave-active{transition-property:opacity}.van-center-enter,.van-center-leave-to{opacity:0}.van-bottom-enter-active,.van-bottom-leave-active,.van-left-enter-active,.van-left-leave-active,.van-right-enter-active,.van-right-leave-active,.van-top-enter-active,.van-top-leave-active{transition-property:transform}.van-bottom-enter,.van-bottom-leave-to{transform:translate3d(0,100%,0)}.van-top-enter,.van-top-leave-to{transform:translate3d(0,-100%,0)}.van-left-enter,.van-left-leave-to{transform:translate3d(-100%,-50%,0)}.van-right-enter,.van-right-leave-to{transform:translate3d(100%,-50%,0)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/popup/popup.wxml b/app/miniprogram_npm/@vant/weapp/popup/popup.wxml new file mode 100644 index 0000000..bd8f508 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/popup/popup.wxml @@ -0,0 +1,16 @@ + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.d.ts b/app/miniprogram_npm/@vant/weapp/progress/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.js b/app/miniprogram_npm/@vant/weapp/progress/index.js new file mode 100644 index 0000000..3bca928 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.js @@ -0,0 +1,55 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + props: { + inactive: Boolean, + percentage: { + type: Number, + observer: 'setLeft', + }, + pivotText: String, + pivotColor: String, + trackColor: String, + showPivot: { + type: Boolean, + value: true, + }, + color: { + type: String, + value: color_1.BLUE, + }, + textColor: { + type: String, + value: '#fff', + }, + strokeWidth: { + type: null, + value: 4, + }, + }, + data: { + right: 0, + }, + mounted: function () { + this.setLeft(); + }, + methods: { + setLeft: function () { + var _this = this; + Promise.all([ + (0, utils_1.getRect)(this, '.van-progress'), + (0, utils_1.getRect)(this, '.van-progress__pivot'), + ]).then(function (_a) { + var portion = _a[0], pivot = _a[1]; + if (portion && pivot) { + _this.setData({ + right: (pivot.width * (_this.data.percentage - 100)) / 100, + }); + } + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.json b/app/miniprogram_npm/@vant/weapp/progress/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.wxml b/app/miniprogram_npm/@vant/weapp/progress/index.wxml new file mode 100644 index 0000000..e81514d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.wxml @@ -0,0 +1,20 @@ + + + + + + + {{ computed.pivotText(pivotText, percentage) }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.wxs b/app/miniprogram_npm/@vant/weapp/progress/index.wxs new file mode 100644 index 0000000..5b1e8e6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.wxs @@ -0,0 +1,36 @@ +/* eslint-disable */ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function pivotText(pivotText, percentage) { + return pivotText || percentage + '%'; +} + +function rootStyle(data) { + return style({ + 'height': data.strokeWidth ? utils.addUnit(data.strokeWidth) : '', + 'background': data.trackColor, + }); +} + +function portionStyle(data) { + return style({ + background: data.inactive ? '#cacaca' : data.color, + width: data.percentage ? data.percentage + '%' : '', + }); +} + +function pivotStyle(data) { + return style({ + color: data.textColor, + right: data.right + 'px', + background: data.pivotColor ? data.pivotColor : data.inactive ? '#cacaca' : data.color, + }); +} + +module.exports = { + pivotText: pivotText, + rootStyle: rootStyle, + portionStyle: portionStyle, + pivotStyle: pivotStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/progress/index.wxss b/app/miniprogram_npm/@vant/weapp/progress/index.wxss new file mode 100644 index 0000000..a08972a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/progress/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-progress{background:var(--progress-background-color,#ebedf0);border-radius:var(--progress-height,4px);height:var(--progress-height,4px);position:relative}.van-progress__portion{background:var(--progress-color,#1989fa);border-radius:inherit;height:100%;left:0;position:absolute}.van-progress__pivot{background-color:var(--progress-pivot-background-color,#1989fa);border-radius:1em;box-sizing:border-box;color:var(--progress-pivot-text-color,#fff);font-size:var(--progress-pivot-font-size,10px);line-height:var(--progress-pivot-line-height,1.6);min-width:3.6em;padding:var(--progress-pivot-padding,0 5px);position:absolute;text-align:center;top:50%;transform:translateY(-50%);word-break:keep-all} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/radio-group/index.d.ts b/app/miniprogram_npm/@vant/weapp/radio-group/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio-group/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/radio-group/index.js b/app/miniprogram_npm/@vant/weapp/radio-group/index.js new file mode 100644 index 0000000..ddb2a60 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio-group/index.js @@ -0,0 +1,24 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useChildren)('radio'), + props: { + value: { + type: null, + observer: 'updateChildren', + }, + direction: String, + disabled: { + type: Boolean, + observer: 'updateChildren', + }, + }, + methods: { + updateChildren: function () { + this.children.forEach(function (child) { return child.updateFromParent(); }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/radio-group/index.json b/app/miniprogram_npm/@vant/weapp/radio-group/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio-group/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/radio-group/index.wxml b/app/miniprogram_npm/@vant/weapp/radio-group/index.wxml new file mode 100644 index 0000000..0ab17af --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio-group/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/radio-group/index.wxss b/app/miniprogram_npm/@vant/weapp/radio-group/index.wxss new file mode 100644 index 0000000..4e3b5d4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio-group/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-radio-group--horizontal{display:flex;flex-wrap:wrap} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.d.ts b/app/miniprogram_npm/@vant/weapp/radio/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.js b/app/miniprogram_npm/@vant/weapp/radio/index.js new file mode 100644 index 0000000..61a86d5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var version_1 = require("../common/version"); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + field: true, + relation: (0, relation_1.useParent)('radio-group', function () { + this.updateFromParent(); + }), + classes: ['icon-class', 'label-class'], + props: { + name: null, + value: null, + disabled: Boolean, + useIconSlot: Boolean, + checkedColor: String, + labelPosition: { + type: String, + value: 'right', + }, + labelDisabled: Boolean, + shape: { + type: String, + value: 'round', + }, + iconSize: { + type: null, + value: 20, + }, + }, + data: { + direction: '', + parentDisabled: false, + }, + methods: { + updateFromParent: function () { + if (!this.parent) { + return; + } + var _a = this.parent.data, value = _a.value, parentDisabled = _a.disabled, direction = _a.direction; + this.setData({ + value: value, + direction: direction, + parentDisabled: parentDisabled, + }); + }, + emitChange: function (value) { + var instance = this.parent || this; + instance.$emit('input', value); + instance.$emit('change', value); + if ((0, version_1.canIUseModel)()) { + instance.setData({ value: value }); + } + }, + onChange: function () { + if (!this.data.disabled && !this.data.parentDisabled) { + this.emitChange(this.data.name); + } + }, + onClickLabel: function () { + var _a = this.data, disabled = _a.disabled, parentDisabled = _a.parentDisabled, labelDisabled = _a.labelDisabled, name = _a.name; + if (!(disabled || parentDisabled) && !labelDisabled) { + this.emitChange(name); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.json b/app/miniprogram_npm/@vant/weapp/radio/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.wxml b/app/miniprogram_npm/@vant/weapp/radio/index.wxml new file mode 100644 index 0000000..5f898c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.wxml @@ -0,0 +1,30 @@ + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.wxs b/app/miniprogram_npm/@vant/weapp/radio/index.wxs new file mode 100644 index 0000000..a428aad --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.wxs @@ -0,0 +1,33 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function iconStyle(data) { + var styles = { + 'font-size': addUnit(data.iconSize), + }; + + if ( + data.checkedColor && + !(data.disabled || data.parentDisabled) && + data.value === data.name + ) { + styles['border-color'] = data.checkedColor; + styles['background-color'] = data.checkedColor; + } + + return style(styles); +} + +function iconCustomStyle(data) { + return style({ + 'line-height': addUnit(data.iconSize), + 'font-size': '.8em', + display: 'block', + }); +} + +module.exports = { + iconStyle: iconStyle, + iconCustomStyle: iconCustomStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/radio/index.wxss b/app/miniprogram_npm/@vant/weapp/radio/index.wxss new file mode 100644 index 0000000..257b0c7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/radio/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-radio{align-items:center;display:flex;overflow:hidden;-webkit-user-select:none;user-select:none}.van-radio__icon-wrap{flex:none}.van-radio--horizontal{margin-right:var(--padding-sm,12px)}.van-radio__icon{align-items:center;border:1px solid var(--radio-border-color,#c8c9cc);box-sizing:border-box;color:transparent;display:flex;font-size:var(--radio-size,20px);height:1em;justify-content:center;text-align:center;transition-duration:var(--radio-transition-duration,.2s);transition-property:color,border-color,background-color;width:1em}.van-radio__icon--round{border-radius:100%}.van-radio__icon--checked{background-color:var(--radio-checked-icon-color,#1989fa);border-color:var(--radio-checked-icon-color,#1989fa);color:#fff}.van-radio__icon--disabled{background-color:var(--radio-disabled-background-color,#ebedf0);border-color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__icon--disabled.van-radio__icon--checked{color:var(--radio-disabled-icon-color,#c8c9cc)}.van-radio__label{word-wrap:break-word;color:var(--radio-label-color,#323233);line-height:var(--radio-size,20px);padding-left:var(--radio-label-margin,10px)}.van-radio__label--left{float:left;margin:0 var(--radio-label-margin,10px) 0 0}.van-radio__label--disabled{color:var(--radio-disabled-label-color,#c8c9cc)}.van-radio__label:empty{margin:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/rate/index.d.ts b/app/miniprogram_npm/@vant/weapp/rate/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/rate/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/rate/index.js b/app/miniprogram_npm/@vant/weapp/rate/index.js new file mode 100644 index 0000000..30a96de --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/rate/index.js @@ -0,0 +1,93 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var version_1 = require("../common/version"); +(0, component_1.VantComponent)({ + field: true, + classes: ['icon-class'], + props: { + value: { + type: Number, + observer: function (value) { + if (value !== this.data.innerValue) { + this.setData({ innerValue: value }); + } + }, + }, + readonly: Boolean, + disabled: Boolean, + allowHalf: Boolean, + size: null, + icon: { + type: String, + value: 'star', + }, + voidIcon: { + type: String, + value: 'star-o', + }, + color: String, + voidColor: String, + disabledColor: String, + count: { + type: Number, + value: 5, + observer: function (value) { + this.setData({ innerCountArray: Array.from({ length: value }) }); + }, + }, + gutter: null, + touchable: { + type: Boolean, + value: true, + }, + }, + data: { + innerValue: 0, + innerCountArray: Array.from({ length: 5 }), + }, + methods: { + onSelect: function (event) { + var _this = this; + var data = this.data; + var score = event.currentTarget.dataset.score; + if (!data.disabled && !data.readonly) { + this.setData({ innerValue: score + 1 }); + if ((0, version_1.canIUseModel)()) { + this.setData({ value: score + 1 }); + } + wx.nextTick(function () { + _this.$emit('input', score + 1); + _this.$emit('change', score + 1); + }); + } + }, + onTouchMove: function (event) { + var _this = this; + var touchable = this.data.touchable; + if (!touchable) + return; + var clientX = event.touches[0].clientX; + (0, utils_1.getAllRect)(this, '.van-rate__icon').then(function (list) { + var target = list + .sort(function (cur, next) { return cur.dataset.score - next.dataset.score; }) + .find(function (item) { return clientX >= item.left && clientX <= item.right; }); + if (target != null) { + _this.onSelect(__assign(__assign({}, event), { currentTarget: target })); + } + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/rate/index.json b/app/miniprogram_npm/@vant/weapp/rate/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/rate/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/rate/index.wxml b/app/miniprogram_npm/@vant/weapp/rate/index.wxml new file mode 100644 index 0000000..049714c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/rate/index.wxml @@ -0,0 +1,35 @@ + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/rate/index.wxss b/app/miniprogram_npm/@vant/weapp/rate/index.wxss new file mode 100644 index 0000000..470e4f4 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/rate/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-rate{display:inline-flex;-webkit-user-select:none;user-select:none}.van-rate__item{padding:0 var(--rate-horizontal-padding,2px);position:relative}.van-rate__item:not(:last-child){padding-right:var(--rate-icon-gutter,4px)}.van-rate__icon{color:var(--rate-icon-void-color,#c8c9cc);display:block;font-size:var(--rate-icon-size,20px);height:100%}.van-rate__icon--half{left:var(--rate-horizontal-padding,2px);overflow:hidden;position:absolute;top:0;width:.5em}.van-rate__icon--full,.van-rate__icon--half{color:var(--rate-icon-full-color,#ee0a24)}.van-rate__icon--disabled{color:var(--rate-icon-disabled-color,#c8c9cc)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/row/index.d.ts b/app/miniprogram_npm/@vant/weapp/row/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/row/index.js b/app/miniprogram_npm/@vant/weapp/row/index.js new file mode 100644 index 0000000..c27acd6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.js @@ -0,0 +1,26 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('col', function (target) { + var gutter = this.data.gutter; + if (gutter) { + target.setData({ gutter: gutter }); + } + }), + props: { + gutter: { + type: Number, + observer: 'setGutter', + }, + }, + methods: { + setGutter: function () { + var _this = this; + this.children.forEach(function (col) { + col.setData(_this.data); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/row/index.json b/app/miniprogram_npm/@vant/weapp/row/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/row/index.wxml b/app/miniprogram_npm/@vant/weapp/row/index.wxml new file mode 100644 index 0000000..69a4359 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.wxml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/row/index.wxs b/app/miniprogram_npm/@vant/weapp/row/index.wxs new file mode 100644 index 0000000..f5c5958 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.wxs @@ -0,0 +1,18 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + if (!data.gutter) { + return ''; + } + + return style({ + 'margin-right': addUnit(-data.gutter / 2), + 'margin-left': addUnit(-data.gutter / 2), + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/row/index.wxss b/app/miniprogram_npm/@vant/weapp/row/index.wxss new file mode 100644 index 0000000..bb8946b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/row/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-row:after{clear:both;content:"";display:table} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/search/index.d.ts b/app/miniprogram_npm/@vant/weapp/search/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/search/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/search/index.js b/app/miniprogram_npm/@vant/weapp/search/index.js new file mode 100644 index 0000000..b5348b0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/search/index.js @@ -0,0 +1,100 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var version_1 = require("../common/version"); +(0, component_1.VantComponent)({ + field: true, + classes: ['field-class', 'input-class', 'cancel-class'], + props: { + value: { + type: String, + value: '', + }, + label: String, + focus: Boolean, + error: Boolean, + disabled: Boolean, + readonly: Boolean, + inputAlign: String, + showAction: Boolean, + useActionSlot: Boolean, + useLeftIconSlot: Boolean, + useRightIconSlot: Boolean, + leftIcon: { + type: String, + value: 'search', + }, + rightIcon: String, + placeholder: String, + placeholderStyle: String, + actionText: { + type: String, + value: '取消', + }, + background: { + type: String, + value: '#ffffff', + }, + maxlength: { + type: Number, + value: -1, + }, + shape: { + type: String, + value: 'square', + }, + clearable: { + type: Boolean, + value: true, + }, + clearTrigger: { + type: String, + value: 'focus', + }, + clearIcon: { + type: String, + value: 'clear', + }, + cursorSpacing: { + type: Number, + value: 0, + }, + }, + methods: { + onChange: function (event) { + if ((0, version_1.canIUseModel)()) { + this.setData({ value: event.detail }); + } + this.$emit('change', event.detail); + }, + onCancel: function () { + var _this = this; + /** + * 修复修改输入框值时,输入框失焦和赋值同时触发,赋值失效 + * https://github.com/youzan/vant-weapp/issues/1768 + */ + setTimeout(function () { + if ((0, version_1.canIUseModel)()) { + _this.setData({ value: '' }); + } + _this.$emit('cancel'); + _this.$emit('change', ''); + }, 200); + }, + onSearch: function (event) { + this.$emit('search', event.detail); + }, + onFocus: function (event) { + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + this.$emit('blur', event.detail); + }, + onClear: function (event) { + this.$emit('clear', event.detail); + }, + onClickInput: function (event) { + this.$emit('click-input', event.detail); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/search/index.json b/app/miniprogram_npm/@vant/weapp/search/index.json new file mode 100644 index 0000000..b4cfe91 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/search/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-field": "../field/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/search/index.wxml b/app/miniprogram_npm/@vant/weapp/search/index.wxml new file mode 100644 index 0000000..cbcb47a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/search/index.wxml @@ -0,0 +1,54 @@ + + + + + {{ label }} + + + + + + + + + + + {{ actionText }} + + diff --git a/app/miniprogram_npm/@vant/weapp/search/index.wxss b/app/miniprogram_npm/@vant/weapp/search/index.wxss new file mode 100644 index 0000000..4f306b0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/search/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-search{align-items:center;box-sizing:border-box;display:flex;padding:var(--search-padding,10px 12px)}.van-search__content{background-color:var(--search-background-color,#f7f8fa);border-radius:2px;display:flex;flex:1;padding-left:var(--padding-sm,12px)}.van-search__content--round{border-radius:999px}.van-search__label{color:var(--search-label-color,#323233);font-size:var(--search-label-font-size,14px);line-height:var(--search-input-height,34px);padding:var(--search-label-padding,0 5px)}.van-search__field{flex:1}.van-search__field__left-icon{color:var(--search-left-icon-color,#969799)}.van-search--withaction{padding-right:0}.van-search__action{color:var(--search-action-text-color,#323233);font-size:var(--search-action-font-size,14px);line-height:var(--search-input-height,34px)}.van-search__action--hover{background-color:#f2f3f5}.van-search__action-button{padding:var(--search-action-padding,0 8px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts b/app/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.js b/app/miniprogram_npm/@vant/weapp/share-sheet/index.js new file mode 100644 index 0000000..11604a7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.js @@ -0,0 +1,61 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + // whether to show popup + show: Boolean, + // overlay custom style + overlayStyle: String, + // z-index + zIndex: { + type: Number, + value: 100, + }, + title: String, + cancelText: { + type: String, + value: '取消', + }, + description: String, + options: { + type: Array, + value: [], + }, + overlay: { + type: Boolean, + value: true, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + closeOnClickOverlay: { + type: Boolean, + value: true, + }, + duration: { + type: null, + value: 300, + }, + rootPortal: { + type: Boolean, + value: false, + }, + }, + methods: { + onClickOverlay: function () { + this.$emit('click-overlay'); + }, + onCancel: function () { + this.onClose(); + this.$emit('cancel'); + }, + onSelect: function (event) { + this.$emit('select', event.detail); + }, + onClose: function () { + this.$emit('close'); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.json b/app/miniprogram_npm/@vant/weapp/share-sheet/index.json new file mode 100644 index 0000000..15a7c22 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-popup": "../popup/index", + "options": "./options" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxml b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxml new file mode 100644 index 0000000..72a5b25 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxml @@ -0,0 +1,47 @@ + + + + + + + + {{ title }} + + + + + + {{ description }} + + + + + + + + + + + {{ cancelText }} + + diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxs b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxs new file mode 100644 index 0000000..2149ee9 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +function isMulti(options) { + if (options == null || options[0] == null) { + return false; + } + + return "Array" === options.constructor && "Array" === options[0].constructor; +} + +module.exports = { + isMulti: isMulti +}; diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxss b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxss new file mode 100644 index 0000000..e8d8dae --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-share-sheet__header{padding:12px 16px 4px;text-align:center}.van-share-sheet__title{color:#323233;font-size:14px;font-weight:400;line-height:20px;margin-top:8px}.van-share-sheet__title:empty,.van-share-sheet__title:not(:empty)+.van-share-sheet__title{display:none}.van-share-sheet__description{color:#969799;display:block;font-size:12px;line-height:16px;margin-top:8px}.van-share-sheet__description:empty,.van-share-sheet__description:not(:empty)+.van-share-sheet__description{display:none}.van-share-sheet__cancel{background:#fff;border:none;box-sizing:initial;display:block;font-size:16px;height:auto;line-height:48px;padding:0;text-align:center;width:100%}.van-share-sheet__cancel:before{background-color:#f7f8fa;content:" ";display:block;height:8px}.van-share-sheet__cancel:after{display:none}.van-share-sheet__cancel:active{background-color:#f2f3f5} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts b/app/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.js b/app/miniprogram_npm/@vant/weapp/share-sheet/options.js new file mode 100644 index 0000000..0432d4f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.js @@ -0,0 +1,27 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + options: Array, + showBorder: Boolean, + }, + methods: { + onSelect: function (event) { + var index = event.currentTarget.dataset.index; + var option = this.data.options[index]; + this.$emit('select', __assign(__assign({}, option), { index: index })); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.json b/app/miniprogram_npm/@vant/weapp/share-sheet/options.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxml b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxml new file mode 100644 index 0000000..2983ebb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxml @@ -0,0 +1,20 @@ + + + + + + + + {{ item.name }} + + {{ item.description }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxs b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxs new file mode 100644 index 0000000..a116d32 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxs @@ -0,0 +1,14 @@ +/* eslint-disable */ +var PRESET_ICONS = ['qq', 'link', 'weibo', 'wechat', 'poster', 'qrcode', 'weapp-qrcode', 'wechat-moments']; + +function getIconURL(icon) { + if (PRESET_ICONS.indexOf(icon) !== -1) { + return 'https://img.yzcdn.cn/vant/share-sheet-' + icon + '.png'; + } + + return icon; +} + +module.exports = { + getIconURL: getIconURL, +}; diff --git a/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxss b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxss new file mode 100644 index 0000000..b7f5455 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/share-sheet/options.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-share-sheet__options{-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto;overflow-y:visible;padding:16px 0 16px 8px;position:relative}.van-share-sheet__options--border:before{border-top:1px solid #ebedf0;box-sizing:border-box;content:" ";left:16px;pointer-events:none;position:absolute;right:0;top:0;transform:scaleY(.5);transform-origin:center}.van-share-sheet__options::-webkit-scrollbar{height:0}.van-share-sheet__option{align-items:center;display:flex;flex-direction:column;-webkit-user-select:none;user-select:none}.van-share-sheet__option:active{opacity:.7}.van-share-sheet__button{background-color:initial;border:0;height:auto;line-height:inherit;padding:0}.van-share-sheet__button:after{border:0}.van-share-sheet__icon{height:48px;margin:0 16px;width:48px}.van-share-sheet__name{color:#646566;font-size:12px;margin-top:8px;padding:0 4px}.van-share-sheet__option-description{color:#c8c9cc;font-size:12px;padding:0 4px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/sidebar-item/index.js b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.js new file mode 100644 index 0000000..eac568f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.js @@ -0,0 +1,32 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + classes: ['active-class', 'disabled-class'], + relation: (0, relation_1.useParent)('sidebar'), + props: { + dot: Boolean, + badge: null, + info: null, + title: String, + disabled: Boolean, + }, + methods: { + onClick: function () { + var _this = this; + var parent = this.parent; + if (!parent || this.data.disabled) { + return; + } + var index = parent.children.indexOf(this); + parent.setActive(index).then(function () { + _this.$emit('click', index); + parent.$emit('change', index); + }); + }, + setActive: function (selected) { + return this.setData({ selected: selected }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/sidebar-item/index.json b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.json new file mode 100644 index 0000000..bf0ebe0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml new file mode 100644 index 0000000..c5c08a6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxml @@ -0,0 +1,18 @@ + + + + + + {{ title }} + + + diff --git a/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss new file mode 100644 index 0000000..f1ce421 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sidebar-item{background-color:var(--sidebar-background-color,#f7f8fa);border-left:3px solid transparent;box-sizing:border-box;color:var(--sidebar-text-color,#323233);display:block;font-size:var(--sidebar-font-size,14px);line-height:var(--sidebar-line-height,20px);overflow:hidden;padding:var(--sidebar-padding,20px 12px 20px 8px);-webkit-user-select:none;user-select:none}.van-sidebar-item__text{display:inline-block;position:relative;word-break:break-all}.van-sidebar-item--hover:not(.van-sidebar-item--disabled){background-color:var(--sidebar-active-color,#f2f3f5)}.van-sidebar-item:after{border-bottom-width:1px}.van-sidebar-item--selected{border-color:var(--sidebar-selected-border-color,#ee0a24);color:var(--sidebar-selected-text-color,#323233);font-weight:var(--sidebar-selected-font-weight,500)}.van-sidebar-item--selected:after{border-right-width:1px}.van-sidebar-item--selected,.van-sidebar-item--selected.van-sidebar-item--hover{background-color:var(--sidebar-selected-background-color,#fff)}.van-sidebar-item--disabled{color:var(--sidebar-disabled-text-color,#c8c9cc)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/sidebar/index.d.ts b/app/miniprogram_npm/@vant/weapp/sidebar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/sidebar/index.js b/app/miniprogram_npm/@vant/weapp/sidebar/index.js new file mode 100644 index 0000000..f3e0a58 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar/index.js @@ -0,0 +1,36 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('sidebar-item', function () { + this.setActive(this.data.activeKey); + }), + props: { + activeKey: { + type: Number, + value: 0, + observer: 'setActive', + }, + }, + beforeCreate: function () { + this.currentActive = -1; + }, + methods: { + setActive: function (activeKey) { + var _a = this, children = _a.children, currentActive = _a.currentActive; + if (!children.length) { + return Promise.resolve(); + } + this.currentActive = activeKey; + var stack = []; + if (currentActive !== activeKey && children[currentActive]) { + stack.push(children[currentActive].setActive(false)); + } + if (children[activeKey]) { + stack.push(children[activeKey].setActive(true)); + } + return Promise.all(stack); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/sidebar/index.json b/app/miniprogram_npm/@vant/weapp/sidebar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/sidebar/index.wxml b/app/miniprogram_npm/@vant/weapp/sidebar/index.wxml new file mode 100644 index 0000000..96b11c7 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar/index.wxml @@ -0,0 +1,3 @@ + + + diff --git a/app/miniprogram_npm/@vant/weapp/sidebar/index.wxss b/app/miniprogram_npm/@vant/weapp/sidebar/index.wxss new file mode 100644 index 0000000..5a2d44f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sidebar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sidebar{width:var(--sidebar-width,80px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/skeleton/index.d.ts b/app/miniprogram_npm/@vant/weapp/skeleton/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/skeleton/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/skeleton/index.js b/app/miniprogram_npm/@vant/weapp/skeleton/index.js new file mode 100644 index 0000000..2ab3175 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/skeleton/index.js @@ -0,0 +1,48 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['avatar-class', 'title-class', 'row-class'], + props: { + row: { + type: Number, + value: 0, + observer: function (value) { + this.setData({ rowArray: Array.from({ length: value }) }); + }, + }, + title: Boolean, + avatar: Boolean, + loading: { + type: Boolean, + value: true, + }, + animate: { + type: Boolean, + value: true, + }, + avatarSize: { + type: String, + value: '32px', + }, + avatarShape: { + type: String, + value: 'round', + }, + titleWidth: { + type: String, + value: '40%', + }, + rowWidth: { + type: null, + value: '100%', + observer: function (val) { + this.setData({ isArray: val instanceof Array }); + }, + }, + }, + data: { + isArray: false, + rowArray: [], + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/skeleton/index.json b/app/miniprogram_npm/@vant/weapp/skeleton/index.json new file mode 100644 index 0000000..a89ef4d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/skeleton/index.json @@ -0,0 +1,4 @@ +{ + "component": true, + "usingComponents": {} +} diff --git a/app/miniprogram_npm/@vant/weapp/skeleton/index.wxml b/app/miniprogram_npm/@vant/weapp/skeleton/index.wxml new file mode 100644 index 0000000..058e2ef --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/skeleton/index.wxml @@ -0,0 +1,29 @@ + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/skeleton/index.wxss b/app/miniprogram_npm/@vant/weapp/skeleton/index.wxss new file mode 100644 index 0000000..d59a5ed --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/skeleton/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-skeleton{box-sizing:border-box;display:flex;padding:var(--skeleton-padding,0 16px);width:100%}.van-skeleton__avatar{background-color:var(--skeleton-avatar-background-color,#f2f3f5);flex-shrink:0;margin-right:var(--padding-md,16px)}.van-skeleton__avatar--round{border-radius:100%}.van-skeleton__content{flex:1}.van-skeleton__avatar+.van-skeleton__content{padding-top:var(--padding-xs,8px)}.van-skeleton__row,.van-skeleton__title{background-color:var(--skeleton-row-background-color,#f2f3f5);height:var(--skeleton-row-height,16px)}.van-skeleton__title{margin:0}.van-skeleton__row:not(:first-child){margin-top:var(--skeleton-row-margin-top,12px)}.van-skeleton__title+.van-skeleton__row{margin-top:20px}.van-skeleton--animate{animation:van-skeleton-blink 1.2s ease-in-out infinite}@keyframes van-skeleton-blink{50%{opacity:.6}} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.d.ts b/app/miniprogram_npm/@vant/weapp/slider/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.js b/app/miniprogram_npm/@vant/weapp/slider/index.js new file mode 100644 index 0000000..92adca8 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.js @@ -0,0 +1,206 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var version_1 = require("../common/version"); +var utils_1 = require("../common/utils"); +var DRAG_STATUS = { + START: 'start', + MOVING: 'moving', + END: 'end', +}; +(0, component_1.VantComponent)({ + mixins: [touch_1.touch], + props: { + range: Boolean, + disabled: Boolean, + useButtonSlot: Boolean, + activeColor: String, + inactiveColor: String, + max: { + type: Number, + value: 100, + }, + min: { + type: Number, + value: 0, + }, + step: { + type: Number, + value: 1, + }, + value: { + type: null, + value: 0, + observer: function (val) { + if (val !== this.value) { + this.updateValue(val); + } + }, + }, + vertical: Boolean, + barHeight: null, + }, + created: function () { + this.updateValue(this.data.value); + }, + methods: { + onTouchStart: function (event) { + var _this = this; + if (this.data.disabled) + return; + var index = event.currentTarget.dataset.index; + if (typeof index === 'number') { + this.buttonIndex = index; + } + this.touchStart(event); + this.startValue = this.format(this.value); + this.newValue = this.value; + if (this.isRange(this.newValue)) { + this.startValue = this.newValue.map(function (val) { return _this.format(val); }); + } + else { + this.startValue = this.format(this.newValue); + } + this.dragStatus = DRAG_STATUS.START; + }, + onTouchMove: function (event) { + var _this = this; + if (this.data.disabled) + return; + if (this.dragStatus === DRAG_STATUS.START) { + this.$emit('drag-start'); + } + this.touchMove(event); + this.dragStatus = DRAG_STATUS.MOVING; + (0, utils_1.getRect)(this, '.van-slider').then(function (rect) { + var vertical = _this.data.vertical; + var delta = vertical ? _this.deltaY : _this.deltaX; + var total = vertical ? rect.height : rect.width; + var diff = (delta / total) * _this.getRange(); + if (_this.isRange(_this.startValue)) { + _this.newValue[_this.buttonIndex] = + _this.startValue[_this.buttonIndex] + diff; + } + else { + _this.newValue = _this.startValue + diff; + } + _this.updateValue(_this.newValue, false, true); + }); + }, + onTouchEnd: function () { + var _this = this; + if (this.data.disabled) + return; + if (this.dragStatus === DRAG_STATUS.MOVING) { + this.dragStatus = DRAG_STATUS.END; + (0, utils_1.nextTick)(function () { + _this.updateValue(_this.newValue, true); + _this.$emit('drag-end'); + }); + } + }, + onClick: function (event) { + var _this = this; + if (this.data.disabled) + return; + var min = this.data.min; + (0, utils_1.getRect)(this, '.van-slider').then(function (rect) { + var vertical = _this.data.vertical; + var touch = event.touches[0]; + var delta = vertical + ? touch.clientY - rect.top + : touch.clientX - rect.left; + var total = vertical ? rect.height : rect.width; + var value = Number(min) + (delta / total) * _this.getRange(); + if (_this.isRange(_this.value)) { + var _a = _this.value, left = _a[0], right = _a[1]; + var middle = (left + right) / 2; + if (value <= middle) { + _this.updateValue([value, right], true); + } + else { + _this.updateValue([left, value], true); + } + } + else { + _this.updateValue(value, true); + } + }); + }, + isRange: function (val) { + var range = this.data.range; + return range && Array.isArray(val); + }, + handleOverlap: function (value) { + if (value[0] > value[1]) { + return value.slice(0).reverse(); + } + return value; + }, + updateValue: function (value, end, drag) { + var _this = this; + if (this.isRange(value)) { + value = this.handleOverlap(value).map(function (val) { return _this.format(val); }); + } + else { + value = this.format(value); + } + this.value = value; + var vertical = this.data.vertical; + var mainAxis = vertical ? 'height' : 'width'; + this.setData({ + wrapperStyle: "\n background: ".concat(this.data.inactiveColor || '', ";\n ").concat(vertical ? 'width' : 'height', ": ").concat((0, utils_1.addUnit)(this.data.barHeight) || '', ";\n "), + barStyle: "\n ".concat(mainAxis, ": ").concat(this.calcMainAxis(), ";\n left: ").concat(vertical ? 0 : this.calcOffset(), ";\n top: ").concat(vertical ? this.calcOffset() : 0, ";\n ").concat(drag ? 'transition: none;' : '', "\n "), + }); + if (drag) { + this.$emit('drag', { value: value }); + } + if (end) { + this.$emit('change', value); + } + if ((drag || end) && (0, version_1.canIUseModel)()) { + this.setData({ value: value }); + } + }, + getScope: function () { + return Number(this.data.max) - Number(this.data.min); + }, + getRange: function () { + var _a = this.data, max = _a.max, min = _a.min; + return max - min; + }, + getOffsetWidth: function (current, min) { + var scope = this.getScope(); + // 避免最小值小于最小step时出现负数情况 + return "".concat(Math.max(((current - min) * 100) / scope, 0), "%"); + }, + // 计算选中条的长度百分比 + calcMainAxis: function () { + var value = this.value; + var min = this.data.min; + if (this.isRange(value)) { + return this.getOffsetWidth(value[1], value[0]); + } + return this.getOffsetWidth(value, Number(min)); + }, + // 计算选中条的开始位置的偏移量 + calcOffset: function () { + var value = this.value; + var min = this.data.min; + var scope = this.getScope(); + if (this.isRange(value)) { + return "".concat(((value[0] - Number(min)) * 100) / scope, "%"); + } + return '0%'; + }, + format: function (value) { + var min = +this.data.min; + var max = +this.data.max; + var step = +this.data.step; + value = (0, utils_1.clamp)(value, min, max); + var diff = Math.round((value - min) / step) * step; + return (0, utils_1.addNumber)(min, diff); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.json b/app/miniprogram_npm/@vant/weapp/slider/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.wxml b/app/miniprogram_npm/@vant/weapp/slider/index.wxml new file mode 100644 index 0000000..7c0184f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.wxml @@ -0,0 +1,68 @@ + + + + + + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.wxs b/app/miniprogram_npm/@vant/weapp/slider/index.wxs new file mode 100644 index 0000000..7c43e6e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.wxs @@ -0,0 +1,14 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function barStyle(barHeight, activeColor) { + return style({ + height: addUnit(barHeight), + background: activeColor, + }); +} + +module.exports = { + barStyle: barStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/slider/index.wxss b/app/miniprogram_npm/@vant/weapp/slider/index.wxss new file mode 100644 index 0000000..d1587de --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/slider/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-slider{background-color:var(--slider-inactive-background-color,#ebedf0);border-radius:999px;height:var(--slider-bar-height,2px);position:relative}.van-slider:before{bottom:calc(var(--padding-xs, 8px)*-1);content:"";left:0;position:absolute;right:0;top:calc(var(--padding-xs, 8px)*-1)}.van-slider__bar{background-color:var(--slider-active-background-color,#1989fa);border-radius:inherit;height:100%;position:relative;transition:all .2s;width:100%}.van-slider__button{background-color:var(--slider-button-background-color,#fff);border-radius:var(--slider-button-border-radius,50%);box-shadow:var(--slider-button-box-shadow,0 1px 2px rgba(0,0,0,.5));height:var(--slider-button-height,24px);width:var(--slider-button-width,24px)}.van-slider__button-wrapper,.van-slider__button-wrapper-right{position:absolute;right:0;top:50%;transform:translate3d(50%,-50%,0)}.van-slider__button-wrapper-left{left:0;position:absolute;top:50%;transform:translate3d(-50%,-50%,0)}.van-slider--disabled{opacity:var(--slider-disabled-opacity,.5)}.van-slider--vertical{display:inline-block;height:100%;width:var(--slider-bar-height,2px)}.van-slider--vertical .van-slider__button-wrapper,.van-slider--vertical .van-slider__button-wrapper-right{bottom:0;right:50%;top:auto;transform:translate3d(50%,50%,0)}.van-slider--vertical .van-slider__button-wrapper-left{left:auto;right:50%;top:0;transform:translate3d(50%,-50%,0)}.van-slider--vertical:before{bottom:0;left:-8px;right:-8px;top:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.d.ts b/app/miniprogram_npm/@vant/weapp/stepper/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.js b/app/miniprogram_npm/@vant/weapp/stepper/index.js new file mode 100644 index 0000000..0f91fbb --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.js @@ -0,0 +1,199 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var LONG_PRESS_START_TIME = 600; +var LONG_PRESS_INTERVAL = 200; +// add num and avoid float number +function add(num1, num2) { + var cardinal = Math.pow(10, 10); + return Math.round((num1 + num2) * cardinal) / cardinal; +} +function equal(value1, value2) { + return String(value1) === String(value2); +} +(0, component_1.VantComponent)({ + field: true, + classes: ['input-class', 'plus-class', 'minus-class'], + props: { + value: { + type: null, + }, + integer: { + type: Boolean, + observer: 'check', + }, + disabled: Boolean, + inputWidth: String, + buttonSize: String, + asyncChange: Boolean, + disableInput: Boolean, + decimalLength: { + type: Number, + value: null, + observer: 'check', + }, + min: { + type: null, + value: 1, + observer: 'check', + }, + max: { + type: null, + value: Number.MAX_SAFE_INTEGER, + observer: 'check', + }, + step: { + type: null, + value: 1, + }, + showPlus: { + type: Boolean, + value: true, + }, + showMinus: { + type: Boolean, + value: true, + }, + disablePlus: Boolean, + disableMinus: Boolean, + longPress: { + type: Boolean, + value: true, + }, + theme: String, + alwaysEmbed: Boolean, + }, + data: { + currentValue: '', + }, + watch: { + value: function () { + this.observeValue(); + }, + }, + created: function () { + this.setData({ + currentValue: this.format(this.data.value).newValue, + }); + }, + methods: { + observeValue: function () { + var value = this.data.value; + this.setData({ currentValue: this.format(value).newValue }); + }, + check: function () { + var newValue = this.format(this.data.currentValue).newValue; + if (!equal(newValue, this.data.currentValue)) { + this.setData({ currentValue: newValue }); + } + }, + isDisabled: function (type) { + var _a = this.data, disabled = _a.disabled, disablePlus = _a.disablePlus, disableMinus = _a.disableMinus, currentValue = _a.currentValue, max = _a.max, min = _a.min; + if (type === 'plus') { + return disabled || disablePlus || +currentValue >= +max; + } + return disabled || disableMinus || +currentValue <= +min; + }, + onFocus: function (event) { + this.$emit('focus', event.detail); + }, + onBlur: function (event) { + var data = this.format(event.detail.value); + this.setData({ currentValue: data.newValue }); + this.emitChange(data); + this.$emit('blur', __assign(__assign({}, event.detail), { value: +data.newValue })); + }, + // filter illegal characters + filter: function (value) { + value = String(value).replace(/[^0-9.-]/g, ''); + if (this.data.integer && value.indexOf('.') !== -1) { + value = value.split('.')[0]; + } + return value; + }, + format: function (value) { + // filter illegal characters and format integer + var safeValue = this.filter(value); + // format range + var rangeValue = Math.max(Math.min(this.data.max, +safeValue), this.data.min); + // format decimal + var newValue = (0, validator_1.isDef)(this.data.decimalLength) + ? rangeValue.toFixed(this.data.decimalLength) + : String(rangeValue); + return { value: value, newValue: newValue }; + }, + onInput: function (event) { + var _a = (event.detail || {}).value, value = _a === void 0 ? '' : _a; + // allow input to be empty + if (value === '') { + return; + } + var formatted = this.format(value); + this.emitChange(formatted); + }, + emitChange: function (data) { + var value = data.value, newValue = data.newValue; + if (!this.data.asyncChange) { + // fix when input 11. parsed to 11, unable to enter decimal + this.setData({ currentValue: +value === +newValue ? value : newValue }); + } + this.$emit('change', +newValue); + }, + onChange: function () { + var type = this.type; + if (this.isDisabled(type)) { + this.$emit('overlimit', type); + return; + } + var diff = type === 'minus' ? -this.data.step : +this.data.step; + var value = this.format(String(add(+this.data.currentValue, diff))); + this.emitChange(value); + this.$emit(type); + }, + longPressStep: function () { + var _this = this; + this.longPressTimer = setTimeout(function () { + _this.onChange(); + _this.longPressStep(); + }, LONG_PRESS_INTERVAL); + }, + onTap: function (event) { + var type = event.currentTarget.dataset.type; + this.type = type; + this.onChange(); + }, + onTouchStart: function (event) { + var _this = this; + if (!this.data.longPress) { + return; + } + clearTimeout(this.longPressTimer); + var type = event.currentTarget.dataset.type; + this.type = type; + this.isLongPress = false; + this.longPressTimer = setTimeout(function () { + _this.isLongPress = true; + _this.onChange(); + _this.longPressStep(); + }, LONG_PRESS_START_TIME); + }, + onTouchEnd: function () { + if (!this.data.longPress) { + return; + } + clearTimeout(this.longPressTimer); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.json b/app/miniprogram_npm/@vant/weapp/stepper/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.wxml b/app/miniprogram_npm/@vant/weapp/stepper/index.wxml new file mode 100644 index 0000000..6dd44bc --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.wxml @@ -0,0 +1,43 @@ + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.wxs b/app/miniprogram_npm/@vant/weapp/stepper/index.wxs new file mode 100644 index 0000000..a13e818 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.wxs @@ -0,0 +1,22 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function buttonStyle(data) { + return style({ + width: addUnit(data.buttonSize), + height: addUnit(data.buttonSize), + }); +} + +function inputStyle(data) { + return style({ + width: addUnit(data.inputWidth), + height: addUnit(data.buttonSize), + }); +} + +module.exports = { + buttonStyle: buttonStyle, + inputStyle: inputStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/stepper/index.wxss b/app/miniprogram_npm/@vant/weapp/stepper/index.wxss new file mode 100644 index 0000000..2561a7e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/stepper/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-stepper{font-size:0}.van-stepper__minus,.van-stepper__plus{background-color:var(--stepper-background-color,#f2f3f5);border:0;box-sizing:border-box;color:var(--stepper-button-icon-color,#323233);display:inline-block;height:var(--stepper-input-height,28px);margin:1px;padding:var(--padding-base,4px);position:relative;vertical-align:middle;width:var(--stepper-input-height,28px)}.van-stepper__minus:before,.van-stepper__plus:before{height:1px;width:9px}.van-stepper__minus:after,.van-stepper__plus:after{height:9px;width:1px}.van-stepper__minus:empty.van-stepper__minus:after,.van-stepper__minus:empty.van-stepper__minus:before,.van-stepper__minus:empty.van-stepper__plus:after,.van-stepper__minus:empty.van-stepper__plus:before,.van-stepper__plus:empty.van-stepper__minus:after,.van-stepper__plus:empty.van-stepper__minus:before,.van-stepper__plus:empty.van-stepper__plus:after,.van-stepper__plus:empty.van-stepper__plus:before{background-color:currentColor;bottom:0;content:"";left:0;margin:auto;position:absolute;right:0;top:0}.van-stepper__minus--hover,.van-stepper__plus--hover{background-color:var(--stepper-active-color,#e8e8e8)}.van-stepper__minus--disabled,.van-stepper__plus--disabled{color:var(--stepper-button-disabled-icon-color,#c8c9cc)}.van-stepper__minus--disabled,.van-stepper__minus--disabled.van-stepper__minus--hover,.van-stepper__minus--disabled.van-stepper__plus--hover,.van-stepper__plus--disabled,.van-stepper__plus--disabled.van-stepper__minus--hover,.van-stepper__plus--disabled.van-stepper__plus--hover{background-color:var(--stepper-button-disabled-color,#f7f8fa)}.van-stepper__minus{border-radius:var(--stepper-border-radius,var(--stepper-border-radius,4px)) 0 0 var(--stepper-border-radius,var(--stepper-border-radius,4px))}.van-stepper__minus:after{display:none}.van-stepper__plus{border-radius:0 var(--stepper-border-radius,var(--stepper-border-radius,4px)) var(--stepper-border-radius,var(--stepper-border-radius,4px)) 0}.van-stepper--round .van-stepper__input{background-color:initial!important}.van-stepper--round .van-stepper__minus,.van-stepper--round .van-stepper__plus{border-radius:100%}.van-stepper--round .van-stepper__minus:active,.van-stepper--round .van-stepper__plus:active{opacity:.7}.van-stepper--round .van-stepper__minus--disabled,.van-stepper--round .van-stepper__minus--disabled:active,.van-stepper--round .van-stepper__plus--disabled,.van-stepper--round .van-stepper__plus--disabled:active{opacity:.3}.van-stepper--round .van-stepper__plus{background-color:#ee0a24;color:#fff}.van-stepper--round .van-stepper__minus{background-color:#fff;border:1px solid #ee0a24;color:#ee0a24}.van-stepper__input{-webkit-appearance:none;background-color:var(--stepper-background-color,#f2f3f5);border:0;border-radius:0;border-width:1px 0;box-sizing:border-box;color:var(--stepper-input-text-color,#323233);display:inline-block;font-size:var(--stepper-input-font-size,14px);height:var(--stepper-input-height,28px);margin:1px;min-height:0;padding:1px;text-align:center;vertical-align:middle;width:var(--stepper-input-width,32px)}.van-stepper__input--disabled{background-color:var(--stepper-input-disabled-background-color,#f2f3f5);color:var(--stepper-input-disabled-text-color,#c8c9cc)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/steps/index.d.ts b/app/miniprogram_npm/@vant/weapp/steps/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/steps/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/steps/index.js b/app/miniprogram_npm/@vant/weapp/steps/index.js new file mode 100644 index 0000000..1a9986a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/steps/index.js @@ -0,0 +1,35 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var color_1 = require("../common/color"); +(0, component_1.VantComponent)({ + classes: ['desc-class'], + props: { + icon: String, + steps: Array, + active: Number, + direction: { + type: String, + value: 'horizontal', + }, + activeColor: { + type: String, + value: color_1.GREEN, + }, + inactiveColor: { + type: String, + value: color_1.GRAY_DARK, + }, + activeIcon: { + type: String, + value: 'checked', + }, + inactiveIcon: String, + }, + methods: { + onClick: function (event) { + var index = event.currentTarget.dataset.index; + this.$emit('click-step', index); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/steps/index.json b/app/miniprogram_npm/@vant/weapp/steps/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/steps/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/steps/index.wxml b/app/miniprogram_npm/@vant/weapp/steps/index.wxml new file mode 100644 index 0000000..00c8e10 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/steps/index.wxml @@ -0,0 +1,54 @@ + + + + + + + {{ item.text }} + {{ item.desc }} + + + + + + + + + + + + + + + +function get(index, active) { + if (index < active) { + return 'finish'; + } else if (index === active) { + return 'process'; + } + + return 'inactive'; +} + +module.exports = get; + diff --git a/app/miniprogram_npm/@vant/weapp/steps/index.wxss b/app/miniprogram_npm/@vant/weapp/steps/index.wxss new file mode 100644 index 0000000..7379485 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/steps/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-steps{background-color:var(--steps-background-color,#fff);overflow:hidden}.van-steps--horizontal{padding:10px}.van-steps--horizontal .van-step__wrapper{display:flex;overflow:hidden;position:relative}.van-steps--vertical{padding-left:10px}.van-steps--vertical .van-step__wrapper{padding:0 0 0 20px}.van-step{color:var(--step-text-color,#969799);flex:1;font-size:var(--step-font-size,14px);position:relative}.van-step--finish{color:var(--step-finish-text-color,#323233)}.van-step__circle{background-color:var(--step-circle-color,#969799);border-radius:50%;height:var(--step-circle-size,5px);width:var(--step-circle-size,5px)}.van-step--horizontal{padding-bottom:14px}.van-step--horizontal:first-child .van-step__title{transform:none}.van-step--horizontal:first-child .van-step__circle-container{padding:0 8px 0 0;transform:translate3d(0,50%,0)}.van-step--horizontal:last-child{bottom:0;position:absolute;right:0;top:0;width:auto}.van-step--horizontal:last-child .van-step__title{text-align:right;transform:none}.van-step--horizontal:last-child .van-step__circle-container{padding:0 0 0 8px;right:0;transform:translate3d(0,50%,0)}.van-step--horizontal .van-step__circle-container{background-color:#fff;bottom:6px;padding:0 var(--padding-xs,8px);position:absolute;transform:translate3d(-50%,50%,0);z-index:1}.van-step--horizontal .van-step__title{display:inline-block;font-size:var(--step-horizontal-title-font-size,12px);transform:translate3d(-50%,0,0)}.van-step--horizontal .van-step__line{background-color:var(--step-line-color,#ebedf0);bottom:6px;height:1px;left:0;position:absolute;right:0;transform:translate3d(0,50%,0)}.van-step--horizontal.van-step--process{color:var(--step-process-text-color,#323233)}.van-step--horizontal.van-step--process .van-step__icon{display:block;font-size:var(--step-icon-size,12px);line-height:1}.van-step--vertical{line-height:18px;padding:10px 10px 10px 0}.van-step--vertical:after{border-bottom-width:1px}.van-step--vertical:last-child:after{border-bottom-width:none}.van-step--vertical:first-child:before{background-color:#fff;content:"";height:20px;left:-15px;position:absolute;top:0;width:1px;z-index:1}.van-step--vertical .van-step__circle,.van-step--vertical .van-step__icon,.van-step--vertical .van-step__line{left:-14px;position:absolute;top:19px;transform:translate3d(-50%,-50%,0);z-index:2}.van-step--vertical .van-step__icon{background-color:var(--steps-background-color,#fff);font-size:var(--step-icon-size,12px);line-height:1}.van-step--vertical .van-step__line{background-color:var(--step-line-color,#ebedf0);height:100%;transform:translate3d(-50%,0,0);width:1px;z-index:1} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.d.ts b/app/miniprogram_npm/@vant/weapp/sticky/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.js b/app/miniprogram_npm/@vant/weapp/sticky/index.js new file mode 100644 index 0000000..ffeb125 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.js @@ -0,0 +1,126 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var utils_1 = require("../common/utils"); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var page_scroll_1 = require("../mixins/page-scroll"); +var ROOT_ELEMENT = '.van-sticky'; +(0, component_1.VantComponent)({ + props: { + zIndex: { + type: Number, + value: 99, + }, + offsetTop: { + type: Number, + value: 0, + observer: 'onScroll', + }, + disabled: { + type: Boolean, + observer: 'onScroll', + }, + container: { + type: null, + observer: 'onScroll', + }, + scrollTop: { + type: null, + observer: function (val) { + this.onScroll({ scrollTop: val }); + }, + }, + }, + mixins: [ + (0, page_scroll_1.pageScrollMixin)(function (event) { + if (this.data.scrollTop != null) { + return; + } + this.onScroll(event); + }), + ], + data: { + height: 0, + fixed: false, + transform: 0, + }, + mounted: function () { + this.onScroll(); + }, + methods: { + onScroll: function (_a) { + var _this = this; + var _b = _a === void 0 ? {} : _a, scrollTop = _b.scrollTop; + var _c = this.data, container = _c.container, offsetTop = _c.offsetTop, disabled = _c.disabled; + if (disabled) { + this.setDataAfterDiff({ + fixed: false, + transform: 0, + }); + return; + } + this.scrollTop = scrollTop || this.scrollTop; + if (typeof container === 'function') { + Promise.all([(0, utils_1.getRect)(this, ROOT_ELEMENT), this.getContainerRect()]) + .then(function (_a) { + var root = _a[0], container = _a[1]; + if (offsetTop + root.height > container.height + container.top) { + _this.setDataAfterDiff({ + fixed: false, + transform: container.height - root.height, + }); + } + else if (offsetTop >= root.top) { + _this.setDataAfterDiff({ + fixed: true, + height: root.height, + transform: 0, + }); + } + else { + _this.setDataAfterDiff({ fixed: false, transform: 0 }); + } + }) + .catch(function () { }); + return; + } + (0, utils_1.getRect)(this, ROOT_ELEMENT).then(function (root) { + if (!(0, validator_1.isDef)(root) || (!root.width && !root.height)) { + return; + } + if (offsetTop >= root.top) { + _this.setDataAfterDiff({ fixed: true, height: root.height }); + _this.transform = 0; + } + else { + _this.setDataAfterDiff({ fixed: false }); + } + }); + }, + setDataAfterDiff: function (data) { + var _this = this; + wx.nextTick(function () { + var diff = Object.keys(data).reduce(function (prev, key) { + if (data[key] !== _this.data[key]) { + prev[key] = data[key]; + } + return prev; + }, {}); + if (Object.keys(diff).length > 0) { + _this.setData(diff); + } + _this.$emit('scroll', { + scrollTop: _this.scrollTop, + isFixed: data.fixed || _this.data.fixed, + }); + }); + }, + getContainerRect: function () { + var nodesRef = this.data.container(); + if (!nodesRef) { + return Promise.reject(new Error('not found container')); + } + return new Promise(function (resolve) { return nodesRef.boundingClientRect(resolve).exec(); }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.json b/app/miniprogram_npm/@vant/weapp/sticky/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.wxml b/app/miniprogram_npm/@vant/weapp/sticky/index.wxml new file mode 100644 index 0000000..15e9f4a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.wxml @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.wxs b/app/miniprogram_npm/@vant/weapp/sticky/index.wxs new file mode 100644 index 0000000..be99d89 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.wxs @@ -0,0 +1,25 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function wrapStyle(data) { + return style({ + transform: data.transform + ? 'translate3d(0, ' + data.transform + 'px, 0)' + : '', + top: data.fixed ? addUnit(data.offsetTop) : '', + 'z-index': data.zIndex, + }); +} + +function containerStyle(data) { + return style({ + height: data.fixed ? addUnit(data.height) : '', + 'z-index': data.zIndex, + }); +} + +module.exports = { + wrapStyle: wrapStyle, + containerStyle: containerStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/sticky/index.wxss b/app/miniprogram_npm/@vant/weapp/sticky/index.wxss new file mode 100644 index 0000000..34d76aa --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/sticky/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-sticky{position:relative}.van-sticky-wrap--fixed{left:0;position:fixed;right:0} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts b/app/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/submit-bar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/submit-bar/index.js b/app/miniprogram_npm/@vant/weapp/submit-bar/index.js new file mode 100644 index 0000000..d3bfc25 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/submit-bar/index.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: ['bar-class', 'price-class', 'button-class'], + props: { + tip: { + type: null, + observer: 'updateTip', + }, + tipIcon: String, + type: Number, + price: { + type: null, + observer: 'updatePrice', + }, + label: String, + loading: Boolean, + disabled: Boolean, + buttonText: String, + currency: { + type: String, + value: '¥', + }, + buttonType: { + type: String, + value: 'danger', + }, + decimalLength: { + type: Number, + value: 2, + observer: 'updatePrice', + }, + suffixLabel: String, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, + methods: { + updatePrice: function () { + var _a = this.data, price = _a.price, decimalLength = _a.decimalLength; + var priceStrArr = typeof price === 'number' && + (price / 100).toFixed(decimalLength).split('.'); + this.setData({ + hasPrice: typeof price === 'number', + integerStr: priceStrArr && priceStrArr[0], + decimalStr: decimalLength && priceStrArr ? ".".concat(priceStrArr[1]) : '', + }); + }, + updateTip: function () { + this.setData({ hasTip: typeof this.data.tip === 'string' }); + }, + onSubmit: function (event) { + this.$emit('submit', event.detail); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/submit-bar/index.json b/app/miniprogram_npm/@vant/weapp/submit-bar/index.json new file mode 100644 index 0000000..bda9b8d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/submit-bar/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-button": "../button/index", + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxml b/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxml new file mode 100644 index 0000000..a56dd46 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxml @@ -0,0 +1,44 @@ + + + + + + + + + {{ tip }} + + + + + + + + {{ label || '合计:' }} + + {{ currency }} + {{ integerStr }}{{decimalStr}} + + {{ suffixLabel }} + + + {{ loading ? '' : buttonText }} + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxss b/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxss new file mode 100644 index 0000000..8379a30 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/submit-bar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-submit-bar{background-color:var(--submit-bar-background-color,#fff);bottom:0;left:0;position:fixed;-webkit-user-select:none;user-select:none;width:100%;z-index:var(--submit-bar-z-index,100)}.van-submit-bar__tip{background-color:var(--submit-bar-tip-background-color,#fff7cc);color:var(--submit-bar-tip-color,#f56723);font-size:var(--submit-bar-tip-font-size,12px);line-height:var(--submit-bar-tip-line-height,1.5);padding:var(--submit-bar-tip-padding,10px)}.van-submit-bar__tip:empty{display:none}.van-submit-bar__tip-icon{margin-right:4px;vertical-align:middle}.van-submit-bar__tip-text{display:inline;vertical-align:middle}.van-submit-bar__bar{align-items:center;background-color:var(--submit-bar-background-color,#fff);display:flex;font-size:var(--submit-bar-text-font-size,14px);height:var(--submit-bar-height,50px);justify-content:flex-end;padding:var(--submit-bar-padding,0 16px)}.van-submit-bar__safe{height:constant(safe-area-inset-bottom);height:env(safe-area-inset-bottom)}.van-submit-bar__text{color:var(--submit-bar-text-color,#323233);flex:1;font-weight:var(--font-weight-bold,500);padding-right:var(--padding-sm,12px);text-align:right}.van-submit-bar__price{color:var(--submit-bar-price-color,#ee0a24);font-size:var(--submit-bar-price-font-size,12px);font-weight:var(--font-weight-bold,500)}.van-submit-bar__price-integer{font-family:Avenir-Heavy,PingFang SC,Helvetica Neue,Arial,sans-serif;font-size:20px}.van-submit-bar__currency{font-size:var(--submit-bar-currency-font-size,12px)}.van-submit-bar__suffix-label{margin-left:5px}.van-submit-bar__button{--button-default-height:var(--submit-bar-button-height,40px)!important;--button-line-height:var(--submit-bar-button-height,40px)!important;font-weight:var(--font-weight-bold,500);width:var(--submit-bar-button-width,110px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/swipe-cell/index.js b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.js new file mode 100644 index 0000000..1582b6c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.js @@ -0,0 +1,135 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var utils_1 = require("../common/utils"); +var THRESHOLD = 0.3; +var ARRAY = []; +(0, component_1.VantComponent)({ + props: { + disabled: Boolean, + leftWidth: { + type: Number, + value: 0, + observer: function (leftWidth) { + if (leftWidth === void 0) { leftWidth = 0; } + if (this.offset > 0) { + this.swipeMove(leftWidth); + } + }, + }, + rightWidth: { + type: Number, + value: 0, + observer: function (rightWidth) { + if (rightWidth === void 0) { rightWidth = 0; } + if (this.offset < 0) { + this.swipeMove(-rightWidth); + } + }, + }, + asyncClose: Boolean, + name: { + type: null, + value: '', + }, + }, + mixins: [touch_1.touch], + data: { + catchMove: false, + wrapperStyle: '', + }, + created: function () { + this.offset = 0; + ARRAY.push(this); + }, + destroyed: function () { + var _this = this; + ARRAY = ARRAY.filter(function (item) { return item !== _this; }); + }, + methods: { + open: function (position) { + var _a = this.data, leftWidth = _a.leftWidth, rightWidth = _a.rightWidth; + var offset = position === 'left' ? leftWidth : -rightWidth; + this.swipeMove(offset); + this.$emit('open', { + position: position, + name: this.data.name, + }); + }, + close: function () { + this.swipeMove(0); + }, + swipeMove: function (offset) { + if (offset === void 0) { offset = 0; } + this.offset = (0, utils_1.range)(offset, -this.data.rightWidth, this.data.leftWidth); + var transform = "translate3d(".concat(this.offset, "px, 0, 0)"); + var transition = this.dragging + ? 'none' + : 'transform .6s cubic-bezier(0.18, 0.89, 0.32, 1)'; + this.setData({ + wrapperStyle: "\n -webkit-transform: ".concat(transform, ";\n -webkit-transition: ").concat(transition, ";\n transform: ").concat(transform, ";\n transition: ").concat(transition, ";\n "), + }); + }, + swipeLeaveTransition: function () { + var _a = this.data, leftWidth = _a.leftWidth, rightWidth = _a.rightWidth; + var offset = this.offset; + if (rightWidth > 0 && -offset > rightWidth * THRESHOLD) { + this.open('right'); + } + else if (leftWidth > 0 && offset > leftWidth * THRESHOLD) { + this.open('left'); + } + else { + this.swipeMove(0); + } + this.setData({ catchMove: false }); + }, + startDrag: function (event) { + if (this.data.disabled) { + return; + } + this.startOffset = this.offset; + this.touchStart(event); + }, + noop: function () { }, + onDrag: function (event) { + var _this = this; + if (this.data.disabled) { + return; + } + this.touchMove(event); + if (this.direction !== 'horizontal') { + return; + } + this.dragging = true; + ARRAY.filter(function (item) { return item !== _this && item.offset !== 0; }).forEach(function (item) { return item.close(); }); + this.setData({ catchMove: true }); + this.swipeMove(this.startOffset + this.deltaX); + }, + endDrag: function () { + if (this.data.disabled) { + return; + } + this.dragging = false; + this.swipeLeaveTransition(); + }, + onClick: function (event) { + var _a = event.currentTarget.dataset.key, position = _a === void 0 ? 'outside' : _a; + this.$emit('click', position); + if (!this.offset) { + return; + } + if (this.data.asyncClose) { + this.$emit('close', { + position: position, + instance: this, + name: this.data.name, + }); + } + else { + this.swipeMove(0); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/swipe-cell/index.json b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml new file mode 100644 index 0000000..3f7f726 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxml @@ -0,0 +1,20 @@ + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss new file mode 100644 index 0000000..3a265bf --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/swipe-cell/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-swipe-cell{overflow:hidden;position:relative}.van-swipe-cell__left,.van-swipe-cell__right{height:100%;position:absolute;top:0}.van-swipe-cell__left{left:0;transform:translate3d(-100%,0,0)}.van-swipe-cell__right{right:0;transform:translate3d(100%,0,0)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.d.ts b/app/miniprogram_npm/@vant/weapp/switch/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.js b/app/miniprogram_npm/@vant/weapp/switch/index.js new file mode 100644 index 0000000..1d2317f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.js @@ -0,0 +1,38 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + field: true, + classes: ['node-class'], + props: { + checked: null, + loading: Boolean, + disabled: Boolean, + activeColor: String, + inactiveColor: String, + size: { + type: String, + value: '30', + }, + activeValue: { + type: null, + value: true, + }, + inactiveValue: { + type: null, + value: false, + }, + }, + methods: { + onClick: function () { + var _a = this.data, activeValue = _a.activeValue, inactiveValue = _a.inactiveValue, disabled = _a.disabled, loading = _a.loading; + if (disabled || loading) { + return; + } + var checked = this.data.checked === activeValue; + var value = checked ? inactiveValue : activeValue; + this.$emit('input', value); + this.$emit('change', value); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.json b/app/miniprogram_npm/@vant/weapp/switch/index.json new file mode 100644 index 0000000..01077f5 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.wxml b/app/miniprogram_npm/@vant/weapp/switch/index.wxml new file mode 100644 index 0000000..4e9789b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.wxml @@ -0,0 +1,16 @@ + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.wxs b/app/miniprogram_npm/@vant/weapp/switch/index.wxs new file mode 100644 index 0000000..3ae387a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.wxs @@ -0,0 +1,26 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function rootStyle(data) { + var currentColor = data.checked === data.activeValue ? data.activeColor : data.inactiveColor; + + return style({ + 'font-size': addUnit(data.size), + 'background-color': currentColor, + }); +} + +var BLUE = '#1989fa'; +var GRAY_DARK = '#969799'; + +function loadingColor(data) { + return data.checked === data.activeValue + ? data.activeColor || BLUE + : data.inactiveColor || GRAY_DARK; +} + +module.exports = { + rootStyle: rootStyle, + loadingColor: loadingColor, +}; diff --git a/app/miniprogram_npm/@vant/weapp/switch/index.wxss b/app/miniprogram_npm/@vant/weapp/switch/index.wxss new file mode 100644 index 0000000..35929de --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/switch/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-switch{background-color:var(--switch-background-color,#fff);border:var(--switch-border,1px solid rgba(0,0,0,.1));border-radius:var(--switch-node-size,1em);box-sizing:initial;display:inline-block;height:var(--switch-height,1em);position:relative;transition:background-color var(--switch-transition-duration,.3s);width:var(--switch-width,2em)}.van-switch__node{background-color:var(--switch-node-background-color,#fff);border-radius:100%;box-shadow:var(--switch-node-box-shadow,0 3px 1px 0 rgba(0,0,0,.05),0 2px 2px 0 rgba(0,0,0,.1),0 3px 3px 0 rgba(0,0,0,.05));height:var(--switch-node-size,1em);left:0;position:absolute;top:0;transition:var(--switch-transition-duration,.3s) cubic-bezier(.3,1.05,.4,1.05);width:var(--switch-node-size,1em);z-index:var(--switch-node-z-index,1)}.van-switch__loading{height:50%;left:25%;position:absolute!important;top:25%;width:50%}.van-switch--on{background-color:var(--switch-on-background-color,#1989fa)}.van-switch--on .van-switch__node{transform:translateX(calc(var(--switch-width, 2em) - var(--switch-node-size, 1em)))}.van-switch--disabled{opacity:var(--switch-disabled-opacity,.4)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tab/index.d.ts b/app/miniprogram_npm/@vant/weapp/tab/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tab/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tab/index.js b/app/miniprogram_npm/@vant/weapp/tab/index.js new file mode 100644 index 0000000..ae4d06b --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tab/index.js @@ -0,0 +1,58 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var relation_1 = require("../common/relation"); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useParent)('tabs'), + props: { + dot: { + type: Boolean, + observer: 'update', + }, + info: { + type: null, + observer: 'update', + }, + title: { + type: String, + observer: 'update', + }, + disabled: { + type: Boolean, + observer: 'update', + }, + titleStyle: { + type: String, + observer: 'update', + }, + name: { + type: null, + value: '', + }, + }, + data: { + active: false, + }, + methods: { + getComputedName: function () { + if (this.data.name !== '') { + return this.data.name; + } + return this.index; + }, + updateRender: function (active, parent) { + var parentData = parent.data; + this.inited = this.inited || active; + this.setData({ + active: active, + shouldRender: this.inited || !parentData.lazyRender, + shouldShow: active || parentData.animated, + }); + }, + update: function () { + if (this.parent) { + this.parent.updateTabs(); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tab/index.json b/app/miniprogram_npm/@vant/weapp/tab/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tab/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/tab/index.wxml b/app/miniprogram_npm/@vant/weapp/tab/index.wxml new file mode 100644 index 0000000..f5e99f2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tab/index.wxml @@ -0,0 +1,8 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tab/index.wxss b/app/miniprogram_npm/@vant/weapp/tab/index.wxss new file mode 100644 index 0000000..1c90c88 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tab/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{box-sizing:border-box;flex-shrink:0;width:100%}.van-tab__pane{-webkit-overflow-scrolling:touch;box-sizing:border-box;overflow-y:auto}.van-tab__pane--active{height:auto}.van-tab__pane--inactive{height:0;overflow:visible} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tabbar-item/index.js b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.js new file mode 100644 index 0000000..58a5065 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + props: { + info: null, + name: null, + icon: String, + dot: Boolean, + url: { + type: String, + value: '', + }, + linkType: { + type: String, + value: 'redirectTo', + }, + iconPrefix: { + type: String, + value: 'van-icon', + }, + }, + relation: (0, relation_1.useParent)('tabbar'), + data: { + active: false, + activeColor: '', + inactiveColor: '', + }, + methods: { + onClick: function () { + var parent = this.parent; + if (parent) { + var index = parent.children.indexOf(this); + var active = this.data.name || index; + if (active !== this.data.active) { + parent.$emit('change', active); + } + } + var _a = this.data, url = _a.url, linkType = _a.linkType; + if (url && wx[linkType]) { + return wx[linkType]({ url: url }); + } + this.$emit('click'); + }, + updateFromParent: function () { + var parent = this.parent; + if (!parent) { + return; + } + var index = parent.children.indexOf(this); + var parentData = parent.data; + var data = this.data; + var active = (data.name || index) === parentData.active; + var patch = {}; + if (active !== data.active) { + patch.active = active; + } + if (parentData.activeColor !== data.activeColor) { + patch.activeColor = parentData.activeColor; + } + if (parentData.inactiveColor !== data.inactiveColor) { + patch.inactiveColor = parentData.inactiveColor; + } + if (Object.keys(patch).length > 0) { + this.setData(patch); + } + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tabbar-item/index.json b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.json new file mode 100644 index 0000000..16f174c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-info": "../info/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml new file mode 100644 index 0000000..524728f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxml @@ -0,0 +1,28 @@ + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss new file mode 100644 index 0000000..21ee224 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar-item/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';:host{flex:1}.van-tabbar-item{align-items:center;color:var(--tabbar-item-text-color,#646566);display:flex;flex-direction:column;font-size:var(--tabbar-item-font-size,12px);height:100%;justify-content:center;line-height:var(--tabbar-item-line-height,1)}.van-tabbar-item__icon{font-size:var(--tabbar-item-icon-size,22px);margin-bottom:var(--tabbar-item-margin-bottom,4px);position:relative}.van-tabbar-item__icon__inner{display:block;min-width:1em}.van-tabbar-item--active{color:var(--tabbar-item-active-color,#1989fa)}.van-tabbar-item__info{margin-top:2px} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tabbar/index.d.ts b/app/miniprogram_npm/@vant/weapp/tabbar/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tabbar/index.js b/app/miniprogram_npm/@vant/weapp/tabbar/index.js new file mode 100644 index 0000000..3db793d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar/index.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var relation_1 = require("../common/relation"); +var utils_1 = require("../common/utils"); +(0, component_1.VantComponent)({ + relation: (0, relation_1.useChildren)('tabbar-item', function () { + this.updateChildren(); + }), + props: { + active: { + type: null, + observer: 'updateChildren', + }, + activeColor: { + type: String, + observer: 'updateChildren', + }, + inactiveColor: { + type: String, + observer: 'updateChildren', + }, + fixed: { + type: Boolean, + value: true, + observer: 'setHeight', + }, + placeholder: { + type: Boolean, + observer: 'setHeight', + }, + border: { + type: Boolean, + value: true, + }, + zIndex: { + type: Number, + value: 1, + }, + safeAreaInsetBottom: { + type: Boolean, + value: true, + }, + }, + data: { + height: 50, + }, + methods: { + updateChildren: function () { + var children = this.children; + if (!Array.isArray(children) || !children.length) { + return; + } + children.forEach(function (child) { return child.updateFromParent(); }); + }, + setHeight: function () { + var _this = this; + if (!this.data.fixed || !this.data.placeholder) { + return; + } + wx.nextTick(function () { + (0, utils_1.getRect)(_this, '.van-tabbar').then(function (res) { + _this.setData({ height: res.height }); + }); + }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tabbar/index.json b/app/miniprogram_npm/@vant/weapp/tabbar/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/tabbar/index.wxml b/app/miniprogram_npm/@vant/weapp/tabbar/index.wxml new file mode 100644 index 0000000..43bb111 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar/index.wxml @@ -0,0 +1,10 @@ + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tabbar/index.wxss b/app/miniprogram_npm/@vant/weapp/tabbar/index.wxss new file mode 100644 index 0000000..42b6c1e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabbar/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tabbar{background-color:var(--tabbar-background-color,#fff);box-sizing:initial;display:flex;height:var(--tabbar-height,50px);width:100%}.van-tabbar--fixed{bottom:0;left:0;position:fixed}.van-tabbar--safe{padding-bottom:env(safe-area-inset-bottom)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.d.ts b/app/miniprogram_npm/@vant/weapp/tabs/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.js b/app/miniprogram_npm/@vant/weapp/tabs/index.js new file mode 100644 index 0000000..3121957 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.js @@ -0,0 +1,327 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var touch_1 = require("../mixins/touch"); +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +var relation_1 = require("../common/relation"); +(0, component_1.VantComponent)({ + mixins: [touch_1.touch], + classes: [ + 'nav-class', + 'tab-class', + 'tab-active-class', + 'line-class', + 'wrap-class', + ], + relation: (0, relation_1.useChildren)('tab', function () { + this.updateTabs(); + }), + props: { + sticky: Boolean, + border: Boolean, + swipeable: Boolean, + titleActiveColor: String, + titleInactiveColor: String, + color: String, + animated: { + type: Boolean, + observer: function () { + var _this = this; + this.children.forEach(function (child, index) { + return child.updateRender(index === _this.data.currentIndex, _this); + }); + }, + }, + lineWidth: { + type: null, + value: 40, + observer: 'resize', + }, + lineHeight: { + type: null, + value: -1, + }, + active: { + type: null, + value: 0, + observer: function (name) { + if (name !== this.getCurrentName()) { + this.setCurrentIndexByName(name); + } + }, + }, + type: { + type: String, + value: 'line', + }, + ellipsis: { + type: Boolean, + value: true, + }, + duration: { + type: Number, + value: 0.3, + }, + zIndex: { + type: Number, + value: 1, + }, + swipeThreshold: { + type: Number, + value: 5, + observer: function (value) { + this.setData({ + scrollable: this.children.length > value || !this.data.ellipsis, + }); + }, + }, + offsetTop: { + type: Number, + value: 0, + }, + lazyRender: { + type: Boolean, + value: true, + }, + useBeforeChange: { + type: Boolean, + value: false, + }, + }, + data: { + tabs: [], + scrollLeft: 0, + scrollable: false, + currentIndex: 0, + container: null, + skipTransition: true, + scrollWithAnimation: false, + lineOffsetLeft: 0, + inited: false, + }, + mounted: function () { + var _this = this; + (0, utils_1.requestAnimationFrame)(function () { + _this.swiping = true; + _this.setData({ + container: function () { return _this.createSelectorQuery().select('.van-tabs'); }, + }); + _this.resize(); + _this.scrollIntoView(); + }); + }, + methods: { + updateTabs: function () { + var _a = this, _b = _a.children, children = _b === void 0 ? [] : _b, data = _a.data; + this.setData({ + tabs: children.map(function (child) { return child.data; }), + scrollable: this.children.length > data.swipeThreshold || !data.ellipsis, + }); + this.setCurrentIndexByName(data.active || this.getCurrentName()); + }, + trigger: function (eventName, child) { + var currentIndex = this.data.currentIndex; + var data = this.getChildData(currentIndex, child); + if (!(0, validator_1.isDef)(data)) { + return; + } + this.$emit(eventName, data); + }, + onTap: function (event) { + var _this = this; + var index = event.currentTarget.dataset.index; + var child = this.children[index]; + if (child.data.disabled) { + this.trigger('disabled', child); + return; + } + this.onBeforeChange(index).then(function () { + _this.setCurrentIndex(index); + (0, utils_1.nextTick)(function () { + _this.trigger('click'); + }); + }); + }, + // correct the index of active tab + setCurrentIndexByName: function (name) { + var _a = this.children, children = _a === void 0 ? [] : _a; + var matched = children.filter(function (child) { return child.getComputedName() === name; }); + if (matched.length) { + this.setCurrentIndex(matched[0].index); + } + }, + setCurrentIndex: function (currentIndex) { + var _this = this; + var _a = this, data = _a.data, _b = _a.children, children = _b === void 0 ? [] : _b; + if (!(0, validator_1.isDef)(currentIndex) || + currentIndex >= children.length || + currentIndex < 0) { + return; + } + (0, utils_1.groupSetData)(this, function () { + children.forEach(function (item, index) { + var active = index === currentIndex; + if (active !== item.data.active || !item.inited) { + item.updateRender(active, _this); + } + }); + }); + if (currentIndex === data.currentIndex) { + if (!data.inited) { + this.resize(); + } + return; + } + var shouldEmitChange = data.currentIndex !== null; + this.setData({ currentIndex: currentIndex }); + (0, utils_1.requestAnimationFrame)(function () { + _this.resize(); + _this.scrollIntoView(); + }); + (0, utils_1.nextTick)(function () { + _this.trigger('input'); + if (shouldEmitChange) { + _this.trigger('change'); + } + }); + }, + getCurrentName: function () { + var activeTab = this.children[this.data.currentIndex]; + if (activeTab) { + return activeTab.getComputedName(); + } + }, + resize: function () { + var _this = this; + if (this.data.type !== 'line') { + return; + } + var _a = this.data, currentIndex = _a.currentIndex, ellipsis = _a.ellipsis, skipTransition = _a.skipTransition; + Promise.all([ + (0, utils_1.getAllRect)(this, '.van-tab'), + (0, utils_1.getRect)(this, '.van-tabs__line'), + ]).then(function (_a) { + var _b = _a[0], rects = _b === void 0 ? [] : _b, lineRect = _a[1]; + var rect = rects[currentIndex]; + if (rect == null) { + return; + } + var lineOffsetLeft = rects + .slice(0, currentIndex) + .reduce(function (prev, curr) { return prev + curr.width; }, 0); + lineOffsetLeft += + (rect.width - lineRect.width) / 2 + (ellipsis ? 0 : 8); + _this.setData({ lineOffsetLeft: lineOffsetLeft, inited: true }); + _this.swiping = true; + if (skipTransition) { + // waiting transition end + setTimeout(function () { + _this.setData({ skipTransition: false }); + }, _this.data.duration); + } + }); + }, + // scroll active tab into view + scrollIntoView: function () { + var _this = this; + var _a = this.data, currentIndex = _a.currentIndex, scrollable = _a.scrollable, scrollWithAnimation = _a.scrollWithAnimation; + if (!scrollable) { + return; + } + Promise.all([ + (0, utils_1.getAllRect)(this, '.van-tab'), + (0, utils_1.getRect)(this, '.van-tabs__nav'), + ]).then(function (_a) { + var tabRects = _a[0], navRect = _a[1]; + var tabRect = tabRects[currentIndex]; + var offsetLeft = tabRects + .slice(0, currentIndex) + .reduce(function (prev, curr) { return prev + curr.width; }, 0); + _this.setData({ + scrollLeft: offsetLeft - (navRect.width - tabRect.width) / 2, + }); + if (!scrollWithAnimation) { + (0, utils_1.nextTick)(function () { + _this.setData({ scrollWithAnimation: true }); + }); + } + }); + }, + onTouchScroll: function (event) { + this.$emit('scroll', event.detail); + }, + onTouchStart: function (event) { + if (!this.data.swipeable) + return; + this.swiping = true; + this.touchStart(event); + }, + onTouchMove: function (event) { + if (!this.data.swipeable || !this.swiping) + return; + this.touchMove(event); + }, + // watch swipe touch end + onTouchEnd: function () { + var _this = this; + if (!this.data.swipeable || !this.swiping) + return; + var _a = this, direction = _a.direction, deltaX = _a.deltaX, offsetX = _a.offsetX; + var minSwipeDistance = 50; + if (direction === 'horizontal' && offsetX >= minSwipeDistance) { + var index_1 = this.getAvaiableTab(deltaX); + if (index_1 !== -1) { + this.onBeforeChange(index_1).then(function () { return _this.setCurrentIndex(index_1); }); + } + } + this.swiping = false; + }, + getAvaiableTab: function (direction) { + var _a = this.data, tabs = _a.tabs, currentIndex = _a.currentIndex; + var step = direction > 0 ? -1 : 1; + for (var i = step; currentIndex + i < tabs.length && currentIndex + i >= 0; i += step) { + var index = currentIndex + i; + if (index >= 0 && + index < tabs.length && + tabs[index] && + !tabs[index].disabled) { + return index; + } + } + return -1; + }, + onBeforeChange: function (index) { + var _this = this; + var useBeforeChange = this.data.useBeforeChange; + if (!useBeforeChange) { + return Promise.resolve(); + } + return new Promise(function (resolve, reject) { + _this.$emit('before-change', __assign(__assign({}, _this.getChildData(index)), { callback: function (status) { return (status ? resolve() : reject()); } })); + }); + }, + getChildData: function (index, child) { + var currentChild = child || this.children[index]; + if (!(0, validator_1.isDef)(currentChild)) { + return; + } + return { + index: currentChild.index, + name: currentChild.getComputedName(), + title: currentChild.data.title, + }; + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.json b/app/miniprogram_npm/@vant/weapp/tabs/index.json new file mode 100644 index 0000000..19c0bc3 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-info": "../info/index", + "van-sticky": "../sticky/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.wxml b/app/miniprogram_npm/@vant/weapp/tabs/index.wxml new file mode 100644 index 0000000..05bb1e1 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.wxml @@ -0,0 +1,63 @@ + + + + + + + + + + + + + + {{ item.title }} + + + + + + + + + + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.wxs b/app/miniprogram_npm/@vant/weapp/tabs/index.wxs new file mode 100644 index 0000000..4059c7f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.wxs @@ -0,0 +1,83 @@ +/* eslint-disable */ +var utils = require('../wxs/utils.wxs'); +var style = require('../wxs/style.wxs'); + +function tabClass(active, ellipsis) { + var classes = ['tab-class']; + + if (active) { + classes.push('tab-active-class'); + } + + if (ellipsis) { + classes.push('van-ellipsis'); + } + + return classes.join(' '); +} + +function tabStyle(data) { + var titleColor = data.active + ? data.titleActiveColor + : data.titleInactiveColor; + + var ellipsis = data.scrollable && data.ellipsis; + + // card theme color + if (data.type === 'card') { + return style({ + 'border-color': data.color, + 'background-color': !data.disabled && data.active ? data.color : null, + color: titleColor || (!data.disabled && !data.active ? data.color : null), + 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null, + }); + } + + return style({ + color: titleColor, + 'flex-basis': ellipsis ? 88 / data.swipeThreshold + '%' : null, + }); +} + +function navStyle(color, type) { + return style({ + 'border-color': type === 'card' && color ? color : null, + }); +} + +function trackStyle(data) { + if (!data.animated) { + return ''; + } + + return style({ + left: -100 * data.currentIndex + '%', + 'transition-duration': data.duration + 's', + '-webkit-transition-duration': data.duration + 's', + }); +} + +function lineStyle(data) { + return style({ + width: utils.addUnit(data.lineWidth), + opacity: data.inited ? 1 : 0, + transform: 'translateX(' + data.lineOffsetLeft + 'px)', + '-webkit-transform': 'translateX(' + data.lineOffsetLeft + 'px)', + 'background-color': data.color, + height: data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null, + 'border-radius': + data.lineHeight !== -1 ? utils.addUnit(data.lineHeight) : null, + 'transition-duration': !data.skipTransition ? data.duration + 's' : null, + '-webkit-transition-duration': !data.skipTransition + ? data.duration + 's' + : null, + }); +} + +module.exports = { + tabClass: tabClass, + tabStyle: tabStyle, + trackStyle: trackStyle, + lineStyle: lineStyle, + navStyle: navStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/tabs/index.wxss b/app/miniprogram_npm/@vant/weapp/tabs/index.wxss new file mode 100644 index 0000000..09a93af --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tabs/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tabs{-webkit-tap-highlight-color:transparent;position:relative}.van-tabs__wrap{display:flex;overflow:hidden}.van-tabs__wrap--scrollable .van-tab{flex:0 0 22%}.van-tabs__wrap--scrollable .van-tab--complete{flex:1 0 auto!important;padding:0 12px}.van-tabs__wrap--scrollable .van-tabs__nav--complete{padding-left:8px;padding-right:8px}.van-tabs__scroll{background-color:var(--tabs-nav-background-color,#fff);overflow:auto}.van-tabs__scroll--line{box-sizing:initial;height:calc(100% + 15px)}.van-tabs__scroll--card{border:1px solid var(--tabs-default-color,#ee0a24);border-radius:2px;box-sizing:border-box;margin:0 var(--padding-md,16px);width:calc(100% - var(--padding-md, 16px)*2)}.van-tabs__scroll::-webkit-scrollbar{display:none}.van-tabs__nav{display:flex;position:relative;-webkit-user-select:none;user-select:none}.van-tabs__nav--card{box-sizing:border-box;height:var(--tabs-card-height,30px)}.van-tabs__nav--card .van-tab{border-right:1px solid var(--tabs-default-color,#ee0a24);color:var(--tabs-default-color,#ee0a24);line-height:calc(var(--tabs-card-height, 30px) - 2px)}.van-tabs__nav--card .van-tab:last-child{border-right:none}.van-tabs__nav--card .van-tab.van-tab--active{background-color:var(--tabs-default-color,#ee0a24);color:#fff}.van-tabs__nav--card .van-tab--disabled{color:var(--tab-disabled-text-color,#c8c9cc)}.van-tabs__line{background-color:var(--tabs-bottom-bar-color,#ee0a24);border-radius:var(--tabs-bottom-bar-height,3px);bottom:0;height:var(--tabs-bottom-bar-height,3px);left:0;opacity:0;position:absolute;z-index:1}.van-tabs__track{height:100%;position:relative;width:100%}.van-tabs__track--animated{display:flex;transition-property:left}.van-tabs__content{overflow:hidden}.van-tabs--line{height:var(--tabs-line-height,44px)}.van-tabs--card{height:var(--tabs-card-height,30px)}.van-tab{box-sizing:border-box;color:var(--tab-text-color,#646566);cursor:pointer;flex:1;font-size:var(--tab-font-size,14px);line-height:var(--tabs-line-height,44px);min-width:0;padding:0 5px;position:relative;text-align:center}.van-tab--active{color:var(--tab-active-text-color,#323233);font-weight:var(--font-weight-bold,500)}.van-tab--disabled{color:var(--tab-disabled-text-color,#c8c9cc)}.van-tab__title__info{position:relative!important;top:-1px!important;transform:translateX(0)!important} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.d.ts b/app/miniprogram_npm/@vant/weapp/tag/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.js b/app/miniprogram_npm/@vant/weapp/tag/index.js new file mode 100644 index 0000000..ec4069a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.js @@ -0,0 +1,23 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + size: String, + mark: Boolean, + color: String, + plain: Boolean, + round: Boolean, + textColor: String, + type: { + type: String, + value: 'default', + }, + closeable: Boolean, + }, + methods: { + onClose: function () { + this.$emit('close'); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.json b/app/miniprogram_npm/@vant/weapp/tag/index.json new file mode 100644 index 0000000..0a336c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.json @@ -0,0 +1,6 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.wxml b/app/miniprogram_npm/@vant/weapp/tag/index.wxml new file mode 100644 index 0000000..59352dd --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.wxml @@ -0,0 +1,15 @@ + + + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.wxs b/app/miniprogram_npm/@vant/weapp/tag/index.wxs new file mode 100644 index 0000000..12d1668 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + return style({ + 'background-color': data.plain ? '' : data.color, + color: data.textColor || data.plain ? data.textColor || data.color : '', + }); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/tag/index.wxss b/app/miniprogram_npm/@vant/weapp/tag/index.wxss new file mode 100644 index 0000000..0f0cbae --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tag/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tag{align-items:center;border-radius:var(--tag-border-radius,2px);color:var(--tag-text-color,#fff);display:inline-flex;font-size:var(--tag-font-size,12px);line-height:var(--tag-line-height,16px);padding:var(--tag-padding,0 4px);position:relative}.van-tag--default{background-color:var(--tag-default-color,#969799)}.van-tag--default.van-tag--plain{color:var(--tag-default-color,#969799)}.van-tag--danger{background-color:var(--tag-danger-color,#ee0a24)}.van-tag--danger.van-tag--plain{color:var(--tag-danger-color,#ee0a24)}.van-tag--primary{background-color:var(--tag-primary-color,#1989fa)}.van-tag--primary.van-tag--plain{color:var(--tag-primary-color,#1989fa)}.van-tag--success{background-color:var(--tag-success-color,#07c160)}.van-tag--success.van-tag--plain{color:var(--tag-success-color,#07c160)}.van-tag--warning{background-color:var(--tag-warning-color,#ff976a)}.van-tag--warning.van-tag--plain{color:var(--tag-warning-color,#ff976a)}.van-tag--plain{background-color:var(--tag-plain-background-color,#fff)}.van-tag--plain:before{border:1px solid;border-radius:inherit;bottom:0;content:"";left:0;pointer-events:none;position:absolute;right:0;top:0}.van-tag--medium{padding:var(--tag-medium-padding,2px 6px)}.van-tag--large{border-radius:var(--tag-large-border-radius,4px);font-size:var(--tag-large-font-size,14px);padding:var(--tag-large-padding,4px 8px)}.van-tag--mark{border-radius:0 var(--tag-round-border-radius,var(--tag-round-border-radius,999px)) var(--tag-round-border-radius,var(--tag-round-border-radius,999px)) 0}.van-tag--mark:after{content:"";display:block;width:2px}.van-tag--round{border-radius:var(--tag-round-border-radius,999px)}.van-tag__close{margin-left:2px;min-width:1em} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/toast/index.d.ts b/app/miniprogram_npm/@vant/weapp/toast/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/toast/index.js b/app/miniprogram_npm/@vant/weapp/toast/index.js new file mode 100644 index 0000000..0c01366 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/index.js @@ -0,0 +1,31 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + props: { + show: Boolean, + mask: Boolean, + message: String, + forbidClick: Boolean, + zIndex: { + type: Number, + value: 1000, + }, + type: { + type: String, + value: 'text', + }, + loadingType: { + type: String, + value: 'circular', + }, + position: { + type: String, + value: 'middle', + }, + }, + methods: { + // for prevent touchmove + noop: function () { }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/toast/index.json b/app/miniprogram_npm/@vant/weapp/toast/index.json new file mode 100644 index 0000000..9b1b78c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/index.json @@ -0,0 +1,9 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index", + "van-overlay": "../overlay/index", + "van-transition": "../transition/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/toast/index.wxml b/app/miniprogram_npm/@vant/weapp/toast/index.wxml new file mode 100644 index 0000000..69f143e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/index.wxml @@ -0,0 +1,36 @@ + + + + + {{ message }} + + + + + + + + + {{ message }} + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/toast/index.wxss b/app/miniprogram_npm/@vant/weapp/toast/index.wxss new file mode 100644 index 0000000..3b7a34e --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-toast{word-wrap:break-word;align-items:center;background-color:var(--toast-background-color,rgba(0,0,0,.7));border-radius:var(--toast-border-radius,8px);box-sizing:initial;color:var(--toast-text-color,#fff);display:flex;flex-direction:column;font-size:var(--toast-font-size,14px);justify-content:center;line-height:var(--toast-line-height,20px);white-space:pre-wrap}.van-toast__container{left:50%;max-width:var(--toast-max-width,70%);position:fixed;top:50%;transform:translate(-50%,-50%);width:-webkit-fit-content;width:fit-content}.van-toast--text{min-width:var(--toast-text-min-width,96px);padding:var(--toast-text-padding,8px 12px)}.van-toast--icon{min-height:var(--toast-default-min-height,88px);padding:var(--toast-default-padding,16px);width:var(--toast-default-width,88px)}.van-toast--icon .van-toast__icon{font-size:var(--toast-icon-size,36px)}.van-toast--icon .van-toast__text{padding-top:8px}.van-toast__loading{margin:10px 0}.van-toast--top{transform:translateY(-30vh)}.van-toast--bottom{transform:translateY(30vh)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/toast/toast.d.ts b/app/miniprogram_npm/@vant/weapp/toast/toast.d.ts new file mode 100644 index 0000000..de2a4a2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/toast.d.ts @@ -0,0 +1,28 @@ +/// +/// +type ToastMessage = string | number; +type ToastContext = WechatMiniprogram.Component.TrivialInstance | WechatMiniprogram.Page.TrivialInstance; +interface ToastOptions { + show?: boolean; + type?: string; + mask?: boolean; + zIndex?: number; + context?: (() => ToastContext) | ToastContext; + position?: string; + duration?: number; + selector?: string; + forbidClick?: boolean; + loadingType?: string; + message?: ToastMessage; + onClose?: () => void; +} +declare function Toast(toastOptions: ToastOptions | ToastMessage): WechatMiniprogram.Component.TrivialInstance | undefined; +declare namespace Toast { + var loading: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var success: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var fail: (options: ToastMessage | ToastOptions) => WechatMiniprogram.Component.TrivialInstance | undefined; + var clear: () => void; + var setDefaultOptions: (options: ToastOptions) => void; + var resetDefaultOptions: () => void; +} +export default Toast; diff --git a/app/miniprogram_npm/@vant/weapp/toast/toast.js b/app/miniprogram_npm/@vant/weapp/toast/toast.js new file mode 100644 index 0000000..f51a89a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/toast/toast.js @@ -0,0 +1,83 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var validator_1 = require("../common/validator"); +var defaultOptions = { + type: 'text', + mask: false, + message: '', + show: true, + zIndex: 1000, + duration: 2000, + position: 'middle', + forbidClick: false, + loadingType: 'circular', + selector: '#van-toast', +}; +var queue = []; +var currentOptions = __assign({}, defaultOptions); +function parseOptions(message) { + return (0, validator_1.isObj)(message) ? message : { message: message }; +} +function getContext() { + var pages = getCurrentPages(); + return pages[pages.length - 1]; +} +function Toast(toastOptions) { + var options = __assign(__assign({}, currentOptions), parseOptions(toastOptions)); + var context = (typeof options.context === 'function' + ? options.context() + : options.context) || getContext(); + var toast = context.selectComponent(options.selector); + if (!toast) { + console.warn('未找到 van-toast 节点,请确认 selector 及 context 是否正确'); + return; + } + delete options.context; + delete options.selector; + toast.clear = function () { + toast.setData({ show: false }); + if (options.onClose) { + options.onClose(); + } + }; + queue.push(toast); + toast.setData(options); + clearTimeout(toast.timer); + if (options.duration != null && options.duration > 0) { + toast.timer = setTimeout(function () { + toast.clear(); + queue = queue.filter(function (item) { return item !== toast; }); + }, options.duration); + } + return toast; +} +var createMethod = function (type) { return function (options) { + return Toast(__assign({ type: type }, parseOptions(options))); +}; }; +Toast.loading = createMethod('loading'); +Toast.success = createMethod('success'); +Toast.fail = createMethod('fail'); +Toast.clear = function () { + queue.forEach(function (toast) { + toast.clear(); + }); + queue = []; +}; +Toast.setDefaultOptions = function (options) { + Object.assign(currentOptions, options); +}; +Toast.resetDefaultOptions = function () { + currentOptions = __assign({}, defaultOptions); +}; +exports.default = Toast; diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.d.ts b/app/miniprogram_npm/@vant/weapp/transition/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.js b/app/miniprogram_npm/@vant/weapp/transition/index.js new file mode 100644 index 0000000..55fc8b8 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.js @@ -0,0 +1,15 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var transition_1 = require("../mixins/transition"); +(0, component_1.VantComponent)({ + classes: [ + 'enter-class', + 'enter-active-class', + 'enter-to-class', + 'leave-class', + 'leave-active-class', + 'leave-to-class', + ], + mixins: [(0, transition_1.transition)(true)], +}); diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.json b/app/miniprogram_npm/@vant/weapp/transition/index.json new file mode 100644 index 0000000..467ce29 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.json @@ -0,0 +1,3 @@ +{ + "component": true +} diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.wxml b/app/miniprogram_npm/@vant/weapp/transition/index.wxml new file mode 100644 index 0000000..2743785 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.wxml @@ -0,0 +1,10 @@ + + + + + diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.wxs b/app/miniprogram_npm/@vant/weapp/transition/index.wxs new file mode 100644 index 0000000..e0babf6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); + +function rootStyle(data) { + return style([ + { + '-webkit-transition-duration': data.currentDuration + 'ms', + 'transition-duration': data.currentDuration + 'ms', + }, + data.display ? null : 'display: none', + data.customStyle, + ]); +} + +module.exports = { + rootStyle: rootStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/transition/index.wxss b/app/miniprogram_npm/@vant/weapp/transition/index.wxss new file mode 100644 index 0000000..3a3d37f --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/transition/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-transition{transition-timing-function:ease}.van-fade-enter-active,.van-fade-leave-active{transition-property:opacity}.van-fade-enter,.van-fade-leave-to{opacity:0}.van-fade-down-enter-active,.van-fade-down-leave-active,.van-fade-left-enter-active,.van-fade-left-leave-active,.van-fade-right-enter-active,.van-fade-right-leave-active,.van-fade-up-enter-active,.van-fade-up-leave-active{transition-property:opacity,transform}.van-fade-up-enter,.van-fade-up-leave-to{opacity:0;transform:translate3d(0,100%,0)}.van-fade-down-enter,.van-fade-down-leave-to{opacity:0;transform:translate3d(0,-100%,0)}.van-fade-left-enter,.van-fade-left-leave-to{opacity:0;transform:translate3d(-100%,0,0)}.van-fade-right-enter,.van-fade-right-leave-to{opacity:0;transform:translate3d(100%,0,0)}.van-slide-down-enter-active,.van-slide-down-leave-active,.van-slide-left-enter-active,.van-slide-left-leave-active,.van-slide-right-enter-active,.van-slide-right-leave-active,.van-slide-up-enter-active,.van-slide-up-leave-active{transition-property:transform}.van-slide-up-enter,.van-slide-up-leave-to{transform:translate3d(0,100%,0)}.van-slide-down-enter,.van-slide-down-leave-to{transform:translate3d(0,-100%,0)}.van-slide-left-enter,.van-slide-left-leave-to{transform:translate3d(-100%,0,0)}.van-slide-right-enter,.van-slide-right-leave-to{transform:translate3d(100%,0,0)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.d.ts b/app/miniprogram_npm/@vant/weapp/tree-select/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.js b/app/miniprogram_npm/@vant/weapp/tree-select/index.js new file mode 100644 index 0000000..b6f69b2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.js @@ -0,0 +1,70 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +(0, component_1.VantComponent)({ + classes: [ + 'main-item-class', + 'content-item-class', + 'main-active-class', + 'content-active-class', + 'main-disabled-class', + 'content-disabled-class', + ], + props: { + items: { + type: Array, + observer: 'updateSubItems', + }, + activeId: null, + mainActiveIndex: { + type: Number, + value: 0, + observer: 'updateSubItems', + }, + height: { + type: null, + value: 300, + }, + max: { + type: Number, + value: Infinity, + }, + selectedIcon: { + type: String, + value: 'success', + }, + }, + data: { + subItems: [], + }, + methods: { + // 当一个子项被选择时 + onSelectItem: function (event) { + var item = event.currentTarget.dataset.item; + var isArray = Array.isArray(this.data.activeId); + // 判断有没有超出右侧选择的最大数 + var isOverMax = isArray && this.data.activeId.length >= this.data.max; + // 判断该项有没有被选中, 如果有被选中,则忽视是否超出的条件 + var isSelected = isArray + ? this.data.activeId.indexOf(item.id) > -1 + : this.data.activeId === item.id; + if (!item.disabled && (!isOverMax || isSelected)) { + this.$emit('click-item', item); + } + }, + // 当一个导航被点击时 + onClickNav: function (event) { + var index = event.detail; + var item = this.data.items[index]; + if (!item.disabled) { + this.$emit('click-nav', { index: index }); + } + }, + // 更新子项列表 + updateSubItems: function () { + var _a = this.data, items = _a.items, mainActiveIndex = _a.mainActiveIndex; + var _b = (items[mainActiveIndex] || {}).children, children = _b === void 0 ? [] : _b; + this.setData({ subItems: children }); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.json b/app/miniprogram_npm/@vant/weapp/tree-select/index.json new file mode 100644 index 0000000..42991a2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.json @@ -0,0 +1,8 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-sidebar": "../sidebar/index", + "van-sidebar-item": "../sidebar-item/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.wxml b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxml new file mode 100644 index 0000000..2663e52 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxml @@ -0,0 +1,41 @@ + + + + + + + + + + + + + {{ item.text }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.wxs b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxs new file mode 100644 index 0000000..b1cbb39 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +var array = require('../wxs/array.wxs'); + +function isActive (activeList, itemId) { + if (array.isArray(activeList)) { + return activeList.indexOf(itemId) > -1; + } + + return activeList === itemId; +} + +module.exports.isActive = isActive; diff --git a/app/miniprogram_npm/@vant/weapp/tree-select/index.wxss b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxss new file mode 100644 index 0000000..5bef0ac --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/tree-select/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-tree-select{display:flex;font-size:var(--tree-select-font-size,14px);position:relative;-webkit-user-select:none;user-select:none}.van-tree-select__nav{--sidebar-padding:12px 8px 12px 12px;background-color:var(--tree-select-nav-background-color,#f7f8fa);flex:1}.van-tree-select__nav__inner{height:100%;width:100%!important}.van-tree-select__content{background-color:var(--tree-select-content-background-color,#fff);flex:2}.van-tree-select__item{font-weight:700;line-height:var(--tree-select-item-height,44px);padding:0 32px 0 var(--padding-md,16px);position:relative}.van-tree-select__item--active{color:var(--tree-select-item-active-color,#ee0a24)}.van-tree-select__item--disabled{color:var(--tree-select-item-disabled-color,#c8c9cc)}.van-tree-select__selected{position:absolute;right:var(--padding-md,16px);top:50%;transform:translateY(-50%)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.d.ts b/app/miniprogram_npm/@vant/weapp/uploader/index.d.ts new file mode 100644 index 0000000..cb0ff5c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.d.ts @@ -0,0 +1 @@ +export {}; diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.js b/app/miniprogram_npm/@vant/weapp/uploader/index.js new file mode 100644 index 0000000..72f561d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.js @@ -0,0 +1,185 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +var component_1 = require("../common/component"); +var validator_1 = require("../common/validator"); +var shared_1 = require("./shared"); +var utils_1 = require("./utils"); +(0, component_1.VantComponent)({ + props: __assign(__assign(__assign(__assign({ disabled: Boolean, multiple: Boolean, uploadText: String, useBeforeRead: Boolean, afterRead: null, beforeRead: null, previewSize: { + type: null, + value: 80, + }, name: { + type: null, + value: '', + }, accept: { + type: String, + value: 'image', + }, fileList: { + type: Array, + value: [], + observer: 'formatFileList', + }, maxSize: { + type: Number, + value: Number.MAX_VALUE, + }, maxCount: { + type: Number, + value: 100, + }, deletable: { + type: Boolean, + value: true, + }, showUpload: { + type: Boolean, + value: true, + }, previewImage: { + type: Boolean, + value: true, + }, previewFullImage: { + type: Boolean, + value: true, + }, videoFit: { + type: String, + value: 'contain', + }, imageFit: { + type: String, + value: 'scaleToFill', + }, uploadIcon: { + type: String, + value: 'photograph', + } }, shared_1.imageProps), shared_1.videoProps), shared_1.mediaProps), shared_1.messageFileProps), + data: { + lists: [], + isInCount: true, + }, + methods: { + formatFileList: function () { + var _a = this.data, _b = _a.fileList, fileList = _b === void 0 ? [] : _b, maxCount = _a.maxCount; + var lists = fileList.map(function (item) { return (__assign(__assign({}, item), { isImage: (0, utils_1.isImageFile)(item), isVideo: (0, utils_1.isVideoFile)(item), deletable: (0, validator_1.isBoolean)(item.deletable) ? item.deletable : true })); }); + this.setData({ lists: lists, isInCount: lists.length < maxCount }); + }, + getDetail: function (index) { + return { + name: this.data.name, + index: index == null ? this.data.fileList.length : index, + }; + }, + startUpload: function () { + var _this = this; + var _a = this.data, maxCount = _a.maxCount, multiple = _a.multiple, lists = _a.lists, disabled = _a.disabled; + if (disabled) + return; + (0, utils_1.chooseFile)(__assign(__assign({}, this.data), { maxCount: maxCount - lists.length })) + .then(function (res) { + _this.onBeforeRead(multiple ? res : res[0]); + }) + .catch(function (error) { + _this.$emit('error', error); + }); + }, + onBeforeRead: function (file) { + var _this = this; + var _a = this.data, beforeRead = _a.beforeRead, useBeforeRead = _a.useBeforeRead; + var res = true; + if (typeof beforeRead === 'function') { + res = beforeRead(file, this.getDetail()); + } + if (useBeforeRead) { + res = new Promise(function (resolve, reject) { + _this.$emit('before-read', __assign(__assign({ file: file }, _this.getDetail()), { callback: function (ok) { + ok ? resolve() : reject(); + } })); + }); + } + if (!res) { + return; + } + if ((0, validator_1.isPromise)(res)) { + res.then(function (data) { return _this.onAfterRead(data || file); }); + } + else { + this.onAfterRead(file); + } + }, + onAfterRead: function (file) { + var _a = this.data, maxSize = _a.maxSize, afterRead = _a.afterRead; + var oversize = Array.isArray(file) + ? file.some(function (item) { return item.size > maxSize; }) + : file.size > maxSize; + if (oversize) { + this.$emit('oversize', __assign({ file: file }, this.getDetail())); + return; + } + if (typeof afterRead === 'function') { + afterRead(file, this.getDetail()); + } + this.$emit('after-read', __assign({ file: file }, this.getDetail())); + }, + deleteItem: function (event) { + var index = event.currentTarget.dataset.index; + this.$emit('delete', __assign(__assign({}, this.getDetail(index)), { file: this.data.fileList[index] })); + }, + onPreviewImage: function (event) { + if (!this.data.previewFullImage) + return; + var index = event.currentTarget.dataset.index; + var _a = this.data, lists = _a.lists, showmenu = _a.showmenu; + var item = lists[index]; + wx.previewImage({ + urls: lists.filter(function (item) { return (0, utils_1.isImageFile)(item); }).map(function (item) { return item.url; }), + current: item.url, + showmenu: showmenu, + fail: function () { + wx.showToast({ title: '预览图片失败', icon: 'none' }); + }, + }); + }, + onPreviewVideo: function (event) { + if (!this.data.previewFullImage) + return; + var index = event.currentTarget.dataset.index; + var lists = this.data.lists; + var sources = []; + var current = lists.reduce(function (sum, cur, curIndex) { + if (!(0, utils_1.isVideoFile)(cur)) { + return sum; + } + sources.push(__assign(__assign({}, cur), { type: 'video' })); + if (curIndex < index) { + sum++; + } + return sum; + }, 0); + wx.previewMedia({ + sources: sources, + current: current, + fail: function () { + wx.showToast({ title: '预览视频失败', icon: 'none' }); + }, + }); + }, + onPreviewFile: function (event) { + if (!this.data.previewFile) + return; + var index = event.currentTarget.dataset.index; + wx.openDocument({ + filePath: this.data.lists[index].url, + showMenu: true, + }); + }, + onClickPreview: function (event) { + var index = event.currentTarget.dataset.index; + var item = this.data.lists[index]; + this.$emit('click-preview', __assign(__assign({}, item), this.getDetail(index))); + }, + }, +}); diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.json b/app/miniprogram_npm/@vant/weapp/uploader/index.json new file mode 100644 index 0000000..e00a588 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.json @@ -0,0 +1,7 @@ +{ + "component": true, + "usingComponents": { + "van-icon": "../icon/index", + "van-loading": "../loading/index" + } +} diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.wxml b/app/miniprogram_npm/@vant/weapp/uploader/index.wxml new file mode 100644 index 0000000..7ecb0f2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.wxml @@ -0,0 +1,85 @@ + + + + + + + + + + + + + {{ item.name || item.url }} + + + + + {{ item.message }} + + + + + + + + + + + + + + + + {{ uploadText }} + + + + diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.wxs b/app/miniprogram_npm/@vant/weapp/uploader/index.wxs new file mode 100644 index 0000000..c567ec2 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.wxs @@ -0,0 +1,17 @@ +/* eslint-disable */ +var style = require('../wxs/style.wxs'); +var addUnit = require('../wxs/add-unit.wxs'); + +function sizeStyle(data) { + return "Array" === data.previewSize.constructor ? style({ + width: addUnit(data.previewSize[0]), + height: addUnit(data.previewSize[1]), + }) : style({ + width: addUnit(data.previewSize), + height: addUnit(data.previewSize), + }); +} + +module.exports = { + sizeStyle: sizeStyle, +}; diff --git a/app/miniprogram_npm/@vant/weapp/uploader/index.wxss b/app/miniprogram_npm/@vant/weapp/uploader/index.wxss new file mode 100644 index 0000000..11f8696 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/index.wxss @@ -0,0 +1 @@ +@import '../common/index.wxss';.van-uploader{display:inline-block;position:relative}.van-uploader__wrapper{display:flex;flex-wrap:wrap}.van-uploader__slot:empty{display:none}.van-uploader__slot:not(:empty)+.van-uploader__upload{display:none!important}.van-uploader__upload{align-items:center;background-color:var(--uploader-upload-background-color,#f7f8fa);box-sizing:border-box;display:flex;flex-direction:column;height:var(--uploader-size,80px);justify-content:center;margin:0 8px 8px 0;position:relative;width:var(--uploader-size,80px)}.van-uploader__upload:active{background-color:var(--uploader-upload-active-color,#f2f3f5)}.van-uploader__upload-icon{color:var(--uploader-icon-color,#dcdee0);font-size:var(--uploader-icon-size,24px)}.van-uploader__upload-text{color:var(--uploader-text-color,#969799);font-size:var(--uploader-text-font-size,12px);margin-top:var(--padding-xs,8px)}.van-uploader__upload--disabled{opacity:var(--uploader-disabled-opacity,.5)}.van-uploader__preview{cursor:pointer;margin:0 8px 8px 0;position:relative}.van-uploader__preview-image{display:block;height:var(--uploader-size,80px);overflow:hidden;width:var(--uploader-size,80px)}.van-uploader__preview-delete,.van-uploader__preview-delete:after{height:var(--uploader-delete-icon-size,14px);position:absolute;right:0;top:0;width:var(--uploader-delete-icon-size,14px)}.van-uploader__preview-delete:after{background-color:var(--uploader-delete-background-color,rgba(0,0,0,.7));border-radius:0 0 0 12px;content:""}.van-uploader__preview-delete-icon{color:var(--uploader-delete-color,#fff);font-size:var(--uploader-delete-icon-size,14px);position:absolute;right:0;top:0;transform:scale(.7) translate(10%,-10%);z-index:1}.van-uploader__file{align-items:center;background-color:var(--uploader-file-background-color,#f7f8fa);display:flex;flex-direction:column;height:var(--uploader-size,80px);justify-content:center;width:var(--uploader-size,80px)}.van-uploader__file-icon{color:var(--uploader-file-icon-color,#646566);font-size:var(--uploader-file-icon-size,20px)}.van-uploader__file-name{box-sizing:border-box;color:var(--uploader-file-name-text-color,#646566);font-size:var(--uploader-file-name-font-size,12px);margin-top:var(--uploader-file-name-margin-top,8px);padding:var(--uploader-file-name-padding,0 4px);text-align:center;width:100%}.van-uploader__mask{align-items:center;background-color:var(--uploader-mask-background-color,rgba(50,50,51,.88));bottom:0;color:#fff;display:flex;flex-direction:column;justify-content:center;left:0;position:absolute;right:0;top:0}.van-uploader__mask-icon{font-size:var(--uploader-mask-icon-size,22px)}.van-uploader__mask-message{font-size:var(--uploader-mask-message-font-size,12px);line-height:var(--uploader-mask-message-line-height,14px);margin-top:6px;padding:0 var(--padding-base,4px)}.van-uploader__loading{color:var(--uploader-loading-icon-color,#fff)!important;height:var(--uploader-loading-icon-size,22px);width:var(--uploader-loading-icon-size,22px)} \ No newline at end of file diff --git a/app/miniprogram_npm/@vant/weapp/uploader/shared.d.ts b/app/miniprogram_npm/@vant/weapp/uploader/shared.d.ts new file mode 100644 index 0000000..83e28c0 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/shared.d.ts @@ -0,0 +1,61 @@ +export declare const imageProps: { + sizeType: { + type: ArrayConstructor; + value: string[]; + }; + capture: { + type: ArrayConstructor; + value: string[]; + }; + showmenu: { + type: BooleanConstructor; + value: boolean; + }; +}; +export declare const videoProps: { + capture: { + type: ArrayConstructor; + value: string[]; + }; + compressed: { + type: BooleanConstructor; + value: boolean; + }; + maxDuration: { + type: NumberConstructor; + value: number; + }; + camera: { + type: StringConstructor; + value: string; + }; + referrerPolicy: { + type: StringConstructor; + value: string; + }; +}; +export declare const mediaProps: { + capture: { + type: ArrayConstructor; + value: string[]; + }; + mediaType: { + type: ArrayConstructor; + value: string[]; + }; + maxDuration: { + type: NumberConstructor; + value: number; + }; + camera: { + type: StringConstructor; + value: string; + }; +}; +export declare const messageFileProps: { + extension: null; + previewFile: { + type: BooleanConstructor; + value: boolean; + }; +}; diff --git a/app/miniprogram_npm/@vant/weapp/uploader/shared.js b/app/miniprogram_npm/@vant/weapp/uploader/shared.js new file mode 100644 index 0000000..37ffb7c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/shared.js @@ -0,0 +1,68 @@ +"use strict"; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.messageFileProps = exports.mediaProps = exports.videoProps = exports.imageProps = void 0; +// props for image +exports.imageProps = { + sizeType: { + type: Array, + value: ['original', 'compressed'], + }, + capture: { + type: Array, + value: ['album', 'camera'], + }, + showmenu: { + type: Boolean, + value: true, + }, +}; +// props for video +exports.videoProps = { + capture: { + type: Array, + value: ['album', 'camera'], + }, + compressed: { + type: Boolean, + value: true, + }, + maxDuration: { + type: Number, + value: 60, + }, + camera: { + type: String, + value: 'back', + }, + referrerPolicy: { + type: String, + value: 'no-referrer', + }, +}; +// props for media +exports.mediaProps = { + capture: { + type: Array, + value: ['album', 'camera'], + }, + mediaType: { + type: Array, + value: ['image', 'video', 'mix'], + }, + maxDuration: { + type: Number, + value: 60, + }, + camera: { + type: String, + value: 'back', + }, +}; +// props for file +exports.messageFileProps = { + extension: null, + previewFile: { + type: Boolean, + value: true, + }, +}; diff --git a/app/miniprogram_npm/@vant/weapp/uploader/utils.d.ts b/app/miniprogram_npm/@vant/weapp/uploader/utils.d.ts new file mode 100644 index 0000000..1e76ee6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/utils.d.ts @@ -0,0 +1,24 @@ +export interface File { + url: string; + size?: number; + name?: string; + type: string; + duration?: number; + time?: number; + isImage?: boolean; + isVideo?: boolean; +} +export declare function isImageFile(item: File): boolean; +export declare function isVideoFile(item: File): boolean; +export declare function chooseFile({ accept, multiple, capture, compressed, maxDuration, sizeType, camera, maxCount, mediaType, extension, }: { + accept: any; + multiple: any; + capture: any; + compressed: any; + maxDuration: any; + sizeType: any; + camera: any; + maxCount: any; + mediaType: any; + extension: any; +}): Promise; diff --git a/app/miniprogram_npm/@vant/weapp/uploader/utils.js b/app/miniprogram_npm/@vant/weapp/uploader/utils.js new file mode 100644 index 0000000..a5d49c6 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/uploader/utils.js @@ -0,0 +1,112 @@ +"use strict"; +var __assign = (this && this.__assign) || function () { + __assign = Object.assign || function(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) + t[p] = s[p]; + } + return t; + }; + return __assign.apply(this, arguments); +}; +Object.defineProperty(exports, "__esModule", { value: true }); +exports.chooseFile = exports.isVideoFile = exports.isImageFile = void 0; +var utils_1 = require("../common/utils"); +var validator_1 = require("../common/validator"); +function isImageFile(item) { + if (item.isImage != null) { + return item.isImage; + } + if (item.type) { + return item.type === 'image'; + } + if (item.url) { + return (0, validator_1.isImageUrl)(item.url); + } + return false; +} +exports.isImageFile = isImageFile; +function isVideoFile(item) { + if (item.isVideo != null) { + return item.isVideo; + } + if (item.type) { + return item.type === 'video'; + } + if (item.url) { + return (0, validator_1.isVideoUrl)(item.url); + } + return false; +} +exports.isVideoFile = isVideoFile; +function formatImage(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['path'])), { type: 'image', url: item.tempFilePath || item.path, thumb: item.tempFilePath || item.path })); }); +} +function formatVideo(res) { + return [ + __assign(__assign({}, (0, utils_1.pickExclude)(res, ['tempFilePath', 'thumbTempFilePath', 'errMsg'])), { type: 'video', url: res.tempFilePath, thumb: res.thumbTempFilePath }), + ]; +} +function formatMedia(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['fileType', 'thumbTempFilePath', 'tempFilePath'])), { type: item.fileType, url: item.tempFilePath, thumb: item.fileType === 'video' ? item.thumbTempFilePath : item.tempFilePath })); }); +} +function formatFile(res) { + return res.tempFiles.map(function (item) { return (__assign(__assign({}, (0, utils_1.pickExclude)(item, ['path'])), { url: item.path })); }); +} +function chooseFile(_a) { + var accept = _a.accept, multiple = _a.multiple, capture = _a.capture, compressed = _a.compressed, maxDuration = _a.maxDuration, sizeType = _a.sizeType, camera = _a.camera, maxCount = _a.maxCount, mediaType = _a.mediaType, extension = _a.extension; + return new Promise(function (resolve, reject) { + switch (accept) { + case 'image': + if (utils_1.isPC || utils_1.isWxWork) { + wx.chooseImage({ + count: multiple ? Math.min(maxCount, 9) : 1, + sourceType: capture, + sizeType: sizeType, + success: function (res) { return resolve(formatImage(res)); }, + fail: reject, + }); + } + else { + wx.chooseMedia({ + count: multiple ? Math.min(maxCount, 9) : 1, + mediaType: ['image'], + sourceType: capture, + maxDuration: maxDuration, + sizeType: sizeType, + camera: camera, + success: function (res) { return resolve(formatImage(res)); }, + fail: reject, + }); + } + break; + case 'media': + wx.chooseMedia({ + count: multiple ? Math.min(maxCount, 9) : 1, + mediaType: mediaType, + sourceType: capture, + maxDuration: maxDuration, + sizeType: sizeType, + camera: camera, + success: function (res) { return resolve(formatMedia(res)); }, + fail: reject, + }); + break; + case 'video': + wx.chooseVideo({ + sourceType: capture, + compressed: compressed, + maxDuration: maxDuration, + camera: camera, + success: function (res) { return resolve(formatVideo(res)); }, + fail: reject, + }); + break; + default: + wx.chooseMessageFile(__assign(__assign({ count: multiple ? maxCount : 1, type: accept }, (extension ? { extension: extension } : {})), { success: function (res) { return resolve(formatFile(res)); }, fail: reject })); + break; + } + }); +} +exports.chooseFile = chooseFile; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs b/app/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs new file mode 100644 index 0000000..4f33462 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/add-unit.wxs @@ -0,0 +1,12 @@ +/* eslint-disable */ +var REGEXP = getRegExp('^-?\d+(\.\d+)?$'); + +function addUnit(value) { + if (value == null) { + return undefined; + } + + return REGEXP.test('' + value) ? value + 'px' : value; +} + +module.exports = addUnit; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/array.wxs b/app/miniprogram_npm/@vant/weapp/wxs/array.wxs new file mode 100644 index 0000000..610089c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/array.wxs @@ -0,0 +1,5 @@ +function isArray(array) { + return array && array.constructor === 'Array'; +} + +module.exports.isArray = isArray; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/bem.wxs b/app/miniprogram_npm/@vant/weapp/wxs/bem.wxs new file mode 100644 index 0000000..1efa129 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/bem.wxs @@ -0,0 +1,39 @@ +/* eslint-disable */ +var array = require('./array.wxs'); +var object = require('./object.wxs'); +var PREFIX = 'van-'; + +function join(name, mods) { + name = PREFIX + name; + mods = mods.map(function(mod) { + return name + '--' + mod; + }); + mods.unshift(name); + return mods.join(' '); +} + +function traversing(mods, conf) { + if (!conf) { + return; + } + + if (typeof conf === 'string' || typeof conf === 'number') { + mods.push(conf); + } else if (array.isArray(conf)) { + conf.forEach(function(item) { + traversing(mods, item); + }); + } else if (typeof conf === 'object') { + object.keys(conf).forEach(function(key) { + conf[key] && mods.push(key); + }); + } +} + +function bem(name, conf) { + var mods = []; + traversing(mods, conf); + return join(name, mods); +} + +module.exports = bem; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/memoize.wxs b/app/miniprogram_npm/@vant/weapp/wxs/memoize.wxs new file mode 100644 index 0000000..8f7f46d --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/memoize.wxs @@ -0,0 +1,55 @@ +/** + * Simple memoize + * wxs doesn't support fn.apply, so this memoize only support up to 2 args + */ +/* eslint-disable */ + +function isPrimitive(value) { + var type = typeof value; + return ( + type === 'boolean' || + type === 'number' || + type === 'string' || + type === 'undefined' || + value === null + ); +} + +// mock simple fn.call in wxs +function call(fn, args) { + if (args.length === 2) { + return fn(args[0], args[1]); + } + + if (args.length === 1) { + return fn(args[0]); + } + + return fn(); +} + +function serializer(args) { + if (args.length === 1 && isPrimitive(args[0])) { + return args[0]; + } + var obj = {}; + for (var i = 0; i < args.length; i++) { + obj['key' + i] = args[i]; + } + return JSON.stringify(obj); +} + +function memoize(fn) { + var cache = {}; + + return function() { + var key = serializer(arguments); + if (cache[key] === undefined) { + cache[key] = call(fn, arguments); + } + + return cache[key]; + }; +} + +module.exports = memoize; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/object.wxs b/app/miniprogram_npm/@vant/weapp/wxs/object.wxs new file mode 100644 index 0000000..e077107 --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/object.wxs @@ -0,0 +1,13 @@ +/* eslint-disable */ +var REGEXP = getRegExp('{|}|"', 'g'); + +function keys(obj) { + return JSON.stringify(obj) + .replace(REGEXP, '') + .split(',') + .map(function(item) { + return item.split(':')[0]; + }); +} + +module.exports.keys = keys; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/style.wxs b/app/miniprogram_npm/@vant/weapp/wxs/style.wxs new file mode 100644 index 0000000..d88ca7c --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/style.wxs @@ -0,0 +1,42 @@ +/* eslint-disable */ +var object = require('./object.wxs'); +var array = require('./array.wxs'); + +function kebabCase(word) { + var newWord = word + .replace(getRegExp("[A-Z]", 'g'), function (i) { + return '-' + i; + }) + .toLowerCase() + + return newWord; +} + +function style(styles) { + if (array.isArray(styles)) { + return styles + .filter(function (item) { + return item != null && item !== ''; + }) + .map(function (item) { + return style(item); + }) + .join(';'); + } + + if ('Object' === styles.constructor) { + return object + .keys(styles) + .filter(function (key) { + return styles[key] != null && styles[key] !== ''; + }) + .map(function (key) { + return [kebabCase(key), [styles[key]]].join(':'); + }) + .join(';'); + } + + return styles; +} + +module.exports = style; diff --git a/app/miniprogram_npm/@vant/weapp/wxs/utils.wxs b/app/miniprogram_npm/@vant/weapp/wxs/utils.wxs new file mode 100644 index 0000000..f66d33a --- /dev/null +++ b/app/miniprogram_npm/@vant/weapp/wxs/utils.wxs @@ -0,0 +1,10 @@ +/* eslint-disable */ +var bem = require('./bem.wxs'); +var memoize = require('./memoize.wxs'); +var addUnit = require('./add-unit.wxs'); + +module.exports = { + bem: memoize(bem), + memoize: memoize, + addUnit: addUnit +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/.wechatide.ib.json b/app/miniprogram_npm/tdesign-miniprogram/.wechatide.ib.json new file mode 100644 index 0000000..4bdac29 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/.wechatide.ib.json @@ -0,0 +1 @@ +{"key":"TDesign","label":"Tdesign","components":{"t-action-sheet":{"key":"t-action-sheet","label":"动作面板","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-actionsheet.png","properties":[{"key":"cancelText","type":["String"],"desc":"设置取消按钮的文本","label":""},{"key":"count","type":["Number"],"desc":"设置每页展示菜单的数量,仅当 type=grid 时有效","label":""},{"key":"items","type":["Array"],"desc":"菜单项","label":""},{"key":"showCancel","type":["Boolean"],"desc":"是否显示取消按钮","label":""},{"key":"theme","type":["String"],"desc":"展示类型,列表和表格形式展示","label":""},{"key":"visible","type":["Boolean"],"desc":"显示与隐藏","label":""}],"events":[{"key":"bind:cancel","desc":"点击取消按钮时触发","label":""},{"key":"bind:close","desc":"关闭时触发","label":""},{"key":"bind:selected","desc":"选择菜单项时触发","label":""}],"tpl":"","path":"./action-sheet/action-sheet"},"t-avatar-group":{"key":"t-avatar-group","label":"头像组","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-avatar.png","properties":[{"key":"cascading","type":["String"],"desc":"图片之间的层叠关系,可选值:左侧图片在上和右侧图片在上","label":""},{"key":"collapseAvatar","type":["String"],"desc":"头像数量超出时,会出现一个头像折叠元素。该元素内容可自定义。默认为 `+N`。示例:`+5`,`...`, `更多`","label":""},{"key":"max","type":["Number"],"desc":"能够同时显示的最多头像数量","label":""},{"key":"size","type":["String"],"desc":"尺寸,示例值:small/medium/large/24px/38px 等。优先级低于 Avatar.size","label":""}],"externalClasses":["t-class","t-class-image","t-class-content"],"tpl":"","require":{"t-avatar":"./avatar/avatar"},"path":"./avatar/avatar-group"},"t-avatar":{"key":"t-avatar","label":"头像","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-avatar.png","properties":[{"key":"alt","type":["String"],"desc":"头像替换文本,仅当图片加载失败时有效","label":""},{"key":"badgeProps","type":["Object"],"desc":"头像右上角提示信息,继承 Badge 组件的全部特性。如:小红点,或者数字","label":""},{"key":"hideOnLoadFailed","type":["Boolean"],"desc":"加载失败时隐藏图片","label":""},{"key":"icon","type":["String"],"desc":"图标","label":""},{"key":"image","type":["String"],"desc":"图片地址","label":""},{"key":"shape","type":["String"],"desc":"形状","label":""},{"key":"size","type":["String"],"desc":"尺寸,示例值:small/medium/large/24px/38px 等,默认为 large","label":""}],"externalClasses":["t-class"],"events":[{"key":"bind:error","desc":"图片加载失败时触发","label":""}],"tpl":"","path":"./avatar/avatar"},"t-back-top":{"key":"t-back-top","label":"回到顶部","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-backtop.png","properties":[{"key":"fixed","type":["Boolean"],"desc":"是否绝对定位固定到屏幕右下方","label":""},{"key":"icon","type":["String"],"desc":"图标","label":""},{"key":"text","type":["String"],"desc":"文案","label":""},{"key":"theme","type":["String"],"desc":"预设的样式类型","label":""}],"externalClasses":["t-class","t-class-icon","t-class-text"],"events":[{"key":"bind:to-top","desc":"点击触发","label":""}],"tpl":"","path":"./back-top/back-top"},"t-badge":{"key":"t-badge","label":"徽标数","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-badge.png","properties":[{"key":"color","type":["String"],"desc":"颜色","label":""},{"key":"content","type":["String"],"desc":"徽标内容,示例:`content='自定义内容'`。也可以使用默认插槽定义","label":""},{"key":"count","type":["String","Number"],"desc":"徽标右上角内容。可以是数字,也可以是文字。如:'new'/3/99+。特殊:值为空表示使用插槽渲染","label":""},{"key":"dot","type":["Boolean"],"desc":"是否为红点","label":""},{"key":"maxCount","type":["Number"],"desc":"封顶的数字值","label":""},{"key":"offset","type":["Array"],"desc":"设置状态点的位置偏移,示例:[-10, 20] 或 ['10em', '8rem']","label":""},{"key":"shape","type":["String"],"desc":"形状","label":""},{"key":"showZero","type":["Boolean"],"desc":"当数值为 0 时,是否展示徽标","label":""},{"key":"size","type":["String"],"desc":"尺寸","label":""}],"externalClasses":["t-class","t-class-content","t-class-count"],"tpl":"","path":"./badge/badge"},"t-button":{"key":"t-button","label":"按钮","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-button.png","properties":[{"key":"block","type":["Boolean"],"desc":"是否为块级元素","label":""},{"key":"content","type":["String"],"desc":"按钮内容","label":""},{"key":"customDataset","type":["Object"],"desc":"自定义 dataset,可通过 event.currentTarget.dataset.custom 获取","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用按钮","label":""},{"key":"ghost","type":["Boolean"],"desc":"是否为幽灵按钮(镂空按钮)","label":""},{"key":"icon","type":["String"],"desc":"图标名称","label":""},{"key":"loading","type":["Boolean"],"desc":"是否显示为加载状态","label":""},{"key":"shape","type":["String"],"desc":"按钮形状,有 4 种:长方形、正方形、圆角长方形、圆形","label":""},{"key":"size","type":["String"],"desc":"组件尺寸","label":""},{"key":"theme","type":["String"],"desc":"组件风格,依次为品牌色、危险色","label":""},{"key":"type","type":["String"],"desc":"同小程序的 formType","label":""},{"key":"variant","type":["String"],"desc":"按钮形式,基础、线框、文字","label":""}],"externalClasses":["t-class","t-class-icon"],"events":[{"key":"bind:click","desc":"点击时触发","label":""}],"tpl":"","path":"./button/button"},"t-cell-group":{"key":"t-cell-group","label":"单元格组","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-cell.png","properties":[{"key":"bordered","type":["Boolean"],"desc":"是否显示组边框","label":""},{"key":"title","type":["String"],"desc":"单元格组标题","label":""}],"externalClasses":["t-class"],"tpl":"","require":{"t-cell":"./cell/cell"},"path":"./cell-group/cell-group"},"t-cell":{"key":"t-cell","label":"单元格","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-cell.png","properties":[{"key":"align","type":["String"],"desc":"内容的对齐方式,默认居中对齐","label":""},{"key":"arrow","type":["Boolean"],"desc":"是否显示右侧箭头","label":""},{"key":"bordered","type":["Boolean"],"desc":"是否显示下边框","label":""},{"key":"description","type":["String"],"desc":"下方内容描述","label":""},{"key":"hover","type":["Boolean"],"desc":"是否开启点击反馈","label":""},{"key":"image","type":["String"],"desc":"主图","label":""},{"key":"jumpType","type":["String"],"desc":"链接跳转类型","label":""},{"key":"leftIcon","type":["String"],"desc":"左侧图标,出现在单元格标题的左侧","label":""},{"key":"note","type":["String"],"desc":"和标题同行的说明文字","label":""},{"key":"required","type":["Boolean"],"desc":"是否显示表单必填星号","label":""},{"key":"rightIcon","type":["String"],"desc":"最右侧图标","label":""},{"key":"title","type":["String"],"desc":"标题","label":""},{"key":"url","type":["String"],"desc":"点击后跳转链接地址。如果值为空,则表示不需要跳转","label":""}],"externalClasses":["t-class","t-class-title","t-class-note","t-class-description","t-class-thumb","t-class-hover","t-class-left","t-class-right"],"events":[{"key":"bind:click","desc":"右侧内容","label":""}],"tpl":"","path":"./cell/cell"},"t-check-tag":{"key":"t-check-tag","label":"可选标签","icon":"","properties":[{"key":"checked","type":["Boolean"],"desc":"标签选中的状态,默认风格(theme=default)才有选中态","label":""},{"key":"closable","type":["Boolean"],"desc":"标签是否可关闭","label":""},{"key":"content","type":["String","Number"],"desc":"组件子元素","label":""},{"key":"disabled","type":["Boolean"],"desc":"标签禁用态,失效标签不能触发事件。默认风格(theme=default)才有禁用态","label":""},{"key":"icon","type":["String"],"desc":"标签中的图标,可自定义图标呈现","label":""},{"key":"shape","type":["String"],"desc":"标签类型,有三种:方形、圆角方形、标记型","label":""},{"key":"size","type":["String"],"desc":"标签尺寸","label":""}],"events":[{"key":"bind:change","desc":"组件子元素","label":""},{"key":"bind:click","desc":"点击标签时触发","label":""}],"tpl":"check tag","path":"./check-tag/check-tag"},"t-checkbox-group":{"key":"t-checkbox-group","label":"多选框组","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-checkbox.png","properties":[{"key":"disabled","type":["Boolean"],"desc":"是否禁用组件","label":""},{"key":"max","type":["Number"],"desc":"支持最多选中的数量","label":""},{"key":"name","type":["String"],"desc":"统一设置内部复选框 HTML 属性","label":""},{"key":"options","type":["Array"],"desc":"以配置形式设置子元素。示例1:`['北京', '上海']` ,示例2: `[{ label: '全选', checkAll: true }, { label: '上海', value: 'shanghai' }]`。checkAll 值为 true 表示当前选项为「全选选项」","label":""},{"key":"value","type":["Array"],"desc":"选中值","label":""}],"events":[{"key":"bind:change","desc":"值变化时触发。`context.current` 表示当前变化的数据项,如果是全选则为空;`context.type` 表示引起选中数据变化的是选中或是取消选中,`context.option` 表示当前变化的数据项","label":""}],"tpl":"","require":{"t-checkbox":"./checkbox/checkbox"},"path":"./checkbox-group/checkbox-group"},"t-checkbox":{"key":"t-checkbox","label":"多选框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-checkbox.png","properties":[{"key":"align","type":["String"],"desc":"多选框和内容相对位置","label":""},{"key":"checkAll","type":["Boolean"],"desc":"用于标识是否为「全选选项」。单独使用无效,需在 CheckboxGroup 中使用","label":""},{"key":"checked","type":["Boolean"],"desc":"是否选中","label":""},{"key":"color","type":["String"],"desc":"多选框颜色","label":""},{"key":"content","type":["String"],"desc":"多选框内容","label":""},{"key":"contentDisabled","type":["Boolean"],"desc":"是否禁用组件内容(content)触发选中","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用组件","label":""},{"key":"icon","type":["Array"],"desc":"自定义选中图标和非选中图标。示例:[选中态图标地址,非选中态图标地址]","label":""},{"key":"indeterminate","type":["Boolean"],"desc":"是否为半选","label":""},{"key":"label","type":["String"],"desc":"主文案","label":""},{"key":"maxContentRow","type":["Number"],"desc":"内容最大行数限制","label":""},{"key":"maxLabelRow","type":["Number"],"desc":"主文案最大行数限制","label":""},{"key":"name","type":["String"],"desc":"HTML 元素原生属性","label":""},{"key":"readonly","type":["Boolean"],"desc":"只读状态","label":""},{"key":"value","type":["String","Number"],"desc":"多选框的值","label":""}],"externalClasses":["t-class","t-class-icon","t-class-label","t-class-content","t-class-border"],"events":[{"key":"bind:change","desc":"值变化时触发","label":""}],"tpl":"","path":"./checkbox/checkbox"},"t-collapse-panel":{"key":"t-collapse-panel","label":"折叠面板","icon":"","properties":[{"key":"content","type":["String"],"desc":"折叠面板内容","label":""},{"key":"disabled","type":["Boolean"],"desc":"禁止当前面板展开,优先级大于 Collapse 的同名属性","label":""},{"key":"expandIcon","type":["Boolean"],"desc":"当前折叠面板展开图标,优先级大于 Collapse 的同名属性","label":""},{"key":"header","type":["String"],"desc":"面板头内容","label":""},{"key":"headerRightContent","type":["String"],"desc":"面板头的右侧区域,一般用于呈现面板操作","label":""},{"key":"value","type":["String","Number"],"desc":"当前面板唯一标识,如果值为空则取当前面下标兜底作为唯一标识","label":""}],"tpl":"此处可自定义内容","path":"./collapse/collapse-panel"},"t-collapse":{"key":"t-collapse","label":"折叠","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-collapse.png","properties":[{"key":"defaultExpandAll","type":["Boolean"],"desc":"默认是否展开全部","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用面板展开/收起操作","label":""},{"key":"expandIcon","type":["Boolean"],"desc":"展开图标。值为 undefined 或 false 则不显示展开图标;值为 true 显示默认图标;值类型为函数,则表示完全自定义展开图标","label":""},{"key":"expandMutex","type":["Boolean"],"desc":"每个面板互斥展开,每次只展开一个面板","label":""},{"key":"value","type":["Array"],"desc":"展开的面板集合","label":""}],"events":[{"key":"bind:change","desc":"切换面板时触发,返回变化的值","label":""}],"tpl":"此处可自定义内容","require":{"t-collapse-panel":"./collapse/collapse-panel"},"path":"./collapse/collapse"},"t-date-time-picker":{"key":"t-date-time-picker","label":"日期时间选择器","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-datetimepicker.png","properties":[{"key":"cancelBtn","type":["String"],"desc":"取消按钮文字","label":""},{"key":"confirmBtn","type":["String"],"desc":"确定按钮文字","label":""},{"key":"end","type":["String","Number"],"desc":"选择器的结束时间","label":""},{"key":"footer","type":["String"],"desc":"底部内容","label":""},{"key":"format","type":["String"],"desc":"用于格式化日期,[详细文档](https://day.js.org/docs/en/display/format)","label":""},{"key":"header","type":["Boolean"],"desc":"头部内容。值为 true 显示空白头部,值为 false 不显示任何内容,值类型为 TNode 表示自定义头部内容","label":""},{"key":"mode","type":["String","Array"],"desc":"选择器模式,用于表示可以选择到哪一个层级。【示例一】year 或者 ['year'] 表示纯日期选择器,只能选择到年份,只显示年份。【示例二】'hour' 或 ['hour'] 表示纯时间选择器,只能选择到小时维度。【示例三】['year', 'month', 'date', 'hour', 'minute'] 表示,日期和时间 混合选择器,可以选择到具体哪一分钟,显示全部时间:年/月/日/时/分","label":""},{"key":"showWeek","type":["Boolean"],"desc":"【开发中】是否在日期旁边显示周几(如周一,周二,周日等)","label":""},{"key":"start","type":["String","Number"],"desc":"选择器的开始时间","label":""},{"key":"title","type":["String"],"desc":"标题","label":""},{"key":"value","type":["String","Number"],"desc":"选中值","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示","label":""}],"externalClasses":["t-class","t-class-confirm","t-class-cancel","t-class-title"],"events":[{"key":"bind:cancel","desc":"取消按钮点击时触发","label":""},{"key":"bind:change","desc":"选中值发生变化时触发","label":""},{"key":"bind:column-change","desc":"每一列选中数据变化时触发","label":""},{"key":"bind:confirm","desc":"确认按钮点击时触发","label":""}],"tpl":"","path":"./date-time-picker/date-time-picker"},"t-dialog":{"key":"t-dialog","label":"对话框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-dialog.png","properties":[{"key":"actions","type":["Array"],"desc":"操作栏","label":""},{"key":"buttonLayout","type":["String"],"desc":"多按钮排列方式","label":""},{"key":"cancelBtn","type":["String","Object"],"desc":"取消按钮,可自定义。值为 null 则不显示取消按钮。值类型为字符串,则表示自定义按钮文本,值类型为 Object 则表示透传 Button 组件属性。使用 TNode 自定义按钮时,需自行控制取消事件","label":""},{"key":"closeOnOverlayClick","type":["Boolean"],"desc":"点击蒙层时是否触发关闭事件","label":""},{"key":"confirmBtn","type":["String","Object"],"desc":"确认按钮。值为 null 则不显示确认按钮。值类型为字符串,则表示自定义按钮文本,值类型为 Object 则表示透传 Button 组件属性。使用 TNode 自定义按钮时,需自行控制确认事件","label":""},{"key":"content","type":["String"],"desc":"内容","label":""},{"key":"preventScrollThrough","type":["Boolean"],"desc":"防止滚动穿透","label":""},{"key":"showInAttachedElement","type":["Boolean"],"desc":"【开发中】仅在挂载元素中显示抽屉,默认在浏览器可视区域显示。父元素需要有定位属性,如:position: relative","label":""},{"key":"showOverlay","type":["Boolean"],"desc":"是否显示遮罩层","label":""},{"key":"title","type":["String"],"desc":"标题","label":""},{"key":"visible","type":["Boolean"],"desc":"控制对话框是否显示","label":""},{"key":"zIndex","type":["Number"],"desc":"对话框层级,Web 侧样式默认为 2500,移动端和小程序样式默认为 1500","label":""}],"externalClasses":["t-class","t-class-content","t-class-confirm","t-class-cancel"],"events":[{"key":"bind:cancel","desc":"如果“取消”按钮存在,则点击“取消”按钮时触发,同时触发关闭事件","label":""},{"key":"bind:close","desc":"关闭事件,点击 取消按钮 或 点击蒙层 时触发","label":""},{"key":"bind:overlay-click","desc":"如果蒙层存在,点击蒙层时触发","label":""}],"tpl":"","path":"./dialog/dialog"},"t-divider":{"key":"t-divider","label":"分割线","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-divider.png","properties":[{"key":"align","type":["String"],"desc":"文本位置(仅在水平分割线有效)","label":""},{"key":"content","type":["String"],"desc":"子元素","label":""},{"key":"dashed","type":["Boolean"],"desc":"是否虚线(仅在水平分割线有效)","label":""},{"key":"layout","type":["String"],"desc":"分隔线类型有两种:水平和垂直","label":""},{"key":"lineColor","type":["String"],"desc":"分隔线颜色","label":""}],"externalClasses":["t-class","t-class-line","t-class-content"],"tpl":"","path":"./divider/divider"},"t-drawer":{"key":"t-drawer","label":"模态抽屉","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-drawer.png","properties":[{"key":"closeOnOverlayClick","type":["Boolean"],"desc":"点击蒙层时是否触发抽屉关闭事件","label":""},{"key":"destroyOnClose","type":["Boolean"],"desc":"抽屉关闭时是否销毁节点","label":""},{"key":"items","type":["Array"],"desc":"抽屉里的列表项","label":""},{"key":"placement","type":["String"],"desc":"抽屉方向","label":""},{"key":"showOverlay","type":["Boolean"],"desc":"是否显示遮罩层","label":""},{"key":"visible","type":["Boolean"],"desc":"组件是否可见","label":""},{"key":"zIndex","type":["Number"],"desc":"抽屉层级,样式默认为 1500","label":""}],"events":[{"key":"bind:close","desc":"关闭事件,取消按钮点击时、关闭按钮点击时、点击蒙层时均会触发","label":""},{"key":"bind:item-click","desc":"点击抽屉里的列表项","label":""},{"key":"bind:overlay-click","desc":"如果蒙层存在,点击蒙层时触发","label":""}],"tpl":"","path":"./drawer/drawer"},"t-dropdown-item":{"key":"t-dropdown-item","label":"下拉菜单子项","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-dropdownmenu.png","properties":[{"key":"disabled","type":["Boolean"],"desc":"是否禁用","label":""},{"key":"label","type":["String"],"desc":"标题","label":""},{"key":"multiple","type":["Boolean"],"desc":"是否多选","label":""},{"key":"options","type":["Array"],"desc":"选项数据","label":""}],"tpl":"","path":"./dropdown-menu/dropdown-item"},"t-dropdown-menu":{"key":"t-dropdown-menu","label":"下拉菜单","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-dropdownmenu.png","properties":[{"key":"activeColor","type":["String"],"desc":"【讨论中】菜单标题和选项的选中态颜色","label":""},{"key":"closeOnClickOverlay","type":["Boolean"],"desc":"是否在点击遮罩层后关闭菜单","label":""},{"key":"duration","type":["String","Number"],"desc":"动画时长","label":""},{"key":"showOverlay","type":["Boolean"],"desc":"是否显示遮罩层","label":""},{"key":"zIndex","type":["Number"],"desc":"菜单栏 z-index 层级","label":""}],"tpl":"","require":{"t-dropdown-item":"./dropdown-menu/dropdown-item"},"path":"./dropdown-menu/dropdown-menu"},"t-empty":{"key":"t-empty","label":"空状态","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-empty.png","properties":[{"key":"action","type":["String"],"desc":"操作按钮","label":""},{"key":"description","type":["String"],"desc":"描述文字","label":""},{"key":"icon","type":["String"],"desc":"图标名称","label":""},{"key":"image","type":["String"],"desc":"图片地址","label":""}],"externalClasses":["t-class","t-class-description","t-class-image","t-class-actions"],"tpl":"","path":"./empty/empty"},"t-fab":{"key":"t-fab","label":"悬浮按钮","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-fab.png","properties":[{"key":"buttonProps","type":["Object"],"desc":"透传至 Button 组件","label":""},{"key":"icon","type":["String"],"desc":"图标","label":""},{"key":"style","type":["String"],"desc":"悬浮按钮的样式,常用于调整位置","label":""},{"key":"text","type":["String"],"desc":"文本内容","label":""}],"events":[{"key":"bind:click","desc":"悬浮按钮点击事件","label":""}],"tpl":"","path":"./fab/fab"},"t-footer":{"key":"t-footer","label":"布局-底部内容","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-footer.png","properties":[{"key":"copyright","type":["String"],"desc":"版权信息,type 为`text`生效","label":""},{"key":"logo","type":["Object"],"desc":"图标配置,type 为`logo`生效。`logo.icon` 表示图标链接地址,`logo.title` 表示标题文本,`logo.url` 表示链接跳转地址","label":""},{"key":"textLinkList","type":["Array"],"desc":"链接列表,type 为`text`生效。name 表示链接名称, url 表示链接 page 路径,目前只支持小程序内部跳转,openType 表示跳转方式","label":""},{"key":"theme","type":["String"],"desc":"页脚展示类型","label":""}],"tpl":"","path":"./footer/footer"},"t-grid-item":{"key":"t-grid-item","label":"宫格子项","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-grid.png","properties":[{"key":"badgeProps","type":["Object"],"desc":"头像右上角提示信息,继承 Badge 组件的全部特性。如:小红点,或者数字","label":""},{"key":"description","type":["String"],"desc":"文本以外的更多描述,辅助信息。可以通过 Props 传入文本,也可以自定义标题节点","label":""},{"key":"image","type":["String"],"desc":"图片,可以是图片地址,也可以自定义图片节点","label":""},{"key":"jumpType","type":["String"],"desc":"链接跳转类型","label":""},{"key":"layout","type":["String"],"desc":"内容布局方式","label":""},{"key":"text","type":["String"],"desc":"文本,可以通过 Props 传入文本,也可以自定义标题节点","label":""},{"key":"url","type":["String"],"desc":"点击后的跳转链接","label":""}],"externalClasses":["t-class","t-class-image","t-class-text","t-class-description"],"tpl":"","path":"./grid-item/grid-item"},"t-grid":{"key":"t-grid","label":"栅格","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-grid.png","properties":[{"key":"align","type":["String"],"desc":"内容对齐方式","label":""},{"key":"border","type":["Boolean","Object"],"desc":"边框,默认不显示。值为 true 则显示默认边框,值类型为 object 则表示自定义边框样式","label":""},{"key":"column","type":["Number"],"desc":"每一行的列数量","label":""},{"key":"gutter","type":["Number"],"desc":"间隔大小","label":""},{"key":"hover","type":["Boolean"],"desc":"是否开启点击反馈","label":""}],"externalClasses":["t-class"],"tpl":"","require":{"t-grid-item":"./grid-item/grid-item"},"path":"./grid/grid"},"t-icon":{"key":"t-icon","label":"图标","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-icon.png","properties":[{"key":"classPrefix","type":["String"],"desc":"自定义icon前缀","label":""},{"key":"color","type":["String"],"desc":"图标颜色","label":""},{"key":"style","type":["String"],"desc":"自定义样式","label":""},{"key":"name","type":["String"],"desc":"图标名称","label":""},{"key":"size","type":["String","Number"],"desc":"图标名称","label":""}],"tpl":"","path":"./icon/icon"},"t-image":{"key":"t-image","label":"图片","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-image.png","properties":[{"key":"error","type":["String"],"desc":"加载失败时显示的内容。值为 `default` 则表示使用默认加载失败风格;值为空或者 `slot` 表示使用插槽渲染,插槽名称为 `error`;值为其他则表示普通文本内容,如“加载失败”","label":""},{"key":"lazy","type":["Boolean"],"desc":"是否开启图片懒加载","label":""},{"key":"loading","type":["String"],"desc":"加载态内容。值为 `default` 则表示使用默认加载中风格;值为空或者 `slot` 表示使用插槽渲染,插槽名称为 `loading`;值为其他则表示普通文本内容,如“加载中”","label":""},{"key":"shape","type":["String"],"desc":"图片圆角类型","label":""},{"key":"src","type":["String"],"desc":"图片链接","label":""}],"externalClasses":["t-class","t-class-load"],"events":[{"key":"bind:error","desc":"图片加载失败时触发","label":""},{"key":"bind:load","desc":"图片加载完成时触发","label":""}],"tpl":"","path":"./image/image"},"t-indexes":{"key":"t-indexes","label":"索引","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-indexes.png","properties":[{"key":"height","type":["Number"],"desc":"列表高度,未设置默认占满设备高度","label":""},{"key":"list","type":["Array"],"desc":"索引列表的列表数据。每个元素包含三个子元素,index(string):索引值,例如1,2,3,...或A,B,C等;title(string): 索引标题,可不填将默认设为索引值;children(Array<{title: string}>): 子元素列表,title为子元素的展示文案。","label":""},{"key":"sticky","type":["Boolean"],"desc":"索引是否吸顶,默认为true","label":""}],"events":[{"key":"bind:select","desc":"点击行元素时触发事件","label":""}],"tpl":"","path":"./indexes/indexes"},"t-input":{"key":"t-input","label":"输入框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-input.png","properties":[{"key":"align","type":["String"],"desc":"文本内容位置,居左/居中/居右","label":""},{"key":"borderless","type":["Boolean"],"desc":"【讨论中】是否开启无边框模式","label":""},{"key":"clearable","type":["Boolean"],"desc":"是否可清空","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用输入框","label":""},{"key":"errorMessage","type":["String"],"desc":"错误提示文本,值为空不显示(废弃属性,如果需要,请更为使用 status 和 tips)","label":""},{"key":"format","type":["String"],"desc":"【开发中】指定输入框展示值的格式","label":""},{"key":"label","type":["String"],"desc":"左侧文本","label":""},{"key":"maxcharacter","type":["Number"],"desc":"用户最多可以输入的字符个数,一个中文汉字表示两个字符长度。`maxcharacter` 和 `maxlength` 二选一使用","label":""},{"key":"maxlength","type":["Number"],"desc":"用户最多可以输入的文本长度,一个中文等于一个计数长度。值小于等于 0 的时候,则表示不限制输入长度。`maxcharacter` 和 `maxlength` 二选一使用","label":""},{"key":"placeholder","type":["String"],"desc":"占位符","label":""},{"key":"prefixIcon","type":["String"],"desc":"组件前置图标,值为字符串则表示图标名称","label":""},{"key":"readonly","type":["Boolean"],"desc":"只读状态","label":""},{"key":"size","type":["String"],"desc":"输入框尺寸","label":""},{"key":"status","type":["String"],"desc":"输入框状态","label":""},{"key":"suffix","type":["String"],"desc":"后置图标前的后置内容","label":""},{"key":"suffixIcon","type":["String"],"desc":"后置文本内容,值为字符串则表示图标名称","label":""},{"key":"tips","type":["String"],"desc":"输入框下方提示文本,会根据不同的 `status` 呈现不同的样式","label":""},{"key":"value","type":["String","Number"],"desc":"输入框的值","label":""}],"externalClasses":["t-class","t-class-input","t-class-placeholder","t-class-error-msg"],"events":[{"key":"bind:blur","desc":"失去焦点时触发","label":""},{"key":"bind:change","desc":"输入框值发生变化时触发","label":""},{"key":"bind:clear","desc":"清空按钮点击时触发","label":""},{"key":"bind:enter","desc":"回车键按下时触发","label":""},{"key":"bind:focus","desc":"获得焦点时触发","label":""}],"tpl":"","path":"./input/input"},"t-loading":{"key":"t-loading","label":"加载中","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-loading.png","properties":[{"key":"delay","type":["Number"],"desc":"延迟显示加载效果的时间,用于防止请求速度过快引起的加载闪烁,单位:毫秒","label":""},{"key":"duration","type":["Number"],"desc":"加载动画执行完成一次的时间,单位:毫秒","label":""},{"key":"indicator","type":["Boolean"],"desc":"是否显示加载指示符","label":""},{"key":"inheritColor","type":["Boolean"],"desc":"是否继承父元素颜色","label":""},{"key":"layout","type":["String"],"desc":"对齐方式","label":""},{"key":"loading","type":["Boolean"],"desc":"是否处于加载状态","label":""},{"key":"pause","type":["Boolean"],"desc":"是否暂停动画","label":""},{"key":"progress","type":["Number"],"desc":"加载进度","label":""},{"key":"reverse","type":["Boolean"],"desc":"加载动画是否反向","label":""},{"key":"size","type":["String"],"desc":"尺寸,示例:40rpx/20px","label":""},{"key":"text","type":["String"],"desc":"加载提示文案","label":""},{"key":"theme","type":["String"],"desc":"加载组件类型","label":""}],"externalClasses":["t-class","t-class-text","t-class-indicator"],"tpl":"","path":"./loading/loading"},"t-message":{"key":"t-message","label":"全局提醒","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-message.png","properties":[{"key":"action","type":["String"],"desc":"操作","label":""},{"key":"align","type":["String"],"desc":"文本对齐方式","label":""},{"key":"closeBtn","type":["String","Boolean"],"desc":"关闭按钮,可以自定义。值为 true 显示默认关闭按钮,值为 false 不显示关闭按钮。值类型为 string 则直接显示值,如:“关闭”。也可以完全自定义按钮","label":""},{"key":"content","type":["String"],"desc":"用于自定义消息弹出内容","label":""},{"key":"duration","type":["Number"],"desc":"消息内置计时器,计时到达时会触发 duration-end 事件。单位:毫秒。值为 0 则表示没有计时器。","label":""},{"key":"icon","type":["String","Boolean"],"desc":"消息提醒前面的图标。值为 true 则根据 theme 显示对应的图标,值为 false 则不显示图标。值为 'info' 或 'bell' 则显示组件内置图标。也可以完全自定义图标节点","label":""},{"key":"marquee","type":["Boolean","Object"],"desc":"跑马灯效果。speed 指速度控制;loop 指循环播放次数,值为 -1 表示循环播放,值为 0 表示不循环播放;delay 表示延迟多久开始播放","label":""},{"key":"offset","type":["Array"],"desc":"相对于 placement 的偏移量,示例:[-10, 20] 或 ['10rpx', '8rpx']","label":""},{"key":"theme","type":["String"],"desc":"消息组件风格","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示,隐藏时默认销毁组件","label":""},{"key":"zIndex","type":["Number"],"desc":"元素层级,样式默认为 5000","label":""}],"externalClasses":["t-class","t-class-content","t-class-icon","t-class-action","t-class-close-btn"],"events":[{"key":"bind:action-btn-click","desc":"当操作按钮存在时,用户点击操作按钮时触发","label":""},{"key":"bind:close-btn-click","desc":"当关闭按钮存在时,用户点击关闭按钮触发","label":""},{"key":"bind:duration-end","desc":"计时结束后触发","label":""}],"tpl":"","path":"./message/message"},"t-navbar":{"key":"t-navbar","label":"导航条","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-navbar.png","properties":[{"key":"animation","type":["Boolean"],"desc":"是否添加动画效果","label":""},{"key":"background","type":["String"],"desc":"背景","label":""},{"key":"delta","type":["Number"],"desc":"后退按钮后退层数,含义参考 [wx.navigateBack](https://developers.weixin.qq.com/miniprogram/dev/api/route/wx.navigateBack.html),特殊的,传入 0 不会发生执行 wx.navigateBack,只会触发一个 goback 事件供自行处理。","label":""},{"key":"fixed","type":["Boolean"],"desc":"是否固定在顶部","label":""},{"key":"homeIcon","type":["String"],"desc":"首页图标地址。值为 '' 或者 undefiend 则表示不显示返回图标,值为 'circle' 表示显示默认图标,值为 'slot' 表示使用插槽渲染,值为其他则表示图标地址","label":""},{"key":"leftIcon","type":["String"],"desc":"左侧图标地址,值为 '' 或者 undefiend 则表示不显示返回图标,值为 'arrow-left' 表示显示返回图标,值为 'slot' 表示使用插槽渲染,值为其他则表示图标地址","label":""},{"key":"title","type":["String"],"desc":"页面标题","label":""},{"key":"titleMaxLength","type":["Number"],"desc":"标题文字最大长度,超出的范围使用 `...` 表示","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示","label":""}],"externalClasses":["t-class","t-class-title","t-class-left-icon","t-class-home-icon","t-class-capsule"],"events":[{"key":"bind:complete","desc":"navigateBack 执行完成后触发(失败或成功均会触发)","label":""},{"key":"bind:fail","desc":"navigateBack 执行失败后触发","label":""},{"key":"bind:go-back","desc":"delta 值为 0 时,点击返回,触发该事件","label":""},{"key":"bind:go-home","desc":"点击 Home 触发","label":""},{"key":"bind:success","desc":"navigateBack 执行成功后触发","label":""}],"tpl":"","path":"./navbar/navbar"},"t-picker-item":{"key":"t-picker-item","label":"选择器子项","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-picker.png","properties":[{"key":"format","type":["String"],"desc":"格式化标签","label":""},{"key":"options","type":["Array"],"desc":"数据源","label":""}],"tpl":"","path":"./picker-item/picker-item"},"t-picker":{"key":"t-picker","label":"选择器","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-picker.png","properties":[{"key":"cancelBtn","type":["String","Object"],"desc":"取消按钮文字","label":""},{"key":"confirmBtn","type":["String","Object"],"desc":"确定按钮文字","label":""},{"key":"footer","type":["String"],"desc":"底部内容","label":""},{"key":"header","type":["Boolean"],"desc":"头部内容。值为 true 显示空白头部,值为 false 不显示任何内容,值类型为 TNode 表示自定义头部内容","label":""},{"key":"title","type":["String"],"desc":"标题","label":""},{"key":"value","type":["Array"],"desc":"选中值","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示","label":""}],"events":[{"key":"bind:cancel","desc":"点击取消按钮时触发","label":""},{"key":"bind:change","desc":"选中变化时候触发","label":""},{"key":"bind:pick","desc":"任何一列选中都会触发,不同的列参数不同。`context.column` 表示第几列变化,`context.index` 表示变化那一列的选中项下标","label":""}],"tpl":"","require":{"t-picker-item":"./picker-item/picker-item"},"path":"./picker/picker"},"t-popup":{"key":"t-popup","label":"气泡框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-popup.png","properties":[{"key":"closeBtn","type":["Boolean"],"desc":"关闭按钮,值类型为 Boolean 时表示是否显示关闭按钮。也可以自定义关闭按钮","label":""},{"key":"closeOnOverlayClick","type":["Boolean"],"desc":"点击遮罩层是否关闭","label":""},{"key":"content","type":["String"],"desc":"浮层里面的内容","label":""},{"key":"placement","type":["String"],"desc":"浮层出现位置","label":""},{"key":"preventScrollThrough","type":["Boolean"],"desc":"防止滚动穿透","label":""},{"key":"showOverlay","type":["Boolean"],"desc":"是否显示遮罩层","label":""},{"key":"transitionProps","type":["Object"],"desc":"动画效果定义","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示浮层","label":""},{"key":"zIndex","type":["Number"],"desc":"组件层级,Web 侧样式默认为 5500,移动端和小程序样式默认为 1500","label":""}],"externalClasses":["t-class","t-class-overlay","t-class-content"],"events":[{"key":"bind:visible-change","desc":"当浮层隐藏或显示时触发","label":""}],"tpl":"","path":"./popup/popup"},"t-progress":{"key":"t-progress","label":"进度条","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-progress.png","properties":[{"key":"color","type":["String","Object","Array"],"desc":"进度条颜色。示例:'#ED7B2F' 或 'orange' 或 `['#f00', '#0ff', '#f0f']` 或 `{ '0%': '#f00', '100%': '#0ff' }` 或 `{ from: '#000', to: '#000' }` 等","label":""},{"key":"label","type":["String","Boolean"],"desc":"进度百分比,可自定义","label":""},{"key":"percentage","type":["Number"],"desc":"进度条百分比","label":""},{"key":"size","type":["String","Number"],"desc":"进度条尺寸,示例:small/medium/large/240。small 值为 72; medium 值为 112;large 值为 160","label":""},{"key":"status","type":["String"],"desc":"进度条状态","label":""},{"key":"strokeWidth","type":["String","Number"],"desc":"进度条线宽。宽度数值不能超过 size 的一半,否则不能输出环形进度","label":""},{"key":"theme","type":["String"],"desc":"进度条风格。值为 line,标签(label)显示在进度条右侧;值为 plump,标签(label)显示在进度条里面;值为 circle,标签(label)显示在进度条正中间","label":""},{"key":"trackColor","type":["String"],"desc":"进度条未完成部分颜色","label":""}],"tpl":"","path":"./progress/progress"},"t-pull-down-refresh":{"key":"t-pull-down-refresh","label":"下拉刷新","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-pulldownrefresh.png","properties":[{"key":"loadingBarHeight","type":["String","Number"],"desc":"加载中下拉高度,如果值为数字则单位是:'px'","label":""},{"key":"loadingProps","type":["Object"],"desc":"加载loading样式","label":""},{"key":"loadingTexts","type":["Array"],"desc":"提示语,组件内部默认值为 ['下拉刷新', '松手刷新', '正在刷新', '刷新完成']","label":""},{"key":"maxBarHeight","type":["String","Number"],"desc":"最大下拉高度,如果值为数字则单位是:'px'","label":""},{"key":"refreshTimeout","type":["Number"],"desc":"刷新超时时间","label":""},{"key":"value","type":["Boolean"],"desc":"组件状态,值为 `true` 表示下拉状态,值为 `false` 表示收起状态","label":""}],"externalClasses":["t-class","t-class-loading","t-class-text","t-class-indicator"],"events":[{"key":"bind:change","desc":"下拉或收起时触发,用户手势往下滑动触发下拉状态,手势松开触发收起状态","label":""},{"key":"bind:refresh","desc":"结束下拉时触发","label":""},{"key":"bind:timeout","desc":"刷新超时触发","label":""}],"tpl":"拖拽该区域演示 中间下拉刷新","path":"./pull-down-refresh/pull-down-refresh"},"t-radio-group":{"key":"t-radio-group","label":"单选框组","icon":"","properties":[{"key":"disabled","type":["Boolean"],"desc":"是否禁用全部子单选框","label":""},{"key":"name","type":["String"],"desc":"HTML 元素原生属性","label":""},{"key":"options","type":["Array"],"desc":"单选组件按钮形式。RadioOption 数据类型为 string 或 number 时,表示 label 和 value 值相同","label":""},{"key":"value","type":["String","Number","Boolean"],"desc":"选中的值","label":""}],"events":[{"key":"bind:change","desc":"选中值发生变化时触发","label":""}],"tpl":"","require":{"t-radio":"./radio/radio"},"path":"./radio-group/radio-group"},"t-radio":{"key":"t-radio","label":"单选框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-radio.png","properties":[{"key":"align","type":["String"],"desc":"复选框和内容相对位置","label":""},{"key":"allowUncheck","type":["Boolean"],"desc":"是否允许取消选中","label":""},{"key":"checked","type":["Boolean"],"desc":"是否选中","label":""},{"key":"color","type":["String"],"desc":"单选按钮颜色","label":""},{"key":"content","type":["String"],"desc":"单选内容","label":""},{"key":"contentDisabled","type":["Boolean"],"desc":"是否禁用组件内容(content)触发选中","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否为禁用态","label":""},{"key":"icon","type":["String","Array"],"desc":"自定义选中图标和非选中图标。示例:[选中态图标,非选中态图标]。值为 fill-circle 表示图标为填充型图标,值为 stroke-line 表示图标为描边型图标","label":""},{"key":"label","type":["String"],"desc":"主文案","label":""},{"key":"maxContentRow","type":["Number"],"desc":"内容最大行数限制","label":""},{"key":"maxLabelRow","type":["Number"],"desc":"主文案最大行数限制","label":""},{"key":"name","type":["String"],"desc":"HTML 元素原生属性","label":""},{"key":"value","type":["String","Number","Boolean"],"desc":"单选按钮的值","label":""}],"externalClasses":["t-class","t-class-icon","t-class-label","t-class-content","t-class-border"],"events":[{"key":"bind:change","desc":"值变化时触发","label":""}],"tpl":"","path":"./radio/radio"},"t-rate":{"key":"t-rate","label":"评分","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-rate.png","properties":[{"key":"allowHalf","type":["Boolean"],"desc":"是否允许半选","label":""},{"key":"color","type":["String","Array"],"desc":"评分图标的颜色,样式中默认为 #ED7B2F。一个值表示设置选中高亮的五角星颜色,示例:[选中颜色]。数组则表示分别设置 选中高亮的五角星颜色 和 未选中暗灰的五角星颜色,[选中颜色,未选中颜色]。示例:['#ED7B2F', '#E3E6EB']","label":""},{"key":"count","type":["Number"],"desc":"评分的数量","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用评分","label":""},{"key":"gap","type":["Number"],"desc":"评分图标的间距","label":""},{"key":"showText","type":["Boolean"],"desc":"是否显示对应的辅助文字","label":""},{"key":"size","type":["String"],"desc":"评分图标的大小,示例:`20`","label":""},{"key":"texts","type":["Array"],"desc":"评分等级对应的辅助文字。组件内置默认值为:['极差', '失望', '一般', '满意', '惊喜']。自定义值示例:['1分', '2分', '3分', '4分', '5分']","label":""},{"key":"value","type":["Number"],"desc":"选择评分的值","label":""},{"key":"variant","type":["String"],"desc":"形状类型,有描边类型和填充类型两种","label":""}],"events":[{"key":"bind:change","desc":"评分数改变时触发","label":""}],"tpl":"","path":"./rate/rate"},"t-search":{"key":"t-search","label":"搜索","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-search.png","properties":[{"key":"action","type":["String"],"desc":"自定义右侧操作按钮文字","label":""},{"key":"center","type":["Boolean"],"desc":"是否居中","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用","label":""},{"key":"focus","type":["Boolean"],"desc":"是否聚焦","label":""},{"key":"label","type":["String"],"desc":"左侧文本","label":""},{"key":"leftIcon","type":["String"],"desc":"左侧图标","label":""},{"key":"placeholder","type":["String"],"desc":"占位符","label":""},{"key":"rightIcon","type":["String"],"desc":"右侧图标","label":""},{"key":"shape","type":["String"],"desc":"搜索框形状","label":""},{"key":"value","type":["String"],"desc":"值","label":""}],"externalClasses":["t-class","t-class-input","t-class-input-container","t-class-cancel","t-class-left","t-class-right"],"events":[{"key":"bind:action-click","desc":"点击右侧操作按钮文字时触发","label":""},{"key":"bind:blur","desc":"失去焦点时触发","label":""},{"key":"bind:change","desc":"值发生变化时触发","label":""},{"key":"bind:clear","desc":"点击清除时触发","label":""},{"key":"bind:focus","desc":"聚焦时触发","label":""},{"key":"bind:submit","desc":"提交时触发","label":""}],"tpl":"","path":"./search/search"},"t-skeleton":{"key":"t-skeleton","label":"骨架屏","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-skeleton.png","properties":[{"key":"animation","type":["String"],"desc":"动画效果,有「渐变加载动画」和「闪烁加载动画」两种。值为 'none' 则表示没有动画","label":""},{"key":"delay","type":["Number"],"desc":"【开发中】延迟显示加载效果的时间,用于防止请求速度过快引起的加载闪烁,单位:毫秒","label":""},{"key":"loading","type":["Boolean"],"desc":"是否为加载状态,如果是则显示骨架图,如果不是则显示加载完成的内容","label":""},{"key":"rowCol","type":["Array"],"desc":"用于设置行列数量、宽度高度、间距等。【示例一】,`[1, 1, 2]` 表示输出三行骨架图,第一行一列,第二行一列,第三行两列。【示例二】,`[1, 1, { width: '100px' }]` 表示自定义第三行的宽度为 `100px`。【示例三】,`[1, 2, [{ width, height }, { width, height, marginLeft }]]` 表示第三行有两列,且自定义宽度、高度和间距","label":""},{"key":"theme","type":["String"],"desc":"骨架图风格,有基础、头像组合等两大类","label":""}],"externalClasses":["t-class","t-class-avatar","t-class-image","t-class-text"],"tpl":"","path":"./skeleton/skeleton"},"t-slider":{"key":"t-slider","label":"滑块","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-slider.png","properties":[{"key":"colors","type":["Array"],"desc":"颜色,[已选择, 未选择]","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用组件","label":""},{"key":"disabledColor","type":["Array"],"desc":"禁用状态滑动条的颜色,[已选, 未选]","label":""},{"key":"label","type":["String","Boolean"],"desc":"滑块当前值文本。值为 true 显示默认文案;值为 false 不显示滑块当前值文本;值为 `${value}%` 则表示组件会根据占位符渲染文案;值类型为函数时,参数 `value` 标识滑块值,参数 `position=start` 表示范围滑块的起始值,参数 `position=end` 表示范围滑块的终点值","label":""},{"key":"marks","type":["Object","Array"],"desc":"刻度标记,示例:`[0, 10, 40, 200]` 或者 `{ 5: '5¥', 10: '10%' }`","label":""},{"key":"max","type":["Number"],"desc":"滑块范围最大值","label":""},{"key":"min","type":["Number"],"desc":"滑块范围最小值","label":""},{"key":"range","type":["Boolean"],"desc":"双游标滑块","label":""},{"key":"showExtremeValue","type":["Boolean"],"desc":"是否边界值","label":""},{"key":"step","type":["Number"],"desc":"步长","label":""},{"key":"value","type":["Number","Array"],"desc":"滑块值","label":""}],"externalClasses":["t-class","t-class-bar","t-class-bar-active","t-class-bar-disabled","t-class-cursor"],"events":[{"key":"bind:change","desc":"滑块值变化时触发","label":""},{"key":"bind:dragend","desc":"结束拖动时触发","label":""},{"key":"bind:dragstart","desc":"开始拖动时触发","label":""}],"tpl":"","path":"./slider/slider"},"t-step-item":{"key":"t-step-item","label":"步骤","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-steps.png","properties":[{"key":"content","type":["String"],"desc":"步骤描述","label":""},{"key":"icon","type":["String"],"desc":"图标。传入 slot 代表使用插槽,其他字符串代表使用内置图标","label":""},{"key":"status","type":["String"],"desc":"当前步骤的状态","label":""},{"key":"subStepItems","type":["Array"],"desc":"子步骤条,仅支持 layout = 'vertical' 时","label":""},{"key":"title","type":["String"],"desc":"标题","label":""}],"externalClasses":["t-class","t-class-content","t-class-title","t-class-description","t-class-extra"],"tpl":"","path":"./step-item/step-item"},"t-stepper":{"key":"t-stepper","label":"步进器","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-stepper.png","properties":[{"key":"disabled","type":["Boolean"],"desc":"禁用全部操作","label":""},{"key":"disableInput","type":["Boolean"],"desc":"禁用输入框","label":""},{"key":"inputWidth","type":["Number"],"desc":"输入框宽度","label":""},{"key":"max","type":["Number"],"desc":"最大值","label":""},{"key":"min","type":["Number"],"desc":"最小值","label":""},{"key":"step","type":["Number"],"desc":"步长","label":""},{"key":"theme","type":["String"],"desc":"组件风格","label":""},{"key":"value","type":["String","Number"],"desc":"值","label":""}],"externalClasses":["t-class","t-class-input","t-class-add","t-class-minus"],"events":[{"key":"bind:blur","desc":"输入框失去焦点时触发","label":""},{"key":"bind:change","desc":"数值发生变更时触发","label":""},{"key":"bind:overlimit","desc":"数值超出限制时触发","label":""}],"tpl":"","path":"./stepper/stepper"},"t-steps":{"key":"t-steps","label":"步骤条","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-steps.png","properties":[{"key":"current","type":["String","Number"],"desc":"当前步骤,即整个步骤条进度。默认根据步骤下标判断步骤的完成状态,当前步骤为进行中,当前步骤之前的步骤为已完成,当前步骤之后的步骤为未开始。如果每个步骤没有设置 value,current 值为步骤长度则表示所有步骤已完成。如果每个步骤设置了自定义 value,则 current = 'FINISH' 表示所有状态完成","label":""},{"key":"currentStatus","type":["String"],"desc":"用于控制 current 指向的步骤条的状态","label":""},{"key":"layout","type":["String"],"desc":"步骤条方向,有两种:横向和纵向","label":""},{"key":"readonly","type":["Boolean"],"desc":"只读状态","label":""},{"key":"separator","type":["String"],"desc":"步骤条分割符","label":""},{"key":"theme","type":["String"],"desc":"步骤条风格","label":""}],"externalClasses":["t-class"],"events":[{"key":"bind:change","desc":"当前步骤发生变化时触发","label":""}],"tpl":"","require":{"t-step-item":"./step-item/step-item"},"path":"./steps/steps"},"t-sticky":{"key":"t-sticky","label":"吸顶容器","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-sticky.png","properties":[{"key":"container","type":["String"],"desc":"函数返回容器对应的 NodesRef 节点,将对应节点指定为组件的外部容器,滚动时组件会始终保持在容器范围内,当组件即将超出容器底部时,会返回原位置。","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用组件","label":""},{"key":"offsetTop","type":["String","Number"],"desc":"吸顶时与顶部的距离,单位`px`","label":""},{"key":"zIndex","type":["Number"],"desc":"吸顶时的 z-index","label":""}],"externalClasses":["t-class"],"events":[{"key":"bind:scroll","desc":"滚动时触发,scrollTop: 距离顶部位置,isFixed: 是否吸顶","label":""}],"tpl":"","path":"./sticky/sticky"},"t-swipe-cell":{"key":"t-swipe-cell","label":"滑动操作","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-swipecell.png","properties":[{"key":"disabled","type":["Boolean"],"desc":"是否禁用滑动","label":""},{"key":"expanded","type":["String"],"desc":"操作项是否呈现为打开态","label":""},{"key":"left","type":["Array"],"desc":"左侧滑动操作项。所有行为同 `right`","label":""},{"key":"right","type":["Array"],"desc":"右侧滑动操作项。有两种定义方式,一种是使用数组,二种是使用插槽。`right.text` 表示操作文本,`right.className` 表示操作项类名,`right.style` 表示操作项样式,`right.onClick` 表示点击操作项后执行的回调函数。示例:`[{ text: '删除', style: 'background-color: red', onClick: () => {} }]`","label":""}],"events":[{"key":"bind:click","desc":"操作项点击时触发(插槽写法组件不触发,业务侧自定义内容和事件)","label":""}],"tpl":"删除","require":{"t-cell":"./cell/cell"},"path":"./swipe-cell/swipe-cell"},"t-swiper":{"key":"t-swiper","label":"轮播","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-swiper.png","properties":[{"key":"animation","type":["String"],"desc":"轮播切换动画效果类型","label":""},{"key":"autoplay","type":["Boolean"],"desc":"是否自动播放","label":""},{"key":"current","type":["Number"],"desc":"当前轮播在哪一项(下标)","label":""},{"key":"direction","type":["String"],"desc":"轮播滑动方向,包括横向滑动和纵向滑动两个方向","label":""},{"key":"duration","type":["Number"],"desc":"滑动动画时长","label":""},{"key":"height","type":["Number"],"desc":"当使用垂直方向滚动时的高度","label":""},{"key":"interval","type":["Number"],"desc":"轮播间隔时间","label":""},{"key":"loop","type":["Boolean"],"desc":"是否循环播放","label":""},{"key":"navigation","type":["Object"],"desc":"导航器全部配置","label":""}],"events":[{"key":"bind:change","desc":"轮播切换时触发","label":""}],"tpl":"","require":{"t-swiper-item":"./swiper/swiper-item"},"path":"./swiper/swiper"},"t-switch":{"key":"t-switch","label":"开关","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-switch.png","properties":[{"key":"colors","type":["Array"],"desc":"自定义颜色,[打开时的颜色,关闭时的颜色]。组件默认颜色为 ['#0052d9', 'rgba(0, 0, 0, .26']。示例:[blue, gray]","label":""},{"key":"customValue","type":["Array"],"desc":"开关内容,[打开时的值,关闭时的值]。默认为 [true, false]。示例:[1, 0]","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用组件","label":""},{"key":"label","type":["String"],"desc":"开关的标签","label":""},{"key":"loading","type":["Boolean"],"desc":"是否处于加载中状态","label":""},{"key":"size","type":["String"],"desc":"开关尺寸","label":""},{"key":"value","type":["String","Number","Boolean"],"desc":"开关值","label":""}],"events":[{"key":"bind:change","desc":"数据发生变化时触发","label":""}],"tpl":"","path":"./switch/switch"},"t-tab-bar-item":{"key":"t-tab-bar-item","label":"标签栏选项","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-tabbar.png","properties":[{"key":"badgeProps","type":["Object"],"desc":"图标右上角提示信息","label":""},{"key":"icon","type":["String"],"desc":"图标名称","label":""},{"key":"subTabBar","type":["Array"],"desc":"二级菜单","label":""},{"key":"value","type":["String","Number"],"desc":"标识符","label":""}],"tpl":"{{item.label}}","path":"./tab-bar-item/tab-bar-item"},"t-tab-bar":{"key":"t-tab-bar","label":"标签栏","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-tabbar.png","properties":[{"key":"bordered","type":["Boolean"],"desc":"是否显示外边框","label":""},{"key":"color","type":["Array"],"desc":"标签颜色设置。示例:[选中标签的颜色, 未选中的标签颜色]","label":""},{"key":"fixed","type":["Boolean"],"desc":"是否固定在底部","label":""},{"key":"safeAreaInsetBottom","type":["Boolean"],"desc":"是否为 iPhoneX 留出底部安全距离","label":""},{"key":"split","type":["Boolean"],"desc":"是否需要分割线","label":""},{"key":"value","type":["String","Number","Array"],"desc":"当前选中标签的索引","label":""}],"externalClasses":["t-class"],"events":[{"key":"bind:change","desc":"选中标签切换时触发","label":""}],"tpl":"{{item.label}}","require":{"t-tab-bar-item":"./tab-bar-item/tab-bar-item"},"path":"./tab-bar/tab-bar"},"t-tab-panel":{"key":"t-tab-panel","label":"选项卡面板","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-tabs.png","properties":[{"key":"destroyOnHide","type":["Boolean"],"desc":"选项卡内容隐藏时是否销毁","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用当前选项卡","label":""},{"key":"label","type":["String"],"desc":"选项卡名称","label":""},{"key":"panel","type":["String"],"desc":"用于自定义选项卡面板内容","label":""},{"key":"value","type":["String","Number"],"desc":"选项卡的值,唯一标识","label":""}],"tpl":"标签一内容","path":"./tab-panel/tab-panel"},"t-tabs":{"key":"t-tabs","label":"选项卡","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-tabs.png","properties":[{"key":"animation","type":["Object"],"desc":"动画效果设置。其中 duration 表示动画时长","label":""},{"key":"placement","type":["String"],"desc":"选项卡位置","label":""},{"key":"showBottomLine","type":["Boolean"],"desc":"是否展示底部激活线条","label":""},{"key":"stickyProps","type":["Object"],"desc":"是否支持吸顶","label":""},{"key":"value","type":["String","Number"],"desc":"激活的选项卡值","label":""}],"externalClasses":["t-class","t-class-item","t-class-active","t-class-track"],"events":[{"key":"bind:change","desc":"激活的选项卡发生变化时触发","label":""}],"tpl":"标签一内容标签二内容","require":{"t-tab-panel":"./tab-panel/tab-panel"},"path":"./tabs/tabs"},"t-tag":{"key":"t-tag","label":"标签","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-tag.png","properties":[{"key":"closable","type":["Boolean"],"desc":"标签是否可关闭","label":""},{"key":"disabled","type":["Boolean"],"desc":"标签禁用态,失效标签不能触发事件。默认风格(theme=default)才有禁用态","label":""},{"key":"icon","type":["String"],"desc":"标签中的图标,可自定义图标呈现","label":""},{"key":"maxWidth","type":["String","Number"],"desc":"标签最大宽度,宽度超出后会出现省略号。示例:'50px' / 80","label":""},{"key":"shape","type":["String"],"desc":"标签类型,有三种:方形、圆角方形、标记型","label":""},{"key":"size","type":["String"],"desc":"标签尺寸","label":""},{"key":"theme","type":["String"],"desc":"组件风格,用于描述组件不同的应用场景","label":""},{"key":"variant","type":["String"],"desc":"标签风格变体","label":""}],"externalClasses":["t-class"],"events":[{"key":"bind:click","desc":"点击时触发","label":""},{"key":"bind:close","desc":"如果关闭按钮存在,点击关闭按钮时触发","label":""}],"tpl":"重要","path":"./tag/tag"},"t-textarea":{"key":"t-textarea","label":"文本输入框","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-textarea.png","properties":[{"key":"adjustPosition","type":["Boolean"],"desc":"键盘弹起时,是否自动上推页面","label":""},{"key":"autofocus","type":["Boolean"],"desc":"自动聚焦,拉起键盘","label":""},{"key":"autosize","type":["Boolean"],"desc":"是否自动增高,值为 autosize 时,style.height 不生效","label":""},{"key":"confirmHold","type":["Boolean"],"desc":"点击键盘右下角按钮时是否保持键盘不收起点","label":""},{"key":"confirmType","type":["String"],"desc":"设置键盘右下角按钮的文字,仅在 type='text'时生效","label":""},{"key":"disabled","type":["Boolean"],"desc":"是否禁用文本框","label":""},{"key":"focus","type":["Boolean"],"desc":"自动聚焦","label":""},{"key":"label","type":["String"],"desc":"左侧文本","label":""},{"key":"maxcharacter","type":["Number"],"desc":"用户最多可以输入的字符个数,一个中文汉字表示两个字符长度","label":""},{"key":"maxlength","type":["Number"],"desc":"用户最多可以输入的字符个数","label":""},{"key":"placeholder","type":["String"],"desc":"占位符","label":""},{"key":"value","type":["String"],"desc":"文本框值","label":""}],"externalClasses":["t-class","t-class-textarea","t-class-placeholder","t-class-name"],"events":[{"key":"bind:blur","desc":"失去焦点时触发","label":""},{"key":"bind:change","desc":"输入内容变化时触发","label":""},{"key":"bind:enter","desc":"点击完成时触发","label":""},{"key":"bind:focus","desc":"获得焦点时触发","label":""},{"key":"bind:line-change","desc":"行高发生变化时触发","label":""}],"tpl":"","path":"./textarea/textarea"},"t-toast":{"key":"t-toast","label":"轻提示","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-toast.png","properties":[{"key":"direction","type":["String"],"desc":"图标排列方式","label":""},{"key":"duration","type":["Number"],"desc":"弹窗显示毫秒数","label":""},{"key":"icon","type":["String"],"desc":"自定义图标","label":""},{"key":"message","type":["String"],"desc":"弹窗显示文字","label":""},{"key":"overlayProps","type":["Object"],"desc":"遮罩层属性,透传至 Overlay","label":""},{"key":"placement","type":["String"],"desc":"弹窗展示位置","label":""},{"key":"preventScrollThrough","type":["Boolean"],"desc":"防止滚动穿透,即不允许点击和滚动","label":""},{"key":"showOverlay","type":["Boolean"],"desc":"是否显示遮罩层","label":""},{"key":"theme","type":["String"],"desc":"提示类型","label":""}],"externalClasses":["t-class"],"tpl":"","path":"./toast/toast"},"t-transition":{"key":"t-transition","label":"动画","icon":"","properties":[{"key":"appear","type":["Boolean"],"desc":"首次出现是否展示动画","label":""},{"key":"customClass","type":["String"],"desc":"自定义容器类名","label":""},{"key":"destoryOnClose","type":["Boolean"],"desc":"隐藏时是否销毁内容","label":""},{"key":"duration","type":["Number"],"desc":"指定过渡时间","label":""},{"key":"name","type":["String"],"desc":"过渡类名","label":""},{"key":"visible","type":["Boolean"],"desc":"是否显示","label":""}],"tpl":"","path":"./transition/transition"},"t-upload":{"key":"t-upload","label":"上传","icon":"https://tdesign.gtimg.com/site/miniprogram-doc/doc-upload.png","properties":[{"key":"addContent","type":["String"],"desc":"添加按钮内容。值为空,使用默认图标渲染;值为 slot 则表示使用插槽渲染;其他值无效。","label":""},{"key":"allowUploadDuplicateFile","type":["Boolean"],"desc":"是否允许重复上传相同文件名的文件","label":""},{"key":"config","type":["Object"],"desc":"图片上传配置,视频上传配置,文件上传配置等,包含图片尺寸、图片来源、视频来源、视频拍摄最长时间等。更多细节查看小程序官网。[图片上传](https://developers.weixin.qq.com/miniprogram/dev/api/media/image/wx.chooseImage.html)。[视频上传](https://developers.weixin.qq.com/miniprogram/dev/api/media/video/wx.chooseVideo.html)","label":""},{"key":"deleteBtn","type":["String"],"desc":"删除图标。值为空,使用默认图标渲染;值为 slot 则表示使用插槽渲染;其他值无效。","label":""},{"key":"fileListDisplay","type":["String"],"desc":"用于完全自定义文件列表内容","label":""},{"key":"files","type":["Array"],"desc":"已上传文件列表","label":""},{"key":"gridConfig","type":["Object"],"desc":"upload组件每行上传图片列数以及图片的宽度和高度","label":""},{"key":"gutter","type":["Number"],"desc":"预览窗格的 `gutter` 大小,单位 rpx","label":""},{"key":"imageProps","type":["Object"],"desc":"透传 Image 组件全部属性","label":""},{"key":"max","type":["Number"],"desc":"用于控制文件上传数量,值为 0 则不限制","label":""},{"key":"mediaType","type":["Array"],"desc":"支持上传的文件类型,图片或视频","label":""},{"key":"requestMethod","type":["String"],"desc":"自定义上传方法","label":""},{"key":"sizeLimit","type":["Number","Object"],"desc":"图片文件大小限制,单位 KB。可选单位有:`'B' | 'KB' | 'MB' | 'GB'`。示例一:`1000`。示例二:`{ size: 2, unit: 'MB', message: '图片大小不超过 {sizeLimit} MB' }`","label":""}],"events":[{"key":"bind:add","desc":"上传成功后触发,仅包含本次选择的照片;`url` 表示选定视频的临时文件路径 (本地路径)。`duration` 表示选定视频的时间长度。`size`选定视频的数据量大小。更多描述参考 wx.chooseMedia 小程序官网描述","label":""},{"key":"bind:complete","desc":"上传成功或失败后触发","label":""},{"key":"bind:fail","desc":"上传失败后触发","label":""},{"key":"bind:remove","desc":"移除文件时触发","label":""},{"key":"bind:select-change","desc":"选择文件或图片之后,上传之前,触发该事件。`files` 表示之前已经上传完成的文件列表。`currentSelectedFiles` 表示本次上传选中的文件列表","label":""},{"key":"bind:success","desc":"上传成功后触发,包含所有上传的文件;`url` 表示选定视频的临时文件路径 (本地路径)。`duration` 表示选定视频的时间长度。`size`选定视频的数据量大小。更多描述参考 wx.chooseMedia 小程序官网描述","label":""}],"tpl":"","path":"./upload/upload"}},"common":{"properties":{},"events":{}},"menu":[{"key":"menu-basic","label":"基础","submenu":[{"key":"subMenu-button","label":"Button 按钮","components":["t-button"]},{"key":"subMenu-divider","label":"Divider 分割线","components":["t-divider"]},{"key":"subMenu-fab","label":"Fab 悬浮按钮","components":["t-fab"]},{"key":"subMenu-icon","label":"Icon 图标","components":["t-icon"]}]},{"key":"menu-nav","label":"导航","submenu":[{"key":"subMenu-drawer","label":"Drawer 抽屉","components":["t-drawer"]},{"key":"subMenu-indexes","label":"Indexes 索引","components":["t-indexes"]},{"key":"subMenu-navbar","label":"Navbar 导航条","components":["t-navbar"]},{"key":"subMenu-steps","label":"Steps 步骤条","components":["t-steps"]},{"key":"subMenu-tabbar","label":"TabBar 标签栏","components":["t-tab-bar"]},{"key":"subMenu-tabs","label":"Tabs 选项卡","components":["t-tabs"]}]},{"key":"menu-input","label":"输入","submenu":[{"key":"subMenu-checkbox","label":"CheckBox 复选框","components":["t-checkbox"]},{"key":"subMenu-dateTimePicker","label":"DateTimePicker 时间选择器","components":["t-date-time-picker"]},{"key":"subMenu-input","label":"Input 输入框","components":["t-input"]},{"key":"subMenu-picker","label":"Picker 选择器","components":["t-picker"]},{"key":"subMenu-radio","label":"Radio 单选框","components":["t-radio"]},{"key":"subMenu-rate","label":"Rate 评分","components":["t-rate"]},{"key":"subMenu-search","label":"Search 搜索框","components":["t-search"]},{"key":"subMenu-slider","label":"Slider 滑动选择器","components":["t-slider"]},{"key":"subMenu-stepper","label":"Stepper 步进器","components":["t-stepper"]},{"key":"subMenu-switch","label":"Switch 开关","components":["t-switch"]},{"key":"subMenu-textarea","label":"Textarea 多行文本框","components":["t-textarea"]},{"key":"subMenu-upload","label":"UpLoad 上传","components":["t-upload"]}]},{"key":"menu-data","label":"数据展示","submenu":[{"key":"subMenu-avatar","label":"Avatar 头像","components":["t-avatar"]},{"key":"subMenu-badge","label":"Badge 徽标","components":["t-badge"]},{"key":"subMenu-cell","label":"Cell 单元格","components":["t-cell"]},{"key":"subMenu-collapse","label":"Collapse 折叠面板","components":["t-collapse"]},{"key":"subMenu-dropdown-menu","label":"DropdownMenu 下拉菜单","components":["t-dropdown-menu"]},{"key":"subMenu-empty","label":"Empty 空状态","components":["t-empty"]},{"key":"subMenu-footer","label":"Footer 页脚","components":["t-footer"]},{"key":"subMenu-grid","label":"Grid 宫格","components":["t-grid"]},{"key":"subMenu-image","label":"Image 图片","components":["t-image"]},{"key":"subMenu-skeleton","label":"Skeleton 骨架屏","components":["t-skeleton"]},{"key":"subMenu-sticky","label":"Sticky 吸顶容器","components":["t-sticky"]},{"key":"subMenu-swiper","label":"Swiper 轮播图","components":["t-swiper"]},{"key":"subMenu-tag","label":"Tag 标签","components":["t-tag"]}]},{"key":"menu-info","label":"消息提醒","submenu":[{"key":"subMenu-actionsheet","label":"ActionSheet 动作面板","components":["t-action-sheet"]},{"key":"subMenu-back-top","label":"BackTop 返回顶部","components":["t-back-top"]},{"key":"subMenu-dialog","label":"Dialog 弹出框","components":["t-dialog"]},{"key":"subMenu-loading","label":"Loading 加载","components":["t-loading"]},{"key":"subMenu-message","label":"Message 消息通知","components":["t-message"]},{"key":"subMenu-popup","label":"Popup 弹出层","components":["t-popup"]},{"key":"subMenu-progress","label":"Progress 进度条","components":["t-progress"]},{"key":"subMenu-pullDownRefresh","label":"PullDownRefresh 下拉刷新","components":["t-pull-down-refresh"]},{"key":"subMenu-swipeCell","label":"SwipeCell 滑动操作","components":["t-swipe-cell"]},{"key":"subMenu-toast","label":"Toast 轻提示","components":["t-toast"]}]}]} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.d.ts b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.d.ts new file mode 100644 index 0000000..e8b6860 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.d.ts @@ -0,0 +1,85 @@ +import { SuperComponent } from '../common/src/index'; +export default class ActionSheet extends SuperComponent { + static show: (options: import("./show").ActionSheetShowOption) => WechatMiniprogram.Component.TrivialInstance; + behaviors: string[]; + externalClasses: string[]; + properties: { + align?: { + type: StringConstructor; + value?: "center" | "left"; + }; + cancelText?: { + type: StringConstructor; + value?: string; + }; + count?: { + type: NumberConstructor; + value?: number; + }; + description?: { + type: StringConstructor; + value?: string; + }; + items: { + type: ArrayConstructor; + value?: (string | import("./type").ActionSheetItem)[]; + required?: boolean; + }; + popupProps?: { + type: ObjectConstructor; + value?: import("../popup").TdPopupProps; + }; + showCancel?: { + type: BooleanConstructor; + value?: boolean; + }; + showOverlay?: { + type: BooleanConstructor; + value?: boolean; + }; + theme?: { + type: StringConstructor; + value?: "list" | "grid"; + }; + usingCustomNavbar?: { + type: BooleanConstructor; + value?: boolean; + }; + visible?: { + type: BooleanConstructor; + value?: boolean; + }; + defaultVisible?: { + type: BooleanConstructor; + value?: boolean; + }; + }; + data: { + prefix: string; + classPrefix: string; + gridThemeItems: any[]; + currentSwiperIndex: number; + defaultPopUpProps: {}; + defaultPopUpzIndex: number; + }; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + 'visible, items'(visible: boolean): void; + }; + methods: { + init(): void; + memoInitialData(): void; + splitGridThemeActions(): void; + show(options: any): void; + close(): void; + onPopupVisibleChange({ detail }: { + detail: any; + }): void; + onSwiperChange(e: WechatMiniprogram.TouchEvent): void; + onSelect(event: WechatMiniprogram.TouchEvent): void; + onCancel(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.js b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.js new file mode 100644 index 0000000..c40d3c7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{chunk}from"../common/utils";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import{ActionSheetTheme,show}from"./show";import props from"./props";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-action-sheet`;let ActionSheet=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-cancel`],this.properties=Object.assign({},props),this.data={prefix:prefix,classPrefix:name,gridThemeItems:[],currentSwiperIndex:0,defaultPopUpProps:{},defaultPopUpzIndex:11500},this.controlledProps=[{key:"visible",event:"visible-change"}],this.observers={"visible, items"(e){e&&this.init()}},this.methods={init(){this.memoInitialData(),this.splitGridThemeActions()},memoInitialData(){this.initialData=Object.assign(Object.assign({},this.properties),this.data)},splitGridThemeActions(){this.data.theme===ActionSheetTheme.Grid&&this.setData({gridThemeItems:chunk(this.data.items,this.data.count)})},show(e){this.setData(Object.assign(Object.assign(Object.assign({},this.initialData),e),{visible:!0})),this.splitGridThemeActions(),this.autoClose=!0,this._trigger("visible-change",{visible:!0})},close(){this.triggerEvent("close",{trigger:"command"}),this._trigger("visible-change",{visible:!1})},onPopupVisibleChange({detail:e}){e.visible||(this.triggerEvent("close",{trigger:"overlay"}),this._trigger("visible-change",{visible:!1})),this.autoClose&&(this.setData({visible:!1}),this.autoClose=!1)},onSwiperChange(e){const{current:t}=e.detail;this.setData({currentSwiperIndex:t})},onSelect(e){const{currentSwiperIndex:t,items:i,gridThemeItems:s,count:o,theme:r}=this.data,{index:n}=e.currentTarget.dataset,a=r===ActionSheetTheme.Grid,h=a?s[t][n]:i[n],c=a?n+t*o:n;h&&(this.triggerEvent("selected",{selected:h,index:c}),h.disabled||(this.triggerEvent("close",{trigger:"select"}),this._trigger("visible-change",{visible:!1})))},onCancel(){this.triggerEvent("cancel"),this.autoClose&&(this.setData({visible:!1}),this.autoClose=!1)}}}};ActionSheet.show=show,ActionSheet=__decorate([wxComponent()],ActionSheet);export default ActionSheet; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.json b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.json new file mode 100644 index 0000000..ca2efb1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-popup":"../popup/popup","t-grid":"../grid/grid","t-grid-item":"../grid-item/grid-item"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxml b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxml new file mode 100644 index 0000000..cabb001 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxml @@ -0,0 +1 @@ +{{description}}{{ cancelText || '取消' }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxs b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxs new file mode 100644 index 0000000..af7a695 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxs @@ -0,0 +1,19 @@ +var getListThemeItemClass = function (props) { + var classPrefix = props.classPrefix; + var item = props.item; + var prefix = props.prefix; + var classList = [classPrefix + '__list-item']; + if (item.disabled) { + classList.push(prefix + '-is-disabled'); + } + return classList.join(' '); +}; + +var isImage = function (name) { + return name.indexOf('/') !== -1; +}; + +module.exports = { + getListThemeItemClass: getListThemeItemClass, + isImage: isImage, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxss b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxss new file mode 100644 index 0000000..e9cc05f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/action-sheet.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-action-sheet__content{color:var(--td-action-sheet-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));border-top-left-radius:var(--td-action-sheet-border-radius,var(--td-radius-extra-large,24rpx));border-top-right-radius:var(--td-action-sheet-border-radius,var(--td-radius-extra-large,24rpx));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));overflow:hidden}.t-action-sheet__content--grid{padding-top:16rpx}.t-action-sheet__content:focus{outline:0}.t-action-sheet__grid{padding-bottom:16rpx}.t-action-sheet__grid--swiper{padding-bottom:48rpx}.t-action-sheet__description{color:var(--td-action-sheet-description-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));line-height:44rpx;font-size:28rpx;text-align:var(--td-action-sheet-text-align,center);padding:24rpx 32rpx;position:relative}.t-action-sheet__description:focus{outline:0}.t-action-sheet__description::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-action-sheet-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-action-sheet__description::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-action-sheet__description--left{text-align:left}.t-action-sheet__description--left::after{left:32rpx}.t-action-sheet__list-item{display:flex;align-items:center;justify-content:center;position:relative;height:var(--td-action-sheet-list-item-height,112rpx);padding:0 32rpx}.t-action-sheet__list-item::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-action-sheet-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-action-sheet__list-item::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-action-sheet__list-item:focus{outline:0}.t-action-sheet__list-item--left{justify-content:start}.t-action-sheet__list-item--left::after{left:32rpx}.t-action-sheet__list-item--disabled{color:var(--td-action-sheet-list-item-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-action-sheet__list-item-text{font-size:var(--td-font-size-m,32rpx);word-wrap:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-action-sheet__list-item-icon{margin-right:16rpx}.t-action-sheet__list-item-icon--suffix{margin-left:auto}.t-action-sheet__swiper-wrap{margin-top:8rpx;position:relative}.t-action-sheet__footer{background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff))}.t-action-sheet__gap-list{height:16rpx;background-color:var(--td-action-sheet-gap-color,var(--td-bg-color-page,var(--td-gray-color-1,#f3f3f3)))}.t-action-sheet__gap-grid{height:1rpx;background-color:var(--td-action-sheet-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-action-sheet__cancel{display:flex;align-items:center;justify-content:center;color:var(--td-action-sheet-cancel-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));height:var(--td-action-sheet-cancel-height,96rpx)}.t-action-sheet__dots{position:absolute;left:50%;bottom:32rpx;transform:translateX(-50%);display:flex;flex-direction:row}.t-action-sheet__dots-item{width:16rpx;height:16rpx;background-color:#dcdcdc;border-radius:50%;margin:0 16rpx;transition:all .4s ease-in}.t-action-sheet__dots-item.t-is-active{background-color:#0052d9} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.d.ts new file mode 100644 index 0000000..5c41389 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.d.ts @@ -0,0 +1,8 @@ +/// +import { ActionSheetItem, ActionSheetTheme, ActionSheetShowOption } from './show'; +export { ActionSheetItem, ActionSheetTheme, ActionSheetShowOption }; +declare const _default: { + show(options: ActionSheetShowOption): WechatMiniprogram.Component.TrivialInstance; + close(options: ActionSheetShowOption): void; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.js b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.js new file mode 100644 index 0000000..61d7ee7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/index.js @@ -0,0 +1 @@ +import{show,close,ActionSheetTheme}from"./show";export{ActionSheetTheme};export default{show:e=>show(e),close:e=>close(e)}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/props.js b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/props.js new file mode 100644 index 0000000..25c1215 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/props.js @@ -0,0 +1 @@ +const props={align:{type:String,value:"center"},cancelText:{type:String,value:""},count:{type:Number,value:8},description:{type:String,value:""},items:{type:Array,required:!0},popupProps:{type:Object,value:{}},showCancel:{type:Boolean,value:!0},showOverlay:{type:Boolean,value:!0},theme:{type:String,value:"list"},usingCustomNavbar:{type:Boolean,value:!1},visible:{type:Boolean,value:null},defaultVisible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.d.ts b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.d.ts new file mode 100644 index 0000000..824502a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.d.ts @@ -0,0 +1,31 @@ +/// +/// +export interface ActionSheetItem { + label: string; + color?: string; + disabled?: boolean; + icon?: string; +} +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +export declare enum ActionSheetTheme { + List = "list", + Grid = "grid" +} +interface ActionSheetProps { + align: 'center' | 'left'; + cancelText?: string; + count?: number; + description: string; + items: Array; + showCancel?: boolean; + theme?: ActionSheetTheme; + visible: boolean; + defaultVisible?: boolean; +} +export interface ActionSheetShowOption extends Omit { + context?: Context; + selector?: string; +} +export declare const show: (options: ActionSheetShowOption) => WechatMiniprogram.Component.TrivialInstance; +export declare const close: (options: ActionSheetShowOption) => void; +export {}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.js b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.js new file mode 100644 index 0000000..36f15fb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/show.js @@ -0,0 +1 @@ +import{__rest}from"tslib";import{getInstance}from"../common/utils";export var ActionSheetTheme;!function(t){t.List="list",t.Grid="grid"}(ActionSheetTheme||(ActionSheetTheme={}));export const show=function(t){const e=Object.assign({},t),{context:o,selector:n="#t-action-sheet"}=e,c=__rest(e,["context","selector"]),s=getInstance(o,n);if(s)return s.show(Object.assign({},c)),s;console.error("未找到组件,请确认 selector && context 是否正确")};export const close=function(t){const{context:e,selector:o="#t-action-sheet"}=Object.assign({},t),n=getInstance(e,o);n&&n.close()}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/grid.wxml b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/grid.wxml new file mode 100644 index 0000000..29334a5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/grid.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/list.wxml b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/list.wxml new file mode 100644 index 0000000..a1e8bc9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/template/list.wxml @@ -0,0 +1 @@ +{{item.label || item}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/action-sheet/type.js b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/action-sheet/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.d.ts b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.d.ts new file mode 100644 index 0000000..e131442 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.d.ts @@ -0,0 +1,28 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class AvatarGroup extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdAvatarGroupProps; + data: { + prefix: string; + classPrefix: string; + hasChild: boolean; + length: number; + className: string; + }; + options: { + multipleSlots: boolean; + }; + relations: RelationsOptions; + lifetimes: { + attached(): void; + ready(): void; + }; + observers: { + 'cascading, size'(): void; + }; + methods: { + setClass(): void; + handleMax(): void; + onCollapsedItemClick(e: WechatMiniprogram.CustomEvent): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.js b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.js new file mode 100644 index 0000000..1033214 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import avatarGroupProps from"./props";const{prefix:prefix}=config,name=`${prefix}-avatar-group`;let AvatarGroup=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-image`],this.properties=avatarGroupProps,this.data={prefix:prefix,classPrefix:name,hasChild:!0,length:0,className:""},this.options={multipleSlots:!0},this.relations={"../avatar/avatar":{type:"descendant"}},this.lifetimes={attached(){this.setClass()},ready(){this.setData({length:this.$children.length}),this.handleMax()}},this.observers={"cascading, size"(){this.setClass()}},this.methods={setClass(){const{cascading:e,size:t}=this.properties,s=e.split("-")[0],a=[name,`${prefix}-class`,`${name}-offset-${s}`,`${name}-offset-${s}-${t.indexOf("px")>-1?"medium":t||"medium"}`];this.setData({className:a.join(" ")})},handleMax(){const{max:e}=this.data,t=this.$children.length;if(!e||e>t)return;this.$children.splice(e,t-e).forEach((e=>{e.hide()}))},onCollapsedItemClick(e){this.triggerEvent("collapsed-item-click",e.detail)}}}};AvatarGroup=__decorate([wxComponent()],AvatarGroup);export default AvatarGroup; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.json b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.json new file mode 100644 index 0000000..a51c00f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"shared","usingComponents":{"t-avatar":"../avatar/avatar"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxml b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxml new file mode 100644 index 0000000..95519ff --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxml @@ -0,0 +1 @@ +{{collapseAvatar}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxss b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxss new file mode 100644 index 0000000..3e354ce --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/avatar-group.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-avatar-group{display:inline-flex;flex-wrap:wrap;align-items:center}.t-avatar-group-offset-left .t-avatar__wrapper,.t-avatar-group-offset-right .t-avatar__wrapper{padding:var(--td-avatar-group-line-spacing,4rpx) 0}.t-avatar-group-offset-left-small,.t-avatar-group-offset-right-small{--td-avatar-margin-left:var(--td-avatar-group-margin-left-small, -16rpx)}.t-avatar-group-offset-left-medium,.t-avatar-group-offset-right-medium{--td-avatar-margin-left:var(--td-avatar-group-margin-left-medium, -16rpx)}.t-avatar-group-offset-left-large,.t-avatar-group-offset-right-large{--td-avatar-margin-left:var(--td-avatar-group-margin-left-large, -16rpx)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(1){z-index:calc(var(--td-avatar-group-init-z-index,50) - 1)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(2){z-index:calc(var(--td-avatar-group-init-z-index,50) - 2)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(3){z-index:calc(var(--td-avatar-group-init-z-index,50) - 3)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(4){z-index:calc(var(--td-avatar-group-init-z-index,50) - 4)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(5){z-index:calc(var(--td-avatar-group-init-z-index,50) - 5)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(6){z-index:calc(var(--td-avatar-group-init-z-index,50) - 6)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(7){z-index:calc(var(--td-avatar-group-init-z-index,50) - 7)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(8){z-index:calc(var(--td-avatar-group-init-z-index,50) - 8)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(9){z-index:calc(var(--td-avatar-group-init-z-index,50) - 9)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(10){z-index:calc(var(--td-avatar-group-init-z-index,50) - 10)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(11){z-index:calc(var(--td-avatar-group-init-z-index,50) - 11)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(12){z-index:calc(var(--td-avatar-group-init-z-index,50) - 12)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(13){z-index:calc(var(--td-avatar-group-init-z-index,50) - 13)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(14){z-index:calc(var(--td-avatar-group-init-z-index,50) - 14)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(15){z-index:calc(var(--td-avatar-group-init-z-index,50) - 15)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(16){z-index:calc(var(--td-avatar-group-init-z-index,50) - 16)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(17){z-index:calc(var(--td-avatar-group-init-z-index,50) - 17)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(18){z-index:calc(var(--td-avatar-group-init-z-index,50) - 18)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(19){z-index:calc(var(--td-avatar-group-init-z-index,50) - 19)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(20){z-index:calc(var(--td-avatar-group-init-z-index,50) - 20)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(21){z-index:calc(var(--td-avatar-group-init-z-index,50) - 21)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(22){z-index:calc(var(--td-avatar-group-init-z-index,50) - 22)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(23){z-index:calc(var(--td-avatar-group-init-z-index,50) - 23)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(24){z-index:calc(var(--td-avatar-group-init-z-index,50) - 24)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(25){z-index:calc(var(--td-avatar-group-init-z-index,50) - 25)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(26){z-index:calc(var(--td-avatar-group-init-z-index,50) - 26)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(27){z-index:calc(var(--td-avatar-group-init-z-index,50) - 27)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(28){z-index:calc(var(--td-avatar-group-init-z-index,50) - 28)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(29){z-index:calc(var(--td-avatar-group-init-z-index,50) - 29)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(30){z-index:calc(var(--td-avatar-group-init-z-index,50) - 30)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(31){z-index:calc(var(--td-avatar-group-init-z-index,50) - 31)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(32){z-index:calc(var(--td-avatar-group-init-z-index,50) - 32)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(33){z-index:calc(var(--td-avatar-group-init-z-index,50) - 33)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(34){z-index:calc(var(--td-avatar-group-init-z-index,50) - 34)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(35){z-index:calc(var(--td-avatar-group-init-z-index,50) - 35)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(36){z-index:calc(var(--td-avatar-group-init-z-index,50) - 36)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(37){z-index:calc(var(--td-avatar-group-init-z-index,50) - 37)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(38){z-index:calc(var(--td-avatar-group-init-z-index,50) - 38)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(39){z-index:calc(var(--td-avatar-group-init-z-index,50) - 39)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(40){z-index:calc(var(--td-avatar-group-init-z-index,50) - 40)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(41){z-index:calc(var(--td-avatar-group-init-z-index,50) - 41)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(42){z-index:calc(var(--td-avatar-group-init-z-index,50) - 42)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(43){z-index:calc(var(--td-avatar-group-init-z-index,50) - 43)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(44){z-index:calc(var(--td-avatar-group-init-z-index,50) - 44)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(45){z-index:calc(var(--td-avatar-group-init-z-index,50) - 45)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(46){z-index:calc(var(--td-avatar-group-init-z-index,50) - 46)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(47){z-index:calc(var(--td-avatar-group-init-z-index,50) - 47)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(48){z-index:calc(var(--td-avatar-group-init-z-index,50) - 48)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(49){z-index:calc(var(--td-avatar-group-init-z-index,50) - 49)}.t-avatar-group-offset-left .t-avatar__wrapper:nth-child(50){z-index:calc(var(--td-avatar-group-init-z-index,50) - 50)}.t-avatar-group__collapse--default,.t-avatar-group__collapse--slot{z-index:0;font-weight:600}.t-avatar-group__collapse--slot{float:left}.t-avatar-group__collapse--slot:not(:empty)+.t-avatar-group__collapse--default{display:none;float:left}.t-avatar-group__collapse--slot:empty+.t-avatar-group__collapse--default{display:block;float:left} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/props.js b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/props.js new file mode 100644 index 0000000..b7a3a48 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/props.js @@ -0,0 +1 @@ +const props={cascading:{type:String,value:"left-up"},collapseAvatar:{type:String},max:{type:Number},shape:{type:String},size:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar-group/type.js b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar-group/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.d.ts new file mode 100644 index 0000000..4ecd9f6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.d.ts @@ -0,0 +1,22 @@ +/// +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Avatar extends SuperComponent { + options: WechatMiniprogram.Component.ComponentOptions; + externalClasses: string[]; + properties: import("./type").TdAvatarProps; + data: { + prefix: string; + classPrefix: string; + isShow: boolean; + zIndex: number; + systemInfo: WechatMiniprogram.WindowInfo | WechatMiniprogram.SystemInfo; + }; + relations: RelationsOptions; + observers: { + icon(icon: any): void; + }; + methods: { + hide(): void; + onLoadError(e: WechatMiniprogram.CustomEvent): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.js b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.js new file mode 100644 index 0000000..44d3c60 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import avatarProps from"./props";import{setIcon,systemInfo}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-avatar`;let Avatar=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-image`,`${prefix}-class-icon`,`${prefix}-class-alt`,`${prefix}-class-content`],this.properties=avatarProps,this.data={prefix:prefix,classPrefix:name,isShow:!0,zIndex:0,systemInfo:systemInfo},this.relations={"../avatar-group/avatar-group":{type:"ancestor",linked(t){this.parent=t,this.setData({shape:this.data.shape||t.data.shape||"circle",size:this.data.size||t.data.size,bordered:!0})}}},this.observers={icon(t){const s=setIcon("icon",t,"");this.setData(Object.assign({},s))}},this.methods={hide(){this.setData({isShow:!1})},onLoadError(t){this.properties.hideOnLoadFailed&&this.setData({isShow:!1}),this.triggerEvent("error",t.detail)}}}};Avatar=__decorate([wxComponent()],Avatar);export default Avatar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.json b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.json new file mode 100644 index 0000000..0bc94ec --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"shared","usingComponents":{"t-icon":"../icon/icon","t-badge":"../badge/badge","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxml b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxml new file mode 100644 index 0000000..38f77b0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxs b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxs new file mode 100644 index 0000000..240a956 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxs @@ -0,0 +1,30 @@ +module.exports = { + getClass: function (classPrefix, size, shape, bordered) { + var hasPx = (size || '').indexOf('px') > -1; + var borderSize = hasPx ? 'medium' : size; + var classNames = [ + classPrefix, + classPrefix + (shape === 'round' ? '--round' : '--circle'), + bordered ? classPrefix + '--border' + ' ' + classPrefix + '--border-' + borderSize : '', + hasPx ? '' : classPrefix + '--' + size, + ]; + return classNames.join(' '); + }, + + getSize: function (size = 'medium', systemInfo) { + var res = getRegExp('^([0-9]+)(px|rpx)$').exec(size); + + if (res && res.length >= 3) { + var px = res[1]; + if (res[2] === 'rpx') { + px = Math.floor((systemInfo.windowWidth * res[1]) / 750); + } + + return 'width:' + size + ';height:' + size + ';font-size:' + ((px / 8) * 3 + 2) + 'px'; + } + }, + + getStyles: function (isShow) { + return isShow ? '' : 'display: none;'; + }, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxss b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxss new file mode 100644 index 0000000..1d11ffc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/avatar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-avatar{display:flex;align-items:center;justify-content:center;box-sizing:border-box;background-color:var(--td-avatar-bg-color,var(--td-brand-color-light-active,var(--td-primary-color-2,#d9e1ff)));color:var(--td-avatar-content-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-avatar__wrapper{display:inline-flex;position:relative;vertical-align:top;margin-left:var(--td-avatar-margin-left,0)}.t-avatar--large{width:var(--td-avatar-large-width,128rpx);height:var(--td-avatar-large-width,128rpx);font-size:var(--td-avatar-text-large-font-size,var(--td-font-size-xl,40rpx))}.t-avatar--large .t-avatar__icon{font-size:var(--td-avatar-icon-large-font-size,64rpx)}.t-avatar--medium{width:var(--td-avatar-medium-width,96rpx);height:var(--td-avatar-medium-width,96rpx);font-size:var(--td-avatar-text-medium-font-size,var(--td-font-size-m,32rpx))}.t-avatar--medium .t-avatar__icon{font-size:var(--td-avatar-icon-medium-font-size,48rpx)}.t-avatar--small{width:var(--td-avatar-small-width,80rpx);height:var(--td-avatar-small-width,80rpx);font-size:var(--td-avatar-text-small-font-size,var(--td-font-size-base,28rpx))}.t-avatar--small .t-avatar__icon{font-size:var(--td-avatar-icon-small-font-size,40rpx)}.t-avatar .t-image,.t-avatar__image{width:100%;height:100%}.t-avatar--circle{border-radius:var(--td-avatar-circle-border-radius,var(--td-radius-circle,50%));overflow:hidden}.t-avatar--round{border-radius:var(--td-avatar-round-border-radius,var(--td-radius-default,12rpx));overflow:hidden}.t-avatar__icon,.t-avatar__text{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.t-avatar__icon:empty,.t-avatar__text:empty{width:0;height:0}.t-avatar--border{border-color:var(--td-avatar-border-color,#fff);border-style:solid}.t-avatar--border-small{border-width:var(--td-avatar-border-width-small,2rpx)}.t-avatar--border-medium{border-width:var(--td-avatar-border-width-medium,4rpx)}.t-avatar--border-large{border-width:var(--td-avatar-border-width-large,6rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/props.js b/app/miniprogram_npm/tdesign-miniprogram/avatar/props.js new file mode 100644 index 0000000..e586fb3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/props.js @@ -0,0 +1 @@ +const props={alt:{type:String,value:""},badgeProps:{type:Object},bordered:{type:Boolean,value:!1},hideOnLoadFailed:{type:Boolean,value:!1},icon:{type:null},image:{type:String,value:""},imageProps:{type:Object},shape:{type:String},size:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/avatar/type.js b/app/miniprogram_npm/tdesign-miniprogram/avatar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/avatar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.d.ts b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.d.ts new file mode 100644 index 0000000..ced948c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.d.ts @@ -0,0 +1,26 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class BackTop extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdBackTopProps; + relations: RelationsOptions; + data: { + prefix: string; + classPrefix: string; + _icon: any; + hidden: boolean; + }; + observers: { + icon(): void; + scrollTop(value: number): void; + }; + lifetimes: { + ready(): void; + }; + methods: { + setIcon(v: any): void; + toTop(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.js b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.js new file mode 100644 index 0000000..9a9becb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-back-top`;let BackTop=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-icon`,`${prefix}-class-text`],this.options={multipleSlots:!0},this.properties=props,this.relations={"../pull-down-refresh/pull-down-refresh":{type:"ancestor"}},this.data={prefix:prefix,classPrefix:name,_icon:null,hidden:!0},this.observers={icon(){this.setIcon()},scrollTop(o){const{visibilityHeight:t}=this.properties;this.setData({hidden:o{{text}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.wxss b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.wxss new file mode 100644 index 0000000..eed10f4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/back-top/back-top.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-back-top{display:flex;flex-direction:column;align-items:center;justify-content:center;background-color:transparent;overflow:hidden;box-sizing:border-box;transition:height .2s;height:auto}.t-back-top--fixed{position:fixed;right:var(--td-spacer,16rpx);bottom:calc(var(--td-spacer-2,32rpx) + env(safe-area-inset-bottom))}.t-back-top--round,.t-back-top--round-dark{width:96rpx;height:96rpx;border-radius:var(--td-back-top-round-border-radius,var(--td-radius-circle,50%))}.t-back-top--half-round,.t-back-top--round{color:var(--td-back-top-round-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));border:1rpx solid var(--td-back-top-round-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));background-color:var(--td-back-top-round-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-back-top--half-round-dark,.t-back-top--round-dark{color:var(--td-back-top-round-dark-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-back-top-round-dark-bg-color,var(--td-gray-color-13,#242424))}.t-back-top--half-round,.t-back-top--half-round-dark{width:120rpx;height:80rpx;border-radius:0;border-top-left-radius:var(--td-back-top-half-round-border-radius,var(--td-radius-round,999px));border-bottom-left-radius:var(--td-back-top-half-round-border-radius,var(--td-radius-round,999px));flex-direction:row;right:0}.t-back-top__text--half-round,.t-back-top__text--half-round-dark,.t-back-top__text--round,.t-back-top__text--round-dark{font-size:var(--td-font-size,20rpx);line-height:24rpx}.t-back-top__text--half-round,.t-back-top__text--half-round-dark{width:48rpx}.t-back-top__icon:not(:empty)+.t-back-top__text--half-round,.t-back-top__icon:not(:empty)+.t-back-top__text--half-round-dark{margin-left:8rpx}.t-back-top__icon{display:flex;justify-content:center;align-items:center;font-size:44rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/back-top/props.js b/app/miniprogram_npm/tdesign-miniprogram/back-top/props.js new file mode 100644 index 0000000..f1233c8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/back-top/props.js @@ -0,0 +1 @@ +const props={fixed:{type:Boolean,value:!0},icon:{type:null,value:!0},scrollTop:{type:Number,value:0},style:{type:String,value:""},text:{type:String,value:""},theme:{type:String,value:"round"},visibilityHeight:{type:Number,value:200}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/back-top/type.js b/app/miniprogram_npm/tdesign-miniprogram/back-top/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/back-top/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.d.ts b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.d.ts new file mode 100644 index 0000000..2680a17 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.d.ts @@ -0,0 +1,21 @@ +import { SuperComponent } from '../common/src/index'; +import type { TdBadgeProps } from './type'; +export interface BadgeProps extends TdBadgeProps { +} +export default class Badge extends SuperComponent { + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + properties: TdBadgeProps; + data: { + prefix: string; + classPrefix: string; + value: string; + labelID: string; + descriptionID: string; + }; + lifetimes: { + ready(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.js b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.js new file mode 100644 index 0000000..90075aa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{uniqueFactory}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-badge`,getUniqueID=uniqueFactory("badge");let Badge=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-count`,`${prefix}-class-content`],this.properties=props,this.data={prefix:prefix,classPrefix:name,value:"",labelID:"",descriptionID:""},this.lifetimes={ready(){const e=getUniqueID();this.setData({labelID:`${e}_label`,descriptionID:`${e}_description`})}}}};Badge=__decorate([wxComponent()],Badge);export default Badge; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.json b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxml b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxml new file mode 100644 index 0000000..81e7b25 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxml @@ -0,0 +1 @@ +{{content}}{{ _this.getBadgeValue({dot, count, maxCount}) }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxs b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxs new file mode 100644 index 0000000..613263c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxs @@ -0,0 +1,71 @@ +var getBadgeValue = function (props) { + if (props.dot) { + return ''; + } + if (isNaN(props.count) || isNaN(props.maxCount)) { + return props.count; + } + return parseInt(props.count) > props.maxCount ? props.maxCount + '+' : props.count; +}; + +var hasUnit = function (unit) { + return ( + unit.indexOf('px') > 0 || + unit.indexOf('rpx') > 0 || + unit.indexOf('em') > 0 || + unit.indexOf('rem') > 0 || + unit.indexOf('%') > 0 || + unit.indexOf('vh') > 0 || + unit.indexOf('vm') > 0 + ); +}; + +var getBadgeStyles = function (props) { + var styleStr = ''; + if (props.color) { + styleStr += 'background:' + props.color + ';'; + } + if (props.offset[0]) { + styleStr += + 'left: calc(100% + ' + (hasUnit(props.offset[0].toString()) ? props.offset[0] : props.offset[0] + 'px') + ');'; + } + if (props.offset[1]) { + styleStr += 'top:' + (hasUnit(props.offset[1].toString()) ? props.offset[1] : props.offset[1] + 'px') + ';'; + } + return styleStr; +}; + +var getBadgeOuterClass = function (props) { + var baseClass = 't-badge'; + var classNames = [baseClass, props.shape === 'ribbon' ? baseClass + '__ribbon-outer' : '']; + return classNames.join(' '); +}; + +var getBadgeInnerClass = function (props) { + var baseClass = 't-badge'; + var classNames = [ + baseClass + '--basic', + props.dot ? baseClass + '--dot' : '', + baseClass + '--' + props.size, + baseClass + '--' + props.shape, + !props.dot && props.count ? baseClass + '--count' : '', + ]; + return classNames.join(' '); +}; + +var isShowBadge = function (props) { + if (props.dot) { + return true; + } + if (!props.showZero && !isNaN(props.count) && parseInt(props.count) === 0) { + return false; + } + if (props.count == null) return false; + return true; +}; + +module.exports.getBadgeValue = getBadgeValue; +module.exports.getBadgeStyles = getBadgeStyles; +module.exports.getBadgeOuterClass = getBadgeOuterClass; +module.exports.getBadgeInnerClass = getBadgeInnerClass; +module.exports.isShowBadge = isShowBadge; diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxss b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxss new file mode 100644 index 0000000..170baba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/badge.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-badge{position:relative;display:inline-flex;align-items:start}.t-badge--basic{z-index:100;padding:0 var(--td-badge-basic-padding,8rpx);font-size:var(--td-badge-font-size,var(--td-font-size-xs,var(--td-font-size,20rpx)));color:var(--td-badge-text-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-badge-bg-color,var(--td-error-color,var(--td-error-color-6,#d54941)));text-align:center;height:var(--td-badge-basic-height,32rpx);line-height:var(--td-badge-basic-height,32rpx);font-weight:var(--td-badge-font-weight,600);border-radius:var(--td-badge-border-radius,4rpx)}.t-badge--dot{height:var(--td-badge-dot-size,16rpx);border-radius:50%;min-width:var(--td-badge-dot-size,16rpx);padding:0}.t-badge--count{min-width:var(--td-badge-basic-width,32rpx);white-space:nowrap;box-sizing:border-box}.t-badge--circle{border-radius:calc(var(--td-badge-basic-height,32rpx)/ 2)}.t-badge__ribbon-outer{position:absolute;top:0;right:0}.t-badge--ribbon{position:relative;display:inline-block;transform-origin:center center;transform:translate(calc(50% - var(--td-badge-basic-height,32rpx) + 1rpx),calc(-50% + var(--td-badge-basic-height,32rpx) - 1rpx)) rotate(45deg);border-radius:0}.t-badge--ribbon::after,.t-badge--ribbon::before{content:'';position:absolute;width:0;height:0;bottom:0;border-bottom:var(--td-badge-basic-height,32rpx) solid var(--td-badge-bg-color,var(--td-error-color,var(--td-error-color-6,#d54941)));font-size:0}.t-badge--ribbon::before{left:calc(-1 * var(--td-badge-basic-height,32rpx) + 1rpx);border-left:var(--td-badge-basic-height,32rpx) solid transparent}.t-badge--ribbon::after{right:calc(-1 * var(--td-badge-basic-height,32rpx) + 1rpx);border-right:var(--td-badge-basic-height,32rpx) solid transparent}.t-badge--bubble{border-radius:var(--td-badge-bubble-border-radius,20rpx 20rpx 20rpx 1px)}.t-badge--large{font-size:var(--td-badge-large-font-size,var(--td-font-size-s,24rpx));height:var(--td-badge-large-height,40rpx);min-width:var(--td-badge-large-height,40rpx);line-height:var(--td-badge-large-height,40rpx);padding:0 var(--td-badge-large-padding,10rpx)}.t-badge--large.t-badge--circle{border-radius:calc(var(--td-badge-large-height,40rpx)/ 2)}.t-badge__content:not(:empty)+.t-has-count{transform-origin:center center;transform:translate(-50%,-50%);position:absolute;left:100%;top:0}.t-badge__content-text{display:block;line-height:48rpx;color:var(--td-badge-content-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/badge/index.d.ts new file mode 100644 index 0000000..85b119a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/index.d.ts @@ -0,0 +1,3 @@ +export * from './type'; +export * from './props'; +export * from './badge'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/index.js b/app/miniprogram_npm/tdesign-miniprogram/badge/index.js new file mode 100644 index 0000000..0ab74dd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/index.js @@ -0,0 +1 @@ +export*from"./type";export*from"./props";export*from"./badge"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/props.js b/app/miniprogram_npm/tdesign-miniprogram/badge/props.js new file mode 100644 index 0000000..c470449 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/props.js @@ -0,0 +1 @@ +const props={color:{type:String,value:""},content:{type:String,value:""},count:{type:null,value:0},dot:{type:Boolean,value:!1},externalClasses:{type:Array},maxCount:{type:Number,value:99},offset:{type:Array},shape:{type:String,value:"circle"},showZero:{type:Boolean,value:!1},size:{type:String,value:"medium"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/badge/type.js b/app/miniprogram_npm/tdesign-miniprogram/badge/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/badge/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/button.d.ts b/app/miniprogram_npm/tdesign-miniprogram/button/button.d.ts new file mode 100644 index 0000000..4e88efd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/button.d.ts @@ -0,0 +1,36 @@ +import { SuperComponent } from '../common/src/index'; +import type { TdButtonProps } from './type'; +export interface ButtonProps extends TdButtonProps { +} +export default class Button extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + properties: TdButtonProps; + options: { + multipleSlots: boolean; + }; + data: { + prefix: string; + className: string; + classPrefix: string; + }; + observers: { + 'theme, size, plain, block, shape, disabled, loading, variant'(): void; + icon(icon: any): void; + }; + lifetimes: { + attached(): void; + }; + methods: { + setClass(): void; + getuserinfo(e: any): void; + contact(e: any): void; + getphonenumber(e: any): void; + error(e: any): void; + opensetting(e: any): void; + launchapp(e: any): void; + chooseavatar(e: any): void; + agreeprivacyauthorization(e: any): void; + handleTap(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/button.js b/app/miniprogram_npm/tdesign-miniprogram/button/button.js new file mode 100644 index 0000000..1ca405a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/button.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{canIUseFormFieldButton}from"../common/version";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-button`;let Button=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-icon`,`${prefix}-class-loading`],this.behaviors=canIUseFormFieldButton()?["wx://form-field-button"]:[],this.properties=props,this.options={multipleSlots:!0},this.data={prefix:prefix,className:"",classPrefix:name},this.observers={"theme, size, plain, block, shape, disabled, loading, variant"(){this.setClass()},icon(t){this.setData({_icon:calcIcon(t,"")})}},this.lifetimes={attached(){this.setClass()}},this.methods={setClass(){const t=[name,`${prefix}-class`,`${name}--${this.data.variant||"base"}`,`${name}--${this.data.theme||"default"}`,`${name}--${this.data.shape||"rectangle"}`,`${name}--size-${this.data.size||"medium"}`];this.data.block&&t.push(`${name}--block`),this.data.disabled&&t.push(`${name}--disabled`),this.data.ghost&&t.push(`${name}--ghost`),this.setData({className:t.join(" ")})},getuserinfo(t){this.triggerEvent("getuserinfo",t.detail)},contact(t){this.triggerEvent("contact",t.detail)},getphonenumber(t){this.triggerEvent("getphonenumber",t.detail)},error(t){this.triggerEvent("error",t.detail)},opensetting(t){this.triggerEvent("opensetting",t.detail)},launchapp(t){this.triggerEvent("launchapp",t.detail)},chooseavatar(t){this.triggerEvent("chooseavatar",t.detail)},agreeprivacyauthorization(t){this.triggerEvent("agreeprivacyauthorization",t.detail)},handleTap(t){this.data.disabled||this.data.loading||this.triggerEvent("tap",t)}}}};Button=__decorate([wxComponent()],Button);export default Button; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/button.json b/app/miniprogram_npm/tdesign-miniprogram/button/button.json new file mode 100644 index 0000000..18ba7f1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/button.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-loading":"../loading/loading"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/button.wxml b/app/miniprogram_npm/tdesign-miniprogram/button/button.wxml new file mode 100644 index 0000000..d6a05ec --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/button.wxml @@ -0,0 +1 @@ +{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/button.wxss b/app/miniprogram_npm/tdesign-miniprogram/button/button.wxss new file mode 100644 index 0000000..b33d7f8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/button.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-button--size-extra-small{font-size:var(--td-button-extra-small-font-size,var(--td-font-size-base,28rpx));padding-left:var(--td-button-extra-small-padding-horizontal,16rpx);padding-right:var(--td-button-extra-small-padding-horizontal,16rpx);height:var(--td-button-extra-small-height,56rpx);line-height:var(--td-button-extra-small-height,56rpx)}.t-button--size-extra-small .t-button__icon{font-size:var(--td-button-extra-small-icon-font-size,36rpx)}.t-button--size-small{font-size:var(--td-button-small-font-size,var(--td-font-size-base,28rpx));padding-left:var(--td-button-small-padding-horizontal,24rpx);padding-right:var(--td-button-small-padding-horizontal,24rpx);height:var(--td-button-small-height,64rpx);line-height:var(--td-button-small-height,64rpx)}.t-button--size-small .t-button__icon{font-size:var(--td-button-small-icon-font-size,36rpx)}.t-button--size-medium{font-size:var(--td-button-medium-font-size,var(--td-font-size-m,32rpx));padding-left:var(--td-button-medium-padding-horizontal,32rpx);padding-right:var(--td-button-medium-padding-horizontal,32rpx);height:var(--td-button-medium-height,80rpx);line-height:var(--td-button-medium-height,80rpx)}.t-button--size-medium .t-button__icon{font-size:var(--td-button-medium-icon-font-size,40rpx)}.t-button--size-large{font-size:var(--td-button-large-font-size,var(--td-font-size-m,32rpx));padding-left:var(--td-button-large-padding-horizontal,40rpx);padding-right:var(--td-button-large-padding-horizontal,40rpx);height:var(--td-button-large-height,96rpx);line-height:var(--td-button-large-height,96rpx)}.t-button--size-large .t-button__icon{font-size:var(--td-button-large-icon-font-size,48rpx)}.t-button--default{color:var(--td-button-default-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));background-color:var(--td-button-default-bg-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-button-default-border-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-button--default::after{border-width:var(--td-button-border-width,4rpx);border-color:var(--td-button-default-border-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-button--default.t-button--hover{z-index:0}.t-button--default.t-button--hover,.t-button--default.t-button--hover::after{background-color:var(--td-button-default-active-bg-color,var(--td-bg-color-component-active,var(--td-gray-color-6,#a6a6a6)));border-color:var(--td-button-default-active-border-color,var(--td-bg-color-component-active,var(--td-gray-color-6,#a6a6a6)))}.t-button--default.t-button--disabled{color:var(--td-button-default-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));background-color:var(--td-button-default-disabled-bg,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-button--default.t-button--disabled,.t-button--default.t-button--disabled::after{border-color:var(--td-button-default-disabled-border-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-button--primary{color:var(--td-button-primary-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-button-primary-bg-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-button-primary-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--primary::after{border-width:var(--td-button-border-width,4rpx);border-color:var(--td-button-primary-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--primary.t-button--hover{z-index:0}.t-button--primary.t-button--hover,.t-button--primary.t-button--hover::after{background-color:var(--td-button-primary-active-bg-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)));border-color:var(--td-button-primary-active-border-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--primary.t-button--disabled{color:var(--td-button-primary-disabled-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-button-primary-disabled-bg,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--primary.t-button--disabled,.t-button--primary.t-button--disabled::after{border-color:var(--td-button-primary-disabled-border-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--light{color:var(--td-button-light-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-button-light-bg-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)));border-color:var(--td-button-light-border-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-button--light::after{border-width:var(--td-button-border-width,4rpx);border-color:var(--td-button-light-border-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-button--light.t-button--hover{z-index:0}.t-button--light.t-button--hover,.t-button--light.t-button--hover::after{background-color:var(--td-button-light-active-bg-color,var(--td-brand-color-light-active,var(--td-primary-color-2,#d9e1ff)));border-color:var(--td-button-light-active-border-color,var(--td-brand-color-light-active,var(--td-primary-color-2,#d9e1ff)))}.t-button--light.t-button--disabled{color:var(--td-button-light-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)));background-color:var(--td-button-light-disabled-bg,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-button--light.t-button--disabled,.t-button--light.t-button--disabled::after{border-color:var(--td-button-light-disabled-border-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-button--danger{color:var(--td-button-danger-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-button-danger-bg-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-button-danger-border-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--danger::after{border-width:var(--td-button-border-width,4rpx);border-color:var(--td-button-danger-border-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--danger.t-button--hover{z-index:0}.t-button--danger.t-button--hover,.t-button--danger.t-button--hover::after{background-color:var(--td-button-danger-active-bg-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)));border-color:var(--td-button-danger-active-border-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-button--danger.t-button--disabled{color:var(--td-button-danger-disabled-color,var(--td-font-white-1,#fff));background-color:var(--td-button-danger-disabled-bg,var(--td-error-color-3,#ffb9b0))}.t-button--danger.t-button--disabled,.t-button--danger.t-button--disabled::after{border-color:var(--td-button-danger-disabled-border-color,var(--td-error-color-3,#ffb9b0))}.t-button{display:inline-flex;align-items:center;justify-content:center;position:relative;white-space:nowrap;text-align:center;background-image:none;transition:all .3s;touch-action:manipulation;border-radius:var(--td-button-border-radius,var(--td-radius-default,12rpx));outline:0;font-family:PingFang SC,Microsoft YaHei,Arial Regular;font-weight:var(--td-button-font-weight,600);vertical-align:top;box-sizing:border-box;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;-webkit-appearance:none}.t-button::after{border-radius:calc(var(--td-button-border-radius,var(--td-radius-default,12rpx)) * 2)}.t-button--text{color:var(--td-button-default-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));background-color:transparent}.t-button--text,.t-button--text::after{border:0}.t-button--text.t-button--hover,.t-button--text.t-button--hover::after{background-color:var(--td-button-default-text-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)))}.t-button--text.t-button--primary{color:var(--td-button-primary-text-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:transparent}.t-button--text.t-button--primary.t-button--hover,.t-button--text.t-button--primary.t-button--hover::after{background-color:var(--td-button-primary-text-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)))}.t-button--text.t-button--primary.t-button--disabled{color:var(--td-button-primary-text-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff))}.t-button--text.t-button--danger{color:var(--td-button-danger-text-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:transparent}.t-button--text.t-button--danger.t-button--hover,.t-button--text.t-button--danger.t-button--hover::after{background-color:var(--td-button-danger-text-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)))}.t-button--text.t-button--danger.t-button--disabled{color:var(--td-button-danger-text-disabled-color,var(--td-button-danger-disabled-color,var(--td-font-white-1,#fff)));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff))}.t-button--text.t-button--light{color:var(--td-button-light-text-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:transparent}.t-button--text.t-button--light.t-button--hover,.t-button--text.t-button--light.t-button--hover::after{background-color:var(--td-button-light-text-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)))}.t-button--text.t-button--disabled{color:var(--td-button-default-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-button--outline{color:var(--td-button-default-outline-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff))}.t-button--outline,.t-button--outline::after{border-color:var(--td-button-default-outline-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-button--outline.t-button--hover,.t-button--outline.t-button--hover::after{background-color:var(--td-button-default-outline-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-button-default-outline-active-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-button--outline.t-button--disabled{color:var(--td-button-default-outline-disabled-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-button--outline.t-button--disabled,.t-button--outline.t-button--disabled::after{border-color:var(--td-button-default-outline-disabled-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-button--outline.t-button--primary{color:var(--td-button-primary-outline-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--outline.t-button--primary,.t-button--outline.t-button--primary::after{border-color:var(--td-button-primary-outline-border-color,var(--td-button-primary-outline-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9))))}.t-button--outline.t-button--primary.t-button--hover{color:var(--td-button-primary-outline-active-border-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--outline.t-button--primary.t-button--hover::after{background-color:var(--td-button-primary-outline-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-button-primary-outline-active-border-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--outline.t-button--primary.t-button--disabled{background-color:transparent;color:var(--td-button-primary-outline-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--outline.t-button--primary.t-button--disabled,.t-button--outline.t-button--primary.t-button--disabled::after{border-color:var(--td-button-primary-outline-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--outline.t-button--danger{color:var(--td-button-danger-outline-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--outline.t-button--danger,.t-button--outline.t-button--danger::after{border-color:var(--td-button-danger-outline-border-color,var(--td-button-danger-outline-color,var(--td-error-color,var(--td-error-color-6,#d54941))))}.t-button--outline.t-button--danger.t-button--hover{color:var(--td-button-danger-outline-active-border-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-button--outline.t-button--danger.t-button--hover::after{background-color:var(--td-button-danger-outline-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-button-danger-outline-active-border-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-button--outline.t-button--danger.t-button--disabled{background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));color:var(--td-button-danger-outline-disabled-color,var(--td-error-color-3,#ffb9b0))}.t-button--outline.t-button--danger.t-button--disabled,.t-button--outline.t-button--danger.t-button--disabled::after{border-color:var(--td-button-danger-outline-disabled-color,var(--td-error-color-3,#ffb9b0))}.t-button--outline.t-button--light{color:var(--td-button-light-outline-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-button-light-outline-bg-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-button--outline.t-button--light,.t-button--outline.t-button--light::after{border-color:var(--td-button-light-outline-border-color,var(--td-button-light-outline-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9))))}.t-button--outline.t-button--light.t-button--hover{color:var(--td-button-light-outline-active-border-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--outline.t-button--light.t-button--hover,.t-button--outline.t-button--light.t-button--hover::after{background-color:var(--td-button-light-outline-active-bg-color,var(--td-brand-color-light-active,var(--td-primary-color-2,#d9e1ff)));border-color:var(--td-button-light-outline-active-border-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--outline.t-button--light.t-button--disabled{background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));color:var(--td-button-light-outline-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--outline.t-button--light.t-button--disabled,.t-button--outline.t-button--light.t-button--disabled::after{border-color:var(--td-button-light-outline-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--dashed{background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));border-style:dashed;border-width:2rpx}.t-button--dashed::after{border:0}.t-button--dashed.t-button--hover,.t-button--dashed.t-button--hover::after{background-color:var(--td-button-default-outline-active-bg-color,var(--td-bg-color-container-active,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-button-default-outline-active-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-button--dashed.t-button--primary{color:var(--td-button-primary-dashed-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--dashed.t-button--primary,.t-button--dashed.t-button--primary::after{border-color:var(--td-button-primary-dashed-border-color,var(--td-button-primary-dashed-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9))))}.t-button--dashed.t-button--primary.t-button--disabled{background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));color:var(--td-button-primary-dashed-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--dashed.t-button--primary.t-button--disabled,.t-button--dashed.t-button--primary.t-button--disabled::after{border-color:var(--td-button-primary-dashed-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-button--dashed.t-button--danger{color:var(--td-button-danger-dashed-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--dashed.t-button--danger,.t-button--dashed.t-button--danger::after{border-color:var(--td-button-danger-dashed-border-color,var(--td-button-danger-dashed-color,var(--td-error-color,var(--td-error-color-6,#d54941))))}.t-button--dashed.t-button--danger.t-button--disabled{background-color:transparent;color:var(--td-button-danger-dashed-disabled-color,var(--td-button-danger-disabled-color,var(--td-font-white-1,#fff)))}.t-button--dashed.t-button--danger.t-button--disabled::after{border-color:var(--td-button-danger-dashed-disabled-color,var(--td-button-danger-disabled-color,var(--td-font-white-1,#fff)))}.t-button--ghost{background-color:transparent;color:var(--td-button-ghost-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-button--ghost,.t-button--ghost::after{border-color:var(--td-button-ghost-border-color,var(--td-button-ghost-color,var(--td-text-color-anti,var(--td-font-white-1,#fff))))}.t-button--ghost.t-button--default.t-button--hover{color:var(--td-button-ghost-hover-color,var(--td-font-white-2,rgba(255,255,255,.55)))}.t-button--ghost.t-button--default.t-button--hover,.t-button--ghost.t-button--default.t-button--hover::after{background-color:transparent;border-color:var(--td-button-ghost-hover-color,var(--td-font-white-2,rgba(255,255,255,.55)))}.t-button--ghost.t-button--primary{color:var(--td-button-ghost-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--ghost.t-button--primary,.t-button--ghost.t-button--primary::after{border-color:var(--td-button-ghost-primary-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-button--ghost.t-button--primary.t-button--hover{color:var(--td-button-ghost-primary-hover-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--ghost.t-button--primary.t-button--hover,.t-button--ghost.t-button--primary.t-button--hover::after{background-color:transparent;border-color:var(--td-button-ghost-primary-hover-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-button--ghost.t-button--primary.t-button--text.t-button--hover,.t-button--ghost.t-button--primary.t-button--text.t-button--hover::after{background-color:var(--td-gray-color-10,#4b4b4b)}.t-button--ghost.t-button--primary.t-button--disabled{background-color:transparent;color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button--ghost.t-button--primary.t-button--disabled,.t-button--ghost.t-button--primary.t-button--disabled::after{border-color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button--ghost.t-button--danger{color:var(--td-button-ghost-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--ghost.t-button--danger,.t-button--ghost.t-button--danger::after{border-color:var(--td-button-ghost-danger-border-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-button--ghost.t-button--danger.t-button--hover{color:var(--td-button-ghost-danger-hover-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-button--ghost.t-button--danger.t-button--hover,.t-button--ghost.t-button--danger.t-button--hover::after{background-color:transparent;border-color:var(--td-button-ghost-danger-hover-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-button--ghost.t-button--danger.t-button--text.t-button--hover,.t-button--ghost.t-button--danger.t-button--text.t-button--hover::after{background-color:var(--td-gray-color-10,#4b4b4b)}.t-button--ghost.t-button--danger.t-button--disabled{background-color:transparent;color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button--ghost.t-button--danger.t-button--disabled,.t-button--ghost.t-button--danger.t-button--disabled::after{border-color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button--ghost.t-button--default.t-button--text.t-button--hover,.t-button--ghost.t-button--default.t-button--text.t-button--hover::after{background-color:var(--td-gray-color-10,#4b4b4b)}.t-button--ghost.t-button--default.t-button--disabled{background-color:transparent;color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button--ghost.t-button--default.t-button--disabled,.t-button--ghost.t-button--default.t-button--disabled::after{border-color:var(--td-button-ghost-disabled-color,var(--td-font-white-4,rgba(255,255,255,.22)))}.t-button__icon+.t-button__content:not(:empty),.t-button__loading+.t-button__content:not(:empty){margin-left:8rpx}.t-button__icon{border-radius:var(--td-button-icon-border-radius,8rpx)}.t-button--round.t-button--size-large{border-radius:calc(var(--td-button-large-height,96rpx)/ 2)}.t-button--round.t-button--size-large::after{border-radius:var(--td-button-large-height,96rpx)}.t-button--round.t-button--size-medium{border-radius:calc(var(--td-button-medium-height,80rpx)/ 2)}.t-button--round.t-button--size-medium::after{border-radius:var(--td-button-medium-height,80rpx)}.t-button--round.t-button--size-small{border-radius:calc(var(--td-button-small-height,64rpx)/ 2)}.t-button--round.t-button--size-small::after{border-radius:var(--td-button-small-height,64rpx)}.t-button--round.t-button--size-extra-small{border-radius:calc(var(--td-button-extra-small-height,56rpx)/ 2)}.t-button--round.t-button--size-extra-small::after{border-radius:var(--td-button-extra-small-height,56rpx)}.t-button--square{padding:0}.t-button--square.t-button--size-large{width:var(--td-button-large-height,96rpx)}.t-button--square.t-button--size-medium{width:var(--td-button-medium-height,80rpx)}.t-button--square.t-button--size-small{width:var(--td-button-small-height,64rpx)}.t-button--square.t-button--size-extra-small{width:var(--td-button-extra-small-height,56rpx)}.t-button--circle{padding:0;border-radius:50%}.t-button--circle.t-button--size-large{width:var(--td-button-large-height,96rpx)}.t-button--circle.t-button--size-large::after{border-radius:50%}.t-button--circle.t-button--size-medium{width:var(--td-button-medium-height,80rpx)}.t-button--circle.t-button--size-medium::after{border-radius:50%}.t-button--circle.t-button--size-small{width:var(--td-button-small-height,64rpx)}.t-button--circle.t-button--size-small::after{border-radius:50%}.t-button--circle.t-button--size-extra-small{width:var(--td-button-extra-small-height,56rpx)}.t-button--circle.t-button--size-extra-small::after{border-radius:50%}.t-button--block{display:flex;width:100%}.t-button--disabled{cursor:not-allowed}.t-button__loading--wrapper{display:flex;align-items:center;justify-content:center}.t-button.t-button--hover::after{z-index:-1} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/button/index.d.ts new file mode 100644 index 0000000..beb0ad5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './button'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/index.js b/app/miniprogram_npm/tdesign-miniprogram/button/index.js new file mode 100644 index 0000000..aba62c1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./button"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/props.js b/app/miniprogram_npm/tdesign-miniprogram/button/props.js new file mode 100644 index 0000000..f940974 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/props.js @@ -0,0 +1 @@ +const props={appParameter:{type:String,value:""},block:{type:Boolean,value:!1},content:{type:String},customDataset:{type:null},disabled:{type:null,value:void 0},ghost:{type:Boolean,value:!1},hoverClass:{type:String,value:""},hoverStartTime:{type:Number,value:20},hoverStayTime:{type:Number,value:70},hoverStopPropagation:{type:Boolean,value:!1},icon:{type:null},lang:{type:String},loading:{type:Boolean,value:!1},loadingProps:{type:Object},openType:{type:String},phoneNumberNoQuotaToast:{type:Boolean,value:!0},sendMessageImg:{type:String,value:"截图"},sendMessagePath:{type:String,value:"当前分享路径"},sendMessageTitle:{type:String,value:"当前标题"},sessionFrom:{type:String,value:""},shape:{type:String,value:"rectangle"},showMessageCard:{type:Boolean,value:!1},size:{type:String,value:"medium"},style:{type:String,value:""},tId:{type:String,value:""},theme:{type:String,value:"default"},type:{type:String},variant:{type:String,value:"base"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/button/type.js b/app/miniprogram_npm/tdesign-miniprogram/button/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/button/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar-header.wxml b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar-header.wxml new file mode 100644 index 0000000..57bf570 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar-header.wxml @@ -0,0 +1 @@ +{{ title }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.d.ts new file mode 100644 index 0000000..fc4f2ad --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.d.ts @@ -0,0 +1,62 @@ +/// +import { SuperComponent } from '../common/src/index'; +import { TdCalendarProps } from './type'; +export interface CalendarProps extends TdCalendarProps { +} +export default class Calendar extends SuperComponent { + behaviors: string[]; + externalClasses: string[]; + options: WechatMiniprogram.Component.ComponentOptions; + properties: TdCalendarProps; + data: { + prefix: string; + classPrefix: string; + months: any[]; + scrollIntoView: string; + innerConfirmBtn: {}; + realLocalText: {}; + currentMonth: {}; + actionButtons: { + preYearBtnDisable: boolean; + prevMonthBtnDisable: boolean; + nextMonthBtnDisable: boolean; + nextYearBtnDisable: boolean; + }; + }; + controlledProps: { + key: string; + event: string; + }[]; + lifetimes: { + created(): void; + ready(): void; + }; + observers: { + type(v: any): void; + confirmBtn(v: any): void; + 'firstDayOfWeek,minDate,maxDate'(firstDayOfWeek: any, minDate: any, maxDate: any): void; + value(v: any): void; + visible(v: any): void; + format(v: any): void; + }; + methods: { + initialValue(): void; + scrollIntoView(): void; + getCurrentYearAndMonth(v: Date): { + year: number; + month: number; + }; + updateActionButton(value: Date): void; + calcCurrentMonth(newValue?: any): void; + calcMonths(): void; + close(trigger: any): void; + onVisibleChange(): void; + handleClose(): void; + handleSelect(e: any): void; + onTplButtonTap(): void; + toTime(val: any): any; + onScroll(e: any): void; + getCurrentDate(): any; + handleSwitchModeChange(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.js b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.js new file mode 100644 index 0000000..92a0cf1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import TCalendar from"../common/shared/calendar/index";import useCustomNavbar from"../mixins/using-custom-navbar";import{getPrevMonth,getPrevYear,getNextMonth,getNextYear}from"./utils";const{prefix:prefix}=config,name=`${prefix}-calendar`,defaultLocaleText={title:"请选择日期",weekdays:["日","一","二","三","四","五","六"],monthTitle:"{year} 年 {month}",months:["1 月","2 月","3 月","4 月","5 月","6 月","7 月","8 月","9 月","10 月","11 月","12 月"],confirm:"确认"};let Calendar=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name,months:[],scrollIntoView:"",innerConfirmBtn:{},realLocalText:{},currentMonth:{},actionButtons:{preYearBtnDisable:!1,prevMonthBtnDisable:!1,nextMonthBtnDisable:!1,nextYearBtnDisable:!1}},this.controlledProps=[{key:"value",event:"confirm"},{key:"value",event:"change"}],this.lifetimes={created(){this.base=new TCalendar(this.properties)},ready(){const t=Object.assign(Object.assign({},defaultLocaleText),this.properties.localeText);this.initialValue(),this.setData({days:this.base.getDays(t.weekdays),realLocalText:t}),this.calcMonths(),"none"!==this.data.switchMode&&this.calcCurrentMonth(),this.data.usePopup||this.scrollIntoView()}},this.observers={type(t){this.base.type=t},confirmBtn(t){"string"==typeof t?this.setData({innerConfirmBtn:"slot"===t?"slot":{content:t}}):"object"==typeof t&&this.setData({innerConfirmBtn:t})},"firstDayOfWeek,minDate,maxDate"(t,e,a){t&&(this.base.firstDayOfWeek=t),e&&(this.base.minDate=e),a&&(this.base.maxDate=a),this.calcMonths()},value(t){this.base.value=t,this.calcMonths()},visible(t){t&&(this.scrollIntoView(),this.base.value=this.data.value,this.calcMonths())},format(t){const{usePopup:e,visible:a}=this.data;this.base.format=t,e&&!a||this.calcMonths()}},this.methods={initialValue(){const{value:t,type:e,minDate:a}=this.data;if(!t){const t=new Date,n=a||new Date(t.getFullYear(),t.getMonth(),t.getDate()).getTime(),s="single"===e?n:[n];"range"===e&&(s[1]=n+864e5),this.setData({value:s}),this.base.value=s}},scrollIntoView(){const{value:t}=this.data;if(!t)return;const e=new Date(Array.isArray(t)?t[0]:t);e&&this.setData({scrollIntoView:`year_${e.getFullYear()}_month_${e.getMonth()}`})},getCurrentYearAndMonth(t){const e=new Date(t);return{year:e.getFullYear(),month:e.getMonth()}},updateActionButton(t){const e=this.getCurrentYearAndMonth(this.base.minDate),a=this.getCurrentYearAndMonth(this.base.maxDate),n=new Date(e.year,e.month,1).getTime(),s=new Date(a.year,a.month,1).getTime(),i=getPrevYear(t).getTime(),r=getPrevMonth(t).getTime(),o=getNextMonth(t).getTime(),h=getNextYear(t).getTime(),l=is||h>s,u=o>s;this.setData({actionButtons:{preYearBtnDisable:l,prevMonthBtnDisable:c,nextYearBtnDisable:m,nextMonthBtnDisable:u}})},calcCurrentMonth(t){const e=t||this.getCurrentDate(),{year:a,month:n}=this.getCurrentYearAndMonth(e),s=this.data.months.filter((t=>t.year===a&&t.month===n));this.updateActionButton(e),this.setData({currentMonth:s.length>0?s:[this.data.months[0]]})},calcMonths(){const t=this.base.getMonths();this.setData({months:t})},close(t){this.data.autoClose&&this.setData({visible:!1}),this.triggerEvent("close",{trigger:t})},onVisibleChange(){this.close("overlay")},handleClose(){this.close("close-btn")},handleSelect(t){const{date:e,year:a,month:n}=t.currentTarget.dataset;if("disabled"===e.type)return;const s=this.base.select({cellType:e.type,year:a,month:n,date:e.day}),i=this.toTime(s);if(this.calcMonths(),"none"!==this.data.switchMode){const t=this.getCurrentDate();this.calcCurrentMonth(t)}null==this.data.confirmBtn&&("single"!==this.data.type&&2!==s.length||(this.setData({visible:!1}),this._trigger("change",{value:i}))),this.triggerEvent("select",{value:i})},onTplButtonTap(){const t=this.base.getTrimValue(),e=this.toTime(t);this.close("confirm-btn"),this._trigger("confirm",{value:e})},toTime:t=>Array.isArray(t)?t.map((t=>t.getTime())):t.getTime(),onScroll(t){this.triggerEvent("scroll",t.detail)},getCurrentDate(){var t,e;let a=Array.isArray(this.base.value)?this.base.value[0]:this.base.value;if(this.data.currentMonth.length>0){const n=null===(t=this.data.currentMonth[0])||void 0===t?void 0:t.year,s=null===(e=this.data.currentMonth[0])||void 0===e?void 0:e.month;a=new Date(n,s,1).getTime()}return a},handleSwitchModeChange(t){const{type:e,disabled:a}=t.currentTarget.dataset;if(a)return;const n=this.getCurrentDate(),s={"pre-year":()=>getPrevYear(n),"pre-month":()=>getPrevMonth(n),"next-month":()=>getNextMonth(n),"next-year":()=>getNextYear(n)}[e]();if(!s)return;const{year:i,month:r}=this.getCurrentYearAndMonth(s);this.triggerEvent("panel-change",{year:i,month:r+1}),this.calcCurrentMonth(s)}}}};Calendar=__decorate([wxComponent()],Calendar);export default Calendar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.json b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.json new file mode 100644 index 0000000..8a91a83 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-popup":"../popup/popup","t-button":"../button/button","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxml b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxml new file mode 100644 index 0000000..e963b1f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxs b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxs new file mode 100644 index 0000000..ad5d507 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxs @@ -0,0 +1,44 @@ +function getDateLabel(monthItem, dateItem) { + var weekdayText = ['日', '一', '二', '三', '四', '五', '六']; + var weekday = (monthItem.weekdayOfFirstDay + dateItem.day - 1) % 7; + var label = monthItem.month + 1 + '月' + dateItem.day + '日, 星期' + weekdayText[weekday]; + if (dateItem.type === 'start') { + label = '开始日期:' + label; + } + if (dateItem.type === 'end') { + label = '结束日期:' + label; + } + if (isDateSelected(dateItem)) { + label = '已选中, ' + label; + } + if (dateItem.prefix) { + label += ', ' + dateItem.prefix; + } + if (dateItem.suffix) { + label += ', ' + dateItem.suffix; + } + return label; +} + +function isDateSelected(dateItem) { + return ['start', 'end', 'selected', 'centre'].indexOf(dateItem.type) >= 0; +} + +function getMonthTitle(year, month, pattern = '') { + // prettier-ignore + var REGEXP = getRegExp('\{year\}|\{month\}', 'g'); + + return pattern.replace(REGEXP, function (match) { + var replacements = { + '{year}': year, + '{month}': month < 10 ? '0' + month : month, + }; + return replacements[match] || match; + }); +} + +module.exports = { + getDateLabel: getDateLabel, + isDateSelected: isDateSelected, + getMonthTitle: getMonthTitle, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxss b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxss new file mode 100644 index 0000000..8673bfd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/calendar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-calendar{width:inherit;position:relative;z-index:9999;background:var(--td-calendar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));overflow-x:hidden}.t-calendar--popup{border-top-left-radius:var(--td-calendar-radius,24rpx);border-top-right-radius:var(--td-calendar-radius,24rpx)}.t-calendar__title{display:flex;align-items:center;justify-content:center;font-size:var(--td-calendar-title-font-size,18px);font-weight:600;color:var(--td-calendar-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));height:52rpx;padding:32rpx}.t-calendar__title:focus{outline:0}.t-calendar__close-btn{position:absolute;top:32rpx;right:32rpx;margin:-24rpx;padding:24rpx;color:var(--td-calendar-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-calendar__days{display:grid;grid-template-columns:repeat(7,1fr);grid-column-gap:8rpx;padding:0 32rpx;text-align:center;line-height:92rpx}.t-calendar__days-item{height:92rpx;font-size:28rpx;color:var(--td-calendar-days-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))))}.t-calendar__content{min-height:400rpx;display:flex;flex-direction:column}.t-calendar__month{font-size:28rpx;color:var(--td-calendar-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-weight:600;padding:32rpx 0 0}.t-calendar__months{height:712rpx;padding:0 32rpx 32rpx;box-sizing:border-box}.t-calendar__months::-webkit-scrollbar{display:none}.t-calendar__dates{flex:1;display:grid;grid-template-columns:repeat(7,1fr);grid-column-gap:8rpx}.t-calendar__dates-item{position:relative;display:flex;align-items:center;justify-content:center;font-size:32rpx;border-radius:var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx));height:120rpx;line-height:48rpx;font-weight:600;margin-top:16rpx;color:var(--td-calendar-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none}.t-calendar__dates-item-prefix,.t-calendar__dates-item-suffix{position:absolute;font-size:20rpx;line-height:32rpx;width:100%;text-align:center;font-weight:400}.t-calendar__dates-item-prefix{top:8rpx}.t-calendar__dates-item-suffix{bottom:8rpx;color:var(--td-calendar-item-suffix-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-calendar__dates-item-suffix--end,.t-calendar__dates-item-suffix--selected,.t-calendar__dates-item-suffix--start{color:var(--td-calendar-selected-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-calendar__dates-item-suffix--disabled{color:var(--td-calendar-item-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-calendar__dates-item--end,.t-calendar__dates-item--selected,.t-calendar__dates-item--start{background:var(--td-calendar-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));color:var(--td-calendar-selected-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));border-radius:var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx))}.t-calendar__dates-item--start{border-radius:var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx)) 0 0 var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx))}.t-calendar__dates-item--end{border-radius:0 var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx)) var(--td-calendar-selected-border-radius,var(--td-radius-default,12rpx)) 0}.t-calendar__dates-item--start+.t-calendar__dates-item--end::before{content:'';display:block;position:absolute;top:0;width:8rpx;height:100%;background:var(--td-calendar-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-calendar__dates-item--start+.t-calendar__dates-item--end:before{left:-8rpx}.t-calendar__dates-item--centre{border-radius:0;background-color:var(--td-calendar-item-centre-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-calendar__dates-item--centre::after,.t-calendar__dates-item--centre::before{content:'';display:block;position:absolute;top:0;width:8rpx;height:100%;background-color:var(--td-calendar-item-centre-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-calendar__dates-item--centre:before{left:-8rpx}.t-calendar__dates-item--centre:after{right:-8rpx}.t-calendar__dates-item--disabled{color:var(--td-calendar-item-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));cursor:default}.t-calendar__footer{padding:32rpx}.t-calendar-switch-mode--none>.t-calendar__months{height:60vh}.t-calendar-header{display:flex;justify-content:space-between;align-items:center;line-height:44rpx}.t-calendar-header__with-action{padding:0rpx 32rpx 16rpx 32rpx;box-sizing:border-box;position:relative}.t-calendar-header__with-action::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-border-color,var(--td-gray-color-3,#e7e7e7))}.t-calendar-header__with-action::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-calendar-header__with-action .t-calendar-header__title{flex:1;text-align:center;font-size:28rpx;font-weight:600}.t-calendar-header__action{display:flex;font-size:40rpx;color:var(--td-calendar-switch-mode-icon-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))))}.t-calendar-header__icon{padding:16rpx}.t-calendar-header__icon--disabled{color:var(--td-calendar-switch-mode-icon-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-calendar-header__title{text-align:left} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/calendar/index.d.ts new file mode 100644 index 0000000..cf0e3b8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/index.d.ts @@ -0,0 +1,2 @@ +export * from './type'; +export * from './calendar'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/index.js b/app/miniprogram_npm/tdesign-miniprogram/calendar/index.js new file mode 100644 index 0000000..2dc1889 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/index.js @@ -0,0 +1 @@ +export*from"./type";export*from"./calendar"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/props.js b/app/miniprogram_npm/tdesign-miniprogram/calendar/props.js new file mode 100644 index 0000000..046bd84 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/props.js @@ -0,0 +1 @@ +const props={autoClose:{type:Boolean,value:!0},confirmBtn:{type:null,value:""},firstDayOfWeek:{type:Number,value:0},format:{type:null},localeText:{type:Object},maxDate:{type:Number},minDate:{type:Number},switchMode:{type:String,value:"none"},title:{type:String},type:{type:String,value:"single"},usePopup:{type:Boolean,value:!0},usingCustomNavbar:{type:Boolean,value:!1},value:{type:null,value:null},defaultValue:{type:null},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/template.wxml b/app/miniprogram_npm/tdesign-miniprogram/calendar/template.wxml new file mode 100644 index 0000000..1f6655e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/template.wxml @@ -0,0 +1 @@ +{{ title || realLocalText.title }}{{ item }}{{ dateItem.prefix }}{{ dateItem.day }}{{ dateItem.suffix }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/type.js b/app/miniprogram_npm/tdesign-miniprogram/calendar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.d.ts b/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.d.ts new file mode 100644 index 0000000..800daa0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.d.ts @@ -0,0 +1,6 @@ +export declare function getMonthByOffset(date: Date, offset: number): Date; +export declare function getYearByOffset(date: Date, offset: number): Date; +export declare const getPrevMonth: (date: Date) => Date; +export declare const getNextMonth: (date: Date) => Date; +export declare const getPrevYear: (date: Date) => Date; +export declare const getNextYear: (date: Date) => Date; diff --git a/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.js b/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.js new file mode 100644 index 0000000..81fc01c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/calendar/utils.js @@ -0,0 +1 @@ +export function getMonthByOffset(t,e){const n=new Date(t);return n.setMonth(n.getMonth()+e),n.setDate(1),n}export function getYearByOffset(t,e){const n=new Date(t);return n.setFullYear(n.getFullYear()+e),n.setDate(1),n}export const getPrevMonth=t=>getMonthByOffset(t,-1);export const getNextMonth=t=>getMonthByOffset(t,1);export const getPrevYear=t=>getYearByOffset(t,-1);export const getNextYear=t=>getYearByOffset(t,1); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.d.ts b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.d.ts new file mode 100644 index 0000000..7aa5bde --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.d.ts @@ -0,0 +1,59 @@ +/// +import { SuperComponent } from '../common/src/index'; +import { TdCascaderProps } from './type'; +export interface CascaderProps extends TdCascaderProps { +} +export default class Cascader extends SuperComponent { + externalClasses: string[]; + options: WechatMiniprogram.Component.ComponentOptions; + properties: TdCascaderProps>; + controlledProps: { + key: string; + event: string; + }[]; + state: { + contentHeight: number; + stepHeight: number; + tabsHeight: number; + subTitlesHeight: number; + stepsInitHeight: number; + }; + data: { + prefix: string; + name: string; + stepIndex: number; + selectedIndexes: any[]; + selectedValue: any[]; + scrollTopList: any[]; + steps: any[]; + _optionsHeight: number; + }; + observers: { + visible(v: any): void; + value(): void; + options(): void; + selectedIndexes(): void; + stepIndex(): Promise; + }; + methods: { + updateOptionsHeight(steps: number): void; + initOptionsHeight(steps: number): Promise; + initWithValue(): void; + getIndexesByValue(options: import("../common/common").TreeOptionData[], value: any): any[]; + updateScrollTop(): void; + hide(trigger: any): void; + onVisibleChange(): void; + onClose(): void; + onStepClick(e: any): void; + onTabChange(e: any): void; + genItems(): { + selectedValue: any[]; + steps: any[]; + items: { + [x: string]: any; + }[][]; + }; + handleSelect(e: any): void; + triggerChange(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.js b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.js new file mode 100644 index 0000000..831c2ee --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-cascader`;function parseOptions(e,t){var s,i;const l=null!==(s=null==t?void 0:t.label)&&void 0!==s?s:"label",n=null!==(i=null==t?void 0:t.value)&&void 0!==i?i:"value";return e.map((e=>({[l]:e[l],[n]:e[n]})))}const defaultState={contentHeight:0,stepHeight:0,tabsHeight:0,subTitlesHeight:0,stepsInitHeight:0};let Cascader=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0,pureDataPattern:/^options$/},this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.state=Object.assign({},defaultState),this.data={prefix:prefix,name:name,stepIndex:0,selectedIndexes:[],selectedValue:[],scrollTopList:[],steps:[],_optionsHeight:0},this.observers={visible(e){if(e){const e=this.selectComponent("#tabs");null==e||e.setTrack(),null==e||e.getTabHeight().then((e=>{this.state.tabsHeight=e.height})),this.initOptionsHeight(this.data.steps.length),this.updateScrollTop(),this.initWithValue()}else this.state=Object.assign({},defaultState)},value(){this.initWithValue()},options(){const{selectedValue:e,steps:t,items:s}=this.genItems();this.setData({steps:t,items:s,selectedValue:e,stepIndex:s.length-1})},selectedIndexes(){const{visible:e,theme:t}=this.properties,{selectedValue:s,steps:i,items:l}=this.genItems(),n={steps:i,selectedValue:s,stepIndex:l.length-1};JSON.stringify(l)!==JSON.stringify(this.data.items)&&Object.assign(n,{items:l}),this.setData(n),e&&"step"===t&&this.updateOptionsHeight(i.length)},stepIndex(){return __awaiter(this,void 0,void 0,(function*(){const{visible:e}=this.data;e&&this.updateScrollTop()}))}},this.methods={updateOptionsHeight(e){const{contentHeight:t,stepsInitHeight:s,stepHeight:i,subTitlesHeight:l}=this.state;this.setData({_optionsHeight:t-s-l-(e-1)*i})},initOptionsHeight(e){return __awaiter(this,void 0,void 0,(function*(){const{theme:t,subTitles:s}=this.properties,{height:i}=yield getRect(this,`.${name}__content`);if(this.state.contentHeight=i,"step"===t&&(yield Promise.all([getRect(this,`.${name}__steps`),getRect(this,`.${name}__step`)]).then((([t,s])=>{this.state.stepsInitHeight=t.height-(e-1)*s.height,this.state.stepHeight=s.height}))),s.length>0){const{height:e}=yield getRect(this,`.${name}__options-title`);this.state.subTitlesHeight=e}const l=this.state.contentHeight-this.state.subTitlesHeight;this.setData({_optionsHeight:"step"===t?l-this.state.stepsInitHeight-(e-1)*this.state.stepHeight:l-this.state.tabsHeight})}))},initWithValue(){if(null!=this.data.value&&""!==this.data.value){const e=this.getIndexesByValue(this.data.options,this.data.value);e&&this.setData({selectedIndexes:e})}else this.setData({selectedIndexes:[]})},getIndexesByValue(e,t){var s,i,l;const{keys:n}=this.data;for(let a=0,h=e.length;a{var l;const n=e.height/(null===(l=t[0])||void 0===l?void 0:l.length);this.setData({[`scrollTopList[${i}]`]:n*s[i]})}))},hide(e){this.setData({visible:!1}),this.triggerEvent("close",{trigger:e})},onVisibleChange(){this.hide("overlay")},onClose(){this.data.checkStrictly&&this.triggerChange(),this.hide("close-btn")},onStepClick(e){const{index:t}=e.currentTarget.dataset;this.setData({stepIndex:t})},onTabChange(e){const{value:t}=e.detail;this.setData({stepIndex:t})},genItems(){var e,t,s,i,l;const{options:n,selectedIndexes:a,keys:h,placeholder:o}=this.data,d=[],r=[],c=[parseOptions(n,h)];if(n.length>0){let o=n;for(let n=0,u=a.length;n{var t;return e[null!==(t=null==c?void 0:c.value)&&void 0!==t?t:"value"]===h}));let v=d.slice(0,a).reduce(((e,t,s)=>{var i;return 0===s?e[t]:e[null!==(i=null==c?void 0:c.children)&&void 0!==i?i:"children"][t]}),u);if(v=0===a?v[g]:v[null!==(t=null==c?void 0:c.children)&&void 0!==t?t:"children"][g],v.disabled)return;if(this.triggerEvent("pick",{value:v[null!==(s=null==c?void 0:c.value)&&void 0!==s?s:"value"],label:v[null!==(i=null==c?void 0:c.label)&&void 0!==i?i:"label"],index:g,level:a}),d[a]=g,o&&p.includes(String(h)))return d.length=a,void this.setData({selectedIndexes:d});d.length=a+1;const{items:m}=this.genItems();(null===(n=null==v?void 0:v[null!==(l=null==c?void 0:c.children)&&void 0!==l?l:"children"])||void 0===n?void 0:n.length)>=0?this.setData({selectedIndexes:d,[`items[${a+1}]`]:m[a+1]}):(this.setData({selectedIndexes:d},this.triggerChange),this.hide("finish"))},triggerChange(){var e;const{items:t,selectedValue:s,selectedIndexes:i}=this.data;this._trigger("change",{value:null!==(e=s[s.length-1])&&void 0!==e?e:"",selectedOptions:t.map(((e,t)=>e[i[t]])).filter(Boolean)})}}}};Cascader=__decorate([wxComponent()],Cascader);export default Cascader; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.json b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.json new file mode 100644 index 0000000..98d4316 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-popup":"../popup/popup","t-tabs":"../tabs/tabs","t-tab-panel":"../tab-panel/tab-panel","t-radio-group":"../radio-group/radio-group"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxml b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxml new file mode 100644 index 0000000..7095b19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxml @@ -0,0 +1 @@ +{{title}}{{ item }}{{subTitles[stepIndex]}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxss b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxss new file mode 100644 index 0000000..5783fc2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/cascader.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-cascader{display:flex;flex-direction:column;background-color:var(--td-cascader-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));color:var(--td-cascader-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));border-radius:var(--td-radius-extra-large,24rpx) var(--td-radius-extra-large,24rpx) 0 0;--td-radio-icon-checked-color:var(--td-cascader-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)));--td-tab-item-active-color:var(--td-cascader-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)));--td-tab-track-color:var(--td-cascader-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)))}.t-cascader__close-btn{right:32rpx;top:24rpx;position:absolute}.t-cascader__title{position:relative;font-weight:700;text-align:center;line-height:var(--td-cascader-title-height,26rpx);padding:var(--td-cascader-title-padding,var(--td-spacer-2,32rpx));font-size:var(--td-cascder-title-font-size,36rpx)}.t-cascader__content{width:100%;height:var(--td-cascader-content-height,78vh);display:flex;flex-direction:column}.t-cascader__options{width:100vw}.t-cascader__options-title{color:var(--td-cascader-options-title-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-font-size-base,28rpx);line-height:44rpx;padding-top:40rpx;padding-left:var(--td-spacer-2,32rpx);box-sizing:border-box}.t-cascader__options-container{flex:1;display:flex;transition:all ease .3s}.t-cascader__step{display:flex;align-items:center;height:var(--td-cascader-step-height,88rpx)}.t-cascader__steps{padding:0 32rpx 10rpx;position:relative}.t-cascader__steps::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-cascader-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)))}.t-cascader__steps::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-cascader__step-dot{position:relative;width:var(--td-cascader-step-dot-size,16rpx);height:var(--td-cascader-step-dot-size,16rpx);border-radius:50%;border:2rpx solid var(--td-cascader-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));box-sizing:border-box}.t-cascader__step-dot:not(.t-cascader__step-dot--last)::after{content:'';display:block;position:absolute;left:50%;top:calc(var(--td-cascader-step-dot-size,16rpx) + 14rpx);height:36rpx;width:2rpx;background:var(--td-cascader-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));transform:translateX(-50%)}.t-cascader__step-dot--active{background:var(--td-cascader-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-cascader-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-cascader__step-label{padding-left:var(--td-spacer-2,32rpx);font-size:var(--td-font-size-m,32rpx)}.t-cascader__step-label--active{color:var(--td-cascader-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-weight:600}.t-cascader__step-arrow{color:var(--td-cascader-step-arrow-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));margin-left:auto} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/props.js b/app/miniprogram_npm/tdesign-miniprogram/cascader/props.js new file mode 100644 index 0000000..b051517 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/props.js @@ -0,0 +1 @@ +const props={checkStrictly:{type:Boolean,value:!1},closeBtn:{type:Boolean,value:!0},keys:{type:Object},options:{type:Array,value:[]},placeholder:{type:String,value:"选择选项"},subTitles:{type:Array,value:[]},theme:{type:String,value:"step"},title:{type:String},value:{type:null,value:null},defaultValue:{type:null,value:null},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cascader/type.js b/app/miniprogram_npm/tdesign-miniprogram/cascader/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cascader/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.d.ts b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.d.ts new file mode 100644 index 0000000..30d14dc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.d.ts @@ -0,0 +1,13 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class CellGroup extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + properties: import("./type").TdCellGroupProps; + data: { + prefix: string; + classPrefix: string; + }; + methods: { + updateLastChid(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.js b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.js new file mode 100644 index 0000000..a9f01fc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-cell-group`;let CellGroup=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-title`],this.relations={"../cell/cell":{type:"child",linked(){this.updateLastChid()},unlinked(){this.updateLastChid()}}},this.properties=props,this.data={prefix:prefix,classPrefix:name},this.methods={updateLastChid(){const e=this.$children;e.forEach(((t,o)=>t.setData({isLastChild:o===e.length-1})))}}}};CellGroup=__decorate([wxComponent()],CellGroup);export default CellGroup; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.json b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxml b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxml new file mode 100644 index 0000000..a7caad1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxml @@ -0,0 +1 @@ +{{ title }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxss b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxss new file mode 100644 index 0000000..04fd57a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/cell-group.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-cell-group{position:relative}.t-cell-group__title{font-family:PingFangSC-Regular;font-size:var(--td-cell-group-title-font-size,28rpx);color:var(--td-cell-group-title-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));text-align:left;line-height:var(--td-cell-group-title-line-height,90rpx);background-color:var(--td-cell-group-title-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));padding-left:var(--td-cell-group-title-padding-left,32rpx)}.t-cell-group--bordered::before{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;left:0;top:0;border-top:1px solid var(--td-cell-group-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)));transform:scaleY(.5);transform-origin:0 0;transform-origin:top;z-index:1}.t-cell-group--bordered::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;left:0;bottom:0;border-bottom:1px solid var(--td-cell-group-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)));transform:scaleY(.5);transform-origin:bottom;z-index:1}.t-cell-group--card{margin:0 32rpx;border-radius:var(--td-radius-large,18rpx);overflow:hidden} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/props.js b/app/miniprogram_npm/tdesign-miniprogram/cell-group/props.js new file mode 100644 index 0000000..8a43b88 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/props.js @@ -0,0 +1 @@ +const props={bordered:{type:Boolean,value:!1},theme:{type:String,value:"default"},title:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell-group/type.js b/app/miniprogram_npm/tdesign-miniprogram/cell-group/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell-group/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/cell.d.ts b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.d.ts new file mode 100644 index 0000000..d6a8910 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.d.ts @@ -0,0 +1,22 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Cell extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdCellProps; + data: { + prefix: string; + classPrefix: string; + isLastChild: boolean; + }; + observers: { + leftIcon(v: any): void; + rightIcon(v: any): void; + arrow(v: any): void; + }; + setIcon(name: any, value: any, defaultValue: any): void; + onClick(e: any): void; + jumpLink(urlKey?: string, link?: string): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/cell.js b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.js new file mode 100644 index 0000000..ea134d9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-cell`;let Cell=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-title`,`${prefix}-class-description`,`${prefix}-class-note`,`${prefix}-class-hover`,`${prefix}-class-image`,`${prefix}-class-left`,`${prefix}-class-left-icon`,`${prefix}-class-center`,`${prefix}-class-right`,`${prefix}-class-right-icon`],this.relations={"../cell-group/cell-group":{type:"parent"}},this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name,isLastChild:!1},this.observers={leftIcon(e){this.setIcon("_leftIcon",e,"")},rightIcon(e){this.setIcon("_rightIcon",e,"")},arrow(e){this.setIcon("_arrow",e,"chevron-right")}}}setIcon(e,t,s){this.setData({[e]:calcIcon(t,s)})}onClick(e){this.triggerEvent("click",e.detail),this.jumpLink()}jumpLink(e="url",t="jumpType"){const s=this.data[e],i=this.data[t];s&&wx[i]({url:s})}};Cell=__decorate([wxComponent()],Cell);export default Cell; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/cell.json b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.json new file mode 100644 index 0000000..dd7b01e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxml b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxml new file mode 100644 index 0000000..d0029e0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxml @@ -0,0 +1 @@ +{{ title}} *{{description}}{{note}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxss b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxss new file mode 100644 index 0000000..b76a9ec --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/cell.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-cell{position:relative;display:flex;box-sizing:border-box;width:100%;padding:var(--td-cell-vertical-padding,32rpx) var(--td-cell-horizontal-padding,32rpx);line-height:var(--td-cell-line-height,48rpx);height:var(--td-cell-height,auto);background-color:var(--td-cell-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-cell::after{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;left:0;bottom:0;border-bottom:var(--td-cell-border-width,1px) solid var(--td-cell-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)));transform:scaleY(.5);transform-origin:bottom;left:var(--td-cell-border-left-space,var(--td-cell-horizontal-padding,32rpx));right:var(--td-cell-border-right-space,0)}.t-cell--borderless::after{display:none}.t-cell__description{font-size:var(--td-cell-description-font-size,var(--td-font-size-base,28rpx));line-height:var(--td-cell-description-line-height,44rpx);color:var(--td-cell-description-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))))}.t-cell__description-text{margin-top:calc(var(--td-spacer,16rpx)/ 2)}.t-cell__note{display:flex;align-items:center;justify-content:flex-end;color:var(--td-cell-note-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-cell-note-font-size,var(--td-font-size-m,32rpx))}.t-cell__title{margin-right:var(--td-spacer-2,32rpx)}.t-cell__note,.t-cell__title{flex:1 1 auto}.t-cell__note:empty,.t-cell__title:empty{display:none}.t-cell__title-text{display:flex;font-size:var(--td-cell-title-font-size,var(--td-font-size-m,32rpx));color:var(--td-cell-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-weight:400}.t-cell__left,.t-cell__right{align-self:stretch}.t-cell__left:not(:empty){margin-right:var(--td-spacer-1,24rpx)}.t-cell__left-icon{color:var(--td-cell-left-icon-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-size:var(--td-cell-left-icon-font-size,48rpx)}.t-cell__left-image{height:var(--td-cell-image-height,96rpx);width:var(--td-cell-image-width,96rpx)}.t-cell__note:not(:empty)+.t-cell__right{margin-left:calc(var(--td-spacer,16rpx)/ 2)}.t-cell__right{display:flex}.t-cell__right-icon{color:var(--td-cell-right-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-cell-right-icon-font-size,48rpx)}.t-cell__right--middle{align-items:center}.t-cell__right--top{align-items:flex-start}.t-cell__right--bottom{align-items:flex-end}.t-cell--hover{background-color:var(--td-cell-hover-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-cell--required{font-size:var(--td-cell-required-font-size,var(--td-font-size-m,32rpx));color:var(--td-cell-required-color,var(--td-error-color,var(--td-error-color-6,#d54941)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/props.js b/app/miniprogram_npm/tdesign-miniprogram/cell/props.js new file mode 100644 index 0000000..23dca76 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/props.js @@ -0,0 +1 @@ +const props={align:{type:String,value:"middle"},arrow:{type:null,value:!1},bordered:{type:Boolean,value:!0},description:{type:String},hover:{type:Boolean},image:{type:String},jumpType:{type:String,value:"navigateTo"},leftIcon:{type:null},note:{type:String},required:{type:Boolean,value:!1},rightIcon:{type:null},title:{type:String},url:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/cell/type.js b/app/miniprogram_npm/tdesign-miniprogram/cell/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/cell/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.d.ts b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.d.ts new file mode 100644 index 0000000..cbea034 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.d.ts @@ -0,0 +1,29 @@ +import { SuperComponent } from '../common/src/index'; +export default class CheckTag extends SuperComponent { + data: { + prefix: string; + classPrefix: string; + className: string; + }; + properties: import("./type").TdCheckTagProps; + externalClasses: string[]; + controlledProps: { + key: string; + event: string; + }[]; + options: { + multipleSlots: boolean; + }; + lifetimes: { + attached(): void; + }; + observers: { + 'size, disabled, checked'(): void; + icon(v: any): void; + }; + methods: { + setClass(): void; + onClick(): void; + onClose(e: WechatMiniprogram.BaseEvent): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.js b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.js new file mode 100644 index 0000000..53dbaaa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{classNames,calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-tag`;let CheckTag=class extends SuperComponent{constructor(){super(...arguments),this.data={prefix:prefix,classPrefix:name,className:""},this.properties=props,this.externalClasses=[`${prefix}-class`],this.controlledProps=[{key:"checked",event:"change"}],this.options={multipleSlots:!0},this.lifetimes={attached(){this.setClass()}},this.observers={"size, disabled, checked"(){this.setClass()},icon(e){this.setData({_icon:calcIcon(e)})}},this.methods={setClass(){const{classPrefix:e}=this.data,{size:s,variant:t,disabled:i,checked:a,shape:c}=this.properties,o=classNames([e,`${e}--checkable`,i?`${e}--disabled`:"",a?`${e}--checked`:"",`${e}--${a?"primary":"default"}`,`${e}--${s}`,`${e}--${t}`,`${e}--${c}`]);this.setData({className:o})},onClick(){if(this.data.disabled)return;const{checked:e}=this.data;this._trigger("click"),this._trigger("change",{checked:!e})},onClose(e){this.data.disabled||this._trigger("close",e)}}}};CheckTag=__decorate([wxComponent()],CheckTag);export default CheckTag; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.json b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxml b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxml new file mode 100644 index 0000000..640d0bc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxml @@ -0,0 +1 @@ +{{checked ? content[0] : content[1]}}{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxss b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxss new file mode 100644 index 0000000..d1357d3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/check-tag.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tag{display:inline-flex;align-items:center;border:2rpx solid transparent;box-sizing:border-box;border-radius:var(--td-tag-square-border-radius,8rpx);font-size:var(--td-tag-medium-font-size,var(--td-font-size-s,24rpx));user-select:none;vertical-align:middle}.t-tag__text{word-wrap:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-tag__icon{display:flex;align-items:center}.t-tag__icon:not(:empty)+.t-tag__text:not(:empty){margin-left:8rpx}.t-tag--small{height:var(--td-tag-small-height,40rpx);line-height:var(--td-tag-small-height,40rpx);padding:0 var(--td-tag-small-padding,11rpx);font-size:var(--td-tag-small-font-size,var(--td-font-size,20rpx))}.t-tag--small .t-icon,.t-tag--small .t-icon-close{font-size:var(--td-tag-small-icon-size,24rpx)}.t-tag--medium{height:var(--td-tag-medium-height,48rpx);line-height:var(--td-tag-medium-height,48rpx);padding:0 var(--td-tag-medium-padding,15rpx);font-size:var(--td-tag-medium-font-size,var(--td-font-size-s,24rpx))}.t-tag--medium .t-icon,.t-tag--medium .t-icon-close{font-size:var(--td-tag-medium-icon-size,28rpx)}.t-tag--large{height:var(--td-tag-large-height,56rpx);line-height:var(--td-tag-large-height,56rpx);padding:0 var(--td-tag-large-padding,15rpx);font-size:var(--td-tag-large-font-size,var(--td-font-size-base,28rpx))}.t-tag--large .t-icon,.t-tag--large .t-icon-close{font-size:var(--td-tag-large-icon-size,32rpx)}.t-tag--extra-large{height:var(--td-tag-extra-large-height,80rpx);line-height:var(--td-tag-extra-large-height,80rpx);padding:0 var(--td-tag-extra-large-padding,31rpx);font-size:var(--td-tag-extra-large-font-size,var(--td-font-size-base,28rpx))}.t-tag--extra-large .t-icon,.t-tag--extra-large .t-icon-close{font-size:var(--td-tag-extra-large-icon-size,32rpx)}.t-tag.t-tag--square{border-radius:var(--td-tag-square-border-radius,8rpx)}.t-tag.t-tag--round{border-radius:var(--td-tag-round-border-radius,999px)}.t-tag.t-tag--mark{border-radius:0 var(--td-tag-mark-border-radius,var(--td-tag-round-border-radius,999px)) var(--td-tag-mark-border-radius,var(--td-tag-round-border-radius,999px)) 0}.t-tag--dark.t-tag--default{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-tag--dark.t-tag--primary{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-tag--dark.t-tag--success{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-tag--dark.t-tag--warning{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-tag--dark.t-tag--danger{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-tag--dark.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--outline.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--outline.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--outline.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--outline.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--outline.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--outline.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--outline.t-tag--default{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--primary{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--success{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--warning{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--danger{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--light.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--light.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--light.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--light.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--light.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--light.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--light-outline.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--light-outline.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--light-outline.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--light-outline.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--light-outline.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--light-outline.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));border-color:var(--td-component-border,var(--td-gray-color-4,#dcdcdc))}.t-tag.t-tag--closable.t-tag--disabled{cursor:not-allowed;color:var(--td-tag-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));background-color:var(--td-tag-disabled-background-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)));border-color:var(--td-tag-disabled-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/props.js b/app/miniprogram_npm/tdesign-miniprogram/check-tag/props.js new file mode 100644 index 0000000..6d29e68 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/props.js @@ -0,0 +1 @@ +const props={checked:{type:null,value:void 0},defaultChecked:{type:null,value:void 0},closable:{type:Boolean,value:!1},content:{type:null},disabled:{type:Boolean,value:!1},icon:{type:null},shape:{type:String,value:"square"},size:{type:String,value:"medium"},variant:{type:String,value:"dark"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/check-tag/type.js b/app/miniprogram_npm/tdesign-miniprogram/check-tag/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/check-tag/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.d.ts b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.d.ts new file mode 100644 index 0000000..fe1681b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.d.ts @@ -0,0 +1,38 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class CheckBoxGroup extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + data: { + prefix: string; + classPrefix: string; + checkboxOptions: any[]; + }; + properties: import("./type").TdCheckboxGroupProps; + observers: { + value(): void; + options(): void; + disabled(v: any): void; + }; + lifetimes: { + ready(): void; + }; + controlledProps: { + key: string; + event: string; + }[]; + $checkAll: any; + methods: { + getChildren(): any; + updateChildren(): void; + updateValue({ value, checked, checkAll, item, indeterminate }: { + value: any; + checked: any; + checkAll: any; + item: any; + indeterminate: any; + }): void; + initWithOptions(): void; + handleInnerChildChange(e: any): void; + setCheckall(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.js new file mode 100644 index 0000000..42d9154 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-checkbox-group`;let CheckBoxGroup=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.relations={"../checkbox/checkbox":{type:"descendant"}},this.data={prefix:prefix,classPrefix:name,checkboxOptions:[]},this.properties=props,this.observers={value(){this.updateChildren()},options(){this.initWithOptions()},disabled(e){var t;(null===(t=this.data.options)||void 0===t?void 0:t.length)?this.initWithOptions():this.getChildren().forEach((t=>{t.setDisabled(e)}))}},this.lifetimes={ready(){this.setCheckall()}},this.controlledProps=[{key:"value",event:"change"}],this.$checkAll=null,this.methods={getChildren(){let e=this.$children;return e.length||(e=this.selectAllComponents(`.${prefix}-checkbox-option`)),e||[]},updateChildren(){const e=this.getChildren(),{value:t}=this.data;e.length>0&&(e.forEach((e=>{!e.data.checkAll&&e.setData({checked:null==t?void 0:t.includes(e.data.value)})})),e.some((e=>e.data.checkAll))&&this.setCheckall())},updateValue({value:e,checked:t,checkAll:l,item:i,indeterminate:a}){let{value:s}=this.data;const{max:n}=this.data,c=new Set(this.getChildren().map((e=>e.data.value)));if(s=s.filter((e=>c.has(e))),!n||!t||s.length!==n){if(l){const e=this.getChildren();s=!t&&a?e.filter((({data:e})=>!(e.disabled&&!s.includes(e.value)))).map((e=>e.data.value)):e.filter((({data:e})=>e.disabled?s.includes(e.value):t&&!e.checkAll)).map((({data:e})=>e.value))}else if(t)s=s.concat(e);else{const t=s.findIndex((t=>t===e));s.splice(t,1)}this._trigger("change",{value:s,context:i})}},initWithOptions(){const{options:e,value:t,keys:l}=this.data;if(!(null==e?void 0:e.length)||!Array.isArray(e))return;const i=e.map((e=>{var i,a,s;return["number","string"].includes(typeof e)?{label:`${e}`,value:e,checked:null==t?void 0:t.includes(e)}:Object.assign(Object.assign({},e),{label:e[null!==(i=null==l?void 0:l.label)&&void 0!==i?i:"label"],value:e[null!==(a=null==l?void 0:l.value)&&void 0!==a?a:"value"],checked:null==t?void 0:t.includes(e[null!==(s=null==l?void 0:l.value)&&void 0!==s?s:"value"])})}));this.setData({checkboxOptions:i})},handleInnerChildChange(e){var t;const{item:l}=e.target.dataset,{checked:i}=e.detail,a={};l.checkAll&&(a.indeterminate=null===(t=this.$checkAll)||void 0===t?void 0:t.data.indeterminate),this.updateValue(Object.assign(Object.assign(Object.assign({},l),{checked:i,item:l}),a))},setCheckall(){const e=this.getChildren();if(this.$checkAll||(this.$checkAll=e.find((e=>e.data.checkAll))),!this.$checkAll)return;const{value:t}=this.data,l=new Set(null==t?void 0:t.filter((e=>e!==this.$checkAll.data.value))),i=e.every((e=>!!e.data.checkAll||l.has(e.data.value)));this.$checkAll.setData({checked:l.size>0,indeterminate:!i})}}}};CheckBoxGroup=__decorate([wxComponent()],CheckBoxGroup);export default CheckBoxGroup; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.json b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.json new file mode 100644 index 0000000..e58cba0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-checkbox":"../checkbox/checkbox"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxml b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxml new file mode 100644 index 0000000..9c5e723 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxss b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxss new file mode 100644 index 0000000..aed803e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/checkbox-group.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/props.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/props.js new file mode 100644 index 0000000..68ffc3f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/props.js @@ -0,0 +1 @@ +const props={borderless:{type:Boolean,value:!1},disabled:{type:null,value:void 0},keys:{type:Object},max:{type:Number,value:void 0},name:{type:String,value:""},options:{type:Array,value:[]},value:{type:Array,value:null},defaultValue:{type:Array,value:[]}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/type.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox-group/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.d.ts b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.d.ts new file mode 100644 index 0000000..3cfb0f9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.d.ts @@ -0,0 +1,100 @@ +import { SuperComponent, ComponentsOptionsType, RelationsOptions } from '../common/src/index'; +export default class CheckBox extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + relations: RelationsOptions; + options: ComponentsOptionsType; + properties: { + theme: { + type: StringConstructor; + value: string; + }; + tId: { + type: StringConstructor; + }; + block?: { + type: BooleanConstructor; + value?: boolean; + }; + borderless?: { + type: BooleanConstructor; + value?: boolean; + }; + checkAll?: { + type: BooleanConstructor; + value?: boolean; + }; + checked?: { + type: BooleanConstructor; + value?: boolean; + }; + defaultChecked?: { + type: BooleanConstructor; + value?: boolean; + }; + content?: { + type: StringConstructor; + value?: string; + }; + contentDisabled?: { + type: BooleanConstructor; + value?: boolean; + }; + disabled?: { + type: BooleanConstructor; + value?: boolean; + }; + icon?: { + type: null; + value?: string[] | "rectangle" | "circle" | "line"; + }; + indeterminate?: { + type: BooleanConstructor; + value?: boolean; + }; + label?: { + type: StringConstructor; + value?: string; + }; + maxContentRow?: { + type: NumberConstructor; + value?: number; + }; + maxLabelRow?: { + type: NumberConstructor; + value?: number; + }; + name?: { + type: StringConstructor; + value?: string; + }; + placement?: { + type: StringConstructor; + value?: "left" | "right"; + }; + readonly?: { + type: BooleanConstructor; + value?: boolean; + }; + value?: { + type: null; + value?: string | number | boolean; + }; + }; + data: { + prefix: string; + classPrefix: string; + _disabled: boolean; + }; + observers: { + disabled(v: any): void; + }; + controlledProps: { + key: string; + event: string; + }[]; + methods: { + handleTap(e: WechatMiniprogram.TouchEvent): void; + setDisabled(disabled: Boolean): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.js new file mode 100644 index 0000000..e4b6e08 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import Props from"./props";const{prefix:prefix}=config,name=`${prefix}-checkbox`;let CheckBox=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-label`,`${prefix}-class-icon`,`${prefix}-class-content`,`${prefix}-class-border`],this.behaviors=["wx://form-field"],this.relations={"../checkbox-group/checkbox-group":{type:"ancestor",linked(e){const{value:t,disabled:s,borderless:a}=e.data,i=new Set(t),o=i.has(this.data.value),c={_disabled:null==this.data.disabled?s:this.data.disabled};a&&(c.borderless=!0),c.checked=this.data.checked||o,this.data.checked&&e.updateValue(this.data),this.data.checkAll&&(c.checked=i.size>0),this.setData(c)}}},this.options={multipleSlots:!0},this.properties=Object.assign(Object.assign({},Props),{theme:{type:String,value:"default"},tId:{type:String}}),this.data={prefix:prefix,classPrefix:name,_disabled:!1},this.observers={disabled(e){this.setData({_disabled:e})}},this.controlledProps=[{key:"checked",event:"change"}],this.methods={handleTap(e){const{_disabled:t,readonly:s,contentDisabled:a}=this.data,{target:i}=e.currentTarget.dataset;if(t||s||"text"===i&&a)return;const{value:o,label:c}=this.data,d=!this.data.checked,r=this.$parent;r?r.updateValue(Object.assign(Object.assign({},this.data),{checked:d,item:{label:c,value:o,checked:d}})):this._trigger("change",{context:{value:o,label:c},checked:d})},setDisabled(e){this.setData({_disabled:this.data.disabled||e})}}}};CheckBox=__decorate([wxComponent()],CheckBox);export default CheckBox; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.json b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxml b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxml new file mode 100644 index 0000000..71439ca --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxml @@ -0,0 +1 @@ +{{label}}{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxss b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxss new file mode 100644 index 0000000..e3aace5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/checkbox.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-checkbox{display:inline-flex;vertical-align:middle;position:relative;font-size:var(--td-checkbox-font-size,32rpx);background:var(--td-checkbox-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-checkbox:focus{outline:0}.t-checkbox--block{display:flex;padding:var(--td-checkbox-vertical-padding,32rpx)}.t-checkbox--right{flex-direction:row-reverse}.t-checkbox .limit-title-row{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.t-checkbox .image-center{position:absolute;top:50%;transform:translateY(-50%)}.t-checkbox__icon-left{margin-right:20rpx;width:40rpx}.t-checkbox__icon-right{right:0;display:contents;position:absolute;top:50%;transform:translateY(-50%)}.t-checkbox__icon-image{width:var(--td-checkbox-icon-size,48rpx);height:var(--td-checkbox-icon-size,48rpx);vertical-align:top}.t-checkbox__icon{position:relative;display:block;width:var(--td-checkbox-icon-size,48rpx);height:var(--td-checkbox-icon-size,48rpx);color:var(--td-checkbox-icon-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));font-size:var(--td-checkbox-icon-size,48rpx);margin-top:calc((var(--td-checkbox-title-line-height,48rpx) - var(--td-checkbox-icon-size,48rpx))/ 2)}.t-checkbox__icon:empty{display:none}.t-checkbox__icon--checked{color:var(--td-checkbox-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-checkbox__icon--disabled{cursor:not-allowed;color:var(--td-checkbox-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-checkbox__icon--left{margin-right:16rpx}.t-checkbox__icon-circle{width:calc((var(--td-checkbox-icon-size,48rpx) - 4rpx) * 2);height:calc((var(--td-checkbox-icon-size,48rpx) - 4rpx) * 2);border:calc(4rpx * 2) solid var(--td-checkbox-icon-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.5);box-sizing:border-box}.t-checkbox__icon-circle--disabled{background:var(--td-checkbox-icon-disabled-bg-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-checkbox__icon-rectangle{width:calc((var(--td-checkbox-icon-size,48rpx) - 4rpx * 2) * 2);height:calc((var(--td-checkbox-icon-size,48rpx) - 4rpx * 2) * 2);border:calc(4rpx * 2) solid var(--td-checkbox-icon-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.5);box-sizing:border-box}.t-checkbox__icon-rectangle--disabled{background:var(--td-checkbox-icon-disabled-bg-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-checkbox__icon-line::after,.t-checkbox__icon-line::before{content:'';display:block;position:absolute;width:5rpx;border-radius:2rpx;background:var(--td-checkbox-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));transform-origin:top center}.t-checkbox__icon-line::before{height:16rpx;left:8rpx;top:22rpx;transform:rotate(-45deg)}.t-checkbox__icon-line::after{height:26rpx;right:8rpx;top:14rpx;transform:rotate(45deg)}.t-checkbox__icon-line--disabled::after,.t-checkbox__icon-line--disabled::before{background:var(--td-checkbox-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-checkbox__content{flex:1}.t-checkbox__title{color:var(--td-checkbox-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));line-height:var(--td-checkbox-title-line-height,48rpx);display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.t-checkbox__title--disabled{color:var(--td-checkbox-title-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-checkbox__description{color:var(--td-checkbox-description-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;font-size:28rpx;line-height:var(--td-checkbox-description-line-height,44rpx)}.t-checkbox__description--disabled{color:var(--td-checkbox-description-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-checkbox__title+.t-checkbox__description:not(:empty){margin-top:8rpx}.t-checkbox__border{position:absolute;bottom:0;left:96rpx;right:0;height:1px;background:var(--td-checkbox-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)));transform:scaleY(.5)}.t-checkbox__border--right{left:32rpx}.t-checkbox--tag{font-size:28rpx;padding-top:16rpx;padding-bottom:16rpx;text-align:center;background-color:var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3));border-radius:12rpx}.t-checkbox--tag.t-checkbox--checked{color:var(--td-checkbox-tag-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-checkbox-tag-active-bg-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-checkbox--tag .t-checkbox__title--checked{color:var(--td-checkbox-tag-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-checkbox--tag .t-checkbox__content{margin-right:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/props.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox/props.js new file mode 100644 index 0000000..dc20895 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/props.js @@ -0,0 +1 @@ +const props={block:{type:Boolean,value:!0},borderless:{type:Boolean,value:!1},checkAll:{type:Boolean,value:!1},checked:{type:Boolean,value:null},defaultChecked:{type:Boolean,value:!1},content:{type:String},contentDisabled:{type:Boolean},disabled:{type:null,value:void 0},icon:{type:null,value:"circle"},indeterminate:{type:Boolean,value:!1},label:{type:String},maxContentRow:{type:Number,value:5},maxLabelRow:{type:Number,value:3},name:{type:String,value:""},placement:{type:String,value:"left"},readonly:{type:Boolean,value:!1},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/checkbox/type.js b/app/miniprogram_npm/tdesign-miniprogram/checkbox/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/checkbox/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.d.ts b/app/miniprogram_npm/tdesign-miniprogram/col/col.d.ts new file mode 100644 index 0000000..ecebf64 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.d.ts @@ -0,0 +1,10 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Col extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdColProps; + data: { + prefix: string; + classPrefix: string; + }; + relations: RelationsOptions; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.js b/app/miniprogram_npm/tdesign-miniprogram/col/col.js new file mode 100644 index 0000000..0c5f5d5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-col`;let Col=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=props,this.data={prefix:prefix,classPrefix:name},this.relations={"../row/row":{type:"parent"}}}};Col=__decorate([wxComponent()],Col);export default Col; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.json b/app/miniprogram_npm/tdesign-miniprogram/col/col.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.wxml b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxml new file mode 100644 index 0000000..a095548 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.wxs b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxs new file mode 100644 index 0000000..1822c0b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxs @@ -0,0 +1,17 @@ +var utils = require('../common/utils.wxs'); + +function getColStyles(gutter, style, customStyle) { + var _style = ''; + if (gutter) { + _style = utils._style({ + 'padding-right': utils.addUnit(gutter / 2), + 'padding-left': utils.addUnit(gutter / 2), + }); + } + + return utils._style([style, customStyle]) + _style; +} + +module.exports = { + getColStyles: getColStyles, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/col.wxss b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxss new file mode 100644 index 0000000..d0374a4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/col.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-col{display:block;box-sizing:border-box;min-height:1px}.t-col--1{width:4.16666667%}.t-col--offset-1{margin-left:4.16666667%}.t-col--2{width:8.33333333%}.t-col--offset-2{margin-left:8.33333333%}.t-col--3{width:12.5%}.t-col--offset-3{margin-left:12.5%}.t-col--4{width:16.66666667%}.t-col--offset-4{margin-left:16.66666667%}.t-col--5{width:20.83333333%}.t-col--offset-5{margin-left:20.83333333%}.t-col--6{width:25%}.t-col--offset-6{margin-left:25%}.t-col--7{width:29.16666667%}.t-col--offset-7{margin-left:29.16666667%}.t-col--8{width:33.33333333%}.t-col--offset-8{margin-left:33.33333333%}.t-col--9{width:37.5%}.t-col--offset-9{margin-left:37.5%}.t-col--10{width:41.66666667%}.t-col--offset-10{margin-left:41.66666667%}.t-col--11{width:45.83333333%}.t-col--offset-11{margin-left:45.83333333%}.t-col--12{width:50%}.t-col--offset-12{margin-left:50%}.t-col--13{width:54.16666667%}.t-col--offset-13{margin-left:54.16666667%}.t-col--14{width:58.33333333%}.t-col--offset-14{margin-left:58.33333333%}.t-col--15{width:62.5%}.t-col--offset-15{margin-left:62.5%}.t-col--16{width:66.66666667%}.t-col--offset-16{margin-left:66.66666667%}.t-col--17{width:70.83333333%}.t-col--offset-17{margin-left:70.83333333%}.t-col--18{width:75%}.t-col--offset-18{margin-left:75%}.t-col--19{width:79.16666667%}.t-col--offset-19{margin-left:79.16666667%}.t-col--20{width:83.33333333%}.t-col--offset-20{margin-left:83.33333333%}.t-col--21{width:87.5%}.t-col--offset-21{margin-left:87.5%}.t-col--22{width:91.66666667%}.t-col--offset-22{margin-left:91.66666667%}.t-col--23{width:95.83333333%}.t-col--offset-23{margin-left:95.83333333%}.t-col--24{width:100%}.t-col--offset-24{margin-left:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/props.js b/app/miniprogram_npm/tdesign-miniprogram/col/props.js new file mode 100644 index 0000000..c12761e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/props.js @@ -0,0 +1 @@ +const props={offset:{type:null},span:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/col/type.js b/app/miniprogram_npm/tdesign-miniprogram/col/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/col/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.d.ts b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.d.ts new file mode 100644 index 0000000..4ae0ff4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.d.ts @@ -0,0 +1,28 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +import type { TdCollapsePanelProps } from './type'; +export interface CollapsePanelProps extends TdCollapsePanelProps { +} +export default class CollapsePanel extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + relations: RelationsOptions; + properties: TdCollapsePanelProps; + data: { + prefix: string; + expanded: boolean; + classPrefix: string; + classBasePrefix: string; + ultimateExpandIcon: boolean; + ultimateDisabled: boolean; + }; + observers: { + disabled(v: any): void; + }; + methods: { + updateExpanded(activeValues?: any[]): void; + updateStyle(expanded: boolean): Promise; + onClick(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.js b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.js new file mode 100644 index 0000000..d106071 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-collapse-panel`;let CollapsePanel=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-header`],this.options={multipleSlots:!0},this.relations={"../collapse/collapse":{type:"ancestor",linked(e){const{value:t,expandIcon:a,disabled:s}=e.properties;this.setData({ultimateExpandIcon:null==this.properties.expandIcon?a:this.properties.expandIcon,ultimateDisabled:null==this.properties.disabled?s:this.properties.disabled}),this.updateExpanded(t)}}},this.properties=props,this.data={prefix:prefix,expanded:!1,classPrefix:name,classBasePrefix:prefix,ultimateExpandIcon:!1,ultimateDisabled:!1},this.observers={disabled(e){this.setData({ultimateDisabled:!!e})}},this.methods={updateExpanded(e=[]){if(!this.$parent)return;const{value:t}=this.properties,{defaultExpandAll:a}=this.$parent.data,s=a?!this.data.expanded:e.includes(t);s!==this.properties.expanded&&(this.setData({expanded:s}),this.updateStyle(s))},updateStyle(e){return getRect(this,`.${name}__content`).then((e=>e.height)).then((t=>{const a=wx.createAnimation({duration:0,timingFunction:"ease-in-out"});e?a.height(t).top(0).step({duration:300}).height("auto").step():a.height(t).top(1).step({duration:1}).height(0).step({duration:300}),this.setData({animation:a.export()})}))},onClick(){const{ultimateDisabled:e}=this.data,{value:t}=this.properties;e||(this.$parent.data.defaultExpandAll?this.updateExpanded():this.$parent.switch(t))}}}};CollapsePanel=__decorate([wxComponent()],CollapsePanel);export default CollapsePanel; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.json b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.json new file mode 100644 index 0000000..e599fc8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-cell":"../cell/cell"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxml b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxml new file mode 100644 index 0000000..b9b5334 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxml @@ -0,0 +1 @@ +{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxss b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxss new file mode 100644 index 0000000..ec504b2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/collapse-panel.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-collapse-panel{background-color:var(--td-collapse-panel-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-collapse-panel--disabled{pointer-events:none}.t-collapse-panel--disabled .t-collapse-panel__content,.t-collapse-panel--disabled .t-collapse-panel__header{opacity:.3}.t-collapse-panel--top{display:flex;flex-direction:column-reverse}.t-collapse-panel__header{position:relative;display:flex;justify-content:space-between;align-items:center;padding-left:var(--td-collapse-horizontal-padding,32rpx);height:var(--td-collapse-header-height,auto);color:var(--td-collapse-header-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-collapse-panel__header--top{position:relative}.t-collapse-panel__header--top::after{content:'';display:block;position:absolute;top:0;bottom:unset;left:unset;right:unset;background-color:var(--td-collapse-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-collapse-panel__header--top::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-collapse-panel__header--bottom{position:relative}.t-collapse-panel__header--bottom::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-collapse-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-collapse-panel__header--bottom::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-collapse-panel__header::after{left:32rpx}.t-collapse-panel__header-right{display:inline-flex;align-items:center;height:100%}.t-collapse-panel__header-icon{height:100%;padding-left:8px;width:44px;padding-right:8px;color:var(--td-collapse-icon-color,var(--td-font-gray-3,rgba(0,0,0,.4)))}.t-collapse-panel__extra{font-size:var(--td-collapse-extra-font-size,var(--td-font-size-m,32rpx))}.t-collapse-panel__body{position:relative}.t-collapse-panel__body::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-collapse-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-collapse-panel__body::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-collapse-panel__wrapper{height:0;overflow:hidden}.t-collapse-panel__content{color:var(--td-collapse-content-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-collapse-content-font-size,var(--td-font-size-base,28rpx));padding:var(--td-collapse-content-padding,32rpx);line-height:var(--td-collapse-content-line-height,1.5)}.t-collapse-panel__content--disabled{color:var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26)))}.t-collapse-panel__content--expanded.t-collapse-panel__content--bottom{position:relative}.t-collapse-panel__content--expanded.t-collapse-panel__content--bottom::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-collapse-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-collapse-panel__content--expanded.t-collapse-panel__content--bottom::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-collapse-panel__content--expanded.t-collapse-panel__content--top{position:relative}.t-collapse-panel__content--expanded.t-collapse-panel__content--top::after{content:'';display:block;position:absolute;top:0;bottom:unset;left:unset;right:unset;background-color:var(--td-collapse-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-collapse-panel__content--expanded.t-collapse-panel__content--top::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-collapse-panel__arrow--top{transform:rotate(180deg)}.class-title{font-size:var(--td-collapse-title-font-size,var(--td-font-size-m,32rpx))}.class-title--disabled{color:var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26)))}.class-note--disabled{color:var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26)))}.class-right-icon--disabled{color:var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/props.js b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/props.js new file mode 100644 index 0000000..028b453 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/props.js @@ -0,0 +1 @@ +const props={content:{type:String},disabled:{type:null,value:void 0},expandIcon:{type:null,value:void 0},externalClasses:{type:Array},header:{type:String},headerLeftIcon:{type:String},headerRightContent:{type:String},placement:{type:String,value:"bottom"},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/type.js b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse-panel/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.d.ts b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.d.ts new file mode 100644 index 0000000..9fcf0ce --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.d.ts @@ -0,0 +1,24 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +import type { CollapseValue, TdCollapseProps } from './type'; +export interface CollapseProps extends TdCollapseProps { +} +export default class Collapse extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + controlledProps: { + key: string; + event: string; + }[]; + properties: TdCollapseProps; + data: { + prefix: string; + classPrefix: string; + }; + observers: { + 'value, expandMutex '(): void; + }; + methods: { + updateExpanded(): void; + switch(panelValue: CollapseValue): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.js b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.js new file mode 100644 index 0000000..b140f52 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-collapse`;let Collapse=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.relations={"../collapse-panel/collapse-panel":{type:"descendant"}},this.controlledProps=[{key:"value",event:"change"}],this.properties=props,this.data={prefix:prefix,classPrefix:name},this.observers={"value, expandMutex "(){this.updateExpanded()}},this.methods={updateExpanded(){this.$children.forEach((e=>{e.updateExpanded(this.properties.value)}))},switch(e){const{expandMutex:t,value:o}=this.properties;let p=[];p=o.indexOf(e)>-1?o.filter((t=>t!==e)):t?[e]:o.concat(e),this._trigger("change",{value:p})}}}};Collapse=__decorate([wxComponent()],Collapse);export default Collapse; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.json b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxml b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxml new file mode 100644 index 0000000..93bde30 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxss b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxss new file mode 100644 index 0000000..24dc13c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/collapse.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-collapse--card{margin:0 32rpx;border-radius:var(--td-radius-large,18rpx);overflow:hidden} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/collapse/index.d.ts new file mode 100644 index 0000000..69a68c1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/index.d.ts @@ -0,0 +1,4 @@ +export { default as Collapse } from './collapse'; +export * from './type'; +export * from './props'; +export { CollapseProps } from './collapse'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/index.js b/app/miniprogram_npm/tdesign-miniprogram/collapse/index.js new file mode 100644 index 0000000..67a070a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/index.js @@ -0,0 +1 @@ +export{default as Collapse}from"./collapse";export*from"./type";export*from"./props"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/props.js b/app/miniprogram_npm/tdesign-miniprogram/collapse/props.js new file mode 100644 index 0000000..0eb56f5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/props.js @@ -0,0 +1 @@ +const props={defaultExpandAll:{type:Boolean,value:!1},disabled:{type:Boolean},expandIcon:{type:Boolean,value:!0},expandMutex:{type:Boolean,value:!1},theme:{type:String,value:"default"},value:{type:Array,value:null},defaultValue:{type:Array,value:[]}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/collapse/type.js b/app/miniprogram_npm/tdesign-miniprogram/collapse/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/collapse/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.d.ts b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.d.ts new file mode 100644 index 0000000..751ec5b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.d.ts @@ -0,0 +1,104 @@ +import { SuperComponent } from '../common/src/index'; +import type { Coordinate } from './interfaces'; +import { Color } from './utils'; +export default class ColorPicker extends SuperComponent { + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdColorPickerProps; + observers: { + format(): void; + swatchColors(value: any): void; + type(value: any): void; + 'usePopup, visible'(usePopup: boolean, visible: boolean): void; + value(v: string): void; + }; + color: Color; + data: { + prefix: string; + classPrefix: string; + panelRect: { + width: number; + height: number; + }; + sliderRect: { + width: number; + left: number; + }; + saturationInfo: { + saturation: number; + value: number; + }; + saturationThumbStyle: { + left: number; + top: number; + }; + sliderInfo: { + value: number; + }; + hueSliderStyle: { + left: number; + }; + alphaSliderStyle: { + left: number; + }; + innerValue: string; + showPrimaryColorPreview: boolean; + previewColor: string; + formatList: any[]; + innerSwatchList: any; + isMultiple: boolean; + defaultOverlayProps: {}; + }; + lifetimes: { + ready(): void; + attached(): void; + detached(): void; + }; + methods: { + init(): void; + updateEleRect(e: WechatMiniprogram.TouchEvent): void; + getEleReact(): void; + clickSwatch(e: any): void; + setCoreStyle(): void; + emitColorChange(trigger: any): void; + defaultEmptyColor(): string; + updateColor(): void; + getSaturationAndValueByCoordinate(coordinate: Coordinate): { + saturation: number; + value: number; + }; + getSaturationThumbStyle({ saturation, value }: { + saturation: any; + value: any; + }): { + color: any; + left: string; + top: string; + }; + getSliderThumbStyle({ value, maxValue }: { + value: any; + maxValue: any; + }): { + left: string; + color: any; + }; + onChangeSaturation({ saturation, value }: { + saturation: any; + value: any; + }): void; + formatValue(): any; + onChangeSlider({ value, isAlpha }: { + value: any; + isAlpha: any; + }): void; + handleSaturationDrag(e: any): void; + handleSliderDrag(e: any, isAlpha?: boolean): void; + handleDiffDrag(e: any): void; + onTouchStart(e: any): void; + onTouchMove(e: any): void; + onTouchEnd(e: any): void; + close(trigger: string): void; + onVisibleChange(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.js new file mode 100644 index 0000000..8cd8529 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{SATURATION_PANEL_DEFAULT_HEIGHT,SATURATION_PANEL_DEFAULT_WIDTH,SLIDER_DEFAULT_WIDTH,DEFAULT_COLOR,ALPHA_MAX,HUE_MAX,DEFAULT_SYSTEM_SWATCH_COLORS}from"./constants";import{getRect,debounce}from"../common/utils";import{Color,getColorObject}from"./utils";const{prefix:prefix}=config,name=`${prefix}-color-picker`,getCoordinate=(t,e,a)=>{var o;const{pageX:i,pageY:r,clientY:l}=t.changedTouches[0]||{},s=a?e.top:null===(o=t.currentTarget)||void 0===o?void 0:o.offsetTop;return{x:Math.min(Math.max(0,i-e.left),e.width),y:Math.min(Math.max(0,(a?l:r)-s),e.height)}},getFormatList=(t,e)=>{const a={HSV:Object.values(e.getHsva()),HSVA:Object.values(e.getHsva()),HSL:Object.values(e.getHsla()),HSLA:Object.values(e.getHsla()),HSB:Object.values(e.getHsla()),RGB:Object.values(e.getRgba()),RGBA:Object.values(e.getRgba()),CMYK:[...Object.values(e.getCmyk()),0],CSS:[e.css,0],HEX:[e.hex,0]},o=a[t];return o?[...o.slice(0,o.length-1),`${Math.round(100*e.alpha)}%`]:a.RGB},genSwatchList=t=>void 0===t?DEFAULT_SYSTEM_SWATCH_COLORS:t&&t.length?t:[];let ColorPicker=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.properties=props,this.observers={format(){this.setCoreStyle()},swatchColors(t){this.setData({innerSwatchList:genSwatchList(t)})},type(t){this.setData({isMultiple:"multiple"===t})},"usePopup, visible"(t,e){this.timer&&clearTimeout(this.timer),t&&e&&(this.timer=setTimeout((()=>{this.getEleReact()}),350))},value(t){t&&this.init()}},this.color=new Color(props.defaultValue.value||props.value.value||DEFAULT_COLOR),this.data={prefix:prefix,classPrefix:name,panelRect:{width:SATURATION_PANEL_DEFAULT_WIDTH,height:SATURATION_PANEL_DEFAULT_HEIGHT},sliderRect:{width:SLIDER_DEFAULT_WIDTH,left:0},saturationInfo:{saturation:0,value:0},saturationThumbStyle:{left:0,top:0},sliderInfo:{value:0},hueSliderStyle:{left:0},alphaSliderStyle:{left:0},innerValue:props.defaultValue.value||props.value.value,showPrimaryColorPreview:!1,previewColor:props.defaultValue.value||props.value.value,formatList:getFormatList(props.format.value,this.color),innerSwatchList:genSwatchList(props.swatchColors.value),isMultiple:"multiple"===props.type.value,defaultOverlayProps:{}},this.lifetimes={ready(){this.init()},attached(){this.debouncedUpdateEleRect=debounce((t=>this.updateEleRect(t)),150)},detached(){clearTimeout(this.timer)}},this.methods={init(){const{value:t,defaultValue:e}=this.properties,a=t||e;a&&this.setData({innerValue:a}),this.color=new Color(a||DEFAULT_COLOR),this.updateColor(),this.getEleReact()},updateEleRect(t){if(!t)return;const{scrollTop:e}=t.detail,{width:a,height:o,left:i,initTop:r}=this.data.panelRect;this.setData({panelRect:{width:a,height:o,left:i,top:r-e,initTop:r}})},getEleReact(){Promise.all([getRect(this,`.${name}__saturation`),getRect(this,`.${name}__slider`)]).then((([t,e])=>{this.setData({panelRect:{width:t.width||SATURATION_PANEL_DEFAULT_WIDTH,height:t.height||SATURATION_PANEL_DEFAULT_HEIGHT,left:t.left||0,top:t.top||0,initTop:t.top||0},sliderRect:{left:e.left||0,width:e.width||SLIDER_DEFAULT_WIDTH}},(()=>{this.setCoreStyle()}))}))},clickSwatch(t){const e=t.currentTarget.dataset.value;this.color.update(e),this.emitColorChange("preset"),this.setCoreStyle()},setCoreStyle(){this.setData({sliderInfo:{value:this.color.hue},hueSliderStyle:this.getSliderThumbStyle({value:this.color.hue,maxValue:HUE_MAX}),alphaSliderStyle:this.getSliderThumbStyle({value:100*this.color.alpha,maxValue:ALPHA_MAX}),saturationInfo:{saturation:this.color.saturation,value:this.color.value},saturationThumbStyle:this.getSaturationThumbStyle({saturation:this.color.saturation,value:this.color.value}),previewColor:this.color.rgba,formatList:getFormatList(this.properties.format,this.color)})},emitColorChange(t){this.setData({innerValue:this.formatValue()}),this.triggerEvent("change",{value:this.formatValue(),context:{trigger:t,color:getColorObject(this.color)}})},defaultEmptyColor:()=>DEFAULT_COLOR,updateColor(){const t=this.data.innerValue||this.defaultEmptyColor();this.color.update(t)},getSaturationAndValueByCoordinate(t){const{width:e,height:a}=this.data.panelRect,{x:o,y:i}=t;let r=o/e,l=1-i/a;return r=Math.min(1,Math.max(0,r)),l=Math.min(1,Math.max(0,l)),{saturation:r,value:l}},getSaturationThumbStyle({saturation:t,value:e}){const{width:a,height:o}=this.data.panelRect,i=Math.round((1-e)*o),r=Math.round(t*a);return{color:this.color.rgb,left:`${r}px`,top:`${i}px`}},getSliderThumbStyle({value:t,maxValue:e}){const{width:a}=this.data.sliderRect;if(!a)return;return{left:`${Math.round(t/e*100)}%`,color:this.color.rgb}},onChangeSaturation({saturation:t,value:e}){const{saturation:a,value:o}=this.color;let i="palette-saturation-brightness";if(e!==o&&t!==a)this.color.saturation=t,this.color.value=e,i="palette-saturation-brightness";else if(t!==a)this.color.saturation=t,i="palette-saturation";else{if(e===o)return;this.color.value=e,i="palette-brightness"}this.triggerEvent("palette-bar-change",{color:getColorObject(this.color)}),this.emitColorChange(i),this.setCoreStyle()},formatValue(){return this.color.getFormatsColorMap()[this.properties.format]||this.color.css},onChangeSlider({value:t,isAlpha:e}){e?this.color.alpha=t/100:this.color.hue=t,this.emitColorChange(e?"palette-alpha-bar":"palette-hue-bar"),this.setCoreStyle()},handleSaturationDrag(t){const{usePopup:e,fixed:a}=this.properties,o=getCoordinate(t,this.data.panelRect,e||a),{saturation:i,value:r}=this.getSaturationAndValueByCoordinate(o);this.onChangeSaturation({saturation:i,value:r})},handleSliderDrag(t,e=!1){const{width:a}=this.data.sliderRect,o=getCoordinate(t,this.data.sliderRect),{x:i}=o,r=e?ALPHA_MAX:HUE_MAX;let l=Math.round(i/a*r*100)/100;l<0&&(l=0),l>r&&(l=r),this.onChangeSlider({value:l,isAlpha:e})},handleDiffDrag(t){switch(t.target.dataset.type||t.currentTarget.dataset.type){case"saturation":this.handleSaturationDrag(t);break;case"hue-slider":this.handleSliderDrag(t);break;case"alpha-slider":this.handleSliderDrag(t,!0)}},onTouchStart(t){this.handleDiffDrag(t)},onTouchMove(t){this.handleDiffDrag(t)},onTouchEnd(t){wx.nextTick((()=>{this.handleDiffDrag(t)}))},close(t){this.properties.autoClose&&this.setData({visible:!1}),this.triggerEvent("close",{trigger:t})},onVisibleChange(){this.close("overlay")}}}};ColorPicker=__decorate([wxComponent()],ColorPicker);export default ColorPicker; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.json b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.json new file mode 100644 index 0000000..4139673 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.json @@ -0,0 +1 @@ +{"component":true,"usingComponents":{"t-popup":"../popup/popup"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxml b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxml new file mode 100644 index 0000000..b064e62 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxss b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxss new file mode 100644 index 0000000..7a77351 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/color-picker.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-color-picker__panel{padding:0;width:var(--td-color-picker-panel-width,750rpx);background:var(--td-color-picker-background,#fff);border-top-left-radius:var(--td-color-picker-panel-radius,24rpx);border-top-right-radius:var(--td-color-picker-panel-radius,24rpx);user-select:none}.t-color-picker__body{padding:var(--td-color-picker-panel-padding,32rpx);padding-bottom:56rpx}.t-color-picker__thumb{position:absolute;z-index:1;outline:0;width:var(--td-color-picker-slider-thumb-size,48rpx);height:var(--td-color-picker-slider-thumb-size,48rpx);border-radius:var(--td-color-picker-border-radius-circle,50%);box-shadow:var(--td-shadow-1,0 1px 10px rgba(0,0,0,.05),0 4px 5px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.12));color:var(--td-text-color-brand,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));box-sizing:border-box}.t-color-picker__thumb::after,.t-color-picker__thumb::before{content:'';position:absolute;border-radius:var(--td-color-picker-border-radius-circle,50%);box-sizing:border-box;display:block;border:1px solid #dcdcdc}.t-color-picker__thumb::before{left:0;top:0;width:100%;height:100%;background-color:#fff}.t-color-picker__thumb::after{left:3px;top:3px;width:calc(100% - 6px);height:calc(100% - 6px);padding:var(--td-color-picker-slider-thumb-padding,6rpx);background:currentcolor}.t-color-picker__saturation{height:var(--td-color-picker-saturation-height,288rpx);border-radius:var(--td-color-picker-saturation-radius,12rpx);position:relative;overflow:hidden;background:0 0}.t-color-picker__saturation::after,.t-color-picker__saturation::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%}.t-color-picker__saturation::before{background:linear-gradient(90deg,#fff,transparent)}.t-color-picker__saturation::after{background:linear-gradient(0deg,#000,transparent)}.t-color-picker__saturation .t-color-picker__thumb{width:var(--td-color-picker-saturation-thumb-size,48rpx);height:var(--td-color-picker-saturation-thumb-size,48rpx);border-radius:var(--td-color-picker-border-radius-circle,50%);transform:translate(-50%,-50%)}.t-color-picker__slider-wrapper{border-radius:calc(var(--td-color-picker-slider-height,16rpx)/ 2);padding:var(--td-color-picker-slider-wrapper-padding,0 18rpx);position:relative}.t-color-picker__slider-wrapper--hue-type{background:linear-gradient(90deg,red,#ff0 17%,#0f0 33%,#0ff 50%,#00f 67%,#f0f 83%,red);margin:16rpx 0}.t-color-picker__slider-wrapper--alpha-type{background:var(--td-text-color-anti,var(--td-font-white-1,#fff));margin:40rpx 0 16rpx 0;background-image:linear-gradient(45deg,#c5c5c5 25%,transparent 0,transparent 75%,#c5c5c5 0,#c5c5c5),linear-gradient(45deg,#c5c5c5 25%,transparent 0,transparent 75%,#c5c5c5 0,#c5c5c5);background-size:6px 6px;background-position:0 0,3px 3px}.t-color-picker__slider-wrapper--alpha-type .t-color-picker__rail{background:linear-gradient(to right,transparent,currentcolor)}.t-color-picker__slider-padding{position:absolute;left:0;top:0;width:100%;height:var(--td-color-picker-slider-height,16rpx);border-radius:calc(var(--td-color-picker-slider-height,16rpx)/ 2)}.t-color-picker__slider{height:var(--td-color-picker-slider-height,16rpx);position:relative;border-radius:calc(var(--td-color-picker-slider-height,16rpx)/ 2);color:transparent;outline:0;z-index:1}.t-color-picker__slider .t-color-picker__thumb{transform:translate(var(--td-color-picker-slider-thumb-transform-x,-18rpx),-50%);top:50%}.t-color-picker__slider .t-color-picker__rail{position:absolute;top:0;left:0;width:100%;height:100%;overflow:hidden;border-radius:inherit}.t-color-picker__sliders-wrapper{display:flex;align-items:center;margin:32rpx 0 40rpx}.t-color-picker__sliders{width:100%}.t-color-picker__sliders-preview{flex-shrink:0;margin-left:var(--td-color-picker-margin,24rpx);width:var(--td-color-picker-gradient-preview-width,56rpx);height:var(--td-color-picker-gradient-preview-height,56rpx);border-radius:var(--td-color-picker-gradient-preview-radius,6rpx);overflow:hidden;background:var(--td-text-color-anti,var(--td-font-white-1,#fff));background-image:linear-gradient(45deg,#c5c5c5 25%,transparent 0,transparent 75%,#c5c5c5 0,#c5c5c5),linear-gradient(45deg,#c5c5c5 25%,transparent 0,transparent 75%,#c5c5c5 0,#c5c5c5);background-size:6px 6px;background-position:0 0,3px 3px}.t-color-picker__sliders-preview-inner{display:block;width:100%;height:100%}.t-color-picker__format{display:flex;align-items:center;justify-content:space-between;color:rgba(0,0,0,.4);font-size:28rpx;text-align:center;line-height:56rpx;height:56rpx;margin-top:40rpx}.t-color-picker__format-item{background:var(--td-color-picker-format-background-color,var(--td-gray-color-1,#f3f3f3))}.t-color-picker__format-item--first{flex-shrink:0;width:136rpx;border:1px solid #dcdcdc;border-radius:12rpx;margin-right:24rpx}.t-color-picker__format-item--second{flex:1}.t-color-picker__format-inputs{display:flex;align-items:center;justify-content:space-around}.t-color-picker__format-input{flex:1;width:0;margin-left:-1px;border:1px solid #dcdcdc;border-radius:12rpx}.t-color-picker__format-input:not(:first-child):not(:last-child){border-radius:0}.t-color-picker__format-input:first-child:not(:last-child){border-top-right-radius:0;border-bottom-right-radius:0}.t-color-picker__format-input:last-child:not(:first-child){border-top-left-radius:0;border-bottom-left-radius:0}.t-color-picker__format-input--fixed{flex-shrink:0;flex-grow:0;flex-basis:133rpx}.t-color-picker__swatches-wrap{margin-top:56rpx;position:relative}.t-color-picker__swatches+.t-color-picker__swatches{margin-top:var(--td-color-picker-margin,24rpx)}.t-color-picker__swatches-title{font:var(--td-color-picker-swatches-title-font,32rpx);padding:0;color:rgba(0,0,0,.9);display:flex;align-items:center;justify-content:space-between;height:48rpx;line-height:48rpx}.t-color-picker__swatches-items{margin-top:24rpx;width:100%;list-style:none;display:flex;overflow-x:auto;overflow-y:auto}.t-color-picker__swatches-items::-webkit-scrollbar{display:none;width:0;height:0;color:transparent}.t-color-picker__swatches-item{width:var(--td-color-picker-swatch-width,48rpx);height:var(--td-color-picker-swatch-height,48rpx);border-radius:6rpx;padding:var(--td-color-picker-swatch-padding,0);overflow:hidden;display:flex;align-items:center;justify-content:center;position:relative;transform-origin:center;transition:all var(--td-anim-duration-base,.2s) var(--td-anim-time-fn-easing,cubic-bezier(.38,0,.24,1));box-sizing:border-box;flex-shrink:0;margin-right:24rpx;border-radius:var(--td-color-picker-swatch-border-radius,6rpx)}.t-color-picker__swatches-item::after{content:'';width:100%;height:100%;position:absolute;left:0;top:0;opacity:0;background:rgba(0,0,0,.2)}.t-color-picker__swatches-item:active::after{opacity:1}.t-color-picker__swatches-inner{width:100%;height:100%;display:block;border-radius:var(--td-color-picker-swatch-border-radius,6rpx);position:relative} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.d.ts b/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.d.ts new file mode 100644 index 0000000..95998fb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.d.ts @@ -0,0 +1,7 @@ +export declare const DEFAULT_COLOR = "#001F97"; +export declare const DEFAULT_SYSTEM_SWATCH_COLORS: string[]; +export declare const SATURATION_PANEL_DEFAULT_WIDTH = 343; +export declare const SATURATION_PANEL_DEFAULT_HEIGHT = 144; +export declare const SLIDER_DEFAULT_WIDTH = 303; +export declare const HUE_MAX = 360; +export declare const ALPHA_MAX = 100; diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.js new file mode 100644 index 0000000..ee1c4b2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/constants.js @@ -0,0 +1 @@ +export const DEFAULT_COLOR="#001F97";export const DEFAULT_SYSTEM_SWATCH_COLORS=["#F2F3FF","#D9E1FF","#B5C7FF","#8EABFF","#618DFF","#366EF4","#0052D9","#003CAB","#002A7C","#001A57"];export const SATURATION_PANEL_DEFAULT_WIDTH=343;export const SATURATION_PANEL_DEFAULT_HEIGHT=144;export const SLIDER_DEFAULT_WIDTH=303;export const HUE_MAX=360;export const ALPHA_MAX=100; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.d.ts b/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.d.ts new file mode 100644 index 0000000..df8e678 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.d.ts @@ -0,0 +1,5 @@ +export interface Coordinate { + x: number; + y: number; +} +export declare type ColorPickerChangeTrigger = 'palette-saturation-brightness' | 'palette-saturation' | 'palette-brightness' | 'palette-hue-bar' | 'palette-alpha-bar' | 'preset'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/interfaces.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/props.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/props.js new file mode 100644 index 0000000..fb8fa6e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/props.js @@ -0,0 +1 @@ +const props={autoClose:{type:Boolean,value:!0},enableAlpha:{type:Boolean,value:!1},fixed:{type:Boolean,value:!1},format:{type:String,value:"RGB"},popupProps:{type:Object,value:{}},swatchColors:{type:Array},type:{type:String,value:"base"},usePopup:{type:Boolean,value:!1},value:{type:String,value:null},defaultValue:{type:String,value:""},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/template.wxml b/app/miniprogram_npm/tdesign-miniprogram/color-picker/template.wxml new file mode 100644 index 0000000..00f1f0e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/template.wxml @@ -0,0 +1 @@ +{{format}}{{item}}系统预设色彩 \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/type.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.d.ts b/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.d.ts new file mode 100644 index 0000000..c985ed7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.d.ts @@ -0,0 +1 @@ +export * from '../common/shared/color-picker/index'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.js b/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.js new file mode 100644 index 0000000..4bdc293 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/color-picker/utils.js @@ -0,0 +1 @@ +export*from"../common/shared/color-picker/index"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/bus.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/bus.d.ts new file mode 100644 index 0000000..fddbb54 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/bus.d.ts @@ -0,0 +1,7 @@ +export default class Bus { + listeners: Map; + emitted: Set; + constructor(); + on(evtName: string, listener: any): void; + emit(evtName: string): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/bus.js b/app/miniprogram_npm/tdesign-miniprogram/common/bus.js new file mode 100644 index 0000000..9cd79ab --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/bus.js @@ -0,0 +1 @@ +export default class Bus{constructor(){this.listeners=new Map,this.emitted=new Set}on(t,e){if(this.emitted.has(t))return void e();const s=this.listeners.get(t)||[];s.push(e),this.listeners.set(t,s)}emit(t){const e=this.listeners.get(t);e&&e.forEach((t=>t())),this.emitted.add(t)}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/common.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/common.d.ts new file mode 100644 index 0000000..12f8f81 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/common.d.ts @@ -0,0 +1,56 @@ +export declare type Classes = Array; +export interface Styles { + [css: string]: string | number; +} +export declare type ImageEvent = any; +export declare type PlainObject = { + [key: string]: any; +}; +export declare type OptionData = { + label?: string; + value?: string | number; +} & PlainObject; +export declare type TreeOptionData = { + children?: Array> | boolean; + label?: string; + text?: string; + value?: T; + content?: string; +} & PlainObject; +export declare type SizeEnum = 'small' | 'medium' | 'large'; +export declare type ShapeEnum = 'circle' | 'round'; +export declare type HorizontalAlignEnum = 'left' | 'center' | 'right'; +export declare type VerticalAlignEnum = 'top' | 'middle' | 'bottom'; +export declare type LayoutEnum = 'vertical' | 'horizontal'; +export declare type ClassName = { + [className: string]: any; +} | ClassName[] | string; +export declare type CSSSelector = string; +export interface KeysType { + value?: string; + label?: string; + disabled?: string; +} +export interface TreeKeysType extends KeysType { + children?: string; +} +export interface HTMLElementAttributes { + [attribute: string]: string; +} +export interface TScroll { + bufferSize?: number; + isFixedRowHeight?: boolean; + rowHeight?: number; + threshold?: number; + type: 'lazy' | 'virtual'; +} +export declare type InfinityScroll = TScroll; +export interface ScrollToElementParams { + index?: number; + top?: number; + time?: number; + behavior?: 'auto' | 'smooth'; +} +export interface ComponentScrollToElementParams extends ScrollToElementParams { + key?: string | number; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/common.js b/app/miniprogram_npm/tdesign-miniprogram/common/common.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/common.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/component.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/component.d.ts new file mode 100644 index 0000000..a8d86ae --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/component.d.ts @@ -0,0 +1,3 @@ +/// +declare const TComponent: typeof Component; +export default TComponent; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/component.js b/app/miniprogram_npm/tdesign-miniprogram/common/component.js new file mode 100644 index 0000000..980c886 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/component.js @@ -0,0 +1 @@ +const TComponent=o=>(o.options=Object.assign({multipleSlots:!0,addGlobalClass:!0},o.options),Component(o));export default TComponent; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/config.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/config.d.ts new file mode 100644 index 0000000..68879b4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/config.d.ts @@ -0,0 +1,5 @@ +declare const _default: { + prefix: string; +}; +export default _default; +export declare const prefix = "t"; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/config.js b/app/miniprogram_npm/tdesign-miniprogram/common/config.js new file mode 100644 index 0000000..b655b28 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/config.js @@ -0,0 +1 @@ +export default{prefix:"t"};export const prefix="t"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.d.ts new file mode 100644 index 0000000..d9336de --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.d.ts @@ -0,0 +1,19 @@ +import type { TDate, TCalendarType, TCalendarValue } from './type'; +export default class TCalendar { + firstDayOfWeek: number; + value: TCalendarValue | TCalendarValue[]; + type: TCalendarType; + minDate: Date; + maxDate: Date; + format: (day: TDate) => TDate; + constructor(options?: {}); + getTrimValue(): Date | Date[]; + getDays(weekdays: string[]): any[]; + getMonths(): any[]; + select({ cellType, year, month, date }: { + cellType: any; + year: any; + month: any; + date: any; + }): Date | TCalendarValue[]; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.js new file mode 100644 index 0000000..a9caa03 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/index.js @@ -0,0 +1 @@ +import{getDateRect,isSameDate,getMonthDateRect,isValidDate,getDate}from"../date";export default class TCalendar{constructor(e={}){this.type="single",Object.assign(this,e),this.minDate||(this.minDate=getDate()),this.maxDate||(this.maxDate=getDate(6))}getTrimValue(){const{value:e,type:t}=this,a=e=>e instanceof Date?e:"number"==typeof e?new Date(e):new Date;if("single"===t&&isValidDate(e))return a(e);if("multiple"===t||"range"===t){if(Array.isArray(e)){return e.every((e=>isValidDate(e)))?e.map((e=>a(e))):[]}return[]}}getDays(e){const t=[];let a=this.firstDayOfWeek%7;for(;t.length<7;)t.push(e[a]),a=(a+1)%7;return t}getMonths(){const e=[],t=this.getTrimValue(),{minDate:a,maxDate:i,type:r,format:s}=this,n=getDateRect(a);let{year:m,month:l}=n;const{time:o}=n,{year:D,month:h,time:u}=getDateRect(i),y=(e,a,i)=>{const s=new Date(e,a,i,23,59,59);if("single"===r&&t&&isSameDate({year:e,month:a,date:i},t))return"selected";if("multiple"===r&&t){if(t.some((t=>isSameDate({year:e,month:a,date:i},t))))return"selected"}if("range"===r&&t&&Array.isArray(t)){const[r,n]=t;if(r&&isSameDate({year:e,month:a,date:i},r))return"start";if(n&&isSameDate({year:e,month:a,date:i},n))return"end";if(r&&n&&s.getTime()>r.getTime()&&s.getTime()u?"disabled":""};for(;mt.lastDate);e+=1){const t={date:new Date(m,l,e),day:e,type:y(m,l,e)};a.push(s?s(t):t)}e.push({year:m,month:l,months:a,weekdayOfFirstDay:t.weekdayOfFirstDay});const i=getDateRect(new Date(m,l+1,1));m=i.year,l=i.month}return e}select({cellType:e,year:t,month:a,date:i}){const{type:r}=this,s=this.getTrimValue();if("disabled"===e)return;const n=new Date(t,a,i);if(this.value=n,"range"===r&&Array.isArray(s))1===s.length&&n>s[0]?this.value=[s[0],n]:this.value=[n];else if("multiple"===r&&Array.isArray(s)){const e=[...s],t=s.findIndex((e=>isSameDate(e,n)));t>-1?e.splice(t,1):e.push(n),this.value=e}return this.value}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/type.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/calendar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.d.ts new file mode 100644 index 0000000..d0e92a8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.d.ts @@ -0,0 +1,7 @@ +export declare const rgb2cmyk: (red: number, green: number, blue: number) => number[]; +export declare const cmyk2rgb: (cyan: number, magenta: number, yellow: number, black: number) => { + r: number; + g: number; + b: number; +}; +export declare const cmykInputToColor: (input: string) => string; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.js new file mode 100644 index 0000000..6fa325a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/cmyk.js @@ -0,0 +1 @@ +export const rgb2cmyk=(t,r,e)=>{let n=0,o=0,c=0,a=0;const s=parseInt(`${t}`.replace(/\s/g,""),10),m=parseInt(`${r}`.replace(/\s/g,""),10),u=parseInt(`${e}`.replace(/\s/g,""),10);if(0===s&&0===m&&0===u)return a=1,[0,0,0,1];n=1-s/255,o=1-m/255,c=1-u/255;const p=Math.min(n,Math.min(o,c));return n=(n-p)/(1-p),o=(o-p)/(1-p),c=(c-p)/(1-p),a=p,[n,o,c,a]};export const cmyk2rgb=(t,r,e,n)=>{let o=t/100,c=r/100,a=e/100;const s=n/100;o=o*(1-s)+s,c=c*(1-s)+s,a=a*(1-s)+s;let m=1-o,u=1-c,p=1-a;return m=Math.round(255*m),u=Math.round(255*u),p=Math.round(255*p),{r:m,g:u,b:p}};const REG_CMYK_STRING=/cmyk\((\d+%?),(\d+%?),(\d+%?),(\d+%?)\)/,toNumber=t=>Math.max(0,Math.min(255,parseInt(t,10)));export const cmykInputToColor=t=>{if(/cmyk/i.test(t)){const r=t.replace(/\s/g,"").match(REG_CMYK_STRING),e=toNumber(r[1]),n=toNumber(r[2]),o=toNumber(r[3]),c=toNumber(r[4]),{r:a,g:s,b:m}=cmyk2rgb(e,n,o,c);return`rgb(${a}, ${s}, ${m})`}return t}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.d.ts new file mode 100644 index 0000000..49b30fa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.d.ts @@ -0,0 +1,107 @@ +import tinyColor from 'tinycolor2'; +import { GradientColors, GradientColorPoint } from './gradient'; +export interface ColorObject { + alpha: number; + css: string; + hex: string; + hex8: string; + hsl: string; + hsla: string; + hsv: string; + hsva: string; + rgb: string; + rgba: string; + saturation: number; + value: number; + isGradient: boolean; + linearGradient?: string; +} +interface ColorStates { + s: number; + v: number; + h: number; + a: number; +} +interface GradientStates { + colors: GradientColorPoint[]; + degree: number; + selectedId: string; + css?: string; +} +export declare const gradientColors2string: (object: GradientColors) => string; +export declare const getColorWithoutAlpha: (color: string) => string; +export declare const genId: () => string; +export declare const genGradientPoint: (left: number, color: string) => GradientColorPoint; +export declare class Color { + states: ColorStates; + originColor: string; + isGradient: boolean; + gradientStates: GradientStates; + constructor(input: string); + update(input: string): void; + get saturation(): number; + set saturation(value: number); + get value(): number; + set value(value: number); + get hue(): number; + set hue(value: number); + get alpha(): number; + set alpha(value: number); + get rgb(): string; + get rgba(): string; + get hsv(): string; + get hsva(): string; + get hsl(): string; + get hsla(): string; + get hex(): string; + get hex8(): string; + get cmyk(): string; + get css(): string; + get linearGradient(): string; + get gradientColors(): GradientColorPoint[]; + set gradientColors(colors: GradientColorPoint[]); + get gradientSelectedId(): string; + set gradientSelectedId(id: string); + get gradientDegree(): number; + set gradientDegree(degree: number); + get gradientSelectedPoint(): GradientColorPoint; + getFormatsColorMap(): { + HEX: string; + CMYK: string; + RGB: string; + RGBA: string; + HSL: string; + HSLA: string; + HSV: string; + HSVA: string; + CSS: string; + HEX8: string; + }; + updateCurrentGradientColor(): false | this; + updateStates(input: string): void; + getRgba(): { + r: number; + g: number; + b: number; + a: number; + }; + getCmyk(): { + c: number; + m: number; + y: number; + k: number; + }; + getHsva(): tinyColor.ColorFormats.HSVA; + getHsla(): tinyColor.ColorFormats.HSLA; + equals(color: string): boolean; + static isValid(color: string): boolean; + static hsva2color(h: number, s: number, v: number, a: number): string; + static hsla2color(h: number, s: number, l: number, a: number): string; + static rgba2color(r: number, g: number, b: number, a: number): string; + static hex2color(hex: string, a: number): string; + static object2color(object: any, format: string): string; + static isGradientColor: (input: string) => boolean; + static compare: (color1: string, color2: string) => boolean; +} +export declare const getColorObject: (color: Color) => ColorObject; +export default Color; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.js new file mode 100644 index 0000000..d57e223 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/color.js @@ -0,0 +1 @@ +import tinyColor from"tinycolor2";import{cmykInputToColor,rgb2cmyk}from"./cmyk";import{parseGradientString,isGradientColor}from"./gradient";const mathRound=Math.round,hsv2rgba=t=>tinyColor(t).toRgb(),hsv2hsva=t=>tinyColor(t).toHsv(),hsv2hsla=t=>tinyColor(t).toHsl();export const gradientColors2string=t=>{const{points:e,degree:r}=t;return`linear-gradient(${r}deg,${e.sort(((t,e)=>t.left-e.left)).map((t=>`${t.color} ${Math.round(100*t.left)/100}%`)).join(",")})`};export const getColorWithoutAlpha=t=>tinyColor(t).setAlpha(1).toHexString();export const genId=()=>(1+4294967295*Math.random()).toString(16);export const genGradientPoint=(t,e)=>({id:genId(),left:t,color:e});export class Color{constructor(t){this.states={s:100,v:100,h:100,a:1},this.gradientStates={colors:[],degree:0,selectedId:null,css:""},this.update(t)}update(t){var e,r;const s=parseGradientString(t);if(this.isGradient&&!s){const e=tinyColor(t).toHsv();return this.states=e,void this.updateCurrentGradientColor()}this.originColor=t,this.isGradient=!1;let a=t;if(s){this.isGradient=!0;const t=s,i=t.points.map((t=>genGradientPoint(t.left,t.color)));this.gradientStates={colors:i,degree:t.degree,selectedId:(null===(e=i[0])||void 0===e?void 0:e.id)||null},this.gradientStates.css=this.linearGradient,a=null===(r=this.gradientSelectedPoint)||void 0===r?void 0:r.color}this.updateStates(a)}get saturation(){return this.states.s}set saturation(t){this.states.s=Math.max(0,Math.min(100,t)),this.updateCurrentGradientColor()}get value(){return this.states.v}set value(t){this.states.v=Math.max(0,Math.min(100,t)),this.updateCurrentGradientColor()}get hue(){return this.states.h}set hue(t){this.states.h=Math.max(0,Math.min(360,t)),this.updateCurrentGradientColor()}get alpha(){return this.states.a}set alpha(t){this.states.a=Math.max(0,Math.min(1,Math.round(100*t)/100)),this.updateCurrentGradientColor()}get rgb(){const{r:t,g:e,b:r}=hsv2rgba(this.states);return`rgb(${mathRound(t)}, ${mathRound(e)}, ${mathRound(r)})`}get rgba(){const{r:t,g:e,b:r,a:s}=hsv2rgba(this.states);return`rgba(${mathRound(t)}, ${mathRound(e)}, ${mathRound(r)}, ${s})`}get hsv(){const{h:t,s:e,v:r}=this.getHsva();return`hsv(${t}, ${e}%, ${r}%)`}get hsva(){const{h:t,s:e,v:r,a:s}=this.getHsva();return`hsva(${t}, ${e}%, ${r}%, ${s})`}get hsl(){const{h:t,s:e,l:r}=this.getHsla();return`hsl(${t}, ${e}%, ${r}%)`}get hsla(){const{h:t,s:e,l:r,a:s}=this.getHsla();return`hsla(${t}, ${e}%, ${r}%, ${s})`}get hex(){return tinyColor(this.states).toHexString()}get hex8(){return tinyColor(this.states).toHex8String()}get cmyk(){const{c:t,m:e,y:r,k:s}=this.getCmyk();return`cmyk(${t}, ${e}, ${r}, ${s})`}get css(){return this.isGradient?this.linearGradient:this.rgba}get linearGradient(){const{gradientColors:t,gradientDegree:e}=this;return gradientColors2string({points:t,degree:e})}get gradientColors(){return this.gradientStates.colors}set gradientColors(t){this.gradientStates.colors=t,this.gradientStates.css=this.linearGradient}get gradientSelectedId(){return this.gradientStates.selectedId}set gradientSelectedId(t){var e;t!==this.gradientSelectedId&&(this.gradientStates.selectedId=t,this.updateStates(null===(e=this.gradientSelectedPoint)||void 0===e?void 0:e.color))}get gradientDegree(){return this.gradientStates.degree}set gradientDegree(t){this.gradientStates.degree=Math.max(0,Math.min(360,t)),this.gradientStates.css=this.linearGradient}get gradientSelectedPoint(){const{gradientColors:t,gradientSelectedId:e}=this;return t.find((t=>t.id===e))}getFormatsColorMap(){return{HEX:this.hex,CMYK:this.cmyk,RGB:this.rgb,RGBA:this.rgba,HSL:this.hsl,HSLA:this.hsla,HSV:this.hsv,HSVA:this.hsva,CSS:this.css,HEX8:this.hex8}}updateCurrentGradientColor(){const{isGradient:t,gradientColors:e,gradientSelectedId:r}=this,{length:s}=e,a=this.gradientSelectedPoint;if(!t||0===s||!a)return!1;const i=e.findIndex((t=>t.id===r)),n=Object.assign(Object.assign({},a),{color:this.rgba});return e.splice(i,1,n),this.gradientColors=e.slice(),this}updateStates(t){const e=tinyColor(cmykInputToColor(t)).toHsv();this.states=e}getRgba(){const{r:t,g:e,b:r,a:s}=hsv2rgba(this.states);return{r:mathRound(t),g:mathRound(e),b:mathRound(r),a:s}}getCmyk(){const{r:t,g:e,b:r}=this.getRgba(),[s,a,i,n]=rgb2cmyk(t,e,r);return{c:mathRound(100*s),m:mathRound(100*a),y:mathRound(100*i),k:mathRound(100*n)}}getHsva(){let{h:t,s:e,v:r,a:s}=hsv2hsva(this.states);return t=mathRound(t),e=mathRound(100*e),r=mathRound(100*r),s*=1,{h:t,s:e,v:r,a:s}}getHsla(){let{h:t,s:e,l:r,a:s}=hsv2hsla(this.states);return t=mathRound(t),e=mathRound(100*e),r=mathRound(100*r),s*=1,{h:t,s:e,l:r,a:s}}equals(t){return tinyColor.equals(this.rgba,t)}static isValid(t){return!!parseGradientString(t)||tinyColor(t).isValid()}static hsva2color(t,e,r,s){return tinyColor({h:t,s:e,v:r,a:s}).toHsvString()}static hsla2color(t,e,r,s){return tinyColor({h:t,s:e,l:r,a:s}).toHslString()}static rgba2color(t,e,r,s){return tinyColor({r:t,g:e,b:r,a:s}).toHsvString()}static hex2color(t,e){const r=tinyColor(t);return r.setAlpha(e),r.toHexString()}static object2color(t,e){if("CMYK"===e){const{c:e,m:r,y:s,k:a}=t;return`cmyk(${e}, ${r}, ${s}, ${a})`}return tinyColor(t,{format:e}).toRgbString()}}Color.isGradientColor=t=>!!isGradientColor(t),Color.compare=(t,e)=>{const r=Color.isGradientColor(t),s=Color.isGradientColor(e);if(r&&s){return gradientColors2string(parseGradientString(t))===gradientColors2string(parseGradientString(e))}return!r&&!s&&tinyColor.equals(t,e)};const COLOR_OBJECT_OUTPUT_KEYS=["alpha","css","hex","hex8","hsl","hsla","hsv","hsva","rgb","rgba","saturation","value","isGradient"];export const getColorObject=t=>{if(!t)return null;const e=Object.create(null);return COLOR_OBJECT_OUTPUT_KEYS.forEach((r=>e[r]=t[r])),t.isGradient&&(e.linearGradient=t.linearGradient),e};export default Color; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.d.ts new file mode 100644 index 0000000..3f496b0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.d.ts @@ -0,0 +1,12 @@ +export interface GradientColorPoint { + id?: string; + color?: string; + left?: number; +} +export interface GradientColors { + points: GradientColorPoint[]; + degree: number; +} +export declare const isGradientColor: (input: string) => null | RegExpExecArray; +export declare const parseGradientString: (input: string) => GradientColors | boolean; +export default parseGradientString; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.js new file mode 100644 index 0000000..8c72831 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/gradient.js @@ -0,0 +1 @@ +import tinyColor from"tinycolor2";import{isString,isNull}from"../../validator";const combineRegExp=(e,t)=>{let o="";for(let t=0;t{const e=/\s*,\s*/,t=/(?:[+-]?\d*\.?\d+)(?:%|[a-z]+)?/,o=combineRegExp(["(?:",/#(?:[a-f0-9]{6}|[a-f0-9]{3})/,"|","(?:rgb|hsl)",/\(\s*(?:\d{1,3}\s*,\s*){2}\d{1,3}\s*\)/,"|","(?:rgba|hsla)",/\(\s*(?:\d{1,3}\s*,\s*){2}\d{1,3}\s*,\s*\d*\.?\d+\)/,"|",/[_a-z-][_a-z0-9-]*/,")"],""),r=combineRegExp([o,"(?:\\s+",t,"(?:\\s+",t,")?)?"],""),i=combineRegExp(["(?:",r,e,")*",r],""),n=combineRegExp(["(?:(",/(?:[+-]?\d*\.?\d+)(?:deg|grad|rad|turn)/,")|",/to\s+((?:(?:left|right|top|bottom)(?:\s+(?:top|bottom|left|right))?))/,")"],"");return{gradientSearch:combineRegExp(["(?:(",n,")",e,")?(",i,")"],"gi"),colorStopSearch:combineRegExp(["\\s*(",o,")","(?:\\s+","(",t,"))?","(?:",e,"\\s*)?"],"gi")}},parseGradient=(e,t)=>{let o,r,i;e.gradientSearch.lastIndex=0;const n=e.gradientSearch.exec(t);if(!isNull(n))for(o={original:n[0],colorStopList:[]},n[1]&&(o.line=n[1]),n[2]&&(o.angle=n[2]),n[3]&&(o.sideCorner=n[3]),e.colorStopSearch.lastIndex=0,r=e.colorStopSearch.exec(n[4]);!isNull(r);)i={color:r[1]},r[2]&&(i.position=r[2]),o.colorStopList.push(i),r=e.colorStopSearch.exec(n[4]);return o},REGEXP_LIB=generateRegExp(),REG_GRADIENT=/.*gradient\s*\(((?:\([^)]*\)|[^)(]*)*)\)/gim;export const isGradientColor=e=>(REG_GRADIENT.lastIndex=0,REG_GRADIENT.exec(e));const sideCornerDegreeMap={top:0,right:90,bottom:180,left:270,"top left":225,"left top":225,"top right":135,"right top":135,"bottom left":315,"left bottom":315,"bottom right":45,"right bottom":45};export const parseGradientString=e=>{const t=isGradientColor(e);if(!t)return!1;const o={points:[],degree:0},r=parseGradient(REGEXP_LIB,t[1]);if(r.original.trim()!==t[1].trim())return!1;const i=r.colorStopList.map((({color:e,position:t})=>{const o=Object.create(null);return o.color=tinyColor(e).toRgbString(),o.left=parseFloat(t),o}));o.points=i;let n=parseInt(r.angle,10);return Number.isNaN(n)&&(n=sideCornerDegreeMap[r.sideCorner]||90),o.degree=n,o};export default parseGradientString; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.d.ts new file mode 100644 index 0000000..ad18475 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.d.ts @@ -0,0 +1,3 @@ +export * from './cmyk'; +export * from './color'; +export * from './gradient'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.js new file mode 100644 index 0000000..7cae9f3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/color-picker/index.js @@ -0,0 +1 @@ +export*from"./cmyk";export*from"./color";export*from"./gradient"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.d.ts new file mode 100644 index 0000000..e123831 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.d.ts @@ -0,0 +1,21 @@ +export declare type CompareDate = Date | number | { + year: number; + month: number; + date: number; +}; +export declare const getDateRect: (date: Date | number) => { + year: number; + month: number; + date: number; + day: number; + time: number; +}; +export declare const isSameDate: (date1: CompareDate, date2: CompareDate) => boolean; +export declare const getMonthDateRect: (date: Date | number) => { + year: number; + month: number; + weekdayOfFirstDay: number; + lastDate: number; +}; +export declare const isValidDate: (val: any) => boolean; +export declare const getDate: (...args: any[]) => any; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.js b/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.js new file mode 100644 index 0000000..ce1e365 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/shared/date.js @@ -0,0 +1 @@ +export const getDateRect=e=>{const t=new Date(e);return{year:t.getFullYear(),month:t.getMonth(),date:t.getDate(),day:t.getDay(),time:t.getTime()}};export const isSameDate=(e,t)=>{(e instanceof Date||"number"==typeof e)&&(e=getDateRect(e)),(t instanceof Date||"number"==typeof t)&&(t=getDateRect(t));return["year","month","date"].every((a=>e[a]===t[a]))};export const getMonthDateRect=e=>{const{year:t,month:a}=getDateRect(e);return{year:t,month:a,weekdayOfFirstDay:new Date(t,a,1).getDay(),lastDate:new Date(+new Date(t,a+1,1)-864e5).getDate()}};export const isValidDate=e=>"number"==typeof e||e instanceof Date;export const getDate=(...e)=>{const t=new Date;if(0===e.length)return t;if(1===e.length&&e[0]<=1e3){const{year:a,month:n,date:r}=getDateRect(t);return new Date(a,n+e[0],r)}return Date.apply(null,e)}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/control.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/src/control.d.ts new file mode 100644 index 0000000..ed3f4a0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/control.d.ts @@ -0,0 +1,15 @@ +declare type ControlInstance = { + controlled: boolean; + initValue: any; + set(newVal: any, extObj?: Object, fn?: any): void; + get(): any; + change(newVal: any, customChangeData?: any, customUpdateFn?: any): void; +}; +declare type ControlOption = { + valueKey?: string; + defaultValueKey?: string; + changeEventName?: string; + strict?: boolean; +}; +declare function useControl(this: any, option?: ControlOption): ControlInstance; +export { ControlOption, ControlInstance, useControl }; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/control.js b/app/miniprogram_npm/tdesign-miniprogram/common/src/control.js new file mode 100644 index 0000000..9010a19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/control.js @@ -0,0 +1 @@ +const defaultOption={valueKey:"value",defaultValueKey:"defaultValue",changeEventName:"change",strict:!0};function useControl(e={}){const{valueKey:t,defaultValueKey:a,changeEventName:n,strict:s}=Object.assign(Object.assign({},defaultOption),e),l=this.properties||{},i=l[t],u=l[s?a:t];let o=!1;s&&null!=i&&(o=!0);const c=(e,a,n)=>{this.setData(Object.assign({[`_${t}`]:e},a),n)};return{controlled:o,initValue:o?i:u,set:c,get:()=>this.data[`_${t}`],change:(e,t,a)=>{this.triggerEvent(n,void 0!==t?t:e),o||("function"==typeof a?a():c(e))}}}export{useControl}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.d.ts new file mode 100644 index 0000000..7fe850a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.d.ts @@ -0,0 +1,13 @@ +export declare const getPrototypeOf: (obj: any) => any; +export declare const iterateInheritedPrototype: (callback: (proto: Record) => boolean | void, fromCtor: any, toCtor: any, includeToCtor?: boolean) => void; +export interface ClassInstanceToObjectOptions { + bindTo?: any; + excludes?: string[]; + till?: any; + enumerable?: 0 | boolean; + configurable?: 0 | boolean; + writable?: 0 | boolean; +} +export declare const toObject: (something: any, options?: ClassInstanceToObjectOptions) => { + [key: string]: any; +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.js b/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.js new file mode 100644 index 0000000..d7675d4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/flatTool.js @@ -0,0 +1 @@ +import{isObject}from"../../common/validator";export const getPrototypeOf=function(t){return Object.getPrototypeOf?Object.getPrototypeOf(t):t.__proto__};export const iterateInheritedPrototype=function(t,e,o,r=!0){let n=e.prototype||e;const c=o.prototype||o;for(;n&&(r||n!==c)&&!1!==t(n)&&n!==c;)n=getPrototypeOf(n)};export const toObject=function(t,e={}){const o={};if(!isObject(t))return o;const r=e.excludes||["constructor"],{enumerable:n=!0,configurable:c=0,writable:i=0}=e,p={};return 0!==n&&(p.enumerable=n),0!==c&&(p.configurable=c),0!==i&&(p.writable=i),iterateInheritedPrototype((t=>{Object.getOwnPropertyNames(t).forEach((n=>{if(r.indexOf(n)>=0)return;if(Object.prototype.hasOwnProperty.call(o,n))return;const c=Object.getOwnPropertyDescriptor(t,n);["get","set","value"].forEach((t=>{if("function"==typeof c[t]){const o=c[t];c[t]=function(...t){return o.apply(Object.prototype.hasOwnProperty.call(e,"bindTo")?e.bindTo:this,t)}}})),Object.defineProperty(o,n,Object.assign(Object.assign({},c),p))}))}),t,e.till||Object,!1),o}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/src/index.d.ts new file mode 100644 index 0000000..94e7ce1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/index.d.ts @@ -0,0 +1,4 @@ +export * from './superComponent'; +export * from './flatTool'; +export * from './instantiationDecorator'; +export * from './control'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/index.js b/app/miniprogram_npm/tdesign-miniprogram/common/src/index.js new file mode 100644 index 0000000..f711ddc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/index.js @@ -0,0 +1 @@ +export*from"./superComponent";export*from"./flatTool";export*from"./instantiationDecorator";export*from"./control"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.d.ts new file mode 100644 index 0000000..3a06f2c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.d.ts @@ -0,0 +1,3 @@ +import { SuperComponent } from './superComponent'; +export declare const toComponent: (options: Record) => Record; +export declare const wxComponent: () => (constructor: new () => SuperComponent) => void; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.js b/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.js new file mode 100644 index 0000000..740f19e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/instantiationDecorator.js @@ -0,0 +1 @@ +import{toObject}from"./flatTool";import{isPlainObject}from"../validator";import{canUseVirtualHost}from"../version";const RawLifeCycles=["Created","Attached","Ready","Moved","Detached","Error"],NativeLifeCycles=RawLifeCycles.map((e=>e.toLowerCase())),ComponentNativeProps=["properties","data","observers","methods","behaviors",...NativeLifeCycles,"relations","externalClasses","options","lifetimes","pageLifeTimes","definitionFilter"];export const toComponent=function(e){const{relations:t,behaviors:o=[],externalClasses:i=[]}=e;if(e.properties){Object.keys(e.properties).forEach((t=>{let o=e.properties[t];isPlainObject(o)||(o={type:o}),e.properties[t]=o}));[{key:"ariaHidden",type:Boolean},{key:"ariaRole",type:String},{key:"ariaLabel",type:String},{key:"ariaLabelledby",type:String},{key:"ariaDescribedby",type:String},{key:"ariaBusy",type:Boolean}].forEach((({key:t,type:o})=>{e.properties[t]={type:o}})),e.properties.style={type:String,value:""},e.properties.customStyle={type:String,value:""}}e.methods||(e.methods={}),e.lifetimes||(e.lifetimes={});const s={};if(t){const e=(e,t)=>Behavior({created(){Object.defineProperty(this,`$${e}`,{get:()=>{const o=this.getRelationNodes(t)||[];return"parent"===e?o[0]:o}})}}),i={};Object.keys(t).forEach((o=>{const s=t[o],r=["parent","ancestor"].includes(s.type)?"parent":"children",n=e(r,o);i[r]=n})),o.push(...Object.keys(i).map((e=>i[e])))}if(e.behaviors=[...o],e.externalClasses=["class",...i],Object.getOwnPropertyNames(e).forEach((t=>{const o=Object.getOwnPropertyDescriptor(e,t);o&&(NativeLifeCycles.indexOf(t)<0&&"function"==typeof o.value?(Object.defineProperty(e.methods,t,o),delete e[t]):ComponentNativeProps.indexOf(t)<0?s[t]=o:NativeLifeCycles.indexOf(t)>=0&&(e.lifetimes[t]=e[t]))})),Object.keys(s).length){const t=e.lifetimes.created,o=e.lifetimes.attached,{controlledProps:i=[]}=e;e.lifetimes.created=function(...e){Object.defineProperties(this,s),t&&t.apply(this,e)},e.lifetimes.attached=function(...e){o&&o.apply(this,e),i.forEach((({key:e})=>{const t=`default${e.replace(/^(\w)/,((e,t)=>t.toUpperCase()))}`,o=this.properties;null==o[e]&&(this._selfControlled=!0),null==o[e]&&null!=o[t]&&this.setData({[e]:o[t]})}))},e.methods._trigger=function(e,t,o){const s=i.find((t=>t.event===e));if(s){const{key:e}=s;this._selfControlled&&this.setData({[e]:t[e]})}this.triggerEvent(e,t,o)}}return e};export const wxComponent=function(){return function(e){const t=new class extends e{};t.options=t.options||{},canUseVirtualHost()&&(t.options.virtualHost=!0);const o=toComponent(toObject(t));Component(o)}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.d.ts new file mode 100644 index 0000000..4455e19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.d.ts @@ -0,0 +1,19 @@ +/// +export interface ComponentsOptionsType extends WechatMiniprogram.Component.ComponentOptions { + styleIsolation?: 'isolated' | 'apply-shared' | 'shared' | 'page-isolated' | 'page-apply-shared' | 'page-shared'; +} +export interface RelationsOptions { + [componentName: string]: WechatMiniprogram.Component.RelationOption; +} +export interface SuperComponent extends WechatMiniprogram.Component.Lifetimes, WechatMiniprogram.Component.OtherOption, WechatMiniprogram.Component.InstanceMethods { + properties: P; + data: D; + options: ComponentsOptionsType; + methods: M | Record any>; + $global: Function; + [x: string]: any; +} +export declare class SuperComponent { + readonly app: any; + constructor(); +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.js b/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.js new file mode 100644 index 0000000..cf00ae2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/src/superComponent.js @@ -0,0 +1 @@ +export class SuperComponent{constructor(){this.app=getApp()}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/_variables.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/_variables.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/base.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/base.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/icons.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/icons.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/index.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/index.wxss new file mode 100644 index 0000000..c6b6b97 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/index.wxss @@ -0,0 +1 @@ +.hotspot-expanded.relative{position:relative}.hotspot-expanded::after{content:'';display:block;position:absolute;left:0;top:0;right:0;bottom:0;transform:scale(1.5)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_border.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_border.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_clearfix.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_clearfix.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_cursor.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_cursor.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_ellipsis.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_ellipsis.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_hairline.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_hairline.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_index.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_index.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_other.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/mixins/_other.wxss new file mode 100644 index 0000000..e69de29 diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_components.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_components.wxss new file mode 100644 index 0000000..c81b9db --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_components.wxss @@ -0,0 +1 @@ +@media (prefers-color-scheme:light){.page,page{--td-picker-transparent-color:rgba(255, 255, 255, 0)}}@media (prefers-color-scheme:dark){.page,page{--td-button-primary-disabled-color:var(--td-font-white-4);--td-skeleton-animation-gradient:rgba(255, 255, 255, 0.06);--td-slider-dot-bg-color:var(--td-gray-color-4);--td-slider-dot-disabled-bg-color:var(--td-gray-color-11);--td-slider-dot-disabled-border-color:var(--td-gray-color-12);--td-picker-transparent-color:transparent;--td-switch-dot-disabled-color:var(--td-font-white-2)}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_dark.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_dark.wxss new file mode 100644 index 0000000..ebe8b99 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_dark.wxss @@ -0,0 +1 @@ +@media (prefers-color-scheme:dark){.page,page{--td-brand-color-1:#1b2f51;--td-brand-color-2:#173463;--td-brand-color-3:#143975;--td-brand-color-4:#103d88;--td-brand-color-5:#0d429a;--td-brand-color-6:#054bbe;--td-brand-color-7:#2667d4;--td-brand-color-8:#4582e6;--td-brand-color-9:#699ef5;--td-brand-color-10:#96bbf8;--td-primary-color-1:var(--td-brand-color-1);--td-primary-color-2:var(--td-brand-color-2);--td-primary-color-3:var(--td-brand-color-3);--td-primary-color-4:var(--td-brand-color-4);--td-primary-color-5:var(--td-brand-color-5);--td-primary-color-6:var(--td-brand-color-6);--td-primary-color-7:var(--td-brand-color-7);--td-primary-color-8:var(--td-brand-color-8);--td-primary-color-9:var(--td-brand-color-9);--td-primary-color-10:var(--td-brand-color-10);--td-warning-color-1:#4f2a1d;--td-warning-color-2:#582f21;--td-warning-color-3:#733c23;--td-warning-color-4:#a75d2b;--td-warning-color-5:#cf6e2d;--td-warning-color-6:#dc7633;--td-warning-color-7:#e8935c;--td-warning-color-8:#ecbf91;--td-warning-color-9:#eed7bf;--td-warning-color-10:#f3e9dc;--td-error-color-1:#472324;--td-error-color-2:#5e2a2d;--td-error-color-3:#703439;--td-error-color-4:#83383e;--td-error-color-5:#a03f46;--td-error-color-6:#c64751;--td-error-color-7:#de6670;--td-error-color-8:#ec888e;--td-error-color-9:#edb1b6;--td-error-color-10:#eeced0;--td-success-color-1:#193a2a;--td-success-color-2:#1a4230;--td-success-color-3:#17533d;--td-success-color-4:#0d7a55;--td-success-color-5:#059465;--td-success-color-6:#43af8a;--td-success-color-7:#46bf96;--td-success-color-8:#80d2b6;--td-success-color-9:#b4e1d3;--td-success-color-10:#deede8;--td-gray-color-1:#f3f3f3;--td-gray-color-2:#eee;--td-gray-color-3:#e8e8e8;--td-gray-color-4:#ddd;--td-gray-color-5:#c6c6c6;--td-gray-color-6:#a6a6a6;--td-gray-color-7:#8b8b8b;--td-gray-color-8:#777;--td-gray-color-9:#5e5e5e;--td-gray-color-10:#4b4b4b;--td-gray-color-11:#383838;--td-gray-color-12:#2c2c2c;--td-gray-color-13:#242424;--td-gray-color-14:#181818;--td-font-white-1:rgba(255, 255, 255, 0.9);--td-font-white-2:rgba(255, 255, 255, 0.55);--td-font-white-3:rgba(255, 255, 255, 0.35);--td-font-white-4:rgba(255, 255, 255, 0.22);--td-font-gray-1:rgba(0, 0, 0, 0.9);--td-font-gray-2:rgba(0, 0, 0, 0.6);--td-font-gray-3:rgba(0, 0, 0, 0.4);--td-font-gray-4:rgba(0, 0, 0, 0.26);--td-brand-color:var(--td-primary-color-8);--td-warning-color:var(--td-warning-color-5);--td-error-color:var(--td-error-color-6);--td-success-color:var(--td-success-color-5);--td-brand-color-focus:var(--td-primary-color-1);--td-brand-color-active:var(--td-primary-color-9);--td-brand-color-disabled:var(--td-primary-color-3);--td-brand-color-light:var(--td-primary-color-1);--td-brand-color-light-active:var(--td-primary-color-2);--td-warning-color-focus:var(--td-warning-color-2);--td-warning-color-active:var(--td-warning-color-4);--td-warning-color-disabled:var(--td-warning-color-3);--td-warning-color-light:var(--td-warning-color-1);--td-warning-color-light-active:var(--td-warning-color-2);--td-error-color-focus:var(--td-error-color-2);--td-error-color-active:var(--td-error-color-5);--td-error-color-disabled:var(--td-error-color-3);--td-error-color-light:var(--td-error-color-1);--td-error-color-light-active:var(--td-error-color-2);--td-success-color-focus:var(--td-success-color-2);--td-success-color-active:var(--td-success-color-4);--td-success-color-disabled:var(--td-success-color-3);--td-success-color-light:var(--td-success-color-1);--td-success-color-light-active:var(--td-success-color-2);--td-mask-active:rgba(0, 0, 0, 0.4);--td-mask-disabled:rgba(0, 0, 0, 0.6);--td-bg-color-page:var(--td-gray-color-14);--td-bg-color-container:var(--td-gray-color-13);--td-bg-color-secondarycontainer:var(--td-gray-color-12);--td-bg-color-component:var(--td-gray-color-11);--td-bg-color-container-active:var(--td-gray-color-12);--td-bg-color-secondarycontainer-active:var(--td-gray-color-11);--td-bg-color-component-active:var(--td-gray-color-10);--td-bg-color-component-disabled:var(--td-gray-color-12);--td-bg-color-specialcomponent:transparent;--td-text-color-primary:var(--td-font-white-1);--td-text-color-secondary:var(--td-font-white-2);--td-text-color-placeholder:var(--td-font-white-3);--td-text-color-disabled:var(--td-font-white-4);--td-text-color-anti:var(--td-font-white-1);--td-text-color-brand:var(--td-primary-color-8);--td-text-color-link:var(--td-primary-color-8);--td-border-level-1-color:var(--td-gray-color-11);--td-component-stroke:var(--td-gray-color-11);--td-border-level-2-color:var(--td-gray-color-9);--td-component-border:var(--td-gray-color-9);--td-shadow-1:0 4px 6px rgba(0, 0, 0, 0.06),0 1px 10px rgba(0, 0, 0, 0.08),0 2px 4px rgba(0, 0, 0, 0.12);--td-shadow-2:0 8px 10px rgba(0, 0, 0, 0.12),0 3px 14px rgba(0, 0, 0, 0.1),0 5px 5px rgba(0, 0, 0, 0.16);--td-shadow-3:0 16px 24px rgba(0, 0, 0, 0.14),0 6px 30px rgba(0, 0, 0, 0.12),0 8px 10px rgba(0, 0, 0, 0.2);--td-shadow-inset-top:inset 0 0.5px 0 #5e5e5e;--td-shadow-inset-right:inset 0.5px 0 0 #5e5e5e;--td-shadow-inset-bottom:inset 0 -0.5px 0 #5e5e5e;--td-shadow-inset-left:inset -0.5px 0 0 #5e5e5e;--td-table-shadow-color:rgba(0, 0, 0, 0.55);--td-scrollbar-color:rgba(255, 255, 255, 0.1);--td-scroll-track-color:#333}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_font.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_font.wxss new file mode 100644 index 0000000..f289268 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_font.wxss @@ -0,0 +1 @@ +.page,page{--td-font-family:PingFang SC,Microsoft YaHei,Arial Regular;--td-font-family-medium:PingFang SC,Microsoft YaHei,Arial Medium;--td-font-size-link-small:24rpx;--td-font-size-link-medium:28rpx;--td-font-size-link-large:32rpx;--td-font-size-mark-extra-small:20rpx;--td-font-size-mark-small:24rpx;--td-font-size-mark-medium:28rpx;--td-font-size-mark-large:32rpx;--td-font-size-body-extra-small:20rpx;--td-font-size-body-small:24rpx;--td-font-size-body-medium:28rpx;--td-font-size-body-large:32rpx;--td-font-size-title-small:28rpx;--td-font-size-title-medium:32rpx;--td-font-size-title-large:36rpx;--td-font-size-title-extra-large:40rpx;--td-font-size-headline-small:48rpx;--td-font-size-headline-medium:56rpx;--td-font-size-headline-large:72rpx;--td-font-size-display-medium:96rpx;--td-font-size-display-large:128rpx;--td-font-size:20rpx;--td-font-size-xs:var(--td-font-size-body-extra-small);--td-font-size-s:var(--td-font-size-body-small);--td-font-size-base:var(--td-font-size-title-small);--td-font-size-m:var(--td-font-size-title-medium);--td-font-size-l:var(--td-font-size-title-large);--td-font-size-xl:var(--td-font-size-title-extra-large);--td-font-size-xxl:var(--td-font-size-headline-large)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_index.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_index.wxss new file mode 100644 index 0000000..0814a7a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_index.wxss @@ -0,0 +1 @@ +@media (prefers-color-scheme:light){.page,page{--td-brand-color-1:#f2f3ff;--td-brand-color-2:#d9e1ff;--td-brand-color-3:#b5c7ff;--td-brand-color-4:#8eabff;--td-brand-color-5:#618dff;--td-brand-color-6:#366ef4;--td-brand-color-7:#0052d9;--td-brand-color-8:#003cab;--td-brand-color-9:#002a7c;--td-brand-color-10:#001a57;--td-primary-color-1:var(--td-brand-color-1);--td-primary-color-2:var(--td-brand-color-2);--td-primary-color-3:var(--td-brand-color-3);--td-primary-color-4:var(--td-brand-color-4);--td-primary-color-5:var(--td-brand-color-5);--td-primary-color-6:var(--td-brand-color-6);--td-primary-color-7:var(--td-brand-color-7);--td-primary-color-8:var(--td-brand-color-8);--td-primary-color-9:var(--td-brand-color-9);--td-primary-color-10:var(--td-brand-color-10);--td-warning-color-1:#fff1e9;--td-warning-color-2:#ffd9c2;--td-warning-color-3:#ffb98c;--td-warning-color-4:#fa9550;--td-warning-color-5:#e37318;--td-warning-color-6:#be5a00;--td-warning-color-7:#954500;--td-warning-color-8:#713300;--td-warning-color-9:#532300;--td-warning-color-10:#3b1700;--td-error-color-1:#fff0ed;--td-error-color-2:#ffd8d2;--td-error-color-3:#ffb9b0;--td-error-color-4:#ff9285;--td-error-color-5:#f6685d;--td-error-color-6:#d54941;--td-error-color-7:#ad352f;--td-error-color-8:#881f1c;--td-error-color-9:#68070a;--td-error-color-10:#490002;--td-success-color-1:#e3f9e9;--td-success-color-2:#c6f3d7;--td-success-color-3:#92dab2;--td-success-color-4:#56c08d;--td-success-color-5:#2ba471;--td-success-color-6:#008858;--td-success-color-7:#006c45;--td-success-color-8:#005334;--td-success-color-9:#003b23;--td-success-color-10:#002515;--td-gray-color-1:#f3f3f3;--td-gray-color-2:#eeeeee;--td-gray-color-3:#e7e7e7;--td-gray-color-4:#dcdcdc;--td-gray-color-5:#c5c5c5;--td-gray-color-6:#a6a6a6;--td-gray-color-7:#8b8b8b;--td-gray-color-8:#777777;--td-gray-color-9:#5e5e5e;--td-gray-color-10:#4b4b4b;--td-gray-color-11:#383838;--td-gray-color-12:#2c2c2c;--td-gray-color-13:#242424;--td-gray-color-14:#181818;--td-font-white-1:#ffffff;--td-font-white-2:rgba(255, 255, 255, 0.55);--td-font-white-3:rgba(255, 255, 255, 0.35);--td-font-white-4:rgba(255, 255, 255, 0.22);--td-font-gray-1:rgba(0, 0, 0, 0.9);--td-font-gray-2:rgba(0, 0, 0, 0.6);--td-font-gray-3:rgba(0, 0, 0, 0.4);--td-font-gray-4:rgba(0, 0, 0, 0.26);--td-brand-color:var(--td-primary-color-7);--td-warning-color:var(--td-warning-color-5);--td-error-color:var(--td-error-color-6);--td-success-color:var(--td-success-color-5);--td-brand-color-focus:var(--td-primary-color-1);--td-brand-color-active:var(--td-primary-color-8);--td-brand-color-disabled:var(--td-primary-color-3);--td-brand-color-light:var(--td-primary-color-1);--td-brand-color-light-active:var(--td-primary-color-2);--td-warning-color-active:var(--td-warning-color-6);--td-warning-color-disabled:var(--td-warning-color-3);--td-warning-color-focus:var(--td-warning-color-2);--td-warning-color-light:var(--td-warning-color-1);--td-warning-color-light-active:var(--td-warning-color-2);--td-error-color-focus:var(--td-error-color-2);--td-error-color-active:var(--td-error-color-7);--td-error-color-disabled:var(--td-error-color-3);--td-error-color-light:var(--td-error-color-1);--td-error-color-light-active:var(--td-error-color-2);--td-success-color-focus:var(--td-success-color-2);--td-success-color-active:var(--td-success-color-6);--td-success-color-disabled:var(--td-success-color-3);--td-success-color-light:var(--td-success-color-1);--td-success-color-light-active:var(--td-success-color-2);--td-mask-active:rgba(0, 0, 0, 0.6);--td-mask-disabled:rgba(255, 255, 255, 0.6);--td-bg-color-page:var(--td-gray-color-1);--td-bg-color-container:var(--td-font-white-1);--td-bg-color-container-active:var(--td-gray-color-3);--td-bg-color-secondarycontainer:var(--td-gray-color-1);--td-bg-color-secondarycontainer-active:var(--td-gray-color-4);--td-bg-color-component:var(--td-gray-color-3);--td-bg-color-component-active:var(--td-gray-color-6);--td-bg-color-component-disabled:var(--td-gray-color-2);--td-bg-color-secondarycomponent:var(--td-gray-color-4);--td-bg-color-secondarycomponent-active:var(--td-gray-color-6);--td-bg-color-specialcomponent:#fff;--td-text-color-primary:var(--td-font-gray-1);--td-text-color-secondary:var(--td-font-gray-2);--td-text-color-placeholder:var(--td-font-gray-3);--td-text-color-disabled:var(--td-font-gray-4);--td-text-color-anti:var(--td-font-white-1);--td-text-color-brand:var(--td-brand-color);--td-text-color-link:var(--td-brand-color);--td-border-level-1-color:var(--td-gray-color-3);--td-component-stroke:var(--td-gray-color-3);--td-border-level-2-color:var(--td-gray-color-4);--td-component-border:var(--td-gray-color-4);--td-shadow-1:0 1px 10px rgba(0, 0, 0, 0.05),0 4px 5px rgba(0, 0, 0, 0.08),0 2px 4px -1px rgba(0, 0, 0, 0.12);--td-shadow-2:0 3px 14px 2px rgba(0, 0, 0, 0.05),0 8px 10px 1px rgba(0, 0, 0, 0.06),0 5px 5px -3px rgba(0, 0, 0, 0.1);--td-shadow-3:0 6px 30px 5px rgba(0, 0, 0, 0.05),0 16px 24px 2px rgba(0, 0, 0, 0.04),0 8px 10px -5px rgba(0, 0, 0, 0.08);--td-shadow-4:0 2px 8px 0 rgba(0, 0, 0, 0.06);--td-shadow-inset-top:inset 0 0.5px 0 #dcdcdc;--td-shadow-inset-right:inset 0.5px 0 0 #dcdcdc;--td-shadow-inset-bottom:inset 0 -0.5px 0 #dcdcdc;--td-shadow-inset-left:inset -0.5px 0 0 #dcdcdc;--td-table-shadow-color:rgba(0, 0, 0, 0.08);--td-scrollbar-color:rgba(0, 0, 0, 0.1);--td-scrollbar-hover-color:rgba(0, 0, 0, 0.3);--td-scroll-track-color:#fff}}@media (prefers-color-scheme:dark){.page,page{--td-brand-color-1:#1b2f51;--td-brand-color-2:#173463;--td-brand-color-3:#143975;--td-brand-color-4:#103d88;--td-brand-color-5:#0d429a;--td-brand-color-6:#054bbe;--td-brand-color-7:#2667d4;--td-brand-color-8:#4582e6;--td-brand-color-9:#699ef5;--td-brand-color-10:#96bbf8;--td-primary-color-1:var(--td-brand-color-1);--td-primary-color-2:var(--td-brand-color-2);--td-primary-color-3:var(--td-brand-color-3);--td-primary-color-4:var(--td-brand-color-4);--td-primary-color-5:var(--td-brand-color-5);--td-primary-color-6:var(--td-brand-color-6);--td-primary-color-7:var(--td-brand-color-7);--td-primary-color-8:var(--td-brand-color-8);--td-primary-color-9:var(--td-brand-color-9);--td-primary-color-10:var(--td-brand-color-10);--td-warning-color-1:#4f2a1d;--td-warning-color-2:#582f21;--td-warning-color-3:#733c23;--td-warning-color-4:#a75d2b;--td-warning-color-5:#cf6e2d;--td-warning-color-6:#dc7633;--td-warning-color-7:#e8935c;--td-warning-color-8:#ecbf91;--td-warning-color-9:#eed7bf;--td-warning-color-10:#f3e9dc;--td-error-color-1:#472324;--td-error-color-2:#5e2a2d;--td-error-color-3:#703439;--td-error-color-4:#83383e;--td-error-color-5:#a03f46;--td-error-color-6:#c64751;--td-error-color-7:#de6670;--td-error-color-8:#ec888e;--td-error-color-9:#edb1b6;--td-error-color-10:#eeced0;--td-success-color-1:#193a2a;--td-success-color-2:#1a4230;--td-success-color-3:#17533d;--td-success-color-4:#0d7a55;--td-success-color-5:#059465;--td-success-color-6:#43af8a;--td-success-color-7:#46bf96;--td-success-color-8:#80d2b6;--td-success-color-9:#b4e1d3;--td-success-color-10:#deede8;--td-gray-color-1:#f3f3f3;--td-gray-color-2:#eee;--td-gray-color-3:#e8e8e8;--td-gray-color-4:#ddd;--td-gray-color-5:#c6c6c6;--td-gray-color-6:#a6a6a6;--td-gray-color-7:#8b8b8b;--td-gray-color-8:#777;--td-gray-color-9:#5e5e5e;--td-gray-color-10:#4b4b4b;--td-gray-color-11:#383838;--td-gray-color-12:#2c2c2c;--td-gray-color-13:#242424;--td-gray-color-14:#181818;--td-font-white-1:rgba(255, 255, 255, 0.9);--td-font-white-2:rgba(255, 255, 255, 0.55);--td-font-white-3:rgba(255, 255, 255, 0.35);--td-font-white-4:rgba(255, 255, 255, 0.22);--td-font-gray-1:rgba(0, 0, 0, 0.9);--td-font-gray-2:rgba(0, 0, 0, 0.6);--td-font-gray-3:rgba(0, 0, 0, 0.4);--td-font-gray-4:rgba(0, 0, 0, 0.26);--td-brand-color:var(--td-primary-color-8);--td-warning-color:var(--td-warning-color-5);--td-error-color:var(--td-error-color-6);--td-success-color:var(--td-success-color-5);--td-brand-color-focus:var(--td-primary-color-1);--td-brand-color-active:var(--td-primary-color-9);--td-brand-color-disabled:var(--td-primary-color-3);--td-brand-color-light:var(--td-primary-color-1);--td-brand-color-light-active:var(--td-primary-color-2);--td-warning-color-focus:var(--td-warning-color-2);--td-warning-color-active:var(--td-warning-color-4);--td-warning-color-disabled:var(--td-warning-color-3);--td-warning-color-light:var(--td-warning-color-1);--td-warning-color-light-active:var(--td-warning-color-2);--td-error-color-focus:var(--td-error-color-2);--td-error-color-active:var(--td-error-color-5);--td-error-color-disabled:var(--td-error-color-3);--td-error-color-light:var(--td-error-color-1);--td-error-color-light-active:var(--td-error-color-2);--td-success-color-focus:var(--td-success-color-2);--td-success-color-active:var(--td-success-color-4);--td-success-color-disabled:var(--td-success-color-3);--td-success-color-light:var(--td-success-color-1);--td-success-color-light-active:var(--td-success-color-2);--td-mask-active:rgba(0, 0, 0, 0.4);--td-mask-disabled:rgba(0, 0, 0, 0.6);--td-bg-color-page:var(--td-gray-color-14);--td-bg-color-container:var(--td-gray-color-13);--td-bg-color-secondarycontainer:var(--td-gray-color-12);--td-bg-color-component:var(--td-gray-color-11);--td-bg-color-container-active:var(--td-gray-color-12);--td-bg-color-secondarycontainer-active:var(--td-gray-color-11);--td-bg-color-component-active:var(--td-gray-color-10);--td-bg-color-component-disabled:var(--td-gray-color-12);--td-bg-color-specialcomponent:transparent;--td-text-color-primary:var(--td-font-white-1);--td-text-color-secondary:var(--td-font-white-2);--td-text-color-placeholder:var(--td-font-white-3);--td-text-color-disabled:var(--td-font-white-4);--td-text-color-anti:var(--td-font-white-1);--td-text-color-brand:var(--td-primary-color-8);--td-text-color-link:var(--td-primary-color-8);--td-border-level-1-color:var(--td-gray-color-11);--td-component-stroke:var(--td-gray-color-11);--td-border-level-2-color:var(--td-gray-color-9);--td-component-border:var(--td-gray-color-9);--td-shadow-1:0 4px 6px rgba(0, 0, 0, 0.06),0 1px 10px rgba(0, 0, 0, 0.08),0 2px 4px rgba(0, 0, 0, 0.12);--td-shadow-2:0 8px 10px rgba(0, 0, 0, 0.12),0 3px 14px rgba(0, 0, 0, 0.1),0 5px 5px rgba(0, 0, 0, 0.16);--td-shadow-3:0 16px 24px rgba(0, 0, 0, 0.14),0 6px 30px rgba(0, 0, 0, 0.12),0 8px 10px rgba(0, 0, 0, 0.2);--td-shadow-inset-top:inset 0 0.5px 0 #5e5e5e;--td-shadow-inset-right:inset 0.5px 0 0 #5e5e5e;--td-shadow-inset-bottom:inset 0 -0.5px 0 #5e5e5e;--td-shadow-inset-left:inset -0.5px 0 0 #5e5e5e;--td-table-shadow-color:rgba(0, 0, 0, 0.55);--td-scrollbar-color:rgba(255, 255, 255, 0.1);--td-scroll-track-color:#333}}.page,page{--td-radius-small:6rpx;--td-radius-default:12rpx;--td-radius-large:18rpx;--td-radius-extra-large:24rpx;--td-radius-round:999px;--td-radius-circle:50%}.page,page{--td-font-family:PingFang SC,Microsoft YaHei,Arial Regular;--td-font-family-medium:PingFang SC,Microsoft YaHei,Arial Medium;--td-font-size-link-small:24rpx;--td-font-size-link-medium:28rpx;--td-font-size-link-large:32rpx;--td-font-size-mark-extra-small:20rpx;--td-font-size-mark-small:24rpx;--td-font-size-mark-medium:28rpx;--td-font-size-mark-large:32rpx;--td-font-size-body-extra-small:20rpx;--td-font-size-body-small:24rpx;--td-font-size-body-medium:28rpx;--td-font-size-body-large:32rpx;--td-font-size-title-small:28rpx;--td-font-size-title-medium:32rpx;--td-font-size-title-large:36rpx;--td-font-size-title-extra-large:40rpx;--td-font-size-headline-small:48rpx;--td-font-size-headline-medium:56rpx;--td-font-size-headline-large:72rpx;--td-font-size-display-medium:96rpx;--td-font-size-display-large:128rpx;--td-font-size:20rpx;--td-font-size-xs:var(--td-font-size-body-extra-small);--td-font-size-s:var(--td-font-size-body-small);--td-font-size-base:var(--td-font-size-title-small);--td-font-size-m:var(--td-font-size-title-medium);--td-font-size-l:var(--td-font-size-title-large);--td-font-size-xl:var(--td-font-size-title-extra-large);--td-font-size-xxl:var(--td-font-size-headline-large)}.page,page{--td-spacer:16rpx;--td-spacer-1:24rpx;--td-spacer-2:32rpx;--td-spacer-3:48rpx;--td-spacer-4:64rpx;--td-spacer-5:96rpx;--td-spacer-6:160rpx}@media (prefers-color-scheme:light){.page,page{--td-picker-transparent-color:rgba(255, 255, 255, 0)}}@media (prefers-color-scheme:dark){.page,page{--td-button-primary-disabled-color:var(--td-font-white-4);--td-skeleton-animation-gradient:rgba(255, 255, 255, 0.06);--td-slider-dot-bg-color:var(--td-gray-color-4);--td-slider-dot-disabled-bg-color:var(--td-gray-color-11);--td-slider-dot-disabled-border-color:var(--td-gray-color-12);--td-picker-transparent-color:transparent;--td-switch-dot-disabled-color:var(--td-font-white-2)}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_light.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_light.wxss new file mode 100644 index 0000000..2d1dab5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_light.wxss @@ -0,0 +1 @@ +@media (prefers-color-scheme:light){.page,page{--td-brand-color-1:#f2f3ff;--td-brand-color-2:#d9e1ff;--td-brand-color-3:#b5c7ff;--td-brand-color-4:#8eabff;--td-brand-color-5:#618dff;--td-brand-color-6:#366ef4;--td-brand-color-7:#0052d9;--td-brand-color-8:#003cab;--td-brand-color-9:#002a7c;--td-brand-color-10:#001a57;--td-primary-color-1:var(--td-brand-color-1);--td-primary-color-2:var(--td-brand-color-2);--td-primary-color-3:var(--td-brand-color-3);--td-primary-color-4:var(--td-brand-color-4);--td-primary-color-5:var(--td-brand-color-5);--td-primary-color-6:var(--td-brand-color-6);--td-primary-color-7:var(--td-brand-color-7);--td-primary-color-8:var(--td-brand-color-8);--td-primary-color-9:var(--td-brand-color-9);--td-primary-color-10:var(--td-brand-color-10);--td-warning-color-1:#fff1e9;--td-warning-color-2:#ffd9c2;--td-warning-color-3:#ffb98c;--td-warning-color-4:#fa9550;--td-warning-color-5:#e37318;--td-warning-color-6:#be5a00;--td-warning-color-7:#954500;--td-warning-color-8:#713300;--td-warning-color-9:#532300;--td-warning-color-10:#3b1700;--td-error-color-1:#fff0ed;--td-error-color-2:#ffd8d2;--td-error-color-3:#ffb9b0;--td-error-color-4:#ff9285;--td-error-color-5:#f6685d;--td-error-color-6:#d54941;--td-error-color-7:#ad352f;--td-error-color-8:#881f1c;--td-error-color-9:#68070a;--td-error-color-10:#490002;--td-success-color-1:#e3f9e9;--td-success-color-2:#c6f3d7;--td-success-color-3:#92dab2;--td-success-color-4:#56c08d;--td-success-color-5:#2ba471;--td-success-color-6:#008858;--td-success-color-7:#006c45;--td-success-color-8:#005334;--td-success-color-9:#003b23;--td-success-color-10:#002515;--td-gray-color-1:#f3f3f3;--td-gray-color-2:#eeeeee;--td-gray-color-3:#e7e7e7;--td-gray-color-4:#dcdcdc;--td-gray-color-5:#c5c5c5;--td-gray-color-6:#a6a6a6;--td-gray-color-7:#8b8b8b;--td-gray-color-8:#777777;--td-gray-color-9:#5e5e5e;--td-gray-color-10:#4b4b4b;--td-gray-color-11:#383838;--td-gray-color-12:#2c2c2c;--td-gray-color-13:#242424;--td-gray-color-14:#181818;--td-font-white-1:#ffffff;--td-font-white-2:rgba(255, 255, 255, 0.55);--td-font-white-3:rgba(255, 255, 255, 0.35);--td-font-white-4:rgba(255, 255, 255, 0.22);--td-font-gray-1:rgba(0, 0, 0, 0.9);--td-font-gray-2:rgba(0, 0, 0, 0.6);--td-font-gray-3:rgba(0, 0, 0, 0.4);--td-font-gray-4:rgba(0, 0, 0, 0.26);--td-brand-color:var(--td-primary-color-7);--td-warning-color:var(--td-warning-color-5);--td-error-color:var(--td-error-color-6);--td-success-color:var(--td-success-color-5);--td-brand-color-focus:var(--td-primary-color-1);--td-brand-color-active:var(--td-primary-color-8);--td-brand-color-disabled:var(--td-primary-color-3);--td-brand-color-light:var(--td-primary-color-1);--td-brand-color-light-active:var(--td-primary-color-2);--td-warning-color-active:var(--td-warning-color-6);--td-warning-color-disabled:var(--td-warning-color-3);--td-warning-color-focus:var(--td-warning-color-2);--td-warning-color-light:var(--td-warning-color-1);--td-warning-color-light-active:var(--td-warning-color-2);--td-error-color-focus:var(--td-error-color-2);--td-error-color-active:var(--td-error-color-7);--td-error-color-disabled:var(--td-error-color-3);--td-error-color-light:var(--td-error-color-1);--td-error-color-light-active:var(--td-error-color-2);--td-success-color-focus:var(--td-success-color-2);--td-success-color-active:var(--td-success-color-6);--td-success-color-disabled:var(--td-success-color-3);--td-success-color-light:var(--td-success-color-1);--td-success-color-light-active:var(--td-success-color-2);--td-mask-active:rgba(0, 0, 0, 0.6);--td-mask-disabled:rgba(255, 255, 255, 0.6);--td-bg-color-page:var(--td-gray-color-1);--td-bg-color-container:var(--td-font-white-1);--td-bg-color-container-active:var(--td-gray-color-3);--td-bg-color-secondarycontainer:var(--td-gray-color-1);--td-bg-color-secondarycontainer-active:var(--td-gray-color-4);--td-bg-color-component:var(--td-gray-color-3);--td-bg-color-component-active:var(--td-gray-color-6);--td-bg-color-component-disabled:var(--td-gray-color-2);--td-bg-color-secondarycomponent:var(--td-gray-color-4);--td-bg-color-secondarycomponent-active:var(--td-gray-color-6);--td-bg-color-specialcomponent:#fff;--td-text-color-primary:var(--td-font-gray-1);--td-text-color-secondary:var(--td-font-gray-2);--td-text-color-placeholder:var(--td-font-gray-3);--td-text-color-disabled:var(--td-font-gray-4);--td-text-color-anti:var(--td-font-white-1);--td-text-color-brand:var(--td-brand-color);--td-text-color-link:var(--td-brand-color);--td-border-level-1-color:var(--td-gray-color-3);--td-component-stroke:var(--td-gray-color-3);--td-border-level-2-color:var(--td-gray-color-4);--td-component-border:var(--td-gray-color-4);--td-shadow-1:0 1px 10px rgba(0, 0, 0, 0.05),0 4px 5px rgba(0, 0, 0, 0.08),0 2px 4px -1px rgba(0, 0, 0, 0.12);--td-shadow-2:0 3px 14px 2px rgba(0, 0, 0, 0.05),0 8px 10px 1px rgba(0, 0, 0, 0.06),0 5px 5px -3px rgba(0, 0, 0, 0.1);--td-shadow-3:0 6px 30px 5px rgba(0, 0, 0, 0.05),0 16px 24px 2px rgba(0, 0, 0, 0.04),0 8px 10px -5px rgba(0, 0, 0, 0.08);--td-shadow-4:0 2px 8px 0 rgba(0, 0, 0, 0.06);--td-shadow-inset-top:inset 0 0.5px 0 #dcdcdc;--td-shadow-inset-right:inset 0.5px 0 0 #dcdcdc;--td-shadow-inset-bottom:inset 0 -0.5px 0 #dcdcdc;--td-shadow-inset-left:inset -0.5px 0 0 #dcdcdc;--td-table-shadow-color:rgba(0, 0, 0, 0.08);--td-scrollbar-color:rgba(0, 0, 0, 0.1);--td-scrollbar-hover-color:rgba(0, 0, 0, 0.3);--td-scroll-track-color:#fff}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_radius.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_radius.wxss new file mode 100644 index 0000000..9d178bd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_radius.wxss @@ -0,0 +1 @@ +.page,page{--td-radius-small:6rpx;--td-radius-default:12rpx;--td-radius-large:18rpx;--td-radius-extra-large:24rpx;--td-radius-round:999px;--td-radius-circle:50%} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_spacer.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_spacer.wxss new file mode 100644 index 0000000..e0bee20 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/theme/_spacer.wxss @@ -0,0 +1 @@ +.page,page{--td-spacer:16rpx;--td-spacer-1:24rpx;--td-spacer-2:32rpx;--td-spacer-3:48rpx;--td-spacer-4:64rpx;--td-spacer-5:96rpx;--td-spacer-6:160rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/style/utilities/_index.wxss b/app/miniprogram_npm/tdesign-miniprogram/common/style/utilities/_index.wxss new file mode 100644 index 0000000..c6b6b97 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/style/utilities/_index.wxss @@ -0,0 +1 @@ +.hotspot-expanded.relative{position:relative}.hotspot-expanded::after{content:'';display:block;position:absolute;left:0;top:0;right:0;bottom:0;transform:scale(1.5)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/template/badge.wxml b/app/miniprogram_npm/tdesign-miniprogram/common/template/badge.wxml new file mode 100644 index 0000000..c9b3eed --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/template/badge.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/template/button.wxml b/app/miniprogram_npm/tdesign-miniprogram/common/template/button.wxml new file mode 100644 index 0000000..f89efee --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/template/button.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/template/icon.wxml b/app/miniprogram_npm/tdesign-miniprogram/common/template/icon.wxml new file mode 100644 index 0000000..c57fbec --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/template/icon.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/template/image.wxml b/app/miniprogram_npm/tdesign-miniprogram/common/template/image.wxml new file mode 100644 index 0000000..8d4bdfc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/template/image.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/utils.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/utils.d.ts new file mode 100644 index 0000000..49f0583 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/utils.d.ts @@ -0,0 +1,33 @@ +/// +/// +/// +export declare const systemInfo: WechatMiniprogram.WindowInfo | WechatMiniprogram.SystemInfo; +export declare const appBaseInfo: WechatMiniprogram.AppBaseInfo | WechatMiniprogram.SystemInfo; +export declare const deviceInfo: WechatMiniprogram.DeviceInfo | WechatMiniprogram.SystemInfo; +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +export declare const debounce: (func: any, wait?: number) => (...rest: any[]) => void; +export declare const throttle: (func: any, wait?: number, options?: any) => (...args: any[]) => void; +export declare const classNames: (...args: any[]) => string; +export declare const styles: (styleObj: any) => string; +export declare const getAnimationFrame: (context: any, cb: Function) => any; +export declare const getRect: (context: any, selector: string, needAll?: boolean) => Promise; +export declare const isIOS: () => boolean; +export declare const addUnit: (value?: string | number) => string | undefined; +export declare const getCharacterLength: (type: string, char: string | number, max?: number) => { + length: number; + characters: string; +}; +export declare const chunk: (arr: any[], size: number) => any[][]; +export declare const getInstance: (context?: Context, selector?: string) => WechatMiniprogram.Component.TrivialInstance; +export declare const unitConvert: (value: number | string | null | undefined) => number; +export declare const setIcon: (iconName: any, icon: any, defaultIcon: any) => { + [x: string]: any; +}; +export declare const toCamel: (str: any) => any; +export declare const getCurrentPage: () => T & WechatMiniprogram.OptionalInterface & WechatMiniprogram.Page.InstanceProperties & WechatMiniprogram.Page.InstanceMethods & WechatMiniprogram.Page.Data & WechatMiniprogram.IAnyObject; +export declare const uniqueFactory: (compName: any) => () => string; +export declare const calcIcon: (icon: string | Record, defaultIcon?: string) => Record; +export declare const isOverSize: (size: any, sizeLimit: any) => boolean; +export declare const rpx2px: (rpx: any) => number; +export declare const nextTick: () => Promise; +export {}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/utils.js b/app/miniprogram_npm/tdesign-miniprogram/common/utils.js new file mode 100644 index 0000000..eed0680 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/utils.js @@ -0,0 +1 @@ +import{prefix}from"./config";import{isString,isNumber,isDef,isBoolean,isObject}from"./validator";import{getWindowInfo,getAppBaseInfo,getDeviceInfo}from"./wechat";export const systemInfo=getWindowInfo();export const appBaseInfo=getAppBaseInfo();export const deviceInfo=getDeviceInfo();export const debounce=function(e,t=500){let n;return function(...o){n&&clearTimeout(n),n=setTimeout((()=>{e.apply(this,o)}),t)}};export const throttle=(e,t=100,n=null)=>{let o=0,r=null;return n||(n={leading:!0}),function(...s){const c=Date.now();o||n.leading||(o=c);const i=this;t-(c-o)<=0&&(r&&(clearTimeout(r),r=null),o=c,e.apply(i,s))}};export const classNames=function(...e){const t={}.hasOwnProperty,n=[];return e.forEach((e=>{if(!e)return;const o=typeof e;if("string"===o||"number"===o)n.push(e);else if(Array.isArray(e)&&e.length){const t=classNames(...e);t&&n.push(t)}else if("object"===o)for(const o in e)t.call(e,o)&&e[o]&&n.push(o)})),n.join(" ")};export const styles=function(e){return Object.keys(e).map((t=>`${t}: ${e[t]}`)).join("; ")};export const getAnimationFrame=function(e,t){return e.createSelectorQuery().selectViewport().boundingClientRect().exec((()=>{t()}))};export const getRect=function(e,t,n=!1){return new Promise(((o,r)=>{e.createSelectorQuery()[n?"selectAll":"select"](t).boundingClientRect((e=>{e?o(e):r(e)})).exec()}))};export const isIOS=function(){var e;return!!((null===(e=null==deviceInfo?void 0:deviceInfo.system)||void 0===e?void 0:e.toLowerCase().search("ios"))+1)};export const addUnit=function(e){if(isDef(e))return e=String(e),isNumber(e)?`${e}px`:e};export const getCharacterLength=(e,t,n)=>{const o=String(null!=t?t:"");if(0===o.length)return{length:0,characters:""};if("maxcharacter"===e){let e=0;for(let t=0;t127||94===o.charCodeAt(t)?2:1,e+r>n)return{length:e,characters:o.slice(0,t)};e+=r}return{length:e,characters:o}}if("maxlength"===e){const e=o.length>n?n:o.length;return{length:e,characters:o.slice(0,e)}}return{length:o.length,characters:o}};export const chunk=(e,t)=>Array.from({length:Math.ceil(e.length/t)},((n,o)=>e.slice(o*t,o*t+t)));export const getInstance=function(e,t){if(!e){const t=getCurrentPages(),n=t[t.length-1];e=n.$$basePage||n}const n=e?e.selectComponent(t):null;return n||(console.warn("未找到组件,请检查selector是否正确"),null)};export const unitConvert=e=>{var t;return"string"==typeof e?e.includes("rpx")?parseInt(e,10)*(null!==(t=null==systemInfo?void 0:systemInfo.screenWidth)&&void 0!==t?t:750)/750:parseInt(e,10):null!=e?e:0};export const setIcon=(e,t,n)=>t?"string"==typeof t?{[`${e}Name`]:t,[`${e}Data`]:{}}:"object"==typeof t?{[`${e}Name`]:"",[`${e}Data`]:t}:{[`${e}Name`]:n,[`${e}Data`]:{}}:{[`${e}Name`]:"",[`${e}Data`]:{}};export const toCamel=e=>e.replace(/-(\w)/g,((e,t)=>t.toUpperCase()));export const getCurrentPage=function(){const e=getCurrentPages();return e[e.length-1]};export const uniqueFactory=e=>{let t=0;return()=>{const n=`${prefix}_${e}_${t}`;return t+=1,n}};export const calcIcon=(e,t)=>e&&(isBoolean(e)&&t||isString(e))?{name:isBoolean(e)?t:e}:isObject(e)?e:null;export const isOverSize=(e,t)=>{var n;if(!t)return!1;const o=1e3,r={B:1,KB:o,MB:1e6,GB:1e9};return e>("number"==typeof t?t*o:(null==t?void 0:t.size)*r[null!==(n=null==t?void 0:t.unit)&&void 0!==n?n:"KB"])};export const rpx2px=e=>Math.floor(systemInfo.windowWidth*e/750);export const nextTick=()=>new Promise((e=>{wx.nextTick((()=>{e()}))})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/utils.wxs b/app/miniprogram_npm/tdesign-miniprogram/common/utils.wxs new file mode 100644 index 0000000..8b7259e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/utils.wxs @@ -0,0 +1,149 @@ +/* utils */ + +/** + * addUnit */ +// 为 css 添加单位 +function addUnit(value) { + // prettier-ignore + var REGEXP = getRegExp('^-?\d+(.\d+)?$'); + if (value == null) { + return undefined; + } + return REGEXP.test('' + value) ? value + 'px' : value; +} + +function isString(string) { + return string && string.constructor === 'String'; +} + +function isArray(array) { + return array && array.constructor === 'Array'; +} + +function isObject(obj) { + return obj && obj.constructor === 'Object'; +} + +function isBoolean(value) { + return typeof value === 'boolean'; +} + +var isNoEmptyObj = function (obj) { + return isObject(obj) && JSON.stringify(obj) !== '{}'; +}; + +function includes(arr, value) { + if (!arr || !isArray(arr)) return false; + + var i = 0; + var len = arr.length; + + for (; i < len; i++) { + if (arr[i] === value) return true; + } + return false; +} + +function cls(base, arr) { + var res = [base]; + var i = 0; + for (var size = arr.length; i < size; i++) { + var item = arr[i]; + + if (item && item.constructor === 'Array') { + var key = arr[i][0]; + var value = arr[i][1]; + + if (value) { + res.push(base + '--' + key); + } + } else if (typeof item === 'string' || typeof item === 'number') { + if (item) { + res.push(base + '--' + item); + } + } + } + return res.join(' '); +} + +function getBadgeAriaLabel(options) { + var maxCount = options.maxCount || 99; + if (options.dot) { + return '有新的消息'; + } + if (options.count === '...') { + return '有很多消息'; + } + if (isNaN(options.count)) { + return options.count; + } + var str1 = '有' + maxCount + '+条消息'; + var str2 = '有' + options.count + '条消息'; + return Number(options.count) > maxCount ? str1 : str2; +} + +function endsWith(str, endStr) { + return str.slice(-endStr.length) === endStr ? str : str + endStr; +} + +function keys(obj) { + return JSON.stringify(obj) + .replace(getRegExp('{|}|"', 'g'), '') + .split(',') + .map(function (item) { + return item.split(':')[0]; + }); +} + +function kebabCase(str) { + return str + .replace(getRegExp('[A-Z]', 'g'), function (ele) { + return '-' + ele; + }) + .toLowerCase(); +} + +function _style(styles) { + if (isArray(styles)) { + return styles + .filter(function (item) { + return item != null && item !== ''; + }) + .map(function (item) { + return isArray(item) ? _style(item) : endsWith(item, ';'); + }) + .join(' '); + } + + if (isObject(styles)) { + return keys(styles) + .filter(function (key) { + return styles[key] != null && styles[key] !== ''; + }) + .map(function (key) { + return [kebabCase(key), [styles[key]]].join(':'); + }) + .join(';'); + } + + return styles; +} + +function isValidIconName(str) { + // prettier-ignore + return getRegExp('^[A-Za-z0-9\-]+$').test(str); +} + +module.exports = { + addUnit: addUnit, + isString: isString, + isArray: isArray, + isObject: isObject, + isBoolean: isBoolean, + isNoEmptyObj: isNoEmptyObj, + includes: includes, + cls: cls, + getBadgeAriaLabel: getBadgeAriaLabel, + _style: _style, + isValidIconName: isValidIconName, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/validator.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/validator.d.ts new file mode 100644 index 0000000..2e377aa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/validator.d.ts @@ -0,0 +1,9 @@ +export declare function isFunction(val: unknown): val is Function; +export declare const isString: (val: unknown) => val is string; +export declare const isNull: (value: T) => value is null; +export declare const isUndefined: (value: T) => value is undefined; +export declare function isDef(value: unknown): boolean; +export declare function isNumber(value: string): boolean; +export declare function isBoolean(value: unknown): value is boolean; +export declare function isObject(x: unknown): x is Record; +export declare function isPlainObject(val: unknown): val is Record; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/validator.js b/app/miniprogram_npm/tdesign-miniprogram/common/validator.js new file mode 100644 index 0000000..3cb3c73 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/validator.js @@ -0,0 +1 @@ +export function isFunction(t){return"function"==typeof t}export const isString=t=>"string"==typeof t;export const isNull=t=>null===t;export const isUndefined=t=>void 0===t;export function isDef(t){return!isUndefined(t)&&!isNull(t)}export function isNumber(t){return/^\d+(\.\d+)?$/.test(t)}export function isBoolean(t){return"boolean"==typeof t}export function isObject(t){const n=typeof t;return null!==t&&("object"===n||"function"===n)}export function isPlainObject(t){return null!==t&&"object"==typeof t&&"[object Object]"===Object.prototype.toString.call(t)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/version.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/version.d.ts new file mode 100644 index 0000000..21e0b9e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/version.d.ts @@ -0,0 +1,4 @@ +export declare function compareVersion(v1: any, v2: any): 0 | 1 | -1; +export declare function canIUseFormFieldButton(): boolean; +export declare function canUseVirtualHost(): boolean; +export declare function canUseProxyScrollView(): boolean; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/version.js b/app/miniprogram_npm/tdesign-miniprogram/common/version.js new file mode 100644 index 0000000..a186b0f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/version.js @@ -0,0 +1 @@ +import{getAppBaseInfo}from"./wechat";let systemInfo;function getSystemInfo(){return null==systemInfo&&(systemInfo=getAppBaseInfo()),systemInfo}export function compareVersion(e,n){e=e.split("."),n=n.split(".");const t=Math.max(e.length,n.length);for(;e.lengtho)return 1;if(t=0}export function canIUseFormFieldButton(){return judgeByVersion("2.10.3")}export function canUseVirtualHost(){return judgeByVersion("2.19.2")}export function canUseProxyScrollView(){return judgeByVersion("2.19.2")} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/wechat.d.ts b/app/miniprogram_npm/tdesign-miniprogram/common/wechat.d.ts new file mode 100644 index 0000000..db57069 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/wechat.d.ts @@ -0,0 +1,4 @@ +export declare const getObserver: (context: any, selector: string) => Promise; +export declare const getWindowInfo: () => WechatMiniprogram.WindowInfo | WechatMiniprogram.SystemInfo; +export declare const getAppBaseInfo: () => WechatMiniprogram.SystemInfo | WechatMiniprogram.AppBaseInfo; +export declare const getDeviceInfo: () => WechatMiniprogram.SystemInfo | WechatMiniprogram.DeviceInfo; diff --git a/app/miniprogram_npm/tdesign-miniprogram/common/wechat.js b/app/miniprogram_npm/tdesign-miniprogram/common/wechat.js new file mode 100644 index 0000000..62f7af1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/common/wechat.js @@ -0,0 +1 @@ +export const getObserver=(e,t)=>new Promise((o=>{e.createIntersectionObserver(e).relativeToViewport().observe(t,(e=>{o(e)}))}));export const getWindowInfo=()=>wx.getWindowInfo&&wx.getWindowInfo()||wx.getSystemInfoSync();export const getAppBaseInfo=()=>wx.getAppBaseInfo&&wx.getAppBaseInfo()||wx.getSystemInfoSync();export const getDeviceInfo=()=>wx.getDeviceInfo&&wx.getDeviceInfo()||wx.getSystemInfoSync(); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.d.ts b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.d.ts new file mode 100644 index 0000000..111e788 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.d.ts @@ -0,0 +1,34 @@ +import { SuperComponent } from '../common/src/index'; +export default class CountDown extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdCountDownProps; + observers: { + time(): void; + }; + data: { + prefix: string; + classPrefix: string; + timeDataUnit: { + DD: string; + HH: string; + mm: string; + ss: string; + SSS: string; + }; + timeData: import("./utils").TimeData; + formattedTime: string; + }; + timeoutId: null | number; + isInitialTime: boolean; + lifetimes: { + detached(): void; + }; + methods: { + start(): void; + pause(): void; + reset(): void; + getTime(): number; + updateTime(remain: number): void; + doCount(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.js b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.js new file mode 100644 index 0000000..148aa4d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{isSameSecond,parseFormat,parseTimeData,TimeDataUnit}from"./utils";const{prefix:prefix}=config,name=`${prefix}-count-down`;let CountDown=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-count`,`${prefix}-class-split`],this.properties=props,this.observers={time(){this.reset()}},this.data={prefix:prefix,classPrefix:name,timeDataUnit:TimeDataUnit,timeData:parseTimeData(0),formattedTime:"0"},this.timeoutId=null,this.isInitialTime=!1,this.lifetimes={detached(){this.timeoutId&&(clearTimeout(this.timeoutId),this.timeoutId=null)}},this.methods={start(){this.counting||(this.counting=!0,this.endTime=Date.now()+this.remain,this.doCount())},pause(){this.counting=!1,this.timeoutId&&clearTimeout(this.timeoutId)},reset(){this.pause(),this.remain=this.properties.time,this.updateTime(this.remain),this.properties.autoStart&&this.remain>0&&this.start(),this.isInitialTime=!0},getTime(){return Math.max(this.endTime-Date.now(),0)},updateTime(t){const{format:i}=this.properties;this.remain=t;const e=parseTimeData(t);this.triggerEvent("change",e);const{timeText:s}=parseFormat(t,i),o=i.split(":");this.setData({timeRange:o,timeData:e,formattedTime:s.replace(/:/g," : ")}),0===t&&(this.counting||this.isInitialTime)&&(this.pause(),this.triggerEvent("finish"),this.counting=!1)},doCount(){this.timeoutId=setTimeout((()=>{const t=this.getTime();this.properties.millisecond?this.updateTime(t):isSameSecond(t,this.remain)&&0!==t||this.updateTime(t),0!==t&&this.doCount()}),33)}}}};CountDown=__decorate([wxComponent()],CountDown);export default CountDown; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.json b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxml b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxml new file mode 100644 index 0000000..2db5e3c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxml @@ -0,0 +1 @@ +{{formattedTime}}{{_this.format(timeData[timeRange[index]])}}{{splitWithUnit ? timeDataUnit[timeRange[index]] : ':'}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxs b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxs new file mode 100644 index 0000000..0d17afa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxs @@ -0,0 +1,3 @@ +module.exports.format = function (num) { + return num < 10 ? '0' + num : num; +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxss b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxss new file mode 100644 index 0000000..ce27f4c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/count-down.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-count-down--small.t-count-down--default{font-size:var(--td-font-size-base,28rpx)}.t-count-down--small.t-count-down--round>.t-count-down__item{font-size:var(--td-font-size-s,24rpx)}.t-count-down--small.t-count-down--square>.t-count-down__item{font-size:var(--td-font-size-s,24rpx)}.t-count-down--small.t-count-down--round>.t-count-down__item,.t-count-down--small.t-count-down--square>.t-count-down__item{width:40rpx;height:40rpx}.t-count-down--small.t-count-down--round>.t-count-down__split--dot,.t-count-down--small.t-count-down--square>.t-count-down__split--dot{margin:0 4rpx;font-size:var(--td-font-size-base,28rpx);font-weight:700}.t-count-down--small.t-count-down--round>.t-count-down__split--text,.t-count-down--small.t-count-down--square>.t-count-down__split--text{margin:0 8rpx;font-size:var(--td-font-size,20rpx)}.t-count-down--medium.t-count-down--default{font-size:var(--td-font-size-m,32rpx)}.t-count-down--medium.t-count-down--round>.t-count-down__item{font-size:var(--td-font-size-base,28rpx)}.t-count-down--medium.t-count-down--square>.t-count-down__item{font-size:var(--td-font-size-base,28rpx)}.t-count-down--medium.t-count-down--round>.t-count-down__item,.t-count-down--medium.t-count-down--square>.t-count-down__item{width:48rpx;height:48rpx}.t-count-down--medium.t-count-down--round>.t-count-down__split--dot,.t-count-down--medium.t-count-down--square>.t-count-down__split--dot{margin:0 6rpx;font-size:var(--td-font-size-m,32rpx);font-weight:700}.t-count-down--medium.t-count-down--round>.t-count-down__split--text,.t-count-down--medium.t-count-down--square>.t-count-down__split--text{margin:0 10rpx;font-size:var(--td-font-size-s,24rpx)}.t-count-down--large.t-count-down--default{font-size:36rpx}.t-count-down--large.t-count-down--round>.t-count-down__item{font-size:var(--td-font-size-m,32rpx)}.t-count-down--large.t-count-down--square>.t-count-down__item{font-size:var(--td-font-size-m,32rpx)}.t-count-down--large.t-count-down--round>.t-count-down__item,.t-count-down--large.t-count-down--square>.t-count-down__item{width:56rpx;height:56rpx}.t-count-down--large.t-count-down--round>.t-count-down__split--dot,.t-count-down--large.t-count-down--square>.t-count-down__split--dot{margin:0 12rpx;font-size:36rpx;font-weight:700}.t-count-down--large.t-count-down--round>.t-count-down__split--text,.t-count-down--large.t-count-down--square>.t-count-down__split--text{margin:0 12rpx;font-size:var(--td-font-size-base,28rpx)}.t-count-down{font-family:TCloudNumber,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Hiragino Sans GB,Microsoft YaHei UI,Microsoft YaHei,Source Han Sans CN,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol;display:flex}.t-count-down .t-count-down__item,.t-count-down .t-count-down__split{display:flex;align-items:center;justify-content:center}.t-count-down--round>.t-count-down__split--dot,.t-count-down--square>.t-count-down__split--dot{color:var(--td-error-color,var(--td-error-color-6,#d54941))}.t-count-down--round>.t-count-down__split--text,.t-count-down--square>.t-count-down__split--text{color:var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9)))}.t-count-down--default{color:var(--td-countdown-default-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-count-down--square{color:var(--td-countdown-round-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-count-down--square>.t-count-down__item{border-radius:var(--td-countdown-square-border-radius,var(--td-radius-small,6rpx));background:var(--td-countdown-bg-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-count-down--round{color:var(--td-countdown-round-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-count-down--round>.t-count-down__item{border-radius:var(--td-countdown-round-border-radius,var(--td-radius-circle,50%));background:var(--td-countdown-bg-color,var(--td-error-color,var(--td-error-color-6,#d54941)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/props.js b/app/miniprogram_npm/tdesign-miniprogram/count-down/props.js new file mode 100644 index 0000000..0897077 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/props.js @@ -0,0 +1 @@ +const props={autoStart:{type:Boolean,value:!0},content:{type:String,value:"default"},format:{type:String,value:"HH:mm:ss"},millisecond:{type:Boolean,value:!1},size:{type:String,value:"medium"},splitWithUnit:{type:Boolean,value:!1},theme:{type:String,value:"default"},time:{type:Number,value:0,required:!0}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/type.js b/app/miniprogram_npm/tdesign-miniprogram/count-down/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.d.ts b/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.d.ts new file mode 100644 index 0000000..18c1fac --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.d.ts @@ -0,0 +1,25 @@ +export interface TimeData { + DD: number; + HH: number; + mm: number; + ss: number; + SSS: number; +} +export declare const TimeDataUnit: { + DD: string; + HH: string; + mm: string; + ss: string; + SSS: string; +}; +export declare const parseTimeData: (time: number) => TimeData; +export declare const isSameSecond: (time1: number, time2: number) => boolean; +export declare type TTimeList = { + digit: string; + unit: string; + match: string; +}[]; +export declare const parseFormat: (time: number, format: string) => { + timeText: string; + timeList: TTimeList; +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.js b/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.js new file mode 100644 index 0000000..03f92a5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/count-down/utils.js @@ -0,0 +1 @@ +export const TimeDataUnit={DD:"天",HH:"时",mm:"分",ss:"秒",SSS:"毫秒"};const SECOND=1e3,MINUTE=6e4,HOUR=36e5,DAY=24*HOUR;export const parseTimeData=function(t){return{DD:Math.floor(t/DAY),HH:Math.floor(t%DAY/HOUR),mm:Math.floor(t%HOUR/6e4),ss:Math.floor(t%6e4/1e3),SSS:Math.floor(t%1e3)}};export const isSameSecond=function(t,e){return Math.floor(t/1e3)===Math.floor(e/1e3)};export const parseFormat=function(t,e){const o={"D+":Math.floor(t/864e5),"H+":Math.floor(t%864e5/36e5),"m+":Math.floor(t%36e5/6e4),"s+":Math.floor(t%6e4/1e3),"S+":Math.floor(t%1e3)},r=[];let n=e;return Object.keys(o).forEach((t=>{new RegExp(`(${t})`).test(n)&&(n=n.replace(RegExp.$1,((e,n,s)=>{const a=`${o[t]}`;let l=a;e.length>1&&(l=(e.replace(new RegExp(e[0],"g"),"0")+a).substr(a.length));const h=s.substr(n+e.length),c=r[r.length-1];if(c){const t=c.unit.indexOf(e);-1!==t&&(c.unit=c.unit.substr(0,t))}return r.push({digit:l,unit:h,match:e}),l})))})),{timeText:n,timeList:r}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.d.ts new file mode 100644 index 0000000..e29ab2c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.d.ts @@ -0,0 +1,80 @@ +import type { Dayjs } from 'dayjs'; +import { SuperComponent } from '../common/src/index'; +declare enum ModeItem { + YEAR = "year", + MONTH = "month", + DATE = "date", + HOUR = "hour", + MINUTE = "minute", + SECOND = "second" +} +interface ColumnItemValue { + value: string | number; + label: string | number; +} +export default class DateTimePicker extends SuperComponent { + properties: import("./type").TdDateTimePickerProps; + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + observers: { + 'start, end, value': () => void; + customLocale(v: any): void; + mode(m: any): void; + }; + date: any; + data: { + prefix: string; + classPrefix: string; + columns: any[]; + columnsValue: any[]; + fullModes: any[]; + locale: any; + dayjsLocale: any; + }; + controlledProps: { + key: string; + event: string; + }[]; + methods: { + updateColumns(): void; + getDaysOfWeekInMonth(date: Dayjs): Array<{ + value: string; + label: string; + }>; + getParseDate(): Dayjs; + normalize(val: string | number, defaultDay: Dayjs): Dayjs; + getMinDate(): Dayjs; + getMaxDate(): Dayjs; + getDateRect(type?: string): any[]; + getDate(): Dayjs; + clipDate(date: Dayjs): Dayjs; + setYear(date: Dayjs, year: number): Dayjs; + setMonth(date: Dayjs, month: number): Dayjs; + getColumnOptions(): any[]; + getOptionByType(type: string): any; + getYearOptions(dateParams: any): ColumnItemValue[]; + getOptionEdge(minOrMax: 'min' | 'max', type: any): any; + getMonthOptions(): ColumnItemValue[]; + getDayOptions(): ColumnItemValue[]; + getHourOptions(): ColumnItemValue[]; + getMinuteOptions(): ColumnItemValue[]; + getValueCols(this: DateTimePicker): { + columns: any; + columnsValue: any; + }; + getColumnsValue(): string[]; + getNewDate(value: number, type: ModeItem): Dayjs; + onColumnChange(e: WechatMiniprogram.CustomEvent): void; + onConfirm(): void; + onCancel(): void; + onVisibleChange(e: any): void; + onClose(e: any): void; + resetColumns(): void; + }; + getFullModeArray(mode: any): any; + getFullModeByModeString(modeString: any, matchModes: any): any; + isTimeMode(): boolean; +} +export {}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.js new file mode 100644 index 0000000..b157d17 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.js @@ -0,0 +1 @@ +var _a,_b;import{__decorate}from"tslib";import dayjs from"dayjs";import localeData from"dayjs/plugin/localeData";import config from"../common/config";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import dayjsLocaleMap from"./locale/dayjs";dayjs.extend(localeData),dayjs.locale("zh-cn");const defaultLocale=(null===(_a=dayjsLocaleMap[dayjs.locale()])||void 0===_a?void 0:_a.key)||(null===(_b=dayjsLocaleMap.default)||void 0===_b?void 0:_b.key),{prefix:prefix}=config,name=`${prefix}-date-time-picker`;var ModeItem;!function(e){e.YEAR="year",e.MONTH="month",e.DATE="date",e.HOUR="hour",e.MINUTE="minute",e.SECOND="second"}(ModeItem||(ModeItem={}));const DATE_MODES=["year","month","date"],TIME_MODES=["hour","minute","second"],FULL_MODES=[...DATE_MODES,...TIME_MODES];let DateTimePicker=class extends SuperComponent{constructor(){super(...arguments),this.properties=props,this.externalClasses=[`${prefix}-class`,`${prefix}-class-confirm`,`${prefix}-class-cancel`,`${prefix}-class-title`],this.options={multipleSlots:!0},this.observers={"start, end, value":function(){this.updateColumns()},customLocale(e){e&&dayjsLocaleMap[e].key&&this.setData({locale:dayjsLocaleMap[e].i18n,dayjsLocale:dayjsLocaleMap[e].key})},mode(e){const t=this.getFullModeArray(e);this.setData({fullModes:t}),this.updateColumns()}},this.date=null,this.data={prefix:prefix,classPrefix:name,columns:[],columnsValue:[],fullModes:[],locale:dayjsLocaleMap[defaultLocale].i18n,dayjsLocale:dayjsLocaleMap[defaultLocale].key},this.controlledProps=[{key:"value",event:"change"}],this.methods={updateColumns(){this.date=this.getParseDate();const{columns:e,columnsValue:t}=this.getValueCols();this.setData({columns:e,columnsValue:t})},getDaysOfWeekInMonth(e){const{locale:t,dayjsLocale:a}=this.data,s=e.startOf("month"),o=e.endOf("month"),n=[];for(let e=0;e<=o.diff(s,"days");e+=1){const o=s.add(e,"days").locale(a).format("ddd");n.push({value:`${e+1}`,label:`${e+1}${t.date||""} ${o}`})}return n},getParseDate(){const{value:e,defaultValue:t}=this.properties,a=this.getMinDate();let s=e||t;if(this.isTimeMode()){const e=dayjs(a).format("YYYY-MM-DD");s=dayjs(`${e} ${s}`)}const o=dayjs(s||a);return o.isValid()?o:a},normalize:(e,t)=>e&&dayjs(e).isValid()?dayjs(e):t,getMinDate(){return this.normalize(this.properties.start,dayjs().subtract(10,"year"))},getMaxDate(){return this.normalize(this.properties.end,dayjs().add(10,"year"))},getDateRect(e="default"){const t=this[{min:"getMinDate",max:"getMaxDate",default:"getDate"}[e]]();return["year","month","date","hour","minute","second"].map((e=>{var a;return null===(a=t[e])||void 0===a?void 0:a.call(t)}))},getDate(){return this.clipDate((null==this?void 0:this.date)||this.getMinDate())},clipDate(e){const t=this.getMinDate(),a=this.getMaxDate();return dayjs(Math.min(Math.max(t.valueOf(),e.valueOf()),a.valueOf()))},setYear(e,t){const a=e.date(),s=e.year(t).daysInMonth();return e.date(Math.min(a.valueOf(),s.valueOf())).year(t)},setMonth(e,t){const a=e.date(),s=e.month(t).daysInMonth();return e.date(Math.min(a.valueOf(),s.valueOf())).month(t)},getColumnOptions(){const{fullModes:e,filter:t}=this.data,a=[];return null==e||e.forEach((e=>{const s=this.getOptionByType(e);"function"==typeof t?a.push(t(e,s)):a.push(s)})),a},getOptionByType(e){var t;const{locale:a,steps:s,showWeek:o}=this.data,n=[],l=this.getOptionEdge("min",e),i=this.getOptionEdge("max",e),r=null!==(t=null==s?void 0:s[e])&&void 0!==t?t:1,u=dayjs().locale(this.data.dayjsLocale).localeData().monthsShort();if("date"===e&&o)return this.getDaysOfWeekInMonth(this.date);for(let t=l;t<=i;t+=r)n.push({value:`${t}`,label:"month"===e?u[t]:`${t+a[e]}`});return n},getYearOptions(e){const{locale:t}=this.data,{minDateYear:a,maxDateYear:s}=e,o=[];for(let e=a;e<=s;e+=1)o.push({value:`${e}`,label:`${e+t.year}`});return o},getOptionEdge(e,t){const a=this.getDateRect(),s=this.getDateRect(e),o={month:[0,11],date:[1,this.getDate().daysInMonth()],hour:[0,23],minute:[0,59],second:[0,59]},n=["year","month","date","hour","minute","second"];for(let l=0,i=a.length;l{a.push(`${t[e]()}`)})),a},getNewDate(e,t){let a=this.getDate();switch(t){case ModeItem.YEAR:a=this.setYear(a,e);break;case ModeItem.MONTH:a=this.setMonth(a,e);break;case ModeItem.DATE:a=a.date(e);break;case ModeItem.HOUR:a=a.hour(e);break;case ModeItem.MINUTE:a=a.minute(e);break;case ModeItem.SECOND:a=a.second(e)}return this.clipDate(a)},onColumnChange(e){const{value:t,column:a}=null==e?void 0:e.detail,{fullModes:s,format:o}=this.data,n=null==t?void 0:t[a],l=null==s?void 0:s[a],i=this.getNewDate(parseInt(n,10),l);this.date=i;const{columns:r,columnsValue:u}=this.getValueCols();this.setData({columns:r,columnsValue:u});const d=this.getDate(),h=o?d.format(o):d.valueOf();this.triggerEvent("pick",{value:h})},onConfirm(){const{format:e}=this.properties,t=this.getDate(),a=e?t.format(e):t.valueOf();this._trigger("change",{value:a}),this.triggerEvent("confirm",{value:a}),this.resetColumns()},onCancel(){this.resetColumns(),this.triggerEvent("cancel")},onVisibleChange(e){e.detail.visible||this.resetColumns()},onClose(e){const{trigger:t}=e.detail;this.triggerEvent("close",{trigger:t})},resetColumns(){const e=this.getParseDate();this.date=e;const{columns:t,columnsValue:a}=this.getValueCols();this.setData({columns:t,columnsValue:a})}}}getFullModeArray(e){if("string"==typeof e||e instanceof String)return this.getFullModeByModeString(e,FULL_MODES);if(Array.isArray(e)){if(1===(null==e?void 0:e.length))return this.getFullModeByModeString(e[0],FULL_MODES);if(2===(null==e?void 0:e.length)){return[...this.getFullModeByModeString(e[0],DATE_MODES),...this.getFullModeByModeString(e[1],TIME_MODES)]}}}getFullModeByModeString(e,t){if(!e)return[];const a=null==t?void 0:t.findIndex((t=>e===t));return null==t?void 0:t.slice(0,a+1)}isTimeMode(){const{fullModes:e}=this.data;return e[0]===ModeItem.HOUR}};DateTimePicker=__decorate([wxComponent()],DateTimePicker);export default DateTimePicker; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.json b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.json new file mode 100644 index 0000000..d89c31e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-picker":"../picker/picker","t-picker-item":"../picker-item/picker-item"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxml b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxml new file mode 100644 index 0000000..e26589a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxss b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxss new file mode 100644 index 0000000..2f40c37 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/date-time-picker.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-date-time-picker__item--roomly{width:var(--td-data-time-picker-year-width,128rpx);flex:0 0 var(--td-data-time-picker-year-width,128rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.d.ts new file mode 100644 index 0000000..0d6f6df --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.d.ts @@ -0,0 +1,174 @@ +import enLocale from 'dayjs/locale/en'; +declare const _default: { + default: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + en: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + 'zh-cn': { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + zh: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + 'zh-tw': { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + tc: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + ko: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + kr: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + ja: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; + ru: { + key: string; + label: string; + locale: enLocale.Locale; + i18n: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; + }; + }; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.js new file mode 100644 index 0000000..976f7af --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/dayjs.js @@ -0,0 +1 @@ +import enLocale from"dayjs/locale/en";import zhLocale from"dayjs/locale/zh-cn";import tcLocale from"dayjs/locale/zh-tw";import koLocale from"dayjs/locale/ko";import jaLocale from"dayjs/locale/ja";import ruLocale from"dayjs/locale/ru";import en from"./en";import zh from"./zh";import tc from"./tc";import ko from"./ko";import ja from"./ja";import ru from"./ru";export default{default:{key:"zh-cn",label:"简体中文",locale:zhLocale,i18n:zh},en:{key:"en",label:"English",locale:enLocale,i18n:en},"zh-cn":{key:"zh-cn",label:"简体中文",locale:zhLocale,i18n:zh},zh:{key:"zh-cn",label:"简体中文",locale:zhLocale,i18n:zh},"zh-tw":{key:"zh-tw",label:"繁体中文",locale:tcLocale,i18n:tc},tc:{key:"zh-tw",label:"繁体中文",locale:tcLocale,i18n:tc},ko:{key:"ko",label:"한국어",locale:koLocale,i18n:ko},kr:{key:"ko",label:"한국어",locale:koLocale,i18n:ko},ja:{key:"ja",label:"日本語",locale:jaLocale,i18n:ja},ru:{key:"ru",label:"русский",locale:ruLocale,i18n:ru}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.js new file mode 100644 index 0000000..f5c7622 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/en.js @@ -0,0 +1 @@ +export default{year:"",month:"",date:"",hour:"",minute:"",second:"",am:"AM",pm:"PM",confirm:"confirm",cancel:"cancel"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.js new file mode 100644 index 0000000..0086028 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ja.js @@ -0,0 +1 @@ +export default{year:"年",month:"月",date:"日",hour:"時",minute:"分",second:"秒",am:"午前",pm:"午後",confirm:"確認",cancel:"キャンセル"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.js new file mode 100644 index 0000000..ec143c4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ko.js @@ -0,0 +1 @@ +export default{year:"년",month:"월",date:"일",hour:"시",minute:"분",second:"초",am:"오전",pm:"오후",confirm:"확인",cancel:"취소"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.js new file mode 100644 index 0000000..b6655dd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/ru.js @@ -0,0 +1 @@ +export default{year:"",month:"",date:"",hour:"",minute:"",second:"",am:"до полудня",pm:"после полудня",confirm:"подтвердить",cancel:"отменить"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.js new file mode 100644 index 0000000..f9ef748 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/tc.js @@ -0,0 +1 @@ +export default{year:"年",month:"月",date:"日",hour:"時",minute:"分",second:"秒",am:"上午",pm:"下午",confirm:"確定",cancel:"取消"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.d.ts b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.d.ts new file mode 100644 index 0000000..9665c2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.d.ts @@ -0,0 +1,13 @@ +declare const _default: { + year: string; + month: string; + date: string; + hour: string; + minute: string; + second: string; + am: string; + pm: string; + confirm: string; + cancel: string; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.js new file mode 100644 index 0000000..ed21da3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/locale/zh.js @@ -0,0 +1 @@ +export default{year:"年",month:"月",date:"日",hour:"时",minute:"分",second:"秒",am:"上午",pm:"下午",confirm:"确定",cancel:"取消"}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/props.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/props.js new file mode 100644 index 0000000..2452c15 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/props.js @@ -0,0 +1 @@ +const props={autoClose:{type:Boolean,value:!1},cancelBtn:{type:String,value:"取消"},confirmBtn:{type:String,value:""},customLocale:{type:String,value:"zh"},end:{type:null},filter:{type:null},format:{type:String,value:"YYYY-MM-DD HH:mm:ss"},formatter:{type:null},header:{type:Boolean,value:!0},mode:{type:null,value:"date"},popupProps:{type:Object,value:{}},showWeek:{type:Boolean,value:!1},start:{type:null},steps:{type:Object},title:{type:String,value:""},usePopup:{type:Boolean,value:!0},value:{type:null,value:null},defaultValue:{type:null},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/type.js b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/date-time-picker/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.d.ts b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.d.ts new file mode 100644 index 0000000..4efa470 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.d.ts @@ -0,0 +1,28 @@ +import { SuperComponent } from '../common/src/index'; +export default class Dialog extends SuperComponent { + behaviors: string[]; + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + properties: import("./type").TdDialogProps; + data: { + prefix: string; + classPrefix: string; + buttonVariant: string; + }; + observers: { + 'confirmBtn, cancelBtn'(confirm: any, cancel: any): void; + }; + methods: { + onTplButtonTap(e: any): void; + onConfirm(): void; + onCancel(): void; + onClose(): void; + close(): void; + overlayClick(): void; + onActionTap(index: number): void; + openValueCBHandle(e: any): void; + openValueErrCBHandle(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.js b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.js new file mode 100644 index 0000000..fe049df --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{toCamel}from"../common/utils";import{isObject}from"../common/validator";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-dialog`;let Dialog=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-confirm`,`${prefix}-class-cancel`,`${prefix}-class-action`],this.properties=props,this.data={prefix:prefix,classPrefix:name,buttonVariant:"text"},this.observers={"confirmBtn, cancelBtn"(t,e){const{prefix:o,classPrefix:i,buttonLayout:n}=this.data,s={buttonVariant:"text"},r=[t,e].some((t=>isObject(t)&&t.variant&&"text"!==t.variant)),a={confirm:t,cancel:e},c=[`${i}__button`],l=[];r?(s.buttonVariant="base",c.push(`${i}__button--${n}`)):(c.push(`${i}__button--text`),l.push(`${i}-button`)),Object.keys(a).forEach((t=>{const e=a[t],n={block:!0,rootClass:[...c,`${i}__button--${t}`],tClass:[...l,`${o}-class-${t}`],variant:s.buttonVariant,openType:""};"cancel"===t&&"base"===s.buttonVariant&&(n.theme="light"),s[`_${t}`]="string"==typeof e?Object.assign(Object.assign({},n),{content:e}):e&&"object"==typeof e?Object.assign(Object.assign({},n),e):null})),this.setData(Object.assign({},s))}},this.methods={onTplButtonTap(t){var e,o,i;const n=t.type,{type:s,extra:r}=t.target.dataset,a=this.data[`_${s}`],c=`bind${n}`;if("action"===s)return void this.onActionTap(r);if("function"==typeof a[c]){a[c](t)&&this.close()}if(!!!a.openType&&["confirm","cancel"].includes(s)&&(null===(e=this[toCamel(`on-${s}`)])||void 0===e||e.call(this,s)),"tap"!==n){const e=(null===(i=null===(o=t.detail)||void 0===o?void 0:o.errMsg)||void 0===i?void 0:i.indexOf("ok"))>-1;this.triggerEvent(e?"open-type-event":"open-type-error-event",t.detail)}},onConfirm(){this.triggerEvent("confirm"),this._onConfirm&&(this._onConfirm({trigger:"confirm"}),this.close())},onCancel(){const t={trigger:"cancel"};this.triggerEvent("cancel"),this.triggerEvent("close",t),this._onCancel&&(this._onCancel(t),this.close())},onClose(){var t;const e={trigger:"close-btn"};this.triggerEvent("close",e),null===(t=this._onCancel)||void 0===t||t.call(this,e),this.close()},close(){this.setData({visible:!1})},overlayClick(){var t;if(this.triggerEvent("overlay-click"),this.properties.closeOnOverlayClick){const e={trigger:"overlay"};this.triggerEvent("close",e),null===(t=this._onCancel)||void 0===t||t.call(this,e),this.close()}},onActionTap(t){this.triggerEvent("action",{index:t}),this._onAction&&(this._onAction({index:t}),this.close())},openValueCBHandle(t){this.triggerEvent("open-type-event",t.detail)},openValueErrCBHandle(t){this.triggerEvent("open-type-error-event",t.detail)}}}};Dialog=__decorate([wxComponent()],Dialog);export default Dialog; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.json b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.json new file mode 100644 index 0000000..02f8832 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-popup":"../popup/popup","t-icon":"../icon/icon","t-button":"../button/button"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxml b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxml new file mode 100644 index 0000000..15386d6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxml @@ -0,0 +1 @@ +{{title}}{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxs b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxs new file mode 100644 index 0000000..8f70e47 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxs @@ -0,0 +1,13 @@ +module.exports.getTypeof = function (obj) { + return typeof obj; +}; + +module.exports.getActionClass = function (prefix, buttonLayout) { + var cls = [prefix + '__button', prefix + '__button--action']; + + if (buttonLayout) { + cls.push(prefix + '__button--' + buttonLayout); + } + + return cls.join(' '); +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxss b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxss new file mode 100644 index 0000000..f00ef36 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/dialog.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-dialog{overflow:hidden;width:var(--td-dialog-width,622rpx);border-radius:var(--td-dialog-border-radius,var(--td-radius-extra-large,24rpx));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff))}.t-dialog__wrapper{--td-popup-border-radius:var(--td-dialog-border-radius, var(--td-radius-extra-large, 24rpx))}.t-dialog__close-btn{position:absolute;top:var(--td-spacer,16rpx);right:var(--td-spacer,16rpx);color:var(--td-dialog-close-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));z-index:1}.t-dialog__content{padding-top:var(--td-spacer-3,48rpx);padding-right:var(--td-spacer-3,48rpx);padding-bottom:0;padding-left:var(--td-spacer-3,48rpx);max-height:var(--td-dialog-body-max-height,912rpx);box-sizing:border-box;display:flex;flex-direction:column;justify-content:center;font-size:var(--td-font-size-m,32rpx)}.t-dialog__content:empty{display:none}.t-dialog__header{text-align:center;font-weight:700;font-size:var(--td-dialog-title-font-size,36rpx);line-height:var(--td-dialog-title-line-height,52rpx);color:var(--td-dialog-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-dialog__header+.t-dialog__body{margin-top:var(--td-spacer,16rpx)}.t-dialog__body{overflow-y:scroll;text-align:center;-webkit-overflow-scrolling:touch;font-size:var(--td-dialog-content-font-size,32rpx);color:var(--td-dialog-content-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));line-height:var(--td-dialog-content-line-height,48rpx)}.t-dialog__body-text{word-wrap:break-word}.t-dialog__body--left{text-align:left}.t-dialog__body--right{text-align:right}.t-dialog__footer{display:flex;padding:var(--td-spacer-3,48rpx)}.t-dialog__footer--column{flex-flow:column-reverse}.t-dialog__footer--column .t-dialog__button{width:100%}.t-dialog__footer--full{padding:var(--td-spacer-4,64rpx) 0 0}.t-dialog__button{position:relative;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t-dialog__button--horizontal+.t-dialog__button--horizontal{margin-left:var(--td-spacer-1,24rpx)}.t-dialog__button--vertical+.t-dialog__button--vertical{margin-bottom:var(--td-spacer-1,24rpx)}.t-dialog__button--text{flex:1;--td-button-border-radius:0;--td-button-medium-height:112rpx;border-radius:0}.t-dialog__button--text:before{content:' ';position:absolute;box-sizing:border-box;top:0;left:0;border-top:1px solid var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7));border-left:1px solid var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7));transform:scale(.5);transform-origin:0 0;width:200%;height:200%;border-radius:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/dialog/index.d.ts new file mode 100644 index 0000000..8c8cf22 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/index.d.ts @@ -0,0 +1,44 @@ +/// +/// +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +interface DialogAlertOptionsType { + context?: Context; + selector?: string; + title?: string; + content?: string; + zIndex?: number; + asyncClose?: boolean; + confirmButtonText?: string; + textAlign?: string; + cancelBtn?: string | object; + confirmBtn?: string | object; + showOverlay?: boolean; + closeOnOverlayClick?: boolean; + preventScrollThrough?: boolean; +} +interface DialogConfirmOptionsType extends DialogAlertOptionsType { + cancelButtonText?: string; +} +interface Action { + content: string; + theme?: 'default' | 'primary' | 'danger' | 'light'; +} +interface DialogActionOptionsType { + context?: Context; + selector?: string; + title?: string; + content: string; + zIndex?: number; + asyncClose?: boolean; + actions?: Action[]; + buttonLayout?: 'vertical' | 'horizontal'; +} +declare const _default: { + alert(options: DialogAlertOptionsType): Promise; + confirm(options: DialogConfirmOptionsType): Promise; + close(options?: DialogConfirmOptionsType): Promise; + action(options: DialogActionOptionsType): Promise<{ + index: number; + }>; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/index.js b/app/miniprogram_npm/tdesign-miniprogram/dialog/index.js new file mode 100644 index 0000000..6b0287d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/index.js @@ -0,0 +1 @@ +import{__rest}from"tslib";import props from"./props";import{getInstance}from"../common/utils";const defaultOptions={actions:[],buttonLayout:props.buttonLayout.value,cancelBtn:props.cancelBtn.value,closeOnOverlayClick:props.closeOnOverlayClick.value,confirmBtn:props.confirmBtn.value,content:"",preventScrollThrough:props.preventScrollThrough.value,showOverlay:props.showOverlay.value,title:"",visible:props.visible.value};export default{alert(t){const e=Object.assign(Object.assign({},defaultOptions),t),{context:o,selector:s="#t-dialog"}=e,n=__rest(e,["context","selector"]),c=getInstance(o,s);return c?new Promise((t=>{c.setData(Object.assign(Object.assign({cancelBtn:""},n),{visible:!0})),c._onConfirm=t})):Promise.reject()},confirm(t){const e=Object.assign(Object.assign({},defaultOptions),t),{context:o,selector:s="#t-dialog"}=e,n=__rest(e,["context","selector"]),c=getInstance(o,s);return c?new Promise(((t,e)=>{c.setData(Object.assign(Object.assign({},n),{visible:!0})),c._onConfirm=t,c._onCancel=e})):Promise.reject()},close(t){const{context:e,selector:o="#t-dialog"}=Object.assign({},t),s=getInstance(e,o);return s?(s.close(),Promise.resolve()):Promise.reject()},action(t){const e=Object.assign(Object.assign({},defaultOptions),t),{context:o,selector:s="#t-dialog",actions:n}=e,c=__rest(e,["context","selector","actions"]),r=getInstance(o,s);if(!r)return Promise.reject();const{buttonLayout:a="vertical"}=t,i="vertical"===a?7:3;return(!n||"object"==typeof n&&(0===n.length||n.length>i))&&console.warn(`action 数量建议控制在1至${i}个`),new Promise((t=>{r.setData(Object.assign(Object.assign({actions:n},c),{buttonLayout:a,visible:!0})),r._onAction=t}))}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/props.js b/app/miniprogram_npm/tdesign-miniprogram/dialog/props.js new file mode 100644 index 0000000..250cbcb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/props.js @@ -0,0 +1 @@ +const props={actions:{type:Array},buttonLayout:{type:String,value:"horizontal"},cancelBtn:{type:null},closeBtn:{type:null,value:!1},closeOnOverlayClick:{type:Boolean,value:!1},confirmBtn:{type:null},content:{type:String},overlayProps:{type:Object,value:{}},preventScrollThrough:{type:Boolean,value:!0},showOverlay:{type:Boolean,value:!0},title:{type:String},usingCustomNavbar:{type:Boolean,value:!1},visible:{type:Boolean},zIndex:{type:Number,value:11500}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dialog/type.js b/app/miniprogram_npm/tdesign-miniprogram/dialog/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dialog/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/divider.d.ts b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.d.ts new file mode 100644 index 0000000..d4d837c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.d.ts @@ -0,0 +1,18 @@ +import { SuperComponent } from '../common/src/index'; +export default class Divider extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdDividerProps; + data: { + prefix: string; + classPrefix: string; + }; + observers: { + lineColor(): void; + }; + methods: { + setStyle(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/divider.js b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.js new file mode 100644 index 0000000..9d084aa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-divider`;let Divider=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`],this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name},this.observers={lineColor(){this.setStyle()}},this.methods={setStyle(){const{lineColor:e}=this.properties,o=""+(e?`border-color: ${e};`:"");this.setData({dividerStyle:o})}}}};Divider=__decorate([wxComponent()],Divider);export default Divider; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/divider.json b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxml b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxml new file mode 100644 index 0000000..9ed265c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxml @@ -0,0 +1 @@ +{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxss b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxss new file mode 100644 index 0000000..9e9e48d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/divider.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-divider{display:flex;color:var(--td-divider-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-divider-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-style:var(--td-divider-content-line-style,solid);border-width:0}.t-divider::after,.t-divider::before{content:'';display:block;flex:1;box-sizing:border-box;border:inherit;border-color:inherit;border-style:inherit}.t-divider--horizontal{align-items:center;margin:var(--td-divider-horizontal-margin,20rpx) 0}.t-divider--horizontal::after,.t-divider--horizontal::before{border-top-width:var(--td-divider-border-width,2rpx);transform:scaleY(.5);transform-origin:center}.t-divider--horizontal .t-divider__content:not(:empty){margin:0 var(--td-divider-content-margin,var(--td-spacer-1,24rpx))}.t-divider--vertical{flex-direction:column;height:28rpx;margin:0 var(--td-divider-vertical-margin,var(--td-spacer,16rpx))}.t-divider--vertical::after,.t-divider--vertical::before{border-left-width:var(--td-divider-border-width,2rpx);transform:scaleX(.5);transform-origin:center}.t-divider--vertical-center{align-items:center;height:100%}.t-divider--dashed{border-style:dashed}.t-divider__content{font-size:var(--td-divider-content-font-size,var(--td-font-size-s,24rpx));line-height:var(--td-divider-content-line-height,40rpx);color:var(--td-divider-content-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-divider--left::before,.t-divider--right::after{max-width:60rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/props.js b/app/miniprogram_npm/tdesign-miniprogram/divider/props.js new file mode 100644 index 0000000..70fd183 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/props.js @@ -0,0 +1 @@ +const props={align:{type:String,value:"center"},content:{type:String},dashed:{type:Boolean,value:!1},layout:{type:String,value:"horizontal"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/divider/type.js b/app/miniprogram_npm/tdesign-miniprogram/divider/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/divider/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.d.ts b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.d.ts new file mode 100644 index 0000000..22932ab --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.d.ts @@ -0,0 +1,16 @@ +import { ComponentsOptionsType, SuperComponent } from '../common/src/index'; +export default class Drawer extends SuperComponent { + behaviors: string[]; + externalClasses: any[]; + options: ComponentsOptionsType; + properties: import("./type").TdDrawerProps; + data: { + classPrefix: string; + }; + methods: { + visibleChange({ detail }: { + detail: any; + }): void; + itemClick(detail: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.js b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.js new file mode 100644 index 0000000..03c69f1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-drawer`;let Drawer=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.externalClasses=[],this.options={multipleSlots:!0},this.properties=props,this.data={classPrefix:name},this.methods={visibleChange({detail:e}){const{visible:t}=e,{showOverlay:r}=this.data;this.setData({visible:t}),t||this.triggerEvent("close",{trigger:"overlay"}),r&&this.triggerEvent("overlay-click",{visible:t})},itemClick(e){const{index:t,item:r}=e.currentTarget.dataset;this.triggerEvent("item-click",{index:t,item:r})}}}};Drawer=__decorate([wxComponent()],Drawer);export default Drawer; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.json b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.json new file mode 100644 index 0000000..711afb8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-popup":"../popup/popup","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxml b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxml new file mode 100644 index 0000000..1d5b01f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxml @@ -0,0 +1 @@ +{{title}}{{item.title}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxss b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxss new file mode 100644 index 0000000..e2927f8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/drawer.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-drawer{background:var(--td-drawer-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));width:var(--td-drawer-width,560rpx);height:100%;display:flex;flex-direction:column}.t-drawer--hover{background-color:var(--td-drawer-hover-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-drawer__title{font-weight:600;font-size:var(--td-drawer-title-font-size,36rpx);padding:48rpx 32rpx 16rpx;color:var(--td-drawer-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-drawer__sidebar{height:var(--td-drawer-sidebar-height,70vh)}.t-drawer__sidebar-item{display:flex;align-items:center;position:relative;padding-top:var(--td-drawer-item-padding,32rpx);padding-right:0;padding-bottom:var(--td-drawer-item-padding,32rpx);padding-left:var(--td-drawer-item-padding,32rpx);line-height:var(--td-drawer-item-height,48rpx)}.t-drawer__sidebar-item::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-drawer-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-drawer__sidebar-item::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-drawer__sidebar-item::after{left:var(--td-drawer-item-padding,32rpx)}.t-drawer__sidebar-item-title{flex:1;color:var(--td-drawer-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-drawer__sidebar-item-icon{padding-right:16rpx;color:var(--td-drawer-item-icon-color,var(--td-drawer-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9)))));font-size:var(--td-drawer-item-icon-size,48rpx)}.t-drawer__footer{flex:1;display:flex;flex-direction:column;padding-bottom:var(--td-drawer-footer-padding-bottom,40rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/props.js b/app/miniprogram_npm/tdesign-miniprogram/drawer/props.js new file mode 100644 index 0000000..f8ac27c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/props.js @@ -0,0 +1 @@ +const props={closeOnOverlayClick:{type:Boolean,value:!0},destroyOnClose:{type:Boolean,value:!1},items:{type:Array},placement:{type:String,value:"right"},showOverlay:{type:Boolean,value:!0},title:{type:String},visible:{type:Boolean,value:!1},zIndex:{type:Number,value:11500}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/drawer/type.js b/app/miniprogram_npm/tdesign-miniprogram/drawer/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/drawer/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.d.ts new file mode 100644 index 0000000..6f7f2c7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.d.ts @@ -0,0 +1,48 @@ +import { RelationsOptions, SuperComponent } from '../common/src/index'; +import type { TdDropdownItemProps } from './type'; +export interface DropdownItemProps extends TdDropdownItemProps { +} +export default class DropdownMenuItem extends SuperComponent { + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + properties: TdDropdownItemProps; + data: { + prefix: string; + classPrefix: string; + show: boolean; + top: number; + maskHeight: number; + initValue: any; + hasChanged: boolean; + duration: string | number; + zIndex: number; + overlay: boolean; + labelAlias: string; + valueAlias: string; + computedLabel: string; + firstCheckedValue: string; + }; + relations: RelationsOptions; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + keys(obj: any): void; + value(v: any): void; + 'label, computedLabel'(): void; + show(visible: any): void; + }; + methods: { + closeDropdown(): void; + getParentBottom(cb: any): void; + handleTreeClick(e: any): void; + handleRadioChange(e: any): void; + handleMaskClick(): void; + handleReset(): void; + handleConfirm(): void; + onLeaved(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.js new file mode 100644 index 0000000..a36b154 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import menuProps from"../dropdown-menu/props";import{getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-dropdown-item`;let DropdownMenuItem=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-column`,`${prefix}-class-column-item`,`${prefix}-class-column-item-label`,`${prefix}-class-footer`],this.properties=props,this.data={prefix:prefix,classPrefix:name,show:!1,top:0,maskHeight:0,initValue:null,hasChanged:!1,duration:menuProps.duration.value,zIndex:menuProps.zIndex.value,overlay:menuProps.showOverlay.value,labelAlias:"label",valueAlias:"value",computedLabel:"",firstCheckedValue:""},this.relations={"../dropdown-menu/dropdown-menu":{type:"parent",linked(e){const{zIndex:t,duration:a,showOverlay:s}=e.properties;this.setData({zIndex:t,duration:a,showOverlay:s})}}},this.controlledProps=[{key:"value",event:"change"}],this.observers={keys(e){this.setData({labelAlias:e.label||"label",valueAlias:e.value||"value"})},value(e){const{options:t,labelAlias:a,valueAlias:s}=this.data;if(this.data.multiple&&!Array.isArray(e))throw TypeError("应传入数组类型的 value");const o=t.find((t=>t[s]===e));o&&this.setData({computedLabel:o[a]})},"label, computedLabel"(){var e;null===(e=this.$parent)||void 0===e||e.getAllItems()},show(e){e&&this.getParentBottom((()=>{this.setData({wrapperVisible:!0})}))}},this.methods={closeDropdown(){var e;null===(e=this.$parent)||void 0===e||e.setData({activeIdx:-1}),this.setData({show:!1}),this.triggerEvent("close")},getParentBottom(e){getRect(this.$parent,`#${prefix}-bar`).then((t=>{this.setData({top:t.bottom,maskHeight:t.top},e)}))},handleTreeClick(e){const{level:t,value:a}=e.currentTarget.dataset,{value:s}=this.data;s[t]=a,this._trigger("change",{value:s})},handleRadioChange(e){const{value:t}=e.detail;if(this._trigger("change",{value:t}),this.data.multiple){const e=this.data.options.find((e=>t.includes(e.value)));e&&(this.data.firstCheckedValue=e.value)}else this.closeDropdown()},handleMaskClick(){var e;(null===(e=this.$parent)||void 0===e?void 0:e.properties.closeOnClickOverlay)&&this.closeDropdown()},handleReset(){this._trigger("change",{value:[]}),this._trigger("reset")},handleConfirm(){this._trigger("confirm",{value:this.data.value}),this.closeDropdown(),this.setData({firstCheckedValue:this.data.firstCheckedValue})},onLeaved(){this.setData({wrapperVisible:!1})}}}};DropdownMenuItem=__decorate([wxComponent()],DropdownMenuItem);export default DropdownMenuItem; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.json b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.json new file mode 100644 index 0000000..28335a5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-button":"../button/button","t-radio":"../radio/radio","t-radio-group":"../radio-group/radio-group","t-checkbox":"../checkbox/checkbox","t-checkbox-group":"../checkbox-group/checkbox-group","t-popup":"../popup/popup"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxml new file mode 100644 index 0000000..1317201 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxss new file mode 100644 index 0000000..8ecd652 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/dropdown-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-dropdown-item{position:fixed;right:0;left:0;top:0;overflow:hidden;bottom:0}.t-dropdown-item__content{display:flex;flex-direction:column;z-index:11600;overflow:hidden}.t-dropdown-item__popup-host{display:block;width:100%;height:max-content;overflow:hidden;position:absolute;left:0;top:0}.t-dropdown-item__body{flex:1;background:var(--td-dropdown-menu-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));overflow:auto;max-height:var(--td-dropdown-body-max-height,560rpx)}.t-dropdown-item__body--tree{display:flex;overflow:hidden}.t-dropdown-item__body--multi{padding-top:var(--td-spacer,16rpx);padding-bottom:var(--td-spacer,16rpx);overflow-y:auto}.t-dropdown-item__scroll{max-height:var(--td-dropdown-body-max-height,560rpx)}.t-dropdown-item__footer{display:flex;background:var(--td-dropdown-menu-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));padding:32rpx;position:relative}.t-dropdown-item__footer::after{content:'';display:block;position:absolute;top:0;bottom:unset;left:unset;right:unset;background-color:var(--td-component-border,var(--td-gray-color-4,#dcdcdc))}.t-dropdown-item__footer::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-dropdown-item__footer-btn{flex:1}.t-dropdown-item__footer-btn+.t-dropdown-item__footer-btn{margin-left:32rpx}.t-dropdown-item__body:empty,.t-dropdown-item__footer:empty{display:none}.t-dropdown-item__checkbox,.t-dropdown-item__radio{width:100%;overflow:scroll;box-sizing:border-box}.t-dropdown-item__checkbox-group,.t-dropdown-item__radio-group{display:grid;grid-gap:24rpx}.t-dropdown-item__radio-group{display:grid;grid-gap:0rpx}.t-dropdown-item__checkbox-group{padding:32rpx}.t-dropdown-item__tree-item{height:var(--td-tree-item-height,96rpx);line-height:var(--td-tree-item-height,96rpx);font-size:var(--td-tree-item-font-size,32rpx);padding-left:32rpx}.t-dropdown-item__tree-item--active{color:var(--td-tree-item-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-dropdown-item__mask{position:fixed;width:100vh;top:0;left:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/index.wxs b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/index.wxs new file mode 100644 index 0000000..e774f06 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/index.wxs @@ -0,0 +1,9 @@ +var getStyles = function (top, zIndex) { + var topStyle = top ? 'top:' + top + 'px;' : ''; + var zIndexStyle = zIndex ? 'z-index:' + zIndex + ';' : ''; + return topStyle + zIndexStyle; +}; + +module.exports = { + getStyles: getStyles, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/props.js new file mode 100644 index 0000000..54c6b23 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/props.js @@ -0,0 +1 @@ +const props={disabled:{type:Boolean,value:!1},externalClasses:{type:Array},keys:{type:Object},label:{type:String,value:""},multiple:{type:Boolean,value:!1},options:{type:Array,value:[]},optionsColumns:{type:null,value:1},placement:{type:String,value:"left"},value:{type:null,value:void 0},defaultValue:{type:null,value:void 0}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.d.ts b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.d.ts new file mode 100644 index 0000000..c92f0e4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.d.ts @@ -0,0 +1,33 @@ +import { RelationsOptions, SuperComponent } from '../common/src/index'; +import type { TdDropdownMenuProps } from './type'; +export interface DropdownMenuProps extends TdDropdownMenuProps { +} +export default class DropdownMenu extends SuperComponent { + externalClasses: string[]; + properties: TdDropdownMenuProps; + nodes: any; + data: { + prefix: string; + classPrefix: string; + menus: any; + activeIdx: number; + bottom: number; + _arrowIcon: { + name: string | object; + }; + }; + relations: RelationsOptions; + lifetimes: { + ready(): void; + }; + observers: { + arrowIcon(v: any): void; + activeIdx(v: number): void; + }; + methods: { + toggle(index: number): void; + getAllItems(): void; + handleToggle(e: WechatMiniprogram.BaseEvent): void; + noop(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.js new file mode 100644 index 0000000..6da6107 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-dropdown-menu`;let DropdownMenu=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-item`,`${prefix}-class-label`,`${prefix}-class-icon`],this.properties=props,this.nodes=null,this.data={prefix:prefix,classPrefix:name,menus:null,activeIdx:-1,bottom:0,_arrowIcon:{name:props.arrowIcon.value}},this.relations={"../dropdown-item/dropdown-item":{type:"child"}},this.lifetimes={ready(){this.getAllItems()}},this.observers={arrowIcon(e){this.setData({_arrowIcon:calcIcon(e)})},activeIdx(e){this.triggerEvent(-1===e?"close":"open")}},this.methods={toggle(e){const{activeIdx:t,duration:o}=this.data,s=this.$children[t],r=this.$children[e];(null==r?void 0:r.data.disabled)||(-1!==t&&(s.triggerEvent("close"),s.setData({show:!1},(()=>{setTimeout((()=>{s.triggerEvent("closed")}),o)}))),null==e||t===e?this.setData({activeIdx:-1}):(r.triggerEvent("open"),this.setData({activeIdx:e}),r.setData({show:!0},(()=>{setTimeout((()=>{r.triggerEvent("opened")}),o)}))))},getAllItems(){const e=this.$children.map((({data:e})=>({label:e.label||e.computedLabel,disabled:e.disabled})));this.setData({menus:e})},handleToggle(e){const{index:t}=e.currentTarget.dataset;this.toggle(t)},noop(){}}}};DropdownMenu=__decorate([wxComponent()],DropdownMenu);export default DropdownMenu; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.json b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxml b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxml new file mode 100644 index 0000000..80b19bf --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxml @@ -0,0 +1 @@ +{{item.label}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxss b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxss new file mode 100644 index 0000000..f533a77 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/dropdown-menu.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-dropdown-menu{display:flex;height:var(--td-dropdown-menu-height,96rpx);background:var(--td-dropdown-menu-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));position:relative}.t-dropdown-menu::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-component-border,var(--td-gray-color-4,#dcdcdc))}.t-dropdown-menu::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-dropdown-menu:after{height:var(--td-dropdown-menu-border-width,1px)}.t-dropdown-menu__item{display:flex;flex:1;align-items:center;justify-content:center;padding:0 var(--td-spacer,16rpx);position:relative;overflow:hidden;color:var(--td-dropdown-menu-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-dropdown-menu__item--active{color:var(--td-dropdown-menu-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-dropdown-menu__item--disabled{color:var(--td-dropdown-menu-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-dropdown-menu__icon{font-size:var(--td-dropdown-menu-icon-size,40rpx);padding:4rpx;box-sizing:border-box;transition:transform 240ms ease}.t-dropdown-menu__icon--active{transform:rotate(180deg)}.t-dropdown-menu__icon:not(:empty){margin-left:8rpx}.t-dropdown-menu__title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:var(--td-dropdown-menu-font-size,28rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.d.ts new file mode 100644 index 0000000..dea9f1d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.d.ts @@ -0,0 +1,3 @@ +export * from './type'; +export * from './props'; +export * from './dropdown-menu'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.js new file mode 100644 index 0000000..42cc330 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/index.js @@ -0,0 +1 @@ +export*from"./type";export*from"./props";export*from"./dropdown-menu"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/props.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/props.js new file mode 100644 index 0000000..f3946a9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/props.js @@ -0,0 +1 @@ +const props={arrowIcon:{type:null,value:"caret-down-small"},closeOnClickOverlay:{type:Boolean,value:!0},duration:{type:null,value:200},showOverlay:{type:Boolean,value:!0},zIndex:{type:Number,value:11600}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/type.js b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/dropdown-menu/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/empty.d.ts b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.d.ts new file mode 100644 index 0000000..cd582e0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.d.ts @@ -0,0 +1,15 @@ +import { SuperComponent } from '../common/src/index'; +export default class extends SuperComponent { + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + properties: import("./type").TdEmptyProps; + data: { + prefix: string; + classPrefix: string; + }; + observers: { + icon(icon: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/empty.js b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.js new file mode 100644 index 0000000..917b212 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import{setIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-empty`;let default_1=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-description`,`${prefix}-class-image`],this.properties=props,this.data={prefix:prefix,classPrefix:name},this.observers={icon(e){const o=setIcon("icon",e,"");this.setData(Object.assign({},o))}}}};default_1=__decorate([wxComponent()],default_1);export default default_1; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/empty.json b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.json new file mode 100644 index 0000000..dd7b01e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxml b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxml new file mode 100644 index 0000000..a0a3a96 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxml @@ -0,0 +1 @@ +{{description}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxss b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxss new file mode 100644 index 0000000..28973d5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/empty.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-empty{display:flex;flex-direction:column;align-items:center}.t-empty__icon{font-size:192rpx;color:var(--td-empty-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-empty__thumb+.t-empty__description:not(:empty){margin-top:var(--td-empty-description-margin-top,var(--td-spacer-2,32rpx))}.t-empty__description{text-align:center;color:var(--td-empty-description-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-empty-description-font-size,var(--td-font-size-base,28rpx));line-height:var(--td-empty-description-line-height,44rpx);white-space:pre-wrap}.t-empty__description+.t-empty__actions:not(:empty){margin-top:var(--td-empty-action-margin-top,var(--td-spacer-4,64rpx))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/props.js b/app/miniprogram_npm/tdesign-miniprogram/empty/props.js new file mode 100644 index 0000000..d0fb219 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/props.js @@ -0,0 +1 @@ +const props={description:{type:String},externalClasses:{type:Array},icon:{type:null},image:{type:String}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/empty/type.js b/app/miniprogram_npm/tdesign-miniprogram/empty/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/empty/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.d.ts b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.d.ts new file mode 100644 index 0000000..9a5320c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.d.ts @@ -0,0 +1,21 @@ +import { SuperComponent } from '../../common/src/index'; +import type { TdDraggableProps } from './type'; +export interface DraggableProps extends TdDraggableProps { +} +export default class Draggable extends SuperComponent { + properties: TdDraggableProps; + externalClasses: string[]; + data: { + prefix: string; + classPrefix: string; + }; + lifetimes: { + ready(): void; + }; + methods: { + onTouchStart(e: any): void; + onTouchMove(e: any): void; + onTouchEnd(e: any): Promise; + computedRect(): Promise; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.js b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.js new file mode 100644 index 0000000..a0eef06 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../../common/src/index";import config from"../../common/config";import props from"./props";import{getRect,systemInfo}from"../../common/utils";const{prefix:prefix}=config,name=`${prefix}-draggable`;let Draggable=class extends SuperComponent{constructor(){super(...arguments),this.properties=props,this.externalClasses=[`${prefix}-class`],this.data={prefix:prefix,classPrefix:name},this.lifetimes={ready(){this.computedRect()}},this.methods={onTouchStart(t){"none"!==this.properties.direction&&(this.startX=t.touches[0].clientX+systemInfo.windowWidth-this.rect.right,this.startY=t.touches[0].clientY+systemInfo.windowHeight-this.rect.bottom,this.triggerEvent("start",{startX:this.startX,startY:this.startY,rect:this.rect,e:t}))},onTouchMove(t){if("none"===this.properties.direction)return;let e=this.startX-t.touches[0].clientX,i=this.startY-t.touches[0].clientY;"vertical"===this.properties.direction&&(e=systemInfo.windowWidth-this.rect.right),"horizontal"===this.properties.direction&&(i=systemInfo.windowHeight-this.rect.bottom),this.triggerEvent("move",{x:e,y:i,rect:this.rect,e:t})},onTouchEnd(t){return __awaiter(this,void 0,void 0,(function*(){"none"!==this.properties.direction&&(yield this.computedRect(),this.triggerEvent("end",{rect:this.rect,e:t}))}))},computedRect(){return __awaiter(this,void 0,void 0,(function*(){this.rect={right:0,bottom:0,width:0,height:0};try{this.rect=yield getRect(this,`.${this.data.classPrefix}`)}catch(t){}}))}}}};Draggable=__decorate([wxComponent()],Draggable);export default Draggable; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.json b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.json new file mode 100644 index 0000000..1450e2e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.json @@ -0,0 +1 @@ +{"component":true,"usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxml b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxml new file mode 100644 index 0000000..d1ff9ad --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxss b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxss new file mode 100644 index 0000000..2953ebc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/draggable.wxss @@ -0,0 +1 @@ +@import '../../common/style/index.wxss';.hotspot-expanded.relative{position:relative}.hotspot-expanded::after{content:'';display:block;position:absolute;left:0;top:0;right:0;bottom:0;transform:scale(1.5)}.t-draggable{position:fixed} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.d.ts new file mode 100644 index 0000000..6c4d04d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './draggable'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.js b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.js new file mode 100644 index 0000000..5722e5b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./draggable"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/props.js b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/props.js new file mode 100644 index 0000000..fede98f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/props.js @@ -0,0 +1 @@ +const props={direction:{type:String,value:"all"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/type.js b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/draggable/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/fab.d.ts b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.d.ts new file mode 100644 index 0000000..7c4503d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.d.ts @@ -0,0 +1,27 @@ +import { SuperComponent } from '../common/src/index'; +export default class Fab extends SuperComponent { + behaviors: string[]; + properties: import("./type").TdFabProps; + externalClasses: string[]; + data: { + prefix: string; + classPrefix: string; + buttonData: { + size: string; + shape: string; + theme: string; + tClass: string; + }; + moveStyle: any; + }; + observers: { + 'buttonProps.**, icon, text, ariaLabel, yBounds'(): void; + }; + methods: { + onTplButtonTap(e: any): void; + onStart(e: any): void; + onMove(e: any): void; + onEnd(e: any): void; + computedSize(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/fab.js b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.js new file mode 100644 index 0000000..3486a40 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import useCustomNavbar from"../mixins/using-custom-navbar";import{unitConvert,systemInfo}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-fab`,baseButtonProps={size:"large",shape:"circle",theme:"primary",tClass:`${prefix}-fab__button`};let Fab=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.properties=props,this.externalClasses=["class",`${prefix}-class`,`${prefix}-class-button`],this.data={prefix:prefix,classPrefix:name,buttonData:baseButtonProps,moveStyle:null},this.observers={"buttonProps.**, icon, text, ariaLabel, yBounds"(){var t;this.setData({buttonData:Object.assign(Object.assign(Object.assign(Object.assign({},baseButtonProps),{shape:this.properties.text?"round":"circle",icon:this.properties.icon}),this.properties.buttonProps),{content:this.properties.text,ariaLabel:this.properties.ariaLabel})},null===(t=this.computedSize)||void 0===t?void 0:t.bind(this))}},this.methods={onTplButtonTap(t){this.triggerEvent("click",t)},onStart(t){this.triggerEvent("dragstart",t.detail.e)},onMove(t){const{yBounds:e}=this.properties,{distanceTop:o}=this.data,{x:s,y:i,rect:r}=t.detail,a=systemInfo.windowWidth-r.width,n=systemInfo.windowHeight-Math.max(o,unitConvert(e[0]))-r.height,p=Math.max(0,Math.min(s,a)),m=Math.max(0,unitConvert(e[1]),Math.min(i,n));this.setData({moveStyle:`right: ${p}px; bottom: ${m}px;`})},onEnd(t){this.triggerEvent("dragend",t.detail.e)},computedSize(){var t,e;if(!this.properties.draggable)return;const o=this.selectComponent("#draggable");(null===(e=null===(t=this.properties)||void 0===t?void 0:t.yBounds)||void 0===e?void 0:e[1])?this.setData({moveStyle:`bottom: ${unitConvert(this.properties.yBounds[1])}px`},o.computedRect):o.computedRect()}}}};Fab=__decorate([wxComponent()],Fab);export default Fab; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/fab.json b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.json new file mode 100644 index 0000000..7273f2a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-button":"../button/button","t-draggable":"./draggable/draggable"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxml b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxml new file mode 100644 index 0000000..999cc1a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxss b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxss new file mode 100644 index 0000000..f64d244 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/fab.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-fab{position:fixed}.t-fab__button{box-shadow:var(--td-fab-shadow,var(--td-shadow-2,0 3px 14px 2px rgba(0,0,0,.05),0 8px 10px 1px rgba(0,0,0,.06),0 5px 5px -3px rgba(0,0,0,.1)))}.t-fab__draggable{position:fixed} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/props.js b/app/miniprogram_npm/tdesign-miniprogram/fab/props.js new file mode 100644 index 0000000..8ff0761 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/props.js @@ -0,0 +1 @@ +const props={buttonProps:{type:Object},draggable:{type:null,value:!1},icon:{type:String,value:""},style:{type:String,value:"right: 16px; bottom: 32px;"},text:{type:String,value:""},usingCustomNavbar:{type:Boolean,value:!1},yBounds:{type:Array}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/template/draggable.wxml b/app/miniprogram_npm/tdesign-miniprogram/fab/template/draggable.wxml new file mode 100644 index 0000000..f22d77f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/template/draggable.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/template/view.wxml b/app/miniprogram_npm/tdesign-miniprogram/fab/template/view.wxml new file mode 100644 index 0000000..92ccff8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/template/view.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/fab/type.js b/app/miniprogram_npm/tdesign-miniprogram/fab/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/fab/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/footer.d.ts b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.d.ts new file mode 100644 index 0000000..6ffe46b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.d.ts @@ -0,0 +1,9 @@ +import { SuperComponent } from '../common/src/index'; +export default class Footer extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdFooterProps; + data: { + prefix: string; + classPrefix: string; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/footer.js b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.js new file mode 100644 index 0000000..0282185 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-footer`;let Footer=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=props,this.data={prefix:prefix,classPrefix:name}}};Footer=__decorate([wxComponent()],Footer);export default Footer; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/footer.json b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.json new file mode 100644 index 0000000..1e4e103 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxml b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxml new file mode 100644 index 0000000..7870d23 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxml @@ -0,0 +1 @@ +{{logo.title}}{{item.name}}|{{text}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxss b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxss new file mode 100644 index 0000000..b2b844f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/footer.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-footer{display:flex;flex-direction:column;align-items:center;justify-content:flex-start}.t-footer__text{font-size:var(--td-footer-text-font-size,var(--td-font-size-s,24rpx));line-height:var(--td-footer-text-line-height,40rpx);color:var(--td-footer-text-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-footer__link-list+.t-footer__text:not(:empty){margin-top:var(--td-footer-text-margin-top,8rpx)}.t-footer__link-list{display:flex;justify-content:center;align-items:center}.t-footer__link-item{color:var(--td-footer-link-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-size:var(--td-footer-link-font-size,var(--td-font-size-s,24rpx));line-height:var(--td-footer-link-line-height,40rpx);text-decoration:underline}.t-footer__link-line{font-size:24rpx;color:var(--td-footer-link-dividing-line-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));display:inline-block;padding:0 var(--td-footer-link-dividing-line-padding,var(--td-spacer-1,24rpx))}.t-footer__logo{display:flex;justify-content:center;align-items:center}.t-footer__icon{width:var(--td-footer-logo-icon-width,48rpx);height:var(--td-footer-logo-icon-height,48rpx);margin-right:var(--td-footer-logo-icon-margin-right,var(--td-spacer,16rpx))}.t-footer__title{color:var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9)));font-weight:700;font-size:var(--td-footer-logo-title-font-size,var(--td-font-size-m,32rpx));line-height:var(--td-footer-logo-title-line-height,48rpx);font-style:italic}.t-footer__title-url{width:var(--td-footer-logo-title-url-width,256rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/props.js b/app/miniprogram_npm/tdesign-miniprogram/footer/props.js new file mode 100644 index 0000000..f4be9f2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/props.js @@ -0,0 +1 @@ +const props={links:{type:Array,value:[]},logo:{type:Object},text:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/footer/type.js b/app/miniprogram_npm/tdesign-miniprogram/footer/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/footer/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.d.ts new file mode 100644 index 0000000..4c43196 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.d.ts @@ -0,0 +1,31 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class GridItem extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + relations: RelationsOptions; + properties: import("./type").TdGridItemProps; + data: { + prefix: string; + classPrefix: string; + gridItemStyle: string; + gridItemWrapperStyle: string; + gridItemContentStyle: string; + align: string; + column: number; + describedbyID: string; + }; + observers: { + icon(icon: any): void; + }; + lifetimes: { + ready(): void; + }; + updateStyle(): void; + getWidthStyle(): string; + getPaddingStyle(): string; + getBorderStyle(): string; + onClick(e: any): void; + jumpLink(): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.js b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.js new file mode 100644 index 0000000..b4bd236 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{uniqueFactory,setIcon}from"../common/utils";import{isObject}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-grid-item`,getUniqueID=uniqueFactory("grid_item");var LinkTypes;!function(t){t["redirect-to"]="redirectTo",t["switch-tab"]="switchTab",t.relaunch="reLaunch",t["navigate-to"]="navigateTo"}(LinkTypes||(LinkTypes={}));let GridItem=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-image`,`${prefix}-class-text`,`${prefix}-class-description`],this.options={multipleSlots:!0},this.relations={"../grid/grid":{type:"ancestor",linked(t){this.parent=t,this.updateStyle(),this.setData({column:t.data.column})}}},this.properties=props,this.data={prefix:prefix,classPrefix:name,gridItemStyle:"",gridItemWrapperStyle:"",gridItemContentStyle:"",align:"center",column:0,describedbyID:""},this.observers={icon(t){const e=setIcon("icon",t,"");this.setData(Object.assign({},e))}},this.lifetimes={ready(){this.setData({describedbyID:getUniqueID()})}}}updateStyle(){const{hover:t,align:e}=this.parent.properties,r=[],i=[],o=[],s=this.getWidthStyle(),n=this.getPaddingStyle(),p=this.getBorderStyle();s&&r.push(s),n&&i.push(n),p&&o.push(p),this.setData({gridItemStyle:`${r.join(";")}`,gridItemWrapperStyle:i.join(";"),gridItemContentStyle:o.join(";"),hover:t,layout:this.properties.layout,align:e})}getWidthStyle(){const{column:t}=this.parent.properties;return t>0?`width:${1/t*100}%`:""}getPaddingStyle(){const{gutter:t}=this.parent.properties;return t?`padding-left:${t}rpx;padding-top:${t}rpx`:""}getBorderStyle(){const{gutter:t}=this.parent.properties;let{border:e}=this.parent.properties;if(!e)return"";isObject(e)||(e={});const{color:r="#266FE8",width:i=2,style:o="solid"}=e;return t?`border:${i}rpx ${o} ${r}`:`border-top:${i}rpx ${o} ${r};border-left:${i}rpx ${o} ${r}`}onClick(t){const{item:e}=t.currentTarget.dataset;this.triggerEvent("click",e),this.jumpLink()}jumpLink(){const{url:t,jumpType:e}=this.properties;t&&e&&LinkTypes[e]&&wx[LinkTypes[e]]({url:t})}};GridItem=__decorate([wxComponent()],GridItem);export default GridItem; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.json b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.json new file mode 100644 index 0000000..22e1326 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-image":"../image/image","t-icon":"../icon/icon","t-badge":"../badge/badge"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxml new file mode 100644 index 0000000..964a334 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxml @@ -0,0 +1 @@ +module.exports.getImageSize = function(column) { if (column >= 5) return 'small'; if (column == 4) return 'middle'; return 'large'; }{{text}}{{description}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxss new file mode 100644 index 0000000..d11d9e1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/grid-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-grid-item{box-sizing:border-box;height:100%;display:inline-block;vertical-align:top;background-color:var(--td-grid-item-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-grid-item--hover{background-color:var(--td-grid-item-hover-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-grid-item--auto-size{width:168rpx}.t-grid-item__content{display:flex;flex-direction:column;align-items:center;overflow:hidden;position:relative;padding:var(--td-grid-item-padding,32rpx) 0 24rpx}.t-grid-item__content--horizontal{flex-direction:row;padding-left:var(--td-grid-item-padding,32rpx)}.t-grid-item__content--left{justify-self:flex-start;align-items:flex-start}.t-grid-item__content--left .t-grid-item__words{text-align:left}.t-grid-item__words{width:100%;text-align:center;position:relative;flex-direction:column;display:flex;flex:1;justify-content:center;align-items:center}.t-grid-item__words--horizontal{margin-left:24rpx}.t-grid-item__words:empty{display:none}.t-grid-item__image:not(:empty){width:var(--td-grid-item-image-width,96rpx);height:var(--td-grid-item-image-width,96rpx)}.t-grid-item__image:not(:empty).t-grid-item__image--small{width:var(--td-grid-item-image-small-width,64rpx);height:var(--td-grid-item-image-small-width,64rpx)}.t-grid-item__image:not(:empty).t-grid-item__image--middle{width:var(--td-grid-item-image-middle-width,80rpx);height:var(--td-grid-item-image-middle-width,80rpx)}.t-grid-item__image:not(:empty) .t-grid__image{width:100%;height:100%}.t-grid-item__image--icon{display:flex;align-items:center;justify-content:center;background:var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3));border-radius:var(--td-radius-default,12rpx)}.t-grid-item__text{width:inherit;color:var(--td-grid-item-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-grid-item-text-font-size,28rpx);line-height:var(--td-grid-item-text-line-height,44rpx);padding-top:var(--td-grid-item-text-padding-top,16rpx)}.t-grid-item__text--small{font-size:var(--td-grid-item-text-small-font-size,24rpx)}.t-grid-item__text--middle{font-size:var(--td-grid-item-text-middle-font-size,24rpx)}.t-grid-item__text--horizontal{padding-top:0;text-align:left}.t-grid-item__description{padding-top:var(--td-grid-item-description-padding-top,0);width:inherit;color:var(--td-grid-item-description-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-grid-item-description-font-size,24rpx);line-height:var(--td-grid-item-description-line-height,40rpx)}.t-grid-item__description--horizontal{margin-top:var(--td-grid-item-horizontal-text-description-top,0);padding-left:var(--td-grid-item-horizontal-text-padding-left,0);text-align-last:left}.t-grid-item__icon{font-size:48rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/grid-item/props.js new file mode 100644 index 0000000..6d7fc9c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/props.js @@ -0,0 +1 @@ +const props={badgeProps:{type:Object,value:null},description:{type:String},icon:{type:null},image:{type:String},imageProps:{type:Object},jumpType:{type:String,value:"navigate-to"},layout:{type:String,value:"vertical"},text:{type:String},url:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/grid-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/grid.d.ts b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.d.ts new file mode 100644 index 0000000..5bc9604 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.d.ts @@ -0,0 +1,22 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Grid extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + properties: import("./type").TdGridProps; + data: { + prefix: string; + classPrefix: string; + contentStyle: string; + }; + observers: { + 'column,hover,align,gutter,border'(): void; + }; + lifetimes: { + attached(): void; + }; + methods: { + doForChild(action: (item: WechatMiniprogram.Component.TrivialInstance) => void): void; + updateContentStyle(): void; + getContentMargin(): string; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/grid.js b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.js new file mode 100644 index 0000000..0b083a2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import{isObject}from"../common/validator";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-grid`;let Grid=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=["t-class"],this.relations={"../grid-item/grid-item":{type:"descendant"}},this.properties=props,this.data={prefix:prefix,classPrefix:name,contentStyle:""},this.observers={"column,hover,align,gutter,border"(){this.updateContentStyle(),this.doForChild((t=>t.updateStyle()))}},this.lifetimes={attached(){this.updateContentStyle()}},this.methods={doForChild(t){this.$children.forEach(t)},updateContentStyle(){const t=[],e=this.getContentMargin();e&&t.push(e),this.setData({contentStyle:t.join(";")})},getContentMargin(){const{gutter:t}=this.properties;let{border:e}=this.properties;if(!e)return`margin-left:-${t}rpx; margin-top:-${t}rpx`;isObject(e)||(e={});const{width:r=2}=e;return`margin-left:-${r}rpx; margin-top:-${r}rpx`}}}};Grid=__decorate([wxComponent()],Grid);export default Grid; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/grid.json b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxml b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxml new file mode 100644 index 0000000..95f0fbb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxss b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxss new file mode 100644 index 0000000..8a70a65 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/grid.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-grid{position:relative;overflow:hidden;background-color:var(--td-grid-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-grid__content{width:auto}.t-grid--card{margin:0 32rpx;border-radius:var(--td-grid-card-radius,var(--td-radius-large,18rpx));overflow:hidden} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/props.js b/app/miniprogram_npm/tdesign-miniprogram/grid/props.js new file mode 100644 index 0000000..2c14f63 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/props.js @@ -0,0 +1 @@ +const props={align:{type:String,value:"center"},border:{type:null,value:!1},column:{type:Number,value:4},gutter:{type:Number},hover:{type:Boolean,value:!1},theme:{type:String,value:"default"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/grid/type.js b/app/miniprogram_npm/tdesign-miniprogram/grid/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/grid/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/content.wxml b/app/miniprogram_npm/tdesign-miniprogram/guide/content.wxml new file mode 100644 index 0000000..70702f7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/content.wxml @@ -0,0 +1 @@ +{{title}}{{body}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/guide.d.ts b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.d.ts new file mode 100644 index 0000000..b94871d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.d.ts @@ -0,0 +1,103 @@ +/// +import { SuperComponent } from '../common/src/index'; +import { TdGuideProps, GuideStep } from './type'; +export interface GuideProps extends TdGuideProps { +} +export { GuideStep }; +export default class Guide extends SuperComponent { + externalClasses: string[]; + properties: TdGuideProps; + options: WechatMiniprogram.Component.ComponentOptions; + data: { + prefix: string; + classPrefix: string; + visible: boolean; + _current: number; + _steps: any[]; + buttonProps: {}; + referenceStyle: string; + popoverStyle: string; + title: string; + body: string; + nonOverlay: boolean; + modeType: string; + }; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + 'steps, current, showOverlay'(): Promise; + }; + lifetimes: { + created(): void; + attached(): void; + }; + methods: { + init(): Promise; + placementOffset({ placement, offset }: GuideStep, place: CSSStyleDeclaration): Promise; + buttonProps(step: any, mode: any): { + skipButton: any; + nextButton: any; + backButton: any; + finishButton: any; + }; + renderCounter(): any; + buttonContent(button: any): string; + onTplButtonTap(e: any): void; + getPlacement(): { + center: (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + bottom: (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'bottom-left': (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'bottom-right': (rect: any, place: any, offset: any) => { + top: string; + right: string; + }; + left: (rect: any, place: any, offset: any) => { + top: string; + right: string; + }; + 'left-top': (rect: any, place: any, offset: any) => { + top: string; + right: string; + }; + 'left-bottom': (rect: any, place: any, offset: any) => { + top: string; + right: string; + }; + right: (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'right-top': (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'right-bottom': (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + top: (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'top-left': (rect: any, place: any, offset: any) => { + top: string; + left: string; + }; + 'top-right': (rect: any, place: any, offset: any) => { + top: string; + right: string; + }; + }; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/guide.js b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.js new file mode 100644 index 0000000..674567f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import{isFunction,isNumber}from"../common/validator";import{debounce,getRect,rpx2px,styles,unitConvert,nextTick,systemInfo}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-guide`;let Guide=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-reference`,`${prefix}-class-popover`,`${prefix}-class-tooltip`,`${prefix}-class-title`,`${prefix}-class-body`,`${prefix}-class-footer`,`${prefix}-class-skip`,`${prefix}-class-next`,`${prefix}-class-back`,`${prefix}-class-finish`],this.properties=props,this.options={pureDataPattern:/^_/,multipleSlots:!0},this.data={prefix:prefix,classPrefix:name,visible:!1,_current:-1,_steps:[],buttonProps:{},referenceStyle:"",popoverStyle:"",title:"",body:"",nonOverlay:!1,modeType:""},this.controlledProps=[{key:"current",event:"change"}],this.observers={"steps, current, showOverlay"(){return __awaiter(this,void 0,void 0,(function*(){this._init()}))}},this.lifetimes={created(){this._init=debounce((()=>this.init()),20),this._getPlacement=this.getPlacement()},attached(){this._init()}},this.methods={init(){var t,e,i,s,a,o,n;return __awaiter(this,void 0,void 0,(function*(){const{steps:r,current:p}=this.properties,{_steps:l,_current:h}=this.data,c=r[p];if(!c)return this.setData({visible:!1});const u="dialog"===(null!==(t=c.mode)&&void 0!==t?t:this.data.mode)?"dialog":"popover",x=null!==(e=c.showOverlay)&&void 0!==e?e:this.data.showOverlay;if(this.setData({nonOverlay:!x,modeType:u}),r!==l||p!==h)if("popover"===u){const t=yield c.element();if(!t)return;const e=rpx2px(null!==(i=c.highlightPadding)&&void 0!==i?i:this.data.highlightPadding),o={top:`${t.top-e}px`,right:`${systemInfo.windowWidth-t.right-e}px`,left:`${t.left-e}px`,width:`${t.width+2*e}px`,height:`${t.height+2*e}px`};this.setData({_steps:this.data.steps,_current:this.data.current,visible:!0,referenceStyle:styles(o),title:null!==(s=c.title)&&void 0!==s?s:"",body:null!==(a=c.body)&&void 0!==a?a:"",buttonProps:this.buttonProps(c,"popover")});const n=yield this.placementOffset(c,o);this.setData({popoverStyle:n})}else this.setData({_steps:this.data.steps,_current:this.data.current,visible:!0,title:null!==(o=c.title)&&void 0!==o?o:"",body:null!==(n=c.body)&&void 0!==n?n:"",buttonProps:this.buttonProps(c,"dialog")})}))},placementOffset({placement:t,offset:e},i){var s,a;return __awaiter(this,void 0,void 0,(function*(){yield nextTick();const o=yield getRect(this,`.${name}__container`),n=null===(a=(s=this._getPlacement)[t])||void 0===a?void 0:a.call(s,o,i,e);return styles(Object.assign({position:"absolute"},n))}))},buttonProps(t,e){var i,s,a,o;let n=null!==(i=t.skipButtonProps)&&void 0!==i?i:this.data.skipButtonProps;const r="popover"===e?"extra-small":"medium";n=Object.assign(Object.assign({theme:"light",content:"跳过",size:r},n),{tClass:`${prefix}-class-skip ${name}__button ${(null==n?void 0:n.class)||""}`,type:"skip"});let p=null!==(s=t.nextButtonProps)&&void 0!==s?s:this.data.nextButtonProps;p=Object.assign(Object.assign({theme:"primary",content:"下一步",size:r},p),{tClass:`${prefix}-class-next ${name}__button ${(null==p?void 0:p.class)||""}`,type:"next"}),p=Object.assign(Object.assign({},p),{content:this.buttonContent(p)});let l=null!==(a=t.backButtonProps)&&void 0!==a?a:this.data.backButtonProps;l=Object.assign(Object.assign({theme:"light",content:"返回",size:r},l),{tClass:`${prefix}-class-back ${name}__button ${(null==l?void 0:l.class)||""}`,type:"back"});let h=null!==(o=t.finishButtonProps)&&void 0!==o?o:this.data.finishButtonProps;return h=Object.assign(Object.assign({theme:"primary",content:"完成",size:r},h),{tClass:`${prefix}-class-finish ${name}__button ${(null==h?void 0:h.class)||""}`,type:"finish"}),h=Object.assign(Object.assign({},h),{content:this.buttonContent(h)}),{skipButton:n,nextButton:p,backButton:l,finishButton:h}},renderCounter(){const{steps:t,current:e,counter:i}=this.data,s=t.length,a=e+1,o=isFunction(i)?i({total:s,current:a}):i;return i?o:`(${a}/${s})`},buttonContent(t){const{hideCounter:e}=this.data;return`${t.content.replace(/ \(.*?\)/,"")} ${e?"":this.renderCounter()}`},onTplButtonTap(t){const{type:e}=t.target.dataset,i={e:t,current:this.data.current,total:this.data.steps.length};switch(e){case"next":this.triggerEvent("next-step-click",Object.assign({next:this.data.current+1},i)),this.setData({current:this.data.current+1});break;case"skip":this.triggerEvent("skip",i),this.setData({current:-1});break;case"back":this.triggerEvent("back",i),this.setData({current:0});break;case"finish":this.triggerEvent("finish",i),this.setData({current:-1})}this.triggerEvent("change",{current:this.data.current})},getPlacement(){const t=rpx2px(32),e=t=>unitConvert(isNumber(null==t?void 0:t[0])?`${null==t?void 0:t[0]}rpx`:(null==t?void 0:t[0])||0),i=t=>unitConvert(isNumber(null==t?void 0:t[1])?`${null==t?void 0:t[1]}rpx`:(null==t?void 0:t[1])||0),s=t=>parseFloat(t.left),a=t=>parseFloat(t.right),o=t=>parseFloat(t.top),n=t=>parseFloat(t.height),r=t=>parseFloat(t.width);return{center:(a,p,l)=>({top:`${Math.max(n(p)+o(p)+t+i(l),1)}px`,left:`${Math.max(r(p)/2+s(p)-a.width/2+e(l),1)}px`}),bottom:(a,p,l)=>({top:`${Math.max(n(p)+o(p)+t+i(l),1)}px`,left:`${Math.max(r(p)/2+s(p)-a.width/2+e(l),1)}px`}),"bottom-left":(a,r,p)=>({top:`${Math.max(n(r)+o(r)+t+i(p),1)}px`,left:`${Math.max(s(r)+e(p),1)}px`}),"bottom-right":(s,r,p)=>({top:`${Math.max(n(r)+o(r)+t+i(p),1)}px`,right:`${Math.max(a(r)-e(p),1)}px`}),left:(s,p,l)=>({top:`${Math.max(n(p)/2+o(p)-s.height/2+i(l),1)}px`,right:`${Math.max(r(p)+a(p)+t-e(l),1)}px`}),"left-top":(s,n,p)=>({top:`${Math.max(o(n)+i(p),1)}px`,right:`${Math.max(r(n)+a(n)+t-e(p),1)}px`}),"left-bottom":(s,p,l)=>({top:`${Math.max(o(p)+n(p)-s.height-i(l),1)}px`,right:`${Math.max(r(p)+a(p)+t-e(l),1)}px`}),right:(a,p,l)=>({top:`${Math.max(n(p)/2+o(p)-a.height/2+i(l),1)}px`,left:`${Math.max(s(p)+r(p)+t+e(l),1)}px`}),"right-top":(a,n,p)=>({top:`${Math.max(o(n)+i(p),1)}px`,left:`${Math.max(s(n)+r(n)+t+e(p),1)}px`}),"right-bottom":(a,p,l)=>({top:`${Math.max(o(p)+n(p)-a.height-i(l),1)}px`,left:`${Math.max(s(p)+r(p)+t+e(l),1)}px`}),top:(a,n,p)=>({top:`${Math.max(o(n)-a.height-t+i(p),1)}px`,left:`${Math.max(r(n)/2+s(n)-a.width/2+e(p),1)}px`}),"top-left":(a,n,r)=>({top:`${Math.max(o(n)-a.height-t+i(r),1)}px`,left:`${Math.max(s(n)+e(r),1)}px`}),"top-right":(s,n,r)=>({top:`${Math.max(o(n)-s.height-t+i(r),1)}px`,right:`${Math.max(a(n)-e(r),1)}px`})}}}}};Guide=__decorate([wxComponent()],Guide);export default Guide; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/guide.json b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.json new file mode 100644 index 0000000..3abf592 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-overlay":"../overlay/overlay","t-button":"../button/button","t-popup":"../popup/popup"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxml b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxml new file mode 100644 index 0000000..0a6067a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxss b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxss new file mode 100644 index 0000000..e1e5ebf --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/guide.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-guide__reference{position:absolute;box-shadow:0 0 0 0 var(--td-guide-reference-mask-color,var(--td-font-gray-2,rgba(0,0,0,.6))),var(--td-guide-reference-mask-color,var(--td-font-gray-2,rgba(0,0,0,.6))) 0 0 0 5000px;border-radius:var(--td-guide-reference-border-radius,var(--td-radius-default,12rpx));transition:all var(--td-anim-duration-base,.2s) var(--td-anim-time-fn-ease-out,cubic-bezier(0,0,.15,1))}.t-guide__reference--nonoverlay{box-shadow:none;border:var(--td-guide-reference-border,4rpx solid var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-guide__container{display:inline-block}.t-guide__container--popover{background-color:var(--td-guide-popover-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));border:var(--td-guide-popover-border,2rpx solid var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));border-radius:var(--td-guide-popover-border-radius,var(--td-radius-large,18rpx));box-shadow:var(--td-guide-popover-shadow,var(--td-shadow-3,0 6px 30px 5px rgba(0,0,0,.05),0 16px 24px 2px rgba(0,0,0,.04),0 8px 10px -5px rgba(0,0,0,.08)));padding:var(--td-guide-popover-padding,var(--td-spacer-2,32rpx));min-width:var(--td-guide-popover-min-width,480rpx);max-width:var(--td-guide-popover-max-width,540rpx)}.t-guide__container--dialog{background-color:var(--td-guide-popover-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));border-radius:var(--td-guide-dialog-border-radius,var(--td-radius-extra-large,24rpx));padding:var(--td-guide-dialog-padding,var(--td-spacer-3,48rpx) 0);width:var(--td-guide-dialog-width,622rpx)}.t-guide__title--popover{text-align:var(--td-guide-popover-title-text-align,left);color:var(--td-guide-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-guide-popover-title-font-size,var(--td-font-size-m,32rpx));font-weight:var(--td-guide-title-font-weight,600);line-height:var(--td-guide-popover-title-line-height,48rpx)}.t-guide__title--dialog{text-align:var(--td-guide-dialog-title-text-align,center);color:var(--td-guide-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-guide-dialog-title-font-size,36rpx);font-weight:var(--td-guide-title-font-weight,600);line-height:var(--td-guide-dialog-title-line-height,52rpx)}.t-guide__body--popover{margin-top:var(--td-guide-popover-body-margin-top,8rpx);text-align:var(--td-guide-popover-body-text-align,left);color:var(--td-guide-body-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));font-size:var(--td-guide-popover-body-font-size,var(--td-font-size-base,28rpx));font-weight:var(--td-guide-body-font-weight,400);line-height:var(--td-guide-popover-body-line-height,44rpx)}.t-guide__body--dialog{margin-top:var(--td-guide-dialog-body-margin-top,16rpx);text-align:var(--td-guide-dialog-body-text-align,center);color:var(--td-guide-body-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));font-size:var(--td-guide-dialog-body-font-size,var(--td-font-size-m,32rpx));font-weight:var(--td-guide-body-font-weight,400);line-height:var(--td-guide-dialog-body-line-height,48rpx)}.t-guide__footer{text-align:var(--td-guide-footer-text-align,right);margin-top:var(--td-guide-footer-margin-top,var(--td-spacer-3,48rpx))}.t-guide__footer .t-guide__button+.t-guide__button{margin-left:var(--td-guide-footer-button-space,var(--td-spacer-1,24rpx))}.t-guide__footer--dialog{display:flex;padding:var(--td-guide-dialog-footer-button-padding,0 var(--td-spacer-3,48rpx))}.t-guide__footer--dialog .t-guide__button:last-child{flex-grow:1} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/props.js b/app/miniprogram_npm/tdesign-miniprogram/guide/props.js new file mode 100644 index 0000000..0604e19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/props.js @@ -0,0 +1 @@ +const props={backButtonProps:{type:Object},counter:{type:null},current:{type:Number,value:null},defaultCurrent:{type:Number},finishButtonProps:{type:Object},hideBack:{type:Boolean,value:!1},hideCounter:{type:Boolean,value:!1},hideSkip:{type:Boolean,value:!1},highlightPadding:{type:Number,value:16},mode:{type:String,value:"popover"},nextButtonProps:{type:Object},showOverlay:{type:Boolean,value:!0},skipButtonProps:{type:Object},steps:{type:Array},usingCustomNavbar:{type:Boolean,value:!1},zIndex:{type:Number,value:999999}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/guide/type.js b/app/miniprogram_npm/tdesign-miniprogram/guide/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/guide/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/icon.d.ts b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.d.ts new file mode 100644 index 0000000..b70696a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.d.ts @@ -0,0 +1,18 @@ +import { SuperComponent } from '../common/src/index'; +export default class Icon extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdIconProps; + data: { + componentPrefix: string; + classPrefix: string; + isImage: boolean; + iconStyle: any; + }; + observers: { + 'name, color, size, style'(): void; + }; + methods: { + onTap(event: any): void; + setIconStyle(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/icon.js b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.js new file mode 100644 index 0000000..0259367 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{styles,addUnit,getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-icon`;let Icon=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=props,this.data={componentPrefix:prefix,classPrefix:name,isImage:!1,iconStyle:void 0},this.observers={"name, color, size, style"(){this.setIconStyle()}},this.methods={onTap(t){this.triggerEvent("click",t.detail)},setIconStyle(){const{name:t,color:e,size:o,classPrefix:i}=this.data,s=-1!==t.indexOf("/"),n=addUnit(o),r=e?{color:e}:{},c=o?{"font-size":n}:{},a=Object.assign(Object.assign({},r),c);this.setData({isImage:s},(()=>__awaiter(this,void 0,void 0,(function*(){if(s){let t=n;t||(yield getRect(this,`.${i}`).then((e=>{t=addUnit(null==e?void 0:e.height)})).catch((()=>{}))),a.width=t,a.height=t}this.setData({iconStyle:`${styles(a)}`})}))))}}}};Icon=__decorate([wxComponent()],Icon);export default Icon; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/icon.json b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxml b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxml new file mode 100644 index 0000000..4b635a5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxss b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxss new file mode 100644 index 0000000..209e60c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/icon.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';@font-face{font-family:t;src:url(https://tdesign.gtimg.com/icon/0.3.1/fonts/t.eot),url(https://tdesign.gtimg.com/icon/0.3.1/fonts/t.eot?#iefix) format('ded-opentype'),url(https://tdesign.gtimg.com/icon/0.3.1/fonts/t.woff) format('woff'),url(https://tdesign.gtimg.com/icon/0.3.1/fonts/t.ttf) format('truetype'),url(https://tdesign.gtimg.com/icon/0.3.1/fonts/t.svg) format('svg');font-weight:400;font-style:normal}.t-icon--image{width:100%;height:100%}.t-icon__image{vertical-align:top;width:100%;height:100%}.t-icon-base{font-style:normal;font-weight:400;font-variant:normal;text-transform:none;line-height:1;text-align:center;display:block;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.t-icon{font-family:t!important}.t-icon-accessibility-filled:before{content:'\E001'}.t-icon-accessibility:before{content:'\E002'}.t-icon-activity-filled:before{content:'\E003'}.t-icon-activity:before{content:'\E004'}.t-icon-add-and-subtract:before{content:'\E005'}.t-icon-add-circle-filled:before{content:'\E006'}.t-icon-add-circle:before{content:'\E007'}.t-icon-add-rectangle-filled:before{content:'\E008'}.t-icon-add-rectangle:before{content:'\E009'}.t-icon-add:before{content:'\E00A'}.t-icon-address-book-filled:before{content:'\E00B'}.t-icon-address-book:before{content:'\E00C'}.t-icon-adjustment-filled:before{content:'\E00D'}.t-icon-adjustment:before{content:'\E00E'}.t-icon-airplay-wave-filled:before{content:'\E00F'}.t-icon-airplay-wave:before{content:'\E010'}.t-icon-alarm-add-filled:before{content:'\E011'}.t-icon-alarm-add:before{content:'\E012'}.t-icon-alarm-filled:before{content:'\E013'}.t-icon-alarm-off-filled:before{content:'\E014'}.t-icon-alarm-off:before{content:'\E015'}.t-icon-alarm:before{content:'\E016'}.t-icon-align-top:before{content:'\E017'}.t-icon-align-vertical:before{content:'\E018'}.t-icon-alpha:before{content:'\E019'}.t-icon-analytics-filled:before{content:'\E01A'}.t-icon-analytics:before{content:'\E01B'}.t-icon-anchor:before{content:'\E01C'}.t-icon-angry-filled:before{content:'\E01D'}.t-icon-angry:before{content:'\E01E'}.t-icon-animation-1-filled:before{content:'\E01F'}.t-icon-animation-1:before{content:'\E020'}.t-icon-animation-filled:before{content:'\E021'}.t-icon-animation:before{content:'\E022'}.t-icon-anticlockwise-filled:before{content:'\E023'}.t-icon-anticlockwise:before{content:'\E024'}.t-icon-api:before{content:'\E025'}.t-icon-app-filled:before{content:'\E026'}.t-icon-app:before{content:'\E027'}.t-icon-apple-filled:before{content:'\E028'}.t-icon-apple:before{content:'\E029'}.t-icon-application-filled:before{content:'\E02A'}.t-icon-application:before{content:'\E02B'}.t-icon-architecture-hui-style-filled:before{content:'\E02C'}.t-icon-architecture-hui-style:before{content:'\E02D'}.t-icon-archway-1-filled:before{content:'\E02E'}.t-icon-archway-1:before{content:'\E02F'}.t-icon-archway-filled:before{content:'\E030'}.t-icon-archway:before{content:'\E031'}.t-icon-arrow-down-circle-filled:before{content:'\E032'}.t-icon-arrow-down-circle:before{content:'\E033'}.t-icon-arrow-down-rectangle-filled:before{content:'\E034'}.t-icon-arrow-down-rectangle:before{content:'\E035'}.t-icon-arrow-down:before{content:'\E036'}.t-icon-arrow-left-circle-filled:before{content:'\E037'}.t-icon-arrow-left-circle:before{content:'\E038'}.t-icon-arrow-left-down-circle-filled:before{content:'\E039'}.t-icon-arrow-left-down-circle:before{content:'\E03A'}.t-icon-arrow-left-down:before{content:'\E03B'}.t-icon-arrow-left-right-1:before{content:'\E03C'}.t-icon-arrow-left-right-2:before{content:'\E03D'}.t-icon-arrow-left-right-3:before{content:'\E03E'}.t-icon-arrow-left-right-circle-filled:before{content:'\E03F'}.t-icon-arrow-left-right-circle:before{content:'\E040'}.t-icon-arrow-left-up-circle-filled:before{content:'\E041'}.t-icon-arrow-left-up-circle:before{content:'\E042'}.t-icon-arrow-left-up:before{content:'\E043'}.t-icon-arrow-left:before{content:'\E044'}.t-icon-arrow-right-circle-filled:before{content:'\E045'}.t-icon-arrow-right-circle:before{content:'\E046'}.t-icon-arrow-right-down-circle-filled:before{content:'\E047'}.t-icon-arrow-right-down-circle:before{content:'\E048'}.t-icon-arrow-right-down:before{content:'\E049'}.t-icon-arrow-right-up-circle-filled:before{content:'\E04A'}.t-icon-arrow-right-up-circle:before{content:'\E04B'}.t-icon-arrow-right-up:before{content:'\E04C'}.t-icon-arrow-right:before{content:'\E04D'}.t-icon-arrow-triangle-down-filled:before{content:'\E04E'}.t-icon-arrow-triangle-down:before{content:'\E04F'}.t-icon-arrow-triangle-up-filled:before{content:'\E050'}.t-icon-arrow-triangle-up:before{content:'\E051'}.t-icon-arrow-up-circle-filled:before{content:'\E052'}.t-icon-arrow-up-circle:before{content:'\E053'}.t-icon-arrow-up-down-1:before{content:'\E054'}.t-icon-arrow-up-down-2:before{content:'\E055'}.t-icon-arrow-up-down-3:before{content:'\E056'}.t-icon-arrow-up-down-circle-filled:before{content:'\E057'}.t-icon-arrow-up-down-circle:before{content:'\E058'}.t-icon-arrow-up:before{content:'\E059'}.t-icon-artboard:before{content:'\E05A'}.t-icon-article-filled:before{content:'\E05B'}.t-icon-article:before{content:'\E05C'}.t-icon-assignment-checked-filled:before{content:'\E05D'}.t-icon-assignment-checked:before{content:'\E05E'}.t-icon-assignment-code-filled:before{content:'\E05F'}.t-icon-assignment-code:before{content:'\E060'}.t-icon-assignment-error-filled:before{content:'\E061'}.t-icon-assignment-error:before{content:'\E062'}.t-icon-assignment-filled:before{content:'\E063'}.t-icon-assignment-user-filled:before{content:'\E064'}.t-icon-assignment-user:before{content:'\E065'}.t-icon-assignment:before{content:'\E066'}.t-icon-attach:before{content:'\E067'}.t-icon-attic-1-filled:before{content:'\E068'}.t-icon-attic-1:before{content:'\E069'}.t-icon-attic-filled:before{content:'\E06A'}.t-icon-attic:before{content:'\E06B'}.t-icon-audio-filled:before{content:'\E06C'}.t-icon-audio:before{content:'\E06D'}.t-icon-awkward-filled:before{content:'\E06E'}.t-icon-awkward:before{content:'\E06F'}.t-icon-backtop-rectangle-filled:before{content:'\E070'}.t-icon-backtop-rectangle:before{content:'\E071'}.t-icon-backtop:before{content:'\E072'}.t-icon-backup-filled:before{content:'\E073'}.t-icon-backup:before{content:'\E074'}.t-icon-backward-filled:before{content:'\E075'}.t-icon-backward:before{content:'\E076'}.t-icon-bad-laugh-filled:before{content:'\E077'}.t-icon-bad-laugh:before{content:'\E078'}.t-icon-bamboo-shoot-filled:before{content:'\E079'}.t-icon-bamboo-shoot:before{content:'\E07A'}.t-icon-banana-filled:before{content:'\E07B'}.t-icon-banana:before{content:'\E07C'}.t-icon-barbecue-filled:before{content:'\E07D'}.t-icon-barbecue:before{content:'\E07E'}.t-icon-barcode-1:before{content:'\E07F'}.t-icon-barcode:before{content:'\E080'}.t-icon-base-station:before{content:'\E081'}.t-icon-battery-add-filled:before{content:'\E082'}.t-icon-battery-add:before{content:'\E083'}.t-icon-battery-charging-filled:before{content:'\E084'}.t-icon-battery-charging:before{content:'\E085'}.t-icon-battery-filled:before{content:'\E086'}.t-icon-battery-low-filled:before{content:'\E087'}.t-icon-battery-low:before{content:'\E088'}.t-icon-battery:before{content:'\E089'}.t-icon-bean-filled:before{content:'\E08A'}.t-icon-bean:before{content:'\E08B'}.t-icon-beer-filled:before{content:'\E08C'}.t-icon-beer:before{content:'\E08D'}.t-icon-beta:before{content:'\E08E'}.t-icon-bifurcate-filled:before{content:'\E08F'}.t-icon-bifurcate:before{content:'\E090'}.t-icon-bill-filled:before{content:'\E091'}.t-icon-bill:before{content:'\E092'}.t-icon-bluetooth:before{content:'\E093'}.t-icon-bone-filled:before{content:'\E094'}.t-icon-bone:before{content:'\E095'}.t-icon-book-filled:before{content:'\E096'}.t-icon-book-open-filled:before{content:'\E097'}.t-icon-book-open:before{content:'\E098'}.t-icon-book-unknown-filled:before{content:'\E099'}.t-icon-book-unknown:before{content:'\E09A'}.t-icon-book:before{content:'\E09B'}.t-icon-bookmark-add-filled:before{content:'\E09C'}.t-icon-bookmark-add:before{content:'\E09D'}.t-icon-bookmark-checked-filled:before{content:'\E09E'}.t-icon-bookmark-checked:before{content:'\E09F'}.t-icon-bookmark-double-filled:before{content:'\E0A0'}.t-icon-bookmark-double:before{content:'\E0A1'}.t-icon-bookmark-filled:before{content:'\E0A2'}.t-icon-bookmark-minus-filled:before{content:'\E0A3'}.t-icon-bookmark-minus:before{content:'\E0A4'}.t-icon-bookmark:before{content:'\E0A5'}.t-icon-braces:before{content:'\E0A6'}.t-icon-brackets:before{content:'\E0A7'}.t-icon-bread-filled:before{content:'\E0A8'}.t-icon-bread:before{content:'\E0A9'}.t-icon-bridge-1-filled:before{content:'\E0AA'}.t-icon-bridge-1:before{content:'\E0AB'}.t-icon-bridge-2-filled:before{content:'\E0AC'}.t-icon-bridge-2:before{content:'\E0AD'}.t-icon-bridge-3:before{content:'\E0AE'}.t-icon-bridge-4:before{content:'\E0AF'}.t-icon-bridge-5-filled:before{content:'\E0B0'}.t-icon-bridge-5:before{content:'\E0B1'}.t-icon-bridge-6-filled:before{content:'\E0B2'}.t-icon-bridge-6:before{content:'\E0B3'}.t-icon-bridge:before{content:'\E0B4'}.t-icon-brightness-1-filled:before{content:'\E0B5'}.t-icon-brightness-1:before{content:'\E0B6'}.t-icon-brightness-filled:before{content:'\E0B7'}.t-icon-brightness:before{content:'\E0B8'}.t-icon-broccoli-filled:before{content:'\E0B9'}.t-icon-broccoli:before{content:'\E0BA'}.t-icon-browse-filled:before{content:'\E0BB'}.t-icon-browse-gallery-filled:before{content:'\E0BC'}.t-icon-browse-gallery:before{content:'\E0BD'}.t-icon-browse-off-filled:before{content:'\E0BE'}.t-icon-browse-off:before{content:'\E0BF'}.t-icon-browse:before{content:'\E0C0'}.t-icon-brush-filled:before{content:'\E0C1'}.t-icon-brush:before{content:'\E0C2'}.t-icon-bug-filled:before{content:'\E0C3'}.t-icon-bug-report-filled:before{content:'\E0C4'}.t-icon-bug-report:before{content:'\E0C5'}.t-icon-bug:before{content:'\E0C6'}.t-icon-building-1-filled:before{content:'\E0C7'}.t-icon-building-1:before{content:'\E0C8'}.t-icon-building-2-filled:before{content:'\E0C9'}.t-icon-building-2:before{content:'\E0CA'}.t-icon-building-3-filled:before{content:'\E0CB'}.t-icon-building-3:before{content:'\E0CC'}.t-icon-building-4-filled:before{content:'\E0CD'}.t-icon-building-4:before{content:'\E0CE'}.t-icon-building-5-filled:before{content:'\E0CF'}.t-icon-building-5:before{content:'\E0D0'}.t-icon-building-filled:before{content:'\E0D1'}.t-icon-building:before{content:'\E0D2'}.t-icon-bulletpoint:before{content:'\E0D3'}.t-icon-button-filled:before{content:'\E0D4'}.t-icon-button:before{content:'\E0D5'}.t-icon-cabbage-filled:before{content:'\E0D6'}.t-icon-cabbage:before{content:'\E0D7'}.t-icon-cake-filled:before{content:'\E0D8'}.t-icon-cake:before{content:'\E0D9'}.t-icon-calculation-1-filled:before{content:'\E0DA'}.t-icon-calculation-1:before{content:'\E0DB'}.t-icon-calculation:before{content:'\E0DC'}.t-icon-calculator-1:before{content:'\E0DD'}.t-icon-calculator-filled:before{content:'\E0DE'}.t-icon-calculator:before{content:'\E0DF'}.t-icon-calendar-1-filled:before{content:'\E0E0'}.t-icon-calendar-1:before{content:'\E0E1'}.t-icon-calendar-2-filled:before{content:'\E0E2'}.t-icon-calendar-2:before{content:'\E0E3'}.t-icon-calendar-edit-filled:before{content:'\E0E4'}.t-icon-calendar-edit:before{content:'\E0E5'}.t-icon-calendar-event-filled:before{content:'\E0E6'}.t-icon-calendar-event:before{content:'\E0E7'}.t-icon-calendar-filled:before{content:'\E0E8'}.t-icon-calendar:before{content:'\E0E9'}.t-icon-call-1-filled:before{content:'\E0EA'}.t-icon-call-1:before{content:'\E0EB'}.t-icon-call-cancel-filled:before{content:'\E0EC'}.t-icon-call-cancel:before{content:'\E0ED'}.t-icon-call-filled:before{content:'\E0EE'}.t-icon-call-forwarded-filled:before{content:'\E0EF'}.t-icon-call-forwarded:before{content:'\E0F0'}.t-icon-call-incoming-filled:before{content:'\E0F1'}.t-icon-call-incoming:before{content:'\E0F2'}.t-icon-call-off-filled:before{content:'\E0F3'}.t-icon-call-off:before{content:'\E0F4'}.t-icon-call:before{content:'\E0F5'}.t-icon-calm-1-filled:before{content:'\E0F6'}.t-icon-calm-1:before{content:'\E0F7'}.t-icon-calm-filled:before{content:'\E0F8'}.t-icon-calm:before{content:'\E0F9'}.t-icon-camera-1-filled:before{content:'\E0FA'}.t-icon-camera-1:before{content:'\E0FB'}.t-icon-camera-2-filled:before{content:'\E0FC'}.t-icon-camera-2:before{content:'\E0FD'}.t-icon-camera-filled:before{content:'\E0FE'}.t-icon-camera-off-filled:before{content:'\E0FF'}.t-icon-camera-off:before{content:'\E100'}.t-icon-camera:before{content:'\E101'}.t-icon-candy-filled:before{content:'\E102'}.t-icon-candy:before{content:'\E103'}.t-icon-card-filled:before{content:'\E104'}.t-icon-card:before{content:'\E105'}.t-icon-cardmembership-filled:before{content:'\E106'}.t-icon-cardmembership:before{content:'\E107'}.t-icon-caret-down-small:before{content:'\E108'}.t-icon-caret-down:before{content:'\E109'}.t-icon-caret-left-small:before{content:'\E10A'}.t-icon-caret-left:before{content:'\E10B'}.t-icon-caret-right-small:before{content:'\E10C'}.t-icon-caret-right:before{content:'\E10D'}.t-icon-caret-up-small:before{content:'\E10E'}.t-icon-caret-up:before{content:'\E10F'}.t-icon-cart-add-filled:before{content:'\E110'}.t-icon-cart-add:before{content:'\E111'}.t-icon-cart-filled:before{content:'\E112'}.t-icon-cart:before{content:'\E113'}.t-icon-cast-filled:before{content:'\E114'}.t-icon-cast:before{content:'\E115'}.t-icon-castle-1-filled:before{content:'\E116'}.t-icon-castle-1:before{content:'\E117'}.t-icon-castle-2-filled:before{content:'\E118'}.t-icon-castle-2:before{content:'\E119'}.t-icon-castle-3-filled:before{content:'\E11A'}.t-icon-castle-3:before{content:'\E11B'}.t-icon-castle-4-filled:before{content:'\E11C'}.t-icon-castle-4:before{content:'\E11D'}.t-icon-castle-5-filled:before{content:'\E11E'}.t-icon-castle-5:before{content:'\E11F'}.t-icon-castle-6-filled:before{content:'\E120'}.t-icon-castle-6:before{content:'\E121'}.t-icon-castle-7-filled:before{content:'\E122'}.t-icon-castle-7:before{content:'\E123'}.t-icon-castle-filled:before{content:'\E124'}.t-icon-castle:before{content:'\E125'}.t-icon-cat-filled:before{content:'\E126'}.t-icon-cat:before{content:'\E127'}.t-icon-catalog-filled:before{content:'\E128'}.t-icon-catalog:before{content:'\E129'}.t-icon-cd-filled:before{content:'\E12A'}.t-icon-cd:before{content:'\E12B'}.t-icon-celsius:before{content:'\E12C'}.t-icon-center-focus-strong-filled:before{content:'\E12D'}.t-icon-center-focus-strong:before{content:'\E12E'}.t-icon-centimeter:before{content:'\E12F'}.t-icon-certificate-1-filled:before{content:'\E130'}.t-icon-certificate-1:before{content:'\E131'}.t-icon-certificate-filled:before{content:'\E132'}.t-icon-certificate:before{content:'\E133'}.t-icon-chart-3d-filled:before{content:'\E134'}.t-icon-chart-3d:before{content:'\E135'}.t-icon-chart-add-filled:before{content:'\E136'}.t-icon-chart-add:before{content:'\E137'}.t-icon-chart-analytics:before{content:'\E138'}.t-icon-chart-area-filled:before{content:'\E139'}.t-icon-chart-area-multi-filled:before{content:'\E13A'}.t-icon-chart-area-multi:before{content:'\E13B'}.t-icon-chart-area:before{content:'\E13C'}.t-icon-chart-bar-filled:before{content:'\E13D'}.t-icon-chart-bar:before{content:'\E13E'}.t-icon-chart-bubble-filled:before{content:'\E13F'}.t-icon-chart-bubble:before{content:'\E140'}.t-icon-chart-column-filled:before{content:'\E141'}.t-icon-chart-column:before{content:'\E142'}.t-icon-chart-combo-filled:before{content:'\E143'}.t-icon-chart-combo:before{content:'\E144'}.t-icon-chart-filled:before{content:'\E145'}.t-icon-chart-line-data-1:before{content:'\E146'}.t-icon-chart-line-data:before{content:'\E147'}.t-icon-chart-line-multi:before{content:'\E148'}.t-icon-chart-line:before{content:'\E149'}.t-icon-chart-maximum:before{content:'\E14A'}.t-icon-chart-median:before{content:'\E14B'}.t-icon-chart-minimum:before{content:'\E14C'}.t-icon-chart-pie-filled:before{content:'\E14D'}.t-icon-chart-pie:before{content:'\E14E'}.t-icon-chart-radar-filled:before{content:'\E14F'}.t-icon-chart-radar:before{content:'\E150'}.t-icon-chart-radial:before{content:'\E151'}.t-icon-chart-ring-1-filled:before{content:'\E152'}.t-icon-chart-ring-1:before{content:'\E153'}.t-icon-chart-ring-filled:before{content:'\E154'}.t-icon-chart-ring:before{content:'\E155'}.t-icon-chart-scatter:before{content:'\E156'}.t-icon-chart-stacked-filled:before{content:'\E157'}.t-icon-chart-stacked:before{content:'\E158'}.t-icon-chart:before{content:'\E159'}.t-icon-chat-add-filled:before{content:'\E15A'}.t-icon-chat-add:before{content:'\E15B'}.t-icon-chat-bubble-1-filled:before{content:'\E15C'}.t-icon-chat-bubble-1:before{content:'\E15D'}.t-icon-chat-bubble-add-filled:before{content:'\E15E'}.t-icon-chat-bubble-add:before{content:'\E15F'}.t-icon-chat-bubble-error-filled:before{content:'\E160'}.t-icon-chat-bubble-error:before{content:'\E161'}.t-icon-chat-bubble-filled:before{content:'\E162'}.t-icon-chat-bubble-help-filled:before{content:'\E163'}.t-icon-chat-bubble-help:before{content:'\E164'}.t-icon-chat-bubble-history-filled:before{content:'\E165'}.t-icon-chat-bubble-history:before{content:'\E166'}.t-icon-chat-bubble-locked-filled:before{content:'\E167'}.t-icon-chat-bubble-locked:before{content:'\E168'}.t-icon-chat-bubble-smile-filled:before{content:'\E169'}.t-icon-chat-bubble-smile:before{content:'\E16A'}.t-icon-chat-bubble:before{content:'\E16B'}.t-icon-chat-checked-filled:before{content:'\E16C'}.t-icon-chat-checked:before{content:'\E16D'}.t-icon-chat-clear-filled:before{content:'\E16E'}.t-icon-chat-clear:before{content:'\E16F'}.t-icon-chat-double-filled:before{content:'\E170'}.t-icon-chat-double:before{content:'\E171'}.t-icon-chat-error-filled:before{content:'\E172'}.t-icon-chat-error:before{content:'\E173'}.t-icon-chat-filled:before{content:'\E174'}.t-icon-chat-heart-filled:before{content:'\E175'}.t-icon-chat-heart:before{content:'\E176'}.t-icon-chat-message-filled:before{content:'\E177'}.t-icon-chat-message:before{content:'\E178'}.t-icon-chat-off-filled:before{content:'\E179'}.t-icon-chat-off:before{content:'\E17A'}.t-icon-chat-poll-filled:before{content:'\E17B'}.t-icon-chat-poll:before{content:'\E17C'}.t-icon-chat-setting-filled:before{content:'\E17D'}.t-icon-chat-setting:before{content:'\E17E'}.t-icon-chat:before{content:'\E17F'}.t-icon-check-circle-filled:before{content:'\E180'}.t-icon-check-circle:before{content:'\E181'}.t-icon-check-double:before{content:'\E182'}.t-icon-check-rectangle-filled:before{content:'\E183'}.t-icon-check-rectangle:before{content:'\E184'}.t-icon-check:before{content:'\E185'}.t-icon-cheese-filled:before{content:'\E186'}.t-icon-cheese:before{content:'\E187'}.t-icon-cherry-filled:before{content:'\E188'}.t-icon-cherry:before{content:'\E189'}.t-icon-chevron-down-circle-filled:before{content:'\E18A'}.t-icon-chevron-down-circle:before{content:'\E18B'}.t-icon-chevron-down-double-s:before{content:'\E18C'}.t-icon-chevron-down-double:before{content:'\E18D'}.t-icon-chevron-down-rectangle-filled:before{content:'\E18E'}.t-icon-chevron-down-rectangle:before{content:'\E18F'}.t-icon-chevron-down-s:before{content:'\E190'}.t-icon-chevron-down:before{content:'\E191'}.t-icon-chevron-left-circle-filled:before{content:'\E192'}.t-icon-chevron-left-circle:before{content:'\E193'}.t-icon-chevron-left-double-s:before{content:'\E194'}.t-icon-chevron-left-double:before{content:'\E195'}.t-icon-chevron-left-rectangle-filled:before{content:'\E196'}.t-icon-chevron-left-rectangle:before{content:'\E197'}.t-icon-chevron-left-s:before{content:'\E198'}.t-icon-chevron-left:before{content:'\E199'}.t-icon-chevron-right-circle-filled:before{content:'\E19A'}.t-icon-chevron-right-circle:before{content:'\E19B'}.t-icon-chevron-right-double-s:before{content:'\E19C'}.t-icon-chevron-right-double:before{content:'\E19D'}.t-icon-chevron-right-rectangle-filled:before{content:'\E19E'}.t-icon-chevron-right-rectangle:before{content:'\E19F'}.t-icon-chevron-right-s:before{content:'\E1A0'}.t-icon-chevron-right:before{content:'\E1A1'}.t-icon-chevron-up-circle-filled:before{content:'\E1A2'}.t-icon-chevron-up-circle:before{content:'\E1A3'}.t-icon-chevron-up-double-s:before{content:'\E1A4'}.t-icon-chevron-up-double:before{content:'\E1A5'}.t-icon-chevron-up-rectangle-filled:before{content:'\E1A6'}.t-icon-chevron-up-rectangle:before{content:'\E1A7'}.t-icon-chevron-up-s:before{content:'\E1A8'}.t-icon-chevron-up:before{content:'\E1A9'}.t-icon-chicken:before{content:'\E1AA'}.t-icon-chili-filled:before{content:'\E1AB'}.t-icon-chili:before{content:'\E1AC'}.t-icon-chimney-1-filled:before{content:'\E1AD'}.t-icon-chimney-1:before{content:'\E1AE'}.t-icon-chimney-2-filled:before{content:'\E1AF'}.t-icon-chimney-2:before{content:'\E1B0'}.t-icon-chimney-filled:before{content:'\E1B1'}.t-icon-chimney:before{content:'\E1B2'}.t-icon-chinese-cabbage-filled:before{content:'\E1B3'}.t-icon-chinese-cabbage:before{content:'\E1B4'}.t-icon-church-filled:before{content:'\E1B5'}.t-icon-church:before{content:'\E1B6'}.t-icon-circle-filled:before{content:'\E1B7'}.t-icon-circle:before{content:'\E1B8'}.t-icon-city-1-filled:before{content:'\E1B9'}.t-icon-city-1:before{content:'\E1BA'}.t-icon-city-10-filled:before{content:'\E1BB'}.t-icon-city-10:before{content:'\E1BC'}.t-icon-city-11-filled:before{content:'\E1BD'}.t-icon-city-11:before{content:'\E1BE'}.t-icon-city-12-filled:before{content:'\E1BF'}.t-icon-city-12:before{content:'\E1C0'}.t-icon-city-13-filled:before{content:'\E1C1'}.t-icon-city-13:before{content:'\E1C2'}.t-icon-city-14-filled:before{content:'\E1C3'}.t-icon-city-14:before{content:'\E1C4'}.t-icon-city-15-filled:before{content:'\E1C5'}.t-icon-city-15:before{content:'\E1C6'}.t-icon-city-2-filled:before{content:'\E1C7'}.t-icon-city-2:before{content:'\E1C8'}.t-icon-city-3-filled:before{content:'\E1C9'}.t-icon-city-3:before{content:'\E1CA'}.t-icon-city-4-filled:before{content:'\E1CB'}.t-icon-city-4:before{content:'\E1CC'}.t-icon-city-5-filled:before{content:'\E1CD'}.t-icon-city-5:before{content:'\E1CE'}.t-icon-city-6-filled:before{content:'\E1CF'}.t-icon-city-6:before{content:'\E1D0'}.t-icon-city-7-filled:before{content:'\E1D1'}.t-icon-city-7:before{content:'\E1D2'}.t-icon-city-8-filled:before{content:'\E1D3'}.t-icon-city-8:before{content:'\E1D4'}.t-icon-city-9-filled:before{content:'\E1D5'}.t-icon-city-9:before{content:'\E1D6'}.t-icon-city-ancient-1-filled:before{content:'\E1D7'}.t-icon-city-ancient-1:before{content:'\E1D8'}.t-icon-city-ancient-2-filled:before{content:'\E1D9'}.t-icon-city-ancient-2:before{content:'\E1DA'}.t-icon-city-ancient-filled:before{content:'\E1DB'}.t-icon-city-ancient:before{content:'\E1DC'}.t-icon-city-filled:before{content:'\E1DD'}.t-icon-city:before{content:'\E1DE'}.t-icon-clear-filled:before{content:'\E1DF'}.t-icon-clear-formatting-1-filled:before{content:'\E1E0'}.t-icon-clear-formatting-1:before{content:'\E1E1'}.t-icon-clear-formatting-filled:before{content:'\E1E2'}.t-icon-clear-formatting:before{content:'\E1E3'}.t-icon-clear:before{content:'\E1E4'}.t-icon-close-circle-filled:before{content:'\E1E5'}.t-icon-close-circle:before{content:'\E1E6'}.t-icon-close-octagon-filled:before{content:'\E1E7'}.t-icon-close-octagon:before{content:'\E1E8'}.t-icon-close-rectangle-filled:before{content:'\E1E9'}.t-icon-close-rectangle:before{content:'\E1EA'}.t-icon-close:before{content:'\E1EB'}.t-icon-cloud-download:before{content:'\E1EC'}.t-icon-cloud-filled:before{content:'\E1ED'}.t-icon-cloud-upload:before{content:'\E1EE'}.t-icon-cloud:before{content:'\E1EF'}.t-icon-cloudy-day-filled:before{content:'\E1F0'}.t-icon-cloudy-day:before{content:'\E1F1'}.t-icon-cloudy-night-filled:before{content:'\E1F2'}.t-icon-cloudy-night-rain-filled:before{content:'\E1F3'}.t-icon-cloudy-night-rain:before{content:'\E1F4'}.t-icon-cloudy-night:before{content:'\E1F5'}.t-icon-cloudy-rain-filled:before{content:'\E1F6'}.t-icon-cloudy-rain:before{content:'\E1F7'}.t-icon-cloudy-sunny-filled:before{content:'\E1F8'}.t-icon-cloudy-sunny:before{content:'\E1F9'}.t-icon-code-1:before{content:'\E1FA'}.t-icon-code-off:before{content:'\E1FB'}.t-icon-code:before{content:'\E1FC'}.t-icon-cola-filled:before{content:'\E1FD'}.t-icon-cola:before{content:'\E1FE'}.t-icon-collage-filled:before{content:'\E1FF'}.t-icon-collage:before{content:'\E200'}.t-icon-collection-filled:before{content:'\E201'}.t-icon-collection:before{content:'\E202'}.t-icon-color-invert-filled:before{content:'\E203'}.t-icon-color-invert:before{content:'\E204'}.t-icon-combination-filled:before{content:'\E205'}.t-icon-combination:before{content:'\E206'}.t-icon-command:before{content:'\E207'}.t-icon-compass-1-filled:before{content:'\E208'}.t-icon-compass-1:before{content:'\E209'}.t-icon-compass-filled:before{content:'\E20A'}.t-icon-compass:before{content:'\E20B'}.t-icon-component-breadcrumb-filled:before{content:'\E20C'}.t-icon-component-breadcrumb:before{content:'\E20D'}.t-icon-component-checkbox-filled:before{content:'\E20E'}.t-icon-component-checkbox:before{content:'\E20F'}.t-icon-component-divider-horizontal-filled:before{content:'\E210'}.t-icon-component-divider-horizontal:before{content:'\E211'}.t-icon-component-divider-vertical-filled:before{content:'\E212'}.t-icon-component-divider-vertical:before{content:'\E213'}.t-icon-component-dropdown-filled:before{content:'\E214'}.t-icon-component-dropdown:before{content:'\E215'}.t-icon-component-grid-filled:before{content:'\E216'}.t-icon-component-grid:before{content:'\E217'}.t-icon-component-input-filled:before{content:'\E218'}.t-icon-component-input:before{content:'\E219'}.t-icon-component-layout-filled:before{content:'\E21A'}.t-icon-component-layout:before{content:'\E21B'}.t-icon-component-radio:before{content:'\E21C'}.t-icon-component-space-filled:before{content:'\E21D'}.t-icon-component-space:before{content:'\E21E'}.t-icon-component-steps-filled:before{content:'\E21F'}.t-icon-component-steps:before{content:'\E220'}.t-icon-component-switch-filled:before{content:'\E221'}.t-icon-component-switch:before{content:'\E222'}.t-icon-constraint:before{content:'\E223'}.t-icon-contrast-1-filled:before{content:'\E224'}.t-icon-contrast-1:before{content:'\E225'}.t-icon-contrast-filled:before{content:'\E226'}.t-icon-contrast:before{content:'\E227'}.t-icon-control-platform-filled:before{content:'\E228'}.t-icon-control-platform:before{content:'\E229'}.t-icon-cooperate-filled:before{content:'\E22A'}.t-icon-cooperate:before{content:'\E22B'}.t-icon-coordinate-system-filled:before{content:'\E22C'}.t-icon-coordinate-system:before{content:'\E22D'}.t-icon-copy-filled:before{content:'\E22E'}.t-icon-copy:before{content:'\E22F'}.t-icon-copyright-filled:before{content:'\E230'}.t-icon-copyright:before{content:'\E231'}.t-icon-corn-filled:before{content:'\E232'}.t-icon-corn:before{content:'\E233'}.t-icon-coupon-filled:before{content:'\E234'}.t-icon-coupon:before{content:'\E235'}.t-icon-course-filled:before{content:'\E236'}.t-icon-course:before{content:'\E237'}.t-icon-cpu-filled:before{content:'\E238'}.t-icon-cpu:before{content:'\E239'}.t-icon-crack-filled:before{content:'\E23A'}.t-icon-crack:before{content:'\E23B'}.t-icon-creditcard-add-filled:before{content:'\E23C'}.t-icon-creditcard-add:before{content:'\E23D'}.t-icon-creditcard-filled:before{content:'\E23E'}.t-icon-creditcard-off-filled:before{content:'\E23F'}.t-icon-creditcard-off:before{content:'\E240'}.t-icon-creditcard:before{content:'\E241'}.t-icon-crooked-smile-filled:before{content:'\E242'}.t-icon-crooked-smile:before{content:'\E243'}.t-icon-cry-and-laugh-filled:before{content:'\E244'}.t-icon-cry-and-laugh:before{content:'\E245'}.t-icon-cry-loudly-filled:before{content:'\E246'}.t-icon-cry-loudly:before{content:'\E247'}.t-icon-css3-filled:before{content:'\E248'}.t-icon-css3:before{content:'\E249'}.t-icon-cucumber:before{content:'\E24A'}.t-icon-currency-exchange:before{content:'\E24B'}.t-icon-cursor-filled:before{content:'\E24C'}.t-icon-cursor:before{content:'\E24D'}.t-icon-curtain-filled:before{content:'\E24E'}.t-icon-curtain:before{content:'\E24F'}.t-icon-curve:before{content:'\E250'}.t-icon-cut-1:before{content:'\E251'}.t-icon-cut:before{content:'\E252'}.t-icon-dam-1-filled:before{content:'\E253'}.t-icon-dam-1:before{content:'\E254'}.t-icon-dam-2-filled:before{content:'\E255'}.t-icon-dam-2:before{content:'\E256'}.t-icon-dam-3-filled:before{content:'\E257'}.t-icon-dam-3:before{content:'\E258'}.t-icon-dam-4-filled:before{content:'\E259'}.t-icon-dam-4:before{content:'\E25A'}.t-icon-dam-5-filled:before{content:'\E25B'}.t-icon-dam-5:before{content:'\E25C'}.t-icon-dam-6-filled:before{content:'\E25D'}.t-icon-dam-6:before{content:'\E25E'}.t-icon-dam-7-filled:before{content:'\E25F'}.t-icon-dam-7:before{content:'\E260'}.t-icon-dam-filled:before{content:'\E261'}.t-icon-dam:before{content:'\E262'}.t-icon-dart-board-filled:before{content:'\E263'}.t-icon-dart-board:before{content:'\E264'}.t-icon-dashboard-1-filled:before{content:'\E265'}.t-icon-dashboard-1:before{content:'\E266'}.t-icon-dashboard-filled:before{content:'\E267'}.t-icon-dashboard:before{content:'\E268'}.t-icon-data-base-filled:before{content:'\E269'}.t-icon-data-base:before{content:'\E26A'}.t-icon-data-checked-filled:before{content:'\E26B'}.t-icon-data-checked:before{content:'\E26C'}.t-icon-data-display:before{content:'\E26D'}.t-icon-data-error-filled:before{content:'\E26E'}.t-icon-data-error:before{content:'\E26F'}.t-icon-data-filled:before{content:'\E270'}.t-icon-data-search-filled:before{content:'\E271'}.t-icon-data-search:before{content:'\E272'}.t-icon-data:before{content:'\E273'}.t-icon-delete-1-filled:before{content:'\E274'}.t-icon-delete-1:before{content:'\E275'}.t-icon-delete-filled:before{content:'\E276'}.t-icon-delete-time-filled:before{content:'\E277'}.t-icon-delete-time:before{content:'\E278'}.t-icon-delete:before{content:'\E279'}.t-icon-delta-filled:before{content:'\E27A'}.t-icon-delta:before{content:'\E27B'}.t-icon-depressed-filled:before{content:'\E27C'}.t-icon-depressed:before{content:'\E27D'}.t-icon-desktop-1-filled:before{content:'\E27E'}.t-icon-desktop-1:before{content:'\E27F'}.t-icon-desktop-filled:before{content:'\E280'}.t-icon-desktop:before{content:'\E281'}.t-icon-despise-filled:before{content:'\E282'}.t-icon-despise:before{content:'\E283'}.t-icon-device-filled:before{content:'\E284'}.t-icon-device:before{content:'\E285'}.t-icon-discount-filled:before{content:'\E286'}.t-icon-discount:before{content:'\E287'}.t-icon-dissatisfaction-filled:before{content:'\E288'}.t-icon-dissatisfaction:before{content:'\E289'}.t-icon-divide:before{content:'\E28A'}.t-icon-dividers-1:before{content:'\E28B'}.t-icon-dividers:before{content:'\E28C'}.t-icon-doge-filled:before{content:'\E28D'}.t-icon-doge:before{content:'\E28E'}.t-icon-double-storey-filled:before{content:'\E28F'}.t-icon-double-storey:before{content:'\E290'}.t-icon-download-1:before{content:'\E291'}.t-icon-download-2-filled:before{content:'\E292'}.t-icon-download-2:before{content:'\E293'}.t-icon-download:before{content:'\E294'}.t-icon-downscale:before{content:'\E295'}.t-icon-drag-drop:before{content:'\E296'}.t-icon-drag-move:before{content:'\E297'}.t-icon-drink-filled:before{content:'\E298'}.t-icon-drink:before{content:'\E299'}.t-icon-drumstick-filled:before{content:'\E29A'}.t-icon-drumstick:before{content:'\E29B'}.t-icon-dv-filled:before{content:'\E29C'}.t-icon-dv:before{content:'\E29D'}.t-icon-dvd-filled:before{content:'\E29E'}.t-icon-dvd:before{content:'\E29F'}.t-icon-earphone-filled:before{content:'\E2A0'}.t-icon-earphone:before{content:'\E2A1'}.t-icon-earth-filled:before{content:'\E2A2'}.t-icon-earth:before{content:'\E2A3'}.t-icon-edit-1-filled:before{content:'\E2A4'}.t-icon-edit-1:before{content:'\E2A5'}.t-icon-edit-2-filled:before{content:'\E2A6'}.t-icon-edit-2:before{content:'\E2A7'}.t-icon-edit-filled:before{content:'\E2A8'}.t-icon-edit-off-filled:before{content:'\E2A9'}.t-icon-edit-off:before{content:'\E2AA'}.t-icon-edit:before{content:'\E2AB'}.t-icon-education-filled:before{content:'\E2AC'}.t-icon-education:before{content:'\E2AD'}.t-icon-eggplant-filled:before{content:'\E2AE'}.t-icon-eggplant:before{content:'\E2AF'}.t-icon-ellipsis:before{content:'\E2B0'}.t-icon-emo-emotional-filled:before{content:'\E2B1'}.t-icon-emo-emotional:before{content:'\E2B2'}.t-icon-enter:before{content:'\E2B3'}.t-icon-equal:before{content:'\E2B4'}.t-icon-error-circle-filled:before{content:'\E2B5'}.t-icon-error-circle:before{content:'\E2B6'}.t-icon-error-triangle-filled:before{content:'\E2B7'}.t-icon-error-triangle:before{content:'\E2B8'}.t-icon-error:before{content:'\E2B9'}.t-icon-excited-1-filled:before{content:'\E2BA'}.t-icon-excited-1:before{content:'\E2BB'}.t-icon-excited-filled:before{content:'\E2BC'}.t-icon-excited:before{content:'\E2BD'}.t-icon-expand-down-filled:before{content:'\E2BE'}.t-icon-expand-down:before{content:'\E2BF'}.t-icon-expand-horizontal:before{content:'\E2C0'}.t-icon-expand-up-filled:before{content:'\E2C1'}.t-icon-expand-up:before{content:'\E2C2'}.t-icon-expand-vertical:before{content:'\E2C3'}.t-icon-explore-filled:before{content:'\E2C4'}.t-icon-explore-off-filled:before{content:'\E2C5'}.t-icon-explore-off:before{content:'\E2C6'}.t-icon-explore:before{content:'\E2C7'}.t-icon-exposure-filled:before{content:'\E2C8'}.t-icon-exposure:before{content:'\E2C9'}.t-icon-extension-filled:before{content:'\E2CA'}.t-icon-extension-off-filled:before{content:'\E2CB'}.t-icon-extension-off:before{content:'\E2CC'}.t-icon-extension:before{content:'\E2CD'}.t-icon-face-retouching-filled:before{content:'\E2CE'}.t-icon-face-retouching:before{content:'\E2CF'}.t-icon-fact-check-filled:before{content:'\E2D0'}.t-icon-fact-check:before{content:'\E2D1'}.t-icon-fahrenheit-scale:before{content:'\E2D2'}.t-icon-feel-at-ease-filled:before{content:'\E2D3'}.t-icon-feel-at-ease:before{content:'\E2D4'}.t-icon-ferocious-filled:before{content:'\E2D5'}.t-icon-ferocious:before{content:'\E2D6'}.t-icon-ferris-wheel-filled:before{content:'\E2D7'}.t-icon-ferris-wheel:before{content:'\E2D8'}.t-icon-file-1-filled:before{content:'\E2D9'}.t-icon-file-1:before{content:'\E2DA'}.t-icon-file-add-1-filled:before{content:'\E2DB'}.t-icon-file-add-1:before{content:'\E2DC'}.t-icon-file-add-filled:before{content:'\E2DD'}.t-icon-file-add:before{content:'\E2DE'}.t-icon-file-attachment-filled:before{content:'\E2DF'}.t-icon-file-attachment:before{content:'\E2E0'}.t-icon-file-blocked-filled:before{content:'\E2E1'}.t-icon-file-blocked:before{content:'\E2E2'}.t-icon-file-code-1-filled:before{content:'\E2E3'}.t-icon-file-code-1:before{content:'\E2E4'}.t-icon-file-code-filled:before{content:'\E2E5'}.t-icon-file-code:before{content:'\E2E6'}.t-icon-file-copy-filled:before{content:'\E2E7'}.t-icon-file-copy:before{content:'\E2E8'}.t-icon-file-download-filled:before{content:'\E2E9'}.t-icon-file-download:before{content:'\E2EA'}.t-icon-file-excel-filled:before{content:'\E2EB'}.t-icon-file-excel:before{content:'\E2EC'}.t-icon-file-export-filled:before{content:'\E2ED'}.t-icon-file-export:before{content:'\E2EE'}.t-icon-file-filled:before{content:'\E2EF'}.t-icon-file-icon-filled:before{content:'\E2F0'}.t-icon-file-icon:before{content:'\E2F1'}.t-icon-file-image-filled:before{content:'\E2F2'}.t-icon-file-image:before{content:'\E2F3'}.t-icon-file-import-filled:before{content:'\E2F4'}.t-icon-file-import:before{content:'\E2F5'}.t-icon-file-locked-filled:before{content:'\E2F6'}.t-icon-file-locked:before{content:'\E2F7'}.t-icon-file-minus-filled:before{content:'\E2F8'}.t-icon-file-minus:before{content:'\E2F9'}.t-icon-file-music-filled:before{content:'\E2FA'}.t-icon-file-music:before{content:'\E2FB'}.t-icon-file-onenote-filled:before{content:'\E2FC'}.t-icon-file-onenote:before{content:'\E2FD'}.t-icon-file-outlook-filled:before{content:'\E2FE'}.t-icon-file-outlook:before{content:'\E2FF'}.t-icon-file-paste-filled:before{content:'\E300'}.t-icon-file-paste:before{content:'\E301'}.t-icon-file-pdf-filled:before{content:'\E302'}.t-icon-file-pdf:before{content:'\E303'}.t-icon-file-powerpoint-filled:before{content:'\E304'}.t-icon-file-powerpoint:before{content:'\E305'}.t-icon-file-restore-filled:before{content:'\E306'}.t-icon-file-restore:before{content:'\E307'}.t-icon-file-safety-filled:before{content:'\E308'}.t-icon-file-safety:before{content:'\E309'}.t-icon-file-search-filled:before{content:'\E30A'}.t-icon-file-search:before{content:'\E30B'}.t-icon-file-setting-filled:before{content:'\E30C'}.t-icon-file-setting:before{content:'\E30D'}.t-icon-file-teams-filled:before{content:'\E30E'}.t-icon-file-teams:before{content:'\E30F'}.t-icon-file-transmit-double-filled:before{content:'\E310'}.t-icon-file-transmit-double:before{content:'\E311'}.t-icon-file-transmit-filled:before{content:'\E312'}.t-icon-file-transmit:before{content:'\E313'}.t-icon-file-unknown-filled:before{content:'\E314'}.t-icon-file-unknown:before{content:'\E315'}.t-icon-file-unlocked-filled:before{content:'\E316'}.t-icon-file-unlocked:before{content:'\E317'}.t-icon-file-word-filled:before{content:'\E318'}.t-icon-file-word:before{content:'\E319'}.t-icon-file-zip-filled:before{content:'\E31A'}.t-icon-file-zip:before{content:'\E31B'}.t-icon-file:before{content:'\E31C'}.t-icon-fill-color-1-filled:before{content:'\E31D'}.t-icon-fill-color-1:before{content:'\E31E'}.t-icon-fill-color-filled:before{content:'\E31F'}.t-icon-fill-color:before{content:'\E320'}.t-icon-film-1-filled:before{content:'\E321'}.t-icon-film-1:before{content:'\E322'}.t-icon-film-filled:before{content:'\E323'}.t-icon-film:before{content:'\E324'}.t-icon-filter-1-filled:before{content:'\E325'}.t-icon-filter-1:before{content:'\E326'}.t-icon-filter-2-filled:before{content:'\E327'}.t-icon-filter-2:before{content:'\E328'}.t-icon-filter-3-filled:before{content:'\E329'}.t-icon-filter-3:before{content:'\E32A'}.t-icon-filter-clear-filled:before{content:'\E32B'}.t-icon-filter-clear:before{content:'\E32C'}.t-icon-filter-filled:before{content:'\E32D'}.t-icon-filter-off-filled:before{content:'\E32E'}.t-icon-filter-off:before{content:'\E32F'}.t-icon-filter-sort-filled:before{content:'\E330'}.t-icon-filter-sort:before{content:'\E331'}.t-icon-filter:before{content:'\E332'}.t-icon-fingerprint-1:before{content:'\E333'}.t-icon-fingerprint-2:before{content:'\E334'}.t-icon-fingerprint-3:before{content:'\E335'}.t-icon-fingerprint:before{content:'\E336'}.t-icon-fish-filled:before{content:'\E337'}.t-icon-fish:before{content:'\E338'}.t-icon-flag-1-filled:before{content:'\E339'}.t-icon-flag-1:before{content:'\E33A'}.t-icon-flag-2-filled:before{content:'\E33B'}.t-icon-flag-2:before{content:'\E33C'}.t-icon-flag-3-filled:before{content:'\E33D'}.t-icon-flag-3:before{content:'\E33E'}.t-icon-flag-4-filled:before{content:'\E33F'}.t-icon-flag-4:before{content:'\E340'}.t-icon-flag-filled:before{content:'\E341'}.t-icon-flag:before{content:'\E342'}.t-icon-flashlight-filled:before{content:'\E343'}.t-icon-flashlight:before{content:'\E344'}.t-icon-flight-landing-filled:before{content:'\E345'}.t-icon-flight-landing:before{content:'\E346'}.t-icon-flight-takeoff-filled:before{content:'\E347'}.t-icon-flight-takeoff:before{content:'\E348'}.t-icon-flip-smiling-face-filled:before{content:'\E349'}.t-icon-flip-smiling-face:before{content:'\E34A'}.t-icon-flip-to-back-filled:before{content:'\E34B'}.t-icon-flip-to-back:before{content:'\E34C'}.t-icon-flip-to-front-filled:before{content:'\E34D'}.t-icon-flip-to-front:before{content:'\E34E'}.t-icon-focus-filled:before{content:'\E34F'}.t-icon-focus:before{content:'\E350'}.t-icon-fog-filled:before{content:'\E351'}.t-icon-fog-night-filled:before{content:'\E352'}.t-icon-fog-night:before{content:'\E353'}.t-icon-fog-sunny-filled:before{content:'\E354'}.t-icon-fog-sunny:before{content:'\E355'}.t-icon-fog:before{content:'\E356'}.t-icon-folder-1-filled:before{content:'\E357'}.t-icon-folder-1:before{content:'\E358'}.t-icon-folder-add-1-filled:before{content:'\E359'}.t-icon-folder-add-1:before{content:'\E35A'}.t-icon-folder-add-filled:before{content:'\E35B'}.t-icon-folder-add:before{content:'\E35C'}.t-icon-folder-blocked-filled:before{content:'\E35D'}.t-icon-folder-blocked:before{content:'\E35E'}.t-icon-folder-details-filled:before{content:'\E35F'}.t-icon-folder-details:before{content:'\E360'}.t-icon-folder-export-filled:before{content:'\E361'}.t-icon-folder-export:before{content:'\E362'}.t-icon-folder-filled:before{content:'\E363'}.t-icon-folder-import-filled:before{content:'\E364'}.t-icon-folder-import:before{content:'\E365'}.t-icon-folder-locked-filled:before{content:'\E366'}.t-icon-folder-locked:before{content:'\E367'}.t-icon-folder-minus-filled:before{content:'\E368'}.t-icon-folder-minus:before{content:'\E369'}.t-icon-folder-move-filled:before{content:'\E36A'}.t-icon-folder-move:before{content:'\E36B'}.t-icon-folder-off-filled:before{content:'\E36C'}.t-icon-folder-off:before{content:'\E36D'}.t-icon-folder-open-1-filled:before{content:'\E36E'}.t-icon-folder-open-1:before{content:'\E36F'}.t-icon-folder-open-filled:before{content:'\E370'}.t-icon-folder-open:before{content:'\E371'}.t-icon-folder-search-filled:before{content:'\E372'}.t-icon-folder-search:before{content:'\E373'}.t-icon-folder-setting-filled:before{content:'\E374'}.t-icon-folder-setting:before{content:'\E375'}.t-icon-folder-shared-filled:before{content:'\E376'}.t-icon-folder-shared:before{content:'\E377'}.t-icon-folder-unlocked-filled:before{content:'\E378'}.t-icon-folder-unlocked:before{content:'\E379'}.t-icon-folder-zip-filled:before{content:'\E37A'}.t-icon-folder-zip:before{content:'\E37B'}.t-icon-folder:before{content:'\E37C'}.t-icon-forest-filled:before{content:'\E37D'}.t-icon-forest:before{content:'\E37E'}.t-icon-fork-filled:before{content:'\E37F'}.t-icon-fork:before{content:'\E380'}.t-icon-form-filled:before{content:'\E381'}.t-icon-form:before{content:'\E382'}.t-icon-format-horizontal-align-bottom:before{content:'\E383'}.t-icon-format-horizontal-align-center:before{content:'\E384'}.t-icon-format-horizontal-align-top:before{content:'\E385'}.t-icon-format-vertical-align-center:before{content:'\E386'}.t-icon-format-vertical-align-left:before{content:'\E387'}.t-icon-format-vertical-align-right:before{content:'\E388'}.t-icon-forward-filled:before{content:'\E389'}.t-icon-forward:before{content:'\E38A'}.t-icon-frame-1-filled:before{content:'\E38B'}.t-icon-frame-1:before{content:'\E38C'}.t-icon-frame-filled:before{content:'\E38D'}.t-icon-frame:before{content:'\E38E'}.t-icon-fries-filled:before{content:'\E38F'}.t-icon-fries:before{content:'\E390'}.t-icon-fullscreen-1:before{content:'\E391'}.t-icon-fullscreen-2:before{content:'\E392'}.t-icon-fullscreen-exit-1:before{content:'\E393'}.t-icon-fullscreen-exit:before{content:'\E394'}.t-icon-fullscreen:before{content:'\E395'}.t-icon-function-curve:before{content:'\E396'}.t-icon-functions-1:before{content:'\E397'}.t-icon-functions:before{content:'\E398'}.t-icon-gamepad-1-filled:before{content:'\E399'}.t-icon-gamepad-1:before{content:'\E39A'}.t-icon-gamepad-filled:before{content:'\E39B'}.t-icon-gamepad:before{content:'\E39C'}.t-icon-gamma:before{content:'\E39D'}.t-icon-garlic-filled:before{content:'\E39E'}.t-icon-garlic:before{content:'\E39F'}.t-icon-gender-female:before{content:'\E3A0'}.t-icon-gender-male:before{content:'\E3A1'}.t-icon-gesture-applause-filled:before{content:'\E3A2'}.t-icon-gesture-applause:before{content:'\E3A3'}.t-icon-gesture-click-filled:before{content:'\E3A4'}.t-icon-gesture-click:before{content:'\E3A5'}.t-icon-gesture-down-filled:before{content:'\E3A6'}.t-icon-gesture-down:before{content:'\E3A7'}.t-icon-gesture-expansion-filled:before{content:'\E3A8'}.t-icon-gesture-expansion:before{content:'\E3A9'}.t-icon-gesture-left-filled:before{content:'\E3AA'}.t-icon-gesture-left-slip-filled:before{content:'\E3AB'}.t-icon-gesture-left-slip:before{content:'\E3AC'}.t-icon-gesture-left:before{content:'\E3AD'}.t-icon-gesture-open-filled:before{content:'\E3AE'}.t-icon-gesture-open:before{content:'\E3AF'}.t-icon-gesture-pray-filled:before{content:'\E3B0'}.t-icon-gesture-pray:before{content:'\E3B1'}.t-icon-gesture-press-filled:before{content:'\E3B2'}.t-icon-gesture-press:before{content:'\E3B3'}.t-icon-gesture-ranslation-filled:before{content:'\E3B4'}.t-icon-gesture-ranslation:before{content:'\E3B5'}.t-icon-gesture-right-filled:before{content:'\E3B6'}.t-icon-gesture-right-slip-filled:before{content:'\E3B7'}.t-icon-gesture-right-slip:before{content:'\E3B8'}.t-icon-gesture-right:before{content:'\E3B9'}.t-icon-gesture-slide-left-and-right-filled:before{content:'\E3BA'}.t-icon-gesture-slide-left-and-right:before{content:'\E3BB'}.t-icon-gesture-slide-up-filled:before{content:'\E3BC'}.t-icon-gesture-slide-up:before{content:'\E3BD'}.t-icon-gesture-typing-filled:before{content:'\E3BE'}.t-icon-gesture-typing:before{content:'\E3BF'}.t-icon-gesture-up-and-down-filled:before{content:'\E3C0'}.t-icon-gesture-up-and-down:before{content:'\E3C1'}.t-icon-gesture-up-filled:before{content:'\E3C2'}.t-icon-gesture-up:before{content:'\E3C3'}.t-icon-gesture-wipe-down-filled:before{content:'\E3C4'}.t-icon-gesture-wipe-down:before{content:'\E3C5'}.t-icon-gift-filled:before{content:'\E3C6'}.t-icon-gift:before{content:'\E3C7'}.t-icon-giggle-filled:before{content:'\E3C8'}.t-icon-giggle:before{content:'\E3C9'}.t-icon-git-branch-filled:before{content:'\E3CA'}.t-icon-git-branch:before{content:'\E3CB'}.t-icon-git-commit-filled:before{content:'\E3CC'}.t-icon-git-commit:before{content:'\E3CD'}.t-icon-git-merge-filled:before{content:'\E3CE'}.t-icon-git-merge:before{content:'\E3CF'}.t-icon-git-pull-request-filled:before{content:'\E3D0'}.t-icon-git-pull-request:before{content:'\E3D1'}.t-icon-git-repository-commits-filled:before{content:'\E3D2'}.t-icon-git-repository-commits:before{content:'\E3D3'}.t-icon-git-repository-filled:before{content:'\E3D4'}.t-icon-git-repository-private-filled:before{content:'\E3D5'}.t-icon-git-repository-private:before{content:'\E3D6'}.t-icon-git-repository:before{content:'\E3D7'}.t-icon-gps-filled:before{content:'\E3D8'}.t-icon-gps:before{content:'\E3D9'}.t-icon-grape-filled:before{content:'\E3DA'}.t-icon-grape:before{content:'\E3DB'}.t-icon-greater-than-or-equal:before{content:'\E3DC'}.t-icon-greater-than:before{content:'\E3DD'}.t-icon-green-onion:before{content:'\E3DE'}.t-icon-grid-add-filled:before{content:'\E3DF'}.t-icon-grid-add:before{content:'\E3E0'}.t-icon-grid-view-filled:before{content:'\E3E1'}.t-icon-grid-view:before{content:'\E3E2'}.t-icon-guitar-filled:before{content:'\E3E3'}.t-icon-guitar:before{content:'\E3E4'}.t-icon-hamburger-filled:before{content:'\E3E5'}.t-icon-hamburger:before{content:'\E3E6'}.t-icon-happy-filled:before{content:'\E3E7'}.t-icon-happy:before{content:'\E3E8'}.t-icon-hard-disk-storage-filled:before{content:'\E3E9'}.t-icon-hard-disk-storage:before{content:'\E3EA'}.t-icon-hard-drive-filled:before{content:'\E3EB'}.t-icon-hard-drive:before{content:'\E3EC'}.t-icon-hashtag:before{content:'\E3ED'}.t-icon-hd-filled:before{content:'\E3EE'}.t-icon-hd:before{content:'\E3EF'}.t-icon-heart-filled:before{content:'\E3F0'}.t-icon-heart:before{content:'\E3F1'}.t-icon-help-circle-filled:before{content:'\E3F2'}.t-icon-help-circle:before{content:'\E3F3'}.t-icon-help-rectangle-filled:before{content:'\E3F4'}.t-icon-help-rectangle:before{content:'\E3F5'}.t-icon-help:before{content:'\E3F6'}.t-icon-highlight-1-filled:before{content:'\E3F7'}.t-icon-highlight-1:before{content:'\E3F8'}.t-icon-highlight:before{content:'\E3F9'}.t-icon-history-setting:before{content:'\E3FA'}.t-icon-history:before{content:'\E3FB'}.t-icon-home-filled:before{content:'\E3FC'}.t-icon-home:before{content:'\E3FD'}.t-icon-horizontal-filled:before{content:'\E3FE'}.t-icon-horizontal:before{content:'\E3FF'}.t-icon-hospital-1-filled:before{content:'\E400'}.t-icon-hospital-1:before{content:'\E401'}.t-icon-hospital-filled:before{content:'\E402'}.t-icon-hospital:before{content:'\E403'}.t-icon-hotspot-wave-filled:before{content:'\E404'}.t-icon-hotspot-wave:before{content:'\E405'}.t-icon-hourglass-filled:before{content:'\E406'}.t-icon-hourglass:before{content:'\E407'}.t-icon-houses-1-filled:before{content:'\E408'}.t-icon-houses-1:before{content:'\E409'}.t-icon-houses-2-filled:before{content:'\E40A'}.t-icon-houses-2:before{content:'\E40B'}.t-icon-houses-filled:before{content:'\E40C'}.t-icon-houses:before{content:'\E40D'}.t-icon-html5-filled:before{content:'\E40E'}.t-icon-html5:before{content:'\E40F'}.t-icon-https-filled:before{content:'\E410'}.t-icon-https:before{content:'\E411'}.t-icon-ice-cream-filled:before{content:'\E412'}.t-icon-ice-cream:before{content:'\E413'}.t-icon-icon-filled:before{content:'\E414'}.t-icon-icon:before{content:'\E415'}.t-icon-image-1-filled:before{content:'\E416'}.t-icon-image-1:before{content:'\E417'}.t-icon-image-add-filled:before{content:'\E418'}.t-icon-image-add:before{content:'\E419'}.t-icon-image-edit-filled:before{content:'\E41A'}.t-icon-image-edit:before{content:'\E41B'}.t-icon-image-error-filled:before{content:'\E41C'}.t-icon-image-error:before{content:'\E41D'}.t-icon-image-filled:before{content:'\E41E'}.t-icon-image-off-filled:before{content:'\E41F'}.t-icon-image-off:before{content:'\E420'}.t-icon-image-search-filled:before{content:'\E421'}.t-icon-image-search:before{content:'\E422'}.t-icon-image:before{content:'\E423'}.t-icon-indent-left:before{content:'\E424'}.t-icon-indent-right:before{content:'\E425'}.t-icon-indicator-filled:before{content:'\E426'}.t-icon-indicator:before{content:'\E427'}.t-icon-info-circle-filled:before{content:'\E428'}.t-icon-info-circle:before{content:'\E429'}.t-icon-ink-filled:before{content:'\E42A'}.t-icon-ink:before{content:'\E42B'}.t-icon-install-desktop-filled:before{content:'\E42C'}.t-icon-install-desktop:before{content:'\E42D'}.t-icon-install-filled:before{content:'\E42E'}.t-icon-install-mobile-filled:before{content:'\E42F'}.t-icon-install-mobile:before{content:'\E430'}.t-icon-install:before{content:'\E431'}.t-icon-institution-checked-filled:before{content:'\E432'}.t-icon-institution-checked:before{content:'\E433'}.t-icon-institution-filled:before{content:'\E434'}.t-icon-institution:before{content:'\E435'}.t-icon-internet-filled:before{content:'\E436'}.t-icon-internet:before{content:'\E437'}.t-icon-ipod-filled:before{content:'\E438'}.t-icon-ipod:before{content:'\E439'}.t-icon-joyful-filled:before{content:'\E43A'}.t-icon-joyful:before{content:'\E43B'}.t-icon-jump-double:before{content:'\E43C'}.t-icon-jump-off:before{content:'\E43D'}.t-icon-jump:before{content:'\E43E'}.t-icon-key-filled:before{content:'\E43F'}.t-icon-key:before{content:'\E440'}.t-icon-keyboard-filled:before{content:'\E441'}.t-icon-keyboard:before{content:'\E442'}.t-icon-laptop-filled:before{content:'\E443'}.t-icon-laptop:before{content:'\E444'}.t-icon-layers-filled:before{content:'\E445'}.t-icon-layers:before{content:'\E446'}.t-icon-layout-filled:before{content:'\E447'}.t-icon-layout:before{content:'\E448'}.t-icon-leaderboard-filled:before{content:'\E449'}.t-icon-leaderboard:before{content:'\E44A'}.t-icon-lemon-filled:before{content:'\E44B'}.t-icon-lemon-slice-filled:before{content:'\E44C'}.t-icon-lemon-slice:before{content:'\E44D'}.t-icon-lemon:before{content:'\E44E'}.t-icon-less-than-or-equal:before{content:'\E44F'}.t-icon-less-than:before{content:'\E450'}.t-icon-letters-a:before{content:'\E451'}.t-icon-letters-b:before{content:'\E452'}.t-icon-letters-c:before{content:'\E453'}.t-icon-letters-d:before{content:'\E454'}.t-icon-letters-e:before{content:'\E455'}.t-icon-letters-f:before{content:'\E456'}.t-icon-letters-g:before{content:'\E457'}.t-icon-letters-h:before{content:'\E458'}.t-icon-letters-i:before{content:'\E459'}.t-icon-letters-j:before{content:'\E45A'}.t-icon-letters-k:before{content:'\E45B'}.t-icon-letters-l:before{content:'\E45C'}.t-icon-letters-m:before{content:'\E45D'}.t-icon-letters-n:before{content:'\E45E'}.t-icon-letters-o:before{content:'\E45F'}.t-icon-letters-p:before{content:'\E460'}.t-icon-letters-q:before{content:'\E461'}.t-icon-letters-r:before{content:'\E462'}.t-icon-letters-s:before{content:'\E463'}.t-icon-letters-t:before{content:'\E464'}.t-icon-letters-u:before{content:'\E465'}.t-icon-letters-v:before{content:'\E466'}.t-icon-letters-w:before{content:'\E467'}.t-icon-letters-x:before{content:'\E468'}.t-icon-letters-y:before{content:'\E469'}.t-icon-letters-z:before{content:'\E46A'}.t-icon-lightbulb-circle-filled:before{content:'\E46B'}.t-icon-lightbulb-circle:before{content:'\E46C'}.t-icon-lightbulb-filled:before{content:'\E46D'}.t-icon-lightbulb:before{content:'\E46E'}.t-icon-lighthouse-1-filled:before{content:'\E46F'}.t-icon-lighthouse-1:before{content:'\E470'}.t-icon-lighthouse-2-filled:before{content:'\E471'}.t-icon-lighthouse-2:before{content:'\E472'}.t-icon-lighthouse-filled:before{content:'\E473'}.t-icon-lighthouse:before{content:'\E474'}.t-icon-lighting-circle-filled:before{content:'\E475'}.t-icon-lighting-circle:before{content:'\E476'}.t-icon-line-height:before{content:'\E477'}.t-icon-link-1:before{content:'\E478'}.t-icon-link-unlink:before{content:'\E479'}.t-icon-link:before{content:'\E47A'}.t-icon-liquor-filled:before{content:'\E47B'}.t-icon-liquor:before{content:'\E47C'}.t-icon-list-numbered:before{content:'\E47D'}.t-icon-list:before{content:'\E47E'}.t-icon-load:before{content:'\E47F'}.t-icon-loading:before{content:'\E480'}.t-icon-location-1-filled:before{content:'\E481'}.t-icon-location-1:before{content:'\E482'}.t-icon-location-enlargement-filled:before{content:'\E483'}.t-icon-location-enlargement:before{content:'\E484'}.t-icon-location-error-filled:before{content:'\E485'}.t-icon-location-error:before{content:'\E486'}.t-icon-location-filled:before{content:'\E487'}.t-icon-location-parking-place-filled:before{content:'\E488'}.t-icon-location-parking-place:before{content:'\E489'}.t-icon-location-reduction-filled:before{content:'\E48A'}.t-icon-location-reduction:before{content:'\E48B'}.t-icon-location-setting-filled:before{content:'\E48C'}.t-icon-location-setting:before{content:'\E48D'}.t-icon-location:before{content:'\E48E'}.t-icon-lock-off-filled:before{content:'\E48F'}.t-icon-lock-off:before{content:'\E490'}.t-icon-lock-on-filled:before{content:'\E491'}.t-icon-lock-on:before{content:'\E492'}.t-icon-lock-time-filled:before{content:'\E493'}.t-icon-lock-time:before{content:'\E494'}.t-icon-login:before{content:'\E495'}.t-icon-logo-adobe-illustrate-filled:before{content:'\E496'}.t-icon-logo-adobe-illustrate:before{content:'\E497'}.t-icon-logo-adobe-lightroom-filled:before{content:'\E498'}.t-icon-logo-adobe-lightroom:before{content:'\E499'}.t-icon-logo-adobe-photoshop-filled:before{content:'\E49A'}.t-icon-logo-adobe-photoshop:before{content:'\E49B'}.t-icon-logo-alipay-filled:before{content:'\E49C'}.t-icon-logo-alipay:before{content:'\E49D'}.t-icon-logo-android-filled:before{content:'\E49E'}.t-icon-logo-android:before{content:'\E49F'}.t-icon-logo-apple-filled:before{content:'\E4A0'}.t-icon-logo-apple:before{content:'\E4A1'}.t-icon-logo-behance-filled:before{content:'\E4A2'}.t-icon-logo-behance:before{content:'\E4A3'}.t-icon-logo-chrome-filled:before{content:'\E4A4'}.t-icon-logo-chrome:before{content:'\E4A5'}.t-icon-logo-cinema4d-filled:before{content:'\E4A6'}.t-icon-logo-cinema4d:before{content:'\E4A7'}.t-icon-logo-codepen:before{content:'\E4A8'}.t-icon-logo-codesandbox:before{content:'\E4A9'}.t-icon-logo-dribbble-filled:before{content:'\E4AA'}.t-icon-logo-dribbble:before{content:'\E4AB'}.t-icon-logo-facebook-filled:before{content:'\E4AC'}.t-icon-logo-facebook:before{content:'\E4AD'}.t-icon-logo-figma-filled:before{content:'\E4AE'}.t-icon-logo-figma:before{content:'\E4AF'}.t-icon-logo-framer-filled:before{content:'\E4B0'}.t-icon-logo-framer:before{content:'\E4B1'}.t-icon-logo-github-filled:before{content:'\E4B2'}.t-icon-logo-github:before{content:'\E4B3'}.t-icon-logo-gitlab-filled:before{content:'\E4B4'}.t-icon-logo-gitlab:before{content:'\E4B5'}.t-icon-logo-ie-filled:before{content:'\E4B6'}.t-icon-logo-ie:before{content:'\E4B7'}.t-icon-logo-instagram-filled:before{content:'\E4B8'}.t-icon-logo-instagram:before{content:'\E4B9'}.t-icon-logo-qq-filled:before{content:'\E4BA'}.t-icon-logo-qq:before{content:'\E4BB'}.t-icon-logo-twitter-filled:before{content:'\E4BC'}.t-icon-logo-twitter:before{content:'\E4BD'}.t-icon-logo-wechat-stroke-filled:before{content:'\E4BE'}.t-icon-logo-wechat-stroke:before{content:'\E4BF'}.t-icon-logo-wechatpay-filled:before{content:'\E4C0'}.t-icon-logo-wechatpay:before{content:'\E4C1'}.t-icon-logo-wecom:before{content:'\E4C2'}.t-icon-logo-windows-filled:before{content:'\E4C3'}.t-icon-logo-windows:before{content:'\E4C4'}.t-icon-logo-youtube-filled:before{content:'\E4C5'}.t-icon-logo-youtube:before{content:'\E4C6'}.t-icon-logout:before{content:'\E4C7'}.t-icon-look-around-filled:before{content:'\E4C8'}.t-icon-look-around:before{content:'\E4C9'}.t-icon-loudspeaker-filled:before{content:'\E4CA'}.t-icon-loudspeaker:before{content:'\E4CB'}.t-icon-mail-filled:before{content:'\E4CC'}.t-icon-mail:before{content:'\E4CD'}.t-icon-map-3d-filled:before{content:'\E4CE'}.t-icon-map-3d:before{content:'\E4CF'}.t-icon-map-add-filled:before{content:'\E4D0'}.t-icon-map-add:before{content:'\E4D1'}.t-icon-map-aiming-filled:before{content:'\E4D2'}.t-icon-map-aiming:before{content:'\E4D3'}.t-icon-map-blocked-filled:before{content:'\E4D4'}.t-icon-map-blocked:before{content:'\E4D5'}.t-icon-map-bubble-filled:before{content:'\E4D6'}.t-icon-map-bubble:before{content:'\E4D7'}.t-icon-map-cancel-filled:before{content:'\E4D8'}.t-icon-map-cancel:before{content:'\E4D9'}.t-icon-map-chat-filled:before{content:'\E4DA'}.t-icon-map-chat:before{content:'\E4DB'}.t-icon-map-checked-filled:before{content:'\E4DC'}.t-icon-map-checked:before{content:'\E4DD'}.t-icon-map-collection-filled:before{content:'\E4DE'}.t-icon-map-collection:before{content:'\E4DF'}.t-icon-map-connection-filled:before{content:'\E4E0'}.t-icon-map-connection:before{content:'\E4E1'}.t-icon-map-distance-filled:before{content:'\E4E2'}.t-icon-map-distance:before{content:'\E4E3'}.t-icon-map-double-filled:before{content:'\E4E4'}.t-icon-map-double:before{content:'\E4E5'}.t-icon-map-edit-filled:before{content:'\E4E6'}.t-icon-map-edit:before{content:'\E4E7'}.t-icon-map-filled:before{content:'\E4E8'}.t-icon-map-grid-filled:before{content:'\E4E9'}.t-icon-map-grid:before{content:'\E4EA'}.t-icon-map-information-1-filled:before{content:'\E4EB'}.t-icon-map-information-1:before{content:'\E4EC'}.t-icon-map-information-2-filled:before{content:'\E4ED'}.t-icon-map-information-2:before{content:'\E4EE'}.t-icon-map-information-filled:before{content:'\E4EF'}.t-icon-map-information:before{content:'\E4F0'}.t-icon-map-location-filled:before{content:'\E4F1'}.t-icon-map-location:before{content:'\E4F2'}.t-icon-map-locked-filled:before{content:'\E4F3'}.t-icon-map-locked:before{content:'\E4F4'}.t-icon-map-marked-filled:before{content:'\E4F5'}.t-icon-map-marked:before{content:'\E4F6'}.t-icon-map-navigation-filled:before{content:'\E4F7'}.t-icon-map-navigation:before{content:'\E4F8'}.t-icon-map-outline-filled:before{content:'\E4F9'}.t-icon-map-outline:before{content:'\E4FA'}.t-icon-map-route-planning-filled:before{content:'\E4FB'}.t-icon-map-route-planning:before{content:'\E4FC'}.t-icon-map-ruler-filled:before{content:'\E4FD'}.t-icon-map-ruler:before{content:'\E4FE'}.t-icon-map-safety-filled:before{content:'\E4FF'}.t-icon-map-safety:before{content:'\E500'}.t-icon-map-search-1-filled:before{content:'\E501'}.t-icon-map-search-1:before{content:'\E502'}.t-icon-map-search-filled:before{content:'\E503'}.t-icon-map-search:before{content:'\E504'}.t-icon-map-setting-filled:before{content:'\E505'}.t-icon-map-setting:before{content:'\E506'}.t-icon-map-unlocked-filled:before{content:'\E507'}.t-icon-map-unlocked:before{content:'\E508'}.t-icon-map:before{content:'\E509'}.t-icon-mark-as-unread-filled:before{content:'\E50A'}.t-icon-mark-as-unread:before{content:'\E50B'}.t-icon-markup-filled:before{content:'\E50C'}.t-icon-markup:before{content:'\E50D'}.t-icon-mathematics-filled:before{content:'\E50E'}.t-icon-mathematics:before{content:'\E50F'}.t-icon-measurement-1-filled:before{content:'\E510'}.t-icon-measurement-1:before{content:'\E511'}.t-icon-measurement-2-filled:before{content:'\E512'}.t-icon-measurement-2:before{content:'\E513'}.t-icon-measurement-filled:before{content:'\E514'}.t-icon-measurement:before{content:'\E515'}.t-icon-meat-pepper-filled:before{content:'\E516'}.t-icon-meat-pepper:before{content:'\E517'}.t-icon-media-library-filled:before{content:'\E518'}.t-icon-media-library:before{content:'\E519'}.t-icon-member-filled:before{content:'\E51A'}.t-icon-member:before{content:'\E51B'}.t-icon-menu-application:before{content:'\E51C'}.t-icon-menu-filled:before{content:'\E51D'}.t-icon-menu-fold:before{content:'\E51E'}.t-icon-menu-unfold:before{content:'\E51F'}.t-icon-menu:before{content:'\E520'}.t-icon-merge-cells-filled:before{content:'\E521'}.t-icon-merge-cells:before{content:'\E522'}.t-icon-microphone-1-filled:before{content:'\E523'}.t-icon-microphone-1:before{content:'\E524'}.t-icon-microphone-2-filled:before{content:'\E525'}.t-icon-microphone-2:before{content:'\E526'}.t-icon-microphone-filled:before{content:'\E527'}.t-icon-microphone:before{content:'\E528'}.t-icon-milk-filled:before{content:'\E529'}.t-icon-milk:before{content:'\E52A'}.t-icon-minus-circle-filled:before{content:'\E52B'}.t-icon-minus-circle:before{content:'\E52C'}.t-icon-minus-rectangle-filled:before{content:'\E52D'}.t-icon-minus-rectangle:before{content:'\E52E'}.t-icon-minus:before{content:'\E52F'}.t-icon-mirror-filled:before{content:'\E530'}.t-icon-mirror:before{content:'\E531'}.t-icon-mobile-blocked-filled:before{content:'\E532'}.t-icon-mobile-blocked:before{content:'\E533'}.t-icon-mobile-filled:before{content:'\E534'}.t-icon-mobile-list-filled:before{content:'\E535'}.t-icon-mobile-list:before{content:'\E536'}.t-icon-mobile-navigation-filled:before{content:'\E537'}.t-icon-mobile-navigation:before{content:'\E538'}.t-icon-mobile-shortcut-filled:before{content:'\E539'}.t-icon-mobile-shortcut:before{content:'\E53A'}.t-icon-mobile-vibrate-filled:before{content:'\E53B'}.t-icon-mobile-vibrate:before{content:'\E53C'}.t-icon-mobile:before{content:'\E53D'}.t-icon-mode-dark-filled:before{content:'\E53E'}.t-icon-mode-dark:before{content:'\E53F'}.t-icon-mode-light-filled:before{content:'\E540'}.t-icon-mode-light:before{content:'\E541'}.t-icon-module-filled:before{content:'\E542'}.t-icon-module:before{content:'\E543'}.t-icon-money-filled:before{content:'\E544'}.t-icon-money:before{content:'\E545'}.t-icon-monument-filled:before{content:'\E546'}.t-icon-monument:before{content:'\E547'}.t-icon-moon-fall-filled:before{content:'\E548'}.t-icon-moon-fall:before{content:'\E549'}.t-icon-moon-filled:before{content:'\E54A'}.t-icon-moon-rising-filled:before{content:'\E54B'}.t-icon-moon-rising:before{content:'\E54C'}.t-icon-moon:before{content:'\E54D'}.t-icon-more:before{content:'\E54E'}.t-icon-mosque-1-filled:before{content:'\E54F'}.t-icon-mosque-1:before{content:'\E550'}.t-icon-mosque-filled:before{content:'\E551'}.t-icon-mosque:before{content:'\E552'}.t-icon-mouse-filled:before{content:'\E553'}.t-icon-mouse:before{content:'\E554'}.t-icon-move-1:before{content:'\E555'}.t-icon-move:before{content:'\E556'}.t-icon-movie-clapper-filled:before{content:'\E557'}.t-icon-movie-clapper:before{content:'\E558'}.t-icon-multiply:before{content:'\E559'}.t-icon-museum-1-filled:before{content:'\E55A'}.t-icon-museum-1:before{content:'\E55B'}.t-icon-museum-2-filled:before{content:'\E55C'}.t-icon-museum-2:before{content:'\E55D'}.t-icon-museum-filled:before{content:'\E55E'}.t-icon-museum:before{content:'\E55F'}.t-icon-mushroom-1-filled:before{content:'\E560'}.t-icon-mushroom-1:before{content:'\E561'}.t-icon-mushroom-filled:before{content:'\E562'}.t-icon-mushroom:before{content:'\E563'}.t-icon-music-1-filled:before{content:'\E564'}.t-icon-music-1:before{content:'\E565'}.t-icon-music-2-filled:before{content:'\E566'}.t-icon-music-2:before{content:'\E567'}.t-icon-music-filled:before{content:'\E568'}.t-icon-music-rectangle-add-filled:before{content:'\E569'}.t-icon-music-rectangle-add:before{content:'\E56A'}.t-icon-music:before{content:'\E56B'}.t-icon-navigation-arrow-filled:before{content:'\E56C'}.t-icon-navigation-arrow:before{content:'\E56D'}.t-icon-next-filled:before{content:'\E56E'}.t-icon-next:before{content:'\E56F'}.t-icon-no-expression-filled:before{content:'\E570'}.t-icon-no-expression:before{content:'\E571'}.t-icon-noodle-filled:before{content:'\E572'}.t-icon-noodle:before{content:'\E573'}.t-icon-notification-add-filled:before{content:'\E574'}.t-icon-notification-add:before{content:'\E575'}.t-icon-notification-circle-filled:before{content:'\E576'}.t-icon-notification-circle:before{content:'\E577'}.t-icon-notification-error-filled:before{content:'\E578'}.t-icon-notification-error:before{content:'\E579'}.t-icon-notification-filled:before{content:'\E57A'}.t-icon-notification:before{content:'\E57B'}.t-icon-numbers-0-1:before{content:'\E57C'}.t-icon-numbers-0:before{content:'\E57D'}.t-icon-numbers-1-1:before{content:'\E57E'}.t-icon-numbers-1:before{content:'\E57F'}.t-icon-numbers-2-1:before{content:'\E580'}.t-icon-numbers-2:before{content:'\E581'}.t-icon-numbers-3-1:before{content:'\E582'}.t-icon-numbers-3:before{content:'\E583'}.t-icon-numbers-4-1:before{content:'\E584'}.t-icon-numbers-4:before{content:'\E585'}.t-icon-numbers-5-1:before{content:'\E586'}.t-icon-numbers-5:before{content:'\E587'}.t-icon-numbers-6-1:before{content:'\E588'}.t-icon-numbers-6:before{content:'\E589'}.t-icon-numbers-7-1:before{content:'\E58A'}.t-icon-numbers-7:before{content:'\E58B'}.t-icon-numbers-8-1:before{content:'\E58C'}.t-icon-numbers-8:before{content:'\E58D'}.t-icon-numbers-9-1:before{content:'\E58E'}.t-icon-numbers-9:before{content:'\E58F'}.t-icon-nut-filled:before{content:'\E590'}.t-icon-nut:before{content:'\E591'}.t-icon-object-storage:before{content:'\E592'}.t-icon-open-mouth-filled:before{content:'\E593'}.t-icon-open-mouth:before{content:'\E594'}.t-icon-opera-filled:before{content:'\E595'}.t-icon-opera:before{content:'\E596'}.t-icon-order-adjustment-column:before{content:'\E597'}.t-icon-order-ascending:before{content:'\E598'}.t-icon-order-descending:before{content:'\E599'}.t-icon-outbox-filled:before{content:'\E59A'}.t-icon-outbox:before{content:'\E59B'}.t-icon-page-first:before{content:'\E59C'}.t-icon-page-head-filled:before{content:'\E59D'}.t-icon-page-head:before{content:'\E59E'}.t-icon-page-last:before{content:'\E59F'}.t-icon-palace-1-filled:before{content:'\E5A0'}.t-icon-palace-1:before{content:'\E5A1'}.t-icon-palace-2-filled:before{content:'\E5A2'}.t-icon-palace-2:before{content:'\E5A3'}.t-icon-palace-3-filled:before{content:'\E5A4'}.t-icon-palace-3:before{content:'\E5A5'}.t-icon-palace-4-filled:before{content:'\E5A6'}.t-icon-palace-4:before{content:'\E5A7'}.t-icon-palace-filled:before{content:'\E5A8'}.t-icon-palace:before{content:'\E5A9'}.t-icon-palette-1-filled:before{content:'\E5AA'}.t-icon-palette-1:before{content:'\E5AB'}.t-icon-palette-filled:before{content:'\E5AC'}.t-icon-palette:before{content:'\E5AD'}.t-icon-panorama-horizontal-filled:before{content:'\E5AE'}.t-icon-panorama-horizontal:before{content:'\E5AF'}.t-icon-panorama-vertical-filled:before{content:'\E5B0'}.t-icon-panorama-vertical:before{content:'\E5B1'}.t-icon-pantone-filled:before{content:'\E5B2'}.t-icon-pantone:before{content:'\E5B3'}.t-icon-parabola:before{content:'\E5B4'}.t-icon-parentheses:before{content:'\E5B5'}.t-icon-paste-filled:before{content:'\E5B6'}.t-icon-paste:before{content:'\E5B7'}.t-icon-patio-filled:before{content:'\E5B8'}.t-icon-patio:before{content:'\E5B9'}.t-icon-pause-circle-filled:before{content:'\E5BA'}.t-icon-pause-circle-stroke-filled:before{content:'\E5BB'}.t-icon-pause-circle-stroke:before{content:'\E5BC'}.t-icon-pause-circle:before{content:'\E5BD'}.t-icon-pause:before{content:'\E5BE'}.t-icon-pea-filled:before{content:'\E5BF'}.t-icon-pea:before{content:'\E5C0'}.t-icon-peach-filled:before{content:'\E5C1'}.t-icon-peach:before{content:'\E5C2'}.t-icon-pear-filled:before{content:'\E5C3'}.t-icon-pear:before{content:'\E5C4'}.t-icon-pearl-of-the-orient-filled:before{content:'\E5C5'}.t-icon-pearl-of-the-orient:before{content:'\E5C6'}.t-icon-pen-ball-filled:before{content:'\E5C7'}.t-icon-pen-ball:before{content:'\E5C8'}.t-icon-pen-brush-filled:before{content:'\E5C9'}.t-icon-pen-brush:before{content:'\E5CA'}.t-icon-pen-filled:before{content:'\E5CB'}.t-icon-pen-mark-filled:before{content:'\E5CC'}.t-icon-pen-mark:before{content:'\E5CD'}.t-icon-pen-quill-filled:before{content:'\E5CE'}.t-icon-pen-quill:before{content:'\E5CF'}.t-icon-pen:before{content:'\E5D0'}.t-icon-pending-filled:before{content:'\E5D1'}.t-icon-pending:before{content:'\E5D2'}.t-icon-percent:before{content:'\E5D3'}.t-icon-personal-information-filled:before{content:'\E5D4'}.t-icon-personal-information:before{content:'\E5D5'}.t-icon-phone-locked-filled:before{content:'\E5D6'}.t-icon-phone-locked:before{content:'\E5D7'}.t-icon-phone-search-filled:before{content:'\E5D8'}.t-icon-phone-search:before{content:'\E5D9'}.t-icon-pi:before{content:'\E5DA'}.t-icon-piano-filled:before{content:'\E5DB'}.t-icon-piano:before{content:'\E5DC'}.t-icon-pin-filled:before{content:'\E5DD'}.t-icon-pin:before{content:'\E5DE'}.t-icon-play-circle-filled:before{content:'\E5DF'}.t-icon-play-circle-stroke-add-filled:before{content:'\E5E0'}.t-icon-play-circle-stroke-add:before{content:'\E5E1'}.t-icon-play-circle-stroke-filled:before{content:'\E5E2'}.t-icon-play-circle-stroke:before{content:'\E5E3'}.t-icon-play-circle:before{content:'\E5E4'}.t-icon-play-demo-filled:before{content:'\E5E5'}.t-icon-play-demo:before{content:'\E5E6'}.t-icon-play-rectangle-filled:before{content:'\E5E7'}.t-icon-play-rectangle:before{content:'\E5E8'}.t-icon-play:before{content:'\E5E9'}.t-icon-plus:before{content:'\E5EA'}.t-icon-popsicle-filled:before{content:'\E5EB'}.t-icon-popsicle:before{content:'\E5EC'}.t-icon-portrait-filled:before{content:'\E5ED'}.t-icon-portrait:before{content:'\E5EE'}.t-icon-pout-filled:before{content:'\E5EF'}.t-icon-pout:before{content:'\E5F0'}.t-icon-poweroff:before{content:'\E5F1'}.t-icon-precise-monitor:before{content:'\E5F2'}.t-icon-previous-filled:before{content:'\E5F3'}.t-icon-previous:before{content:'\E5F4'}.t-icon-print-filled:before{content:'\E5F5'}.t-icon-print:before{content:'\E5F6'}.t-icon-pumpkin-filled:before{content:'\E5F7'}.t-icon-pumpkin:before{content:'\E5F8'}.t-icon-pyramid-filled:before{content:'\E5F9'}.t-icon-pyramid-maya-filled:before{content:'\E5FA'}.t-icon-pyramid-maya:before{content:'\E5FB'}.t-icon-pyramid:before{content:'\E5FC'}.t-icon-qrcode:before{content:'\E5FD'}.t-icon-quadratic:before{content:'\E5FE'}.t-icon-questionnaire-double-filled:before{content:'\E5FF'}.t-icon-questionnaire-double:before{content:'\E600'}.t-icon-questionnaire-filled:before{content:'\E601'}.t-icon-questionnaire:before{content:'\E602'}.t-icon-queue-filled:before{content:'\E603'}.t-icon-queue:before{content:'\E604'}.t-icon-radar:before{content:'\E605'}.t-icon-radio-1-filled:before{content:'\E606'}.t-icon-radio-1:before{content:'\E607'}.t-icon-radio-2-filled:before{content:'\E608'}.t-icon-radio-2:before{content:'\E609'}.t-icon-radish-filled:before{content:'\E60A'}.t-icon-radish:before{content:'\E60B'}.t-icon-rain-heavy:before{content:'\E60C'}.t-icon-rain-light-filled:before{content:'\E60D'}.t-icon-rain-light:before{content:'\E60E'}.t-icon-rain-medium:before{content:'\E60F'}.t-icon-rainbow:before{content:'\E610'}.t-icon-rectangle-filled:before{content:'\E611'}.t-icon-rectangle:before{content:'\E612'}.t-icon-refresh:before{content:'\E613'}.t-icon-relation:before{content:'\E614'}.t-icon-relativity-filled:before{content:'\E615'}.t-icon-relativity:before{content:'\E616'}.t-icon-remote-wave-filled:before{content:'\E617'}.t-icon-remote-wave:before{content:'\E618'}.t-icon-remove:before{content:'\E619'}.t-icon-replay-filled:before{content:'\E61A'}.t-icon-replay:before{content:'\E61B'}.t-icon-rice-ball-filled:before{content:'\E61C'}.t-icon-rice-ball:before{content:'\E61D'}.t-icon-rice-filled:before{content:'\E61E'}.t-icon-rice:before{content:'\E61F'}.t-icon-roast-filled:before{content:'\E620'}.t-icon-roast:before{content:'\E621'}.t-icon-rocket-filled:before{content:'\E622'}.t-icon-rocket:before{content:'\E623'}.t-icon-rollback:before{content:'\E624'}.t-icon-rollfront:before{content:'\E625'}.t-icon-root-list-filled:before{content:'\E626'}.t-icon-root-list:before{content:'\E627'}.t-icon-rotate-locked-filled:before{content:'\E628'}.t-icon-rotate-locked:before{content:'\E629'}.t-icon-rotate:before{content:'\E62A'}.t-icon-rotation:before{content:'\E62B'}.t-icon-round-filled:before{content:'\E62C'}.t-icon-round:before{content:'\E62D'}.t-icon-router-wave-filled:before{content:'\E62E'}.t-icon-router-wave:before{content:'\E62F'}.t-icon-rss:before{content:'\E630'}.t-icon-ruler-filled:before{content:'\E631'}.t-icon-ruler:before{content:'\E632'}.t-icon-sailing-hotel-filled:before{content:'\E633'}.t-icon-sailing-hotel:before{content:'\E634'}.t-icon-sandwich-filled:before{content:'\E635'}.t-icon-sandwich:before{content:'\E636'}.t-icon-saturation-filled:before{content:'\E637'}.t-icon-saturation:before{content:'\E638'}.t-icon-sausage-filled:before{content:'\E639'}.t-icon-sausage:before{content:'\E63A'}.t-icon-save-filled:before{content:'\E63B'}.t-icon-save:before{content:'\E63C'}.t-icon-saving-pot-filled:before{content:'\E63D'}.t-icon-saving-pot:before{content:'\E63E'}.t-icon-scan:before{content:'\E63F'}.t-icon-screen-4k-filled:before{content:'\E640'}.t-icon-screen-4k:before{content:'\E641'}.t-icon-screencast-filled:before{content:'\E642'}.t-icon-screencast:before{content:'\E643'}.t-icon-screenshot:before{content:'\E644'}.t-icon-scroll-bar-filled:before{content:'\E645'}.t-icon-scroll-bar:before{content:'\E646'}.t-icon-sd-card-1-filled:before{content:'\E647'}.t-icon-sd-card-1:before{content:'\E648'}.t-icon-sd-card-filled:before{content:'\E649'}.t-icon-sd-card:before{content:'\E64A'}.t-icon-search-error-filled:before{content:'\E64B'}.t-icon-search-error:before{content:'\E64C'}.t-icon-search-filled:before{content:'\E64D'}.t-icon-search:before{content:'\E64E'}.t-icon-secured-filled:before{content:'\E64F'}.t-icon-secured:before{content:'\E650'}.t-icon-send-cancel-filled:before{content:'\E651'}.t-icon-send-cancel:before{content:'\E652'}.t-icon-send-filled:before{content:'\E653'}.t-icon-send:before{content:'\E654'}.t-icon-sensors-1:before{content:'\E655'}.t-icon-sensors-2:before{content:'\E656'}.t-icon-sensors-off:before{content:'\E657'}.t-icon-sensors:before{content:'\E658'}.t-icon-sequence-filled:before{content:'\E659'}.t-icon-sequence:before{content:'\E65A'}.t-icon-serenity-filled:before{content:'\E65B'}.t-icon-serenity:before{content:'\E65C'}.t-icon-server-filled:before{content:'\E65D'}.t-icon-server:before{content:'\E65E'}.t-icon-service-filled:before{content:'\E65F'}.t-icon-service:before{content:'\E660'}.t-icon-setting-1-filled:before{content:'\E661'}.t-icon-setting-1:before{content:'\E662'}.t-icon-setting-filled:before{content:'\E663'}.t-icon-setting:before{content:'\E664'}.t-icon-share-1-filled:before{content:'\E665'}.t-icon-share-1:before{content:'\E666'}.t-icon-share-filled:before{content:'\E667'}.t-icon-share:before{content:'\E668'}.t-icon-sharpness-filled:before{content:'\E669'}.t-icon-sharpness:before{content:'\E66A'}.t-icon-shield-error-filled:before{content:'\E66B'}.t-icon-shield-error:before{content:'\E66C'}.t-icon-shimen-filled:before{content:'\E66D'}.t-icon-shimen:before{content:'\E66E'}.t-icon-shop-1-filled:before{content:'\E66F'}.t-icon-shop-1:before{content:'\E670'}.t-icon-shop-2-filled:before{content:'\E671'}.t-icon-shop-2:before{content:'\E672'}.t-icon-shop-3-filled:before{content:'\E673'}.t-icon-shop-3:before{content:'\E674'}.t-icon-shop-4-filled:before{content:'\E675'}.t-icon-shop-4:before{content:'\E676'}.t-icon-shop-5-filled:before{content:'\E677'}.t-icon-shop-5:before{content:'\E678'}.t-icon-shop-filled:before{content:'\E679'}.t-icon-shop:before{content:'\E67A'}.t-icon-shrimp-filled:before{content:'\E67B'}.t-icon-shrimp:before{content:'\E67C'}.t-icon-shrink-horizontal:before{content:'\E67D'}.t-icon-shrink-vertical:before{content:'\E67E'}.t-icon-shutter-filled:before{content:'\E67F'}.t-icon-shutter:before{content:'\E680'}.t-icon-shutup-filled:before{content:'\E681'}.t-icon-shutup:before{content:'\E682'}.t-icon-sim-card-1-filled:before{content:'\E683'}.t-icon-sim-card-1:before{content:'\E684'}.t-icon-sim-card-2-filled:before{content:'\E685'}.t-icon-sim-card-2:before{content:'\E686'}.t-icon-sim-card-filled:before{content:'\E687'}.t-icon-sim-card:before{content:'\E688'}.t-icon-sinister-smile-filled:before{content:'\E689'}.t-icon-sinister-smile:before{content:'\E68A'}.t-icon-sip-filled:before{content:'\E68B'}.t-icon-sip:before{content:'\E68C'}.t-icon-sitemap-filled:before{content:'\E68D'}.t-icon-sitemap:before{content:'\E68E'}.t-icon-slash:before{content:'\E68F'}.t-icon-sleep-filled:before{content:'\E690'}.t-icon-sleep:before{content:'\E691'}.t-icon-slice-filled:before{content:'\E692'}.t-icon-slice:before{content:'\E693'}.t-icon-slideshow-filled:before{content:'\E694'}.t-icon-slideshow:before{content:'\E695'}.t-icon-smile-filled:before{content:'\E696'}.t-icon-smile:before{content:'\E697'}.t-icon-sneer-filled:before{content:'\E698'}.t-icon-sneer:before{content:'\E699'}.t-icon-snowflake:before{content:'\E69A'}.t-icon-sonic:before{content:'\E69B'}.t-icon-sound-down-filled:before{content:'\E69C'}.t-icon-sound-down:before{content:'\E69D'}.t-icon-sound-filled:before{content:'\E69E'}.t-icon-sound-high-filled:before{content:'\E69F'}.t-icon-sound-high:before{content:'\E6A0'}.t-icon-sound-low-filled:before{content:'\E6A1'}.t-icon-sound-low:before{content:'\E6A2'}.t-icon-sound-mute-1-filled:before{content:'\E6A3'}.t-icon-sound-mute-1:before{content:'\E6A4'}.t-icon-sound-mute-filled:before{content:'\E6A5'}.t-icon-sound-mute:before{content:'\E6A6'}.t-icon-sound-up-filled:before{content:'\E6A7'}.t-icon-sound-up:before{content:'\E6A8'}.t-icon-sound:before{content:'\E6A9'}.t-icon-space:before{content:'\E6AA'}.t-icon-speechless-1-filled:before{content:'\E6AB'}.t-icon-speechless-1:before{content:'\E6AC'}.t-icon-speechless-filled:before{content:'\E6AD'}.t-icon-speechless:before{content:'\E6AE'}.t-icon-star-filled:before{content:'\E6AF'}.t-icon-star:before{content:'\E6B0'}.t-icon-statue-of-jesus-filled:before{content:'\E6B1'}.t-icon-statue-of-jesus:before{content:'\E6B2'}.t-icon-sticky-note-filled:before{content:'\E6B3'}.t-icon-sticky-note:before{content:'\E6B4'}.t-icon-stop-circle-filled:before{content:'\E6B5'}.t-icon-stop-circle-stroke-filled:before{content:'\E6B6'}.t-icon-stop-circle-stroke:before{content:'\E6B7'}.t-icon-stop-circle:before{content:'\E6B8'}.t-icon-stop:before{content:'\E6B9'}.t-icon-store-filled:before{content:'\E6BA'}.t-icon-store:before{content:'\E6BB'}.t-icon-street-road-1-filled:before{content:'\E6BC'}.t-icon-street-road-1:before{content:'\E6BD'}.t-icon-street-road-filled:before{content:'\E6BE'}.t-icon-street-road:before{content:'\E6BF'}.t-icon-subtitle-filled:before{content:'\E6C0'}.t-icon-subtitle:before{content:'\E6C1'}.t-icon-subway-line-filled:before{content:'\E6C2'}.t-icon-subway-line:before{content:'\E6C3'}.t-icon-sum:before{content:'\E6C4'}.t-icon-sun-fall-filled:before{content:'\E6C5'}.t-icon-sun-fall:before{content:'\E6C6'}.t-icon-sun-rising-filled:before{content:'\E6C7'}.t-icon-sun-rising:before{content:'\E6C8'}.t-icon-sunny-filled:before{content:'\E6C9'}.t-icon-sunny:before{content:'\E6CA'}.t-icon-support-filled:before{content:'\E6CB'}.t-icon-support:before{content:'\E6CC'}.t-icon-surprised-1-filled:before{content:'\E6CD'}.t-icon-surprised-1:before{content:'\E6CE'}.t-icon-surprised-filled:before{content:'\E6CF'}.t-icon-surprised:before{content:'\E6D0'}.t-icon-swap-left:before{content:'\E6D1'}.t-icon-swap-right:before{content:'\E6D2'}.t-icon-swap:before{content:'\E6D3'}.t-icon-swear-1-filled:before{content:'\E6D4'}.t-icon-swear-1:before{content:'\E6D5'}.t-icon-swear-2-filled:before{content:'\E6D6'}.t-icon-swear-2:before{content:'\E6D7'}.t-icon-system-2:before{content:'\E6D8'}.t-icon-system-3-filled:before{content:'\E6D9'}.t-icon-system-3:before{content:'\E6DA'}.t-icon-system-application-filled:before{content:'\E6DB'}.t-icon-system-application:before{content:'\E6DC'}.t-icon-system-blocked-filled:before{content:'\E6DD'}.t-icon-system-blocked:before{content:'\E6DE'}.t-icon-system-code-filled:before{content:'\E6DF'}.t-icon-system-code:before{content:'\E6E0'}.t-icon-system-components-filled:before{content:'\E6E1'}.t-icon-system-components:before{content:'\E6E2'}.t-icon-system-coordinate-filled:before{content:'\E6E3'}.t-icon-system-coordinate:before{content:'\E6E4'}.t-icon-system-device-filled:before{content:'\E6E5'}.t-icon-system-device:before{content:'\E6E6'}.t-icon-system-interface-filled:before{content:'\E6E7'}.t-icon-system-interface:before{content:'\E6E8'}.t-icon-system-location-filled:before{content:'\E6E9'}.t-icon-system-location:before{content:'\E6EA'}.t-icon-system-locked-filled:before{content:'\E6EB'}.t-icon-system-locked:before{content:'\E6EC'}.t-icon-system-log-filled:before{content:'\E6ED'}.t-icon-system-log:before{content:'\E6EE'}.t-icon-system-marked-filled:before{content:'\E6EF'}.t-icon-system-marked:before{content:'\E6F0'}.t-icon-system-messages-filled:before{content:'\E6F1'}.t-icon-system-messages:before{content:'\E6F2'}.t-icon-system-regulation-filled:before{content:'\E6F3'}.t-icon-system-regulation:before{content:'\E6F4'}.t-icon-system-search-filled:before{content:'\E6F5'}.t-icon-system-search:before{content:'\E6F6'}.t-icon-system-setting-filled:before{content:'\E6F7'}.t-icon-system-setting:before{content:'\E6F8'}.t-icon-system-storage-filled:before{content:'\E6F9'}.t-icon-system-storage:before{content:'\E6FA'}.t-icon-system-sum:before{content:'\E6FB'}.t-icon-system-unlocked-filled:before{content:'\E6FC'}.t-icon-system-unlocked:before{content:'\E6FD'}.t-icon-tab-filled:before{content:'\E6FE'}.t-icon-tab:before{content:'\E6FF'}.t-icon-table-1-filled:before{content:'\E700'}.t-icon-table-1:before{content:'\E701'}.t-icon-table-2-filled:before{content:'\E702'}.t-icon-table-2:before{content:'\E703'}.t-icon-table-add-filled:before{content:'\E704'}.t-icon-table-add:before{content:'\E705'}.t-icon-table-filled:before{content:'\E706'}.t-icon-table-split-filled:before{content:'\E707'}.t-icon-table-split:before{content:'\E708'}.t-icon-table:before{content:'\E709'}.t-icon-tag-filled:before{content:'\E70A'}.t-icon-tag:before{content:'\E70B'}.t-icon-tangerinr-filled:before{content:'\E70C'}.t-icon-tangerinr:before{content:'\E70D'}.t-icon-tape-filled:before{content:'\E70E'}.t-icon-tape:before{content:'\E70F'}.t-icon-task-1-filled:before{content:'\E710'}.t-icon-task-1:before{content:'\E711'}.t-icon-task-add-1:before{content:'\E712'}.t-icon-task-add-filled:before{content:'\E713'}.t-icon-task-add:before{content:'\E714'}.t-icon-task-checked-1:before{content:'\E715'}.t-icon-task-checked-filled:before{content:'\E716'}.t-icon-task-checked:before{content:'\E717'}.t-icon-task-double-filled:before{content:'\E718'}.t-icon-task-double:before{content:'\E719'}.t-icon-task-error-filled:before{content:'\E71A'}.t-icon-task-error:before{content:'\E71B'}.t-icon-task-filled:before{content:'\E71C'}.t-icon-task-location-filled:before{content:'\E71D'}.t-icon-task-location:before{content:'\E71E'}.t-icon-task-marked-filled:before{content:'\E71F'}.t-icon-task-marked:before{content:'\E720'}.t-icon-task-setting-filled:before{content:'\E721'}.t-icon-task-setting:before{content:'\E722'}.t-icon-task-time-filled:before{content:'\E723'}.t-icon-task-time:before{content:'\E724'}.t-icon-task-visible-filled:before{content:'\E725'}.t-icon-task-visible:before{content:'\E726'}.t-icon-task:before{content:'\E727'}.t-icon-tea-filled:before{content:'\E728'}.t-icon-tea:before{content:'\E729'}.t-icon-teahouse-filled:before{content:'\E72A'}.t-icon-teahouse:before{content:'\E72B'}.t-icon-template-filled:before{content:'\E72C'}.t-icon-template:before{content:'\E72D'}.t-icon-temple-filled:before{content:'\E72E'}.t-icon-temple:before{content:'\E72F'}.t-icon-terminal-rectangle-1-filled:before{content:'\E730'}.t-icon-terminal-rectangle-1:before{content:'\E731'}.t-icon-terminal-rectangle-filled:before{content:'\E732'}.t-icon-terminal-rectangle:before{content:'\E733'}.t-icon-terminal-window-filled:before{content:'\E734'}.t-icon-terminal-window:before{content:'\E735'}.t-icon-terminal:before{content:'\E736'}.t-icon-textbox-filled:before{content:'\E737'}.t-icon-textbox:before{content:'\E738'}.t-icon-textformat-bold:before{content:'\E739'}.t-icon-textformat-color:before{content:'\E73A'}.t-icon-textformat-italic:before{content:'\E73B'}.t-icon-textformat-strikethrough:before{content:'\E73C'}.t-icon-textformat-underline:before{content:'\E73D'}.t-icon-textformat-wrap:before{content:'\E73E'}.t-icon-theaters-filled:before{content:'\E73F'}.t-icon-theaters:before{content:'\E740'}.t-icon-thumb-down-1-filled:before{content:'\E741'}.t-icon-thumb-down-1:before{content:'\E742'}.t-icon-thumb-down-2-filled:before{content:'\E743'}.t-icon-thumb-down-2:before{content:'\E744'}.t-icon-thumb-down-filled:before{content:'\E745'}.t-icon-thumb-down:before{content:'\E746'}.t-icon-thumb-up-1-filled:before{content:'\E747'}.t-icon-thumb-up-1:before{content:'\E748'}.t-icon-thumb-up-2-filled:before{content:'\E749'}.t-icon-thumb-up-2:before{content:'\E74A'}.t-icon-thumb-up-filled:before{content:'\E74B'}.t-icon-thumb-up:before{content:'\E74C'}.t-icon-thunder:before{content:'\E74D'}.t-icon-thunderstorm-night-filled:before{content:'\E74E'}.t-icon-thunderstorm-night:before{content:'\E74F'}.t-icon-thunderstorm-sunny-filled:before{content:'\E750'}.t-icon-thunderstorm-sunny:before{content:'\E751'}.t-icon-thunderstorm:before{content:'\E752'}.t-icon-ticket-filled:before{content:'\E753'}.t-icon-ticket:before{content:'\E754'}.t-icon-time-filled:before{content:'\E755'}.t-icon-time:before{content:'\E756'}.t-icon-tips-double-filled:before{content:'\E757'}.t-icon-tips-double:before{content:'\E758'}.t-icon-tips-filled:before{content:'\E759'}.t-icon-tips:before{content:'\E75A'}.t-icon-tomato-filled:before{content:'\E75B'}.t-icon-tomato:before{content:'\E75C'}.t-icon-tools-circle-filled:before{content:'\E75D'}.t-icon-tools-circle:before{content:'\E75E'}.t-icon-tools-filled:before{content:'\E75F'}.t-icon-tools:before{content:'\E760'}.t-icon-tornado:before{content:'\E761'}.t-icon-tower-1-filled:before{content:'\E762'}.t-icon-tower-1:before{content:'\E763'}.t-icon-tower-2-filled:before{content:'\E764'}.t-icon-tower-2:before{content:'\E765'}.t-icon-tower-3-filled:before{content:'\E766'}.t-icon-tower-3:before{content:'\E767'}.t-icon-tower-clock-filled:before{content:'\E768'}.t-icon-tower-clock:before{content:'\E769'}.t-icon-tower-filled:before{content:'\E76A'}.t-icon-tower:before{content:'\E76B'}.t-icon-town-filled:before{content:'\E76C'}.t-icon-town:before{content:'\E76D'}.t-icon-traffic-events-filled:before{content:'\E76E'}.t-icon-traffic-events:before{content:'\E76F'}.t-icon-traffic-filled:before{content:'\E770'}.t-icon-traffic:before{content:'\E771'}.t-icon-transform-1-filled:before{content:'\E772'}.t-icon-transform-1:before{content:'\E773'}.t-icon-transform-2:before{content:'\E774'}.t-icon-transform-3:before{content:'\E775'}.t-icon-transform-filled:before{content:'\E776'}.t-icon-transform:before{content:'\E777'}.t-icon-translate-1:before{content:'\E778'}.t-icon-translate:before{content:'\E779'}.t-icon-tree-round-dot-filled:before{content:'\E77A'}.t-icon-tree-round-dot-vertical-filled:before{content:'\E77B'}.t-icon-tree-round-dot-vertical:before{content:'\E77C'}.t-icon-tree-round-dot:before{content:'\E77D'}.t-icon-tree-square-dot-filled:before{content:'\E77E'}.t-icon-tree-square-dot-vertical-filled:before{content:'\E77F'}.t-icon-tree-square-dot-vertical:before{content:'\E780'}.t-icon-tree-square-dot:before{content:'\E781'}.t-icon-trending-down:before{content:'\E782'}.t-icon-trending-up:before{content:'\E783'}.t-icon-tv-1-filled:before{content:'\E784'}.t-icon-tv-1:before{content:'\E785'}.t-icon-tv-2-filled:before{content:'\E786'}.t-icon-tv-2:before{content:'\E787'}.t-icon-tv-filled:before{content:'\E788'}.t-icon-tv:before{content:'\E789'}.t-icon-typography-filled:before{content:'\E78A'}.t-icon-typography:before{content:'\E78B'}.t-icon-uncomfortable-1-filled:before{content:'\E78C'}.t-icon-uncomfortable-1:before{content:'\E78D'}.t-icon-uncomfortable-2-filled:before{content:'\E78E'}.t-icon-uncomfortable-2:before{content:'\E78F'}.t-icon-uncomfortable-filled:before{content:'\E790'}.t-icon-uncomfortable:before{content:'\E791'}.t-icon-undertake-delivery-filled:before{content:'\E792'}.t-icon-undertake-delivery:before{content:'\E793'}.t-icon-undertake-environment-protection-filled:before{content:'\E794'}.t-icon-undertake-environment-protection:before{content:'\E795'}.t-icon-undertake-filled:before{content:'\E796'}.t-icon-undertake-hold-up-filled:before{content:'\E797'}.t-icon-undertake-hold-up:before{content:'\E798'}.t-icon-undertake-transaction-filled:before{content:'\E799'}.t-icon-undertake-transaction:before{content:'\E79A'}.t-icon-undertake:before{content:'\E79B'}.t-icon-unfold-less:before{content:'\E79C'}.t-icon-unfold-more:before{content:'\E79D'}.t-icon-unhappy-1-filled:before{content:'\E79E'}.t-icon-unhappy-1:before{content:'\E79F'}.t-icon-unhappy-filled:before{content:'\E7A0'}.t-icon-unhappy:before{content:'\E7A1'}.t-icon-uninstall-filled:before{content:'\E7A2'}.t-icon-uninstall:before{content:'\E7A3'}.t-icon-upload-1:before{content:'\E7A4'}.t-icon-upload:before{content:'\E7A5'}.t-icon-upscale:before{content:'\E7A6'}.t-icon-usb-filled:before{content:'\E7A7'}.t-icon-usb:before{content:'\E7A8'}.t-icon-user-1-filled:before{content:'\E7A9'}.t-icon-user-1:before{content:'\E7AA'}.t-icon-user-add-filled:before{content:'\E7AB'}.t-icon-user-add:before{content:'\E7AC'}.t-icon-user-arrow-down-filled:before{content:'\E7AD'}.t-icon-user-arrow-down:before{content:'\E7AE'}.t-icon-user-arrow-left-filled:before{content:'\E7AF'}.t-icon-user-arrow-left:before{content:'\E7B0'}.t-icon-user-arrow-right-filled:before{content:'\E7B1'}.t-icon-user-arrow-right:before{content:'\E7B2'}.t-icon-user-arrow-up-filled:before{content:'\E7B3'}.t-icon-user-arrow-up:before{content:'\E7B4'}.t-icon-user-avatar-filled:before{content:'\E7B5'}.t-icon-user-avatar:before{content:'\E7B6'}.t-icon-user-blocked-filled:before{content:'\E7B7'}.t-icon-user-blocked:before{content:'\E7B8'}.t-icon-user-business-filled:before{content:'\E7B9'}.t-icon-user-business:before{content:'\E7BA'}.t-icon-user-checked-1-filled:before{content:'\E7BB'}.t-icon-user-checked-1:before{content:'\E7BC'}.t-icon-user-checked-filled:before{content:'\E7BD'}.t-icon-user-checked:before{content:'\E7BE'}.t-icon-user-circle-filled:before{content:'\E7BF'}.t-icon-user-circle:before{content:'\E7C0'}.t-icon-user-clear-filled:before{content:'\E7C1'}.t-icon-user-clear:before{content:'\E7C2'}.t-icon-user-error-1-filled:before{content:'\E7C3'}.t-icon-user-error-1:before{content:'\E7C4'}.t-icon-user-filled:before{content:'\E7C5'}.t-icon-user-invisible-filled:before{content:'\E7C6'}.t-icon-user-invisible:before{content:'\E7C7'}.t-icon-user-list-filled:before{content:'\E7C8'}.t-icon-user-list:before{content:'\E7C9'}.t-icon-user-locked-filled:before{content:'\E7CA'}.t-icon-user-locked:before{content:'\E7CB'}.t-icon-user-marked-filled:before{content:'\E7CC'}.t-icon-user-marked:before{content:'\E7CD'}.t-icon-user-password-filled:before{content:'\E7CE'}.t-icon-user-password:before{content:'\E7CF'}.t-icon-user-safety-filled:before{content:'\E7D0'}.t-icon-user-safety:before{content:'\E7D1'}.t-icon-user-search-filled:before{content:'\E7D2'}.t-icon-user-search:before{content:'\E7D3'}.t-icon-user-setting-filled:before{content:'\E7D4'}.t-icon-user-setting:before{content:'\E7D5'}.t-icon-user-talk-1-filled:before{content:'\E7D6'}.t-icon-user-talk-1:before{content:'\E7D7'}.t-icon-user-talk-filled:before{content:'\E7D8'}.t-icon-user-talk-off-1-filled:before{content:'\E7D9'}.t-icon-user-talk-off-1:before{content:'\E7DA'}.t-icon-user-talk:before{content:'\E7DB'}.t-icon-user-time-filled:before{content:'\E7DC'}.t-icon-user-time:before{content:'\E7DD'}.t-icon-user-transmit-filled:before{content:'\E7DE'}.t-icon-user-transmit:before{content:'\E7DF'}.t-icon-user-unknown-filled:before{content:'\E7E0'}.t-icon-user-unknown:before{content:'\E7E1'}.t-icon-user-unlocked-filled:before{content:'\E7E2'}.t-icon-user-unlocked:before{content:'\E7E3'}.t-icon-user-vip-filled:before{content:'\E7E4'}.t-icon-user-vip:before{content:'\E7E5'}.t-icon-user-visible-filled:before{content:'\E7E6'}.t-icon-user-visible:before{content:'\E7E7'}.t-icon-user:before{content:'\E7E8'}.t-icon-usercase-filled:before{content:'\E7E9'}.t-icon-usercase-link-filled:before{content:'\E7EA'}.t-icon-usercase-link:before{content:'\E7EB'}.t-icon-usercase:before{content:'\E7EC'}.t-icon-usergroup-add-filled:before{content:'\E7ED'}.t-icon-usergroup-add:before{content:'\E7EE'}.t-icon-usergroup-clear-filled:before{content:'\E7EF'}.t-icon-usergroup-clear:before{content:'\E7F0'}.t-icon-usergroup-filled:before{content:'\E7F1'}.t-icon-usergroup:before{content:'\E7F2'}.t-icon-vehicle-filled:before{content:'\E7F3'}.t-icon-vehicle:before{content:'\E7F4'}.t-icon-verified-filled:before{content:'\E7F5'}.t-icon-verified:before{content:'\E7F6'}.t-icon-verify-filled:before{content:'\E7F7'}.t-icon-verify:before{content:'\E7F8'}.t-icon-vertical-filled:before{content:'\E7F9'}.t-icon-vertical:before{content:'\E7FA'}.t-icon-video-camera-1-filled:before{content:'\E7FB'}.t-icon-video-camera-1:before{content:'\E7FC'}.t-icon-video-camera-2-filled:before{content:'\E7FD'}.t-icon-video-camera-2:before{content:'\E7FE'}.t-icon-video-camera-3-filled:before{content:'\E7FF'}.t-icon-video-camera-3:before{content:'\E800'}.t-icon-video-camera-dollar-filled:before{content:'\E801'}.t-icon-video-camera-dollar:before{content:'\E802'}.t-icon-video-camera-filled:before{content:'\E803'}.t-icon-video-camera-minus-filled:before{content:'\E804'}.t-icon-video-camera-minus:before{content:'\E805'}.t-icon-video-camera-music-filled:before{content:'\E806'}.t-icon-video-camera-music:before{content:'\E807'}.t-icon-video-camera-off-filled:before{content:'\E808'}.t-icon-video-camera-off:before{content:'\E809'}.t-icon-video-camera:before{content:'\E80A'}.t-icon-video-filled:before{content:'\E80B'}.t-icon-video-library-filled:before{content:'\E80C'}.t-icon-video-library:before{content:'\E80D'}.t-icon-video:before{content:'\E80E'}.t-icon-view-agenda-filled:before{content:'\E80F'}.t-icon-view-agenda:before{content:'\E810'}.t-icon-view-column:before{content:'\E811'}.t-icon-view-in-ar-filled:before{content:'\E812'}.t-icon-view-in-ar:before{content:'\E813'}.t-icon-view-list:before{content:'\E814'}.t-icon-view-module-filled:before{content:'\E815'}.t-icon-view-module:before{content:'\E816'}.t-icon-visual-recognition-filled:before{content:'\E817'}.t-icon-visual-recognition:before{content:'\E818'}.t-icon-wallet-filled:before{content:'\E819'}.t-icon-wallet:before{content:'\E81A'}.t-icon-watch-filled:before{content:'\E81B'}.t-icon-watch:before{content:'\E81C'}.t-icon-watermelon-filled:before{content:'\E81D'}.t-icon-watermelon:before{content:'\E81E'}.t-icon-wave-bye-filled:before{content:'\E81F'}.t-icon-wave-bye:before{content:'\E820'}.t-icon-wave-left-filled:before{content:'\E821'}.t-icon-wave-left:before{content:'\E822'}.t-icon-wave-right-filled:before{content:'\E823'}.t-icon-wave-right:before{content:'\E824'}.t-icon-wealth-1-filled:before{content:'\E825'}.t-icon-wealth-1:before{content:'\E826'}.t-icon-wealth-filled:before{content:'\E827'}.t-icon-wealth:before{content:'\E828'}.t-icon-widget-filled:before{content:'\E829'}.t-icon-widget:before{content:'\E82A'}.t-icon-wifi-1-filled:before{content:'\E82B'}.t-icon-wifi-1:before{content:'\E82C'}.t-icon-wifi-off-1-filled:before{content:'\E82D'}.t-icon-wifi-off-1:before{content:'\E82E'}.t-icon-wifi-off:before{content:'\E82F'}.t-icon-wifi:before{content:'\E830'}.t-icon-window-1-filled:before{content:'\E831'}.t-icon-window-1:before{content:'\E832'}.t-icon-window-filled:before{content:'\E833'}.t-icon-window:before{content:'\E834'}.t-icon-windy-rain:before{content:'\E835'}.t-icon-windy:before{content:'\E836'}.t-icon-wink-filled:before{content:'\E837'}.t-icon-wink:before{content:'\E838'}.t-icon-work-filled:before{content:'\E839'}.t-icon-work-history-filled:before{content:'\E83A'}.t-icon-work-history:before{content:'\E83B'}.t-icon-work-off-filled:before{content:'\E83C'}.t-icon-work-off:before{content:'\E83D'}.t-icon-work:before{content:'\E83E'}.t-icon-wry-smile-filled:before{content:'\E83F'}.t-icon-wry-smile:before{content:'\E840'}.t-icon-zoom-in-filled:before{content:'\E841'}.t-icon-zoom-in:before{content:'\E842'}.t-icon-zoom-out-filled:before{content:'\E843'}.t-icon-zoom-out:before{content:'\E844'} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/props.js b/app/miniprogram_npm/tdesign-miniprogram/icon/props.js new file mode 100644 index 0000000..b05c530 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/props.js @@ -0,0 +1 @@ +const props={color:{type:String,value:""},name:{type:String,value:"",required:!0},prefix:{type:String,value:""},size:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/icon/type.js b/app/miniprogram_npm/tdesign-miniprogram/icon/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/icon/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.d.ts b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.d.ts new file mode 100644 index 0000000..ee40827 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.d.ts @@ -0,0 +1,88 @@ +import { SuperComponent } from '../common/src/index'; +export default class ImageViewer extends SuperComponent { + externalClasses: string[]; + properties: { + backgroundColor?: { + type: StringConstructor; + value?: string; + }; + closeBtn?: { + type: null; + value?: string | boolean | object; + }; + deleteBtn?: { + type: null; + value?: string | boolean | object; + }; + images?: { + type: ArrayConstructor; + value?: string[]; + }; + initialIndex?: { + type: NumberConstructor; + value?: Number; + }; + showIndex?: { + type: BooleanConstructor; + value?: boolean; + }; + usingCustomNavbar?: { + type: BooleanConstructor; + value?: boolean; + }; + visible?: { + type: BooleanConstructor; + value?: boolean; + }; + defaultVisible?: { + type: BooleanConstructor; + value?: boolean; + }; + }; + data: { + prefix: string; + classPrefix: string; + currentSwiperIndex: number; + windowHeight: number; + windowWidth: number; + swiperStyle: {}; + imagesStyle: {}; + maskTop: number; + }; + options: { + multipleSlots: boolean; + }; + controlledProps: { + key: string; + event: string; + }[]; + ready(): void; + observers: { + 'visible,initialIndex,images'(visible: any, initialIndex: any, images: any): void; + closeBtn(v: any): void; + deleteBtn(v: any): void; + }; + methods: { + calcMaskTop(): void; + saveScreenSize(): void; + calcImageDisplayStyle(imageWidth: any, imageHeight: any): { + styleObj: { + width: string; + height: string; + left: string; + transform: string; + }; + } | { + styleObj: { + width: string; + height: string; + left?: undefined; + transform?: undefined; + }; + }; + onImageLoadSuccess(e: WechatMiniprogram.TouchEvent): void; + onSwiperChange(e: WechatMiniprogram.TouchEvent): void; + onClose(e: any): void; + onDelete(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.js b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.js new file mode 100644 index 0000000..9b1bac7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import{styles,calcIcon,systemInfo}from"../common/utils";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-image-viewer`;let ImageViewer=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=Object.assign({},props),this.data={prefix:prefix,classPrefix:name,currentSwiperIndex:0,windowHeight:0,windowWidth:0,swiperStyle:{},imagesStyle:{},maskTop:0},this.options={multipleSlots:!0},this.controlledProps=[{key:"visible",event:"close"}],this.observers={"visible,initialIndex,images"(e,t,i){e&&(null==i?void 0:i.length)&&this.setData({currentSwiperIndex:t>=i.length?i.length-1:t})},closeBtn(e){this.setData({_closeBtn:calcIcon(e,"close")})},deleteBtn(e){this.setData({_deleteBtn:calcIcon(e,"delete")})}},this.methods={calcMaskTop(){if(this.data.usingCustomNavbar){const e=(null===wx||void 0===wx?void 0:wx.getMenuButtonBoundingClientRect())||null,{statusBarHeight:t}=systemInfo;e&&t&&this.setData({maskTop:e.top-t+e.bottom})}},saveScreenSize(){const{windowHeight:e,windowWidth:t}=systemInfo;this.setData({windowHeight:e,windowWidth:t})},calcImageDisplayStyle(e,t){const{windowWidth:i,windowHeight:s}=this.data,n=e/t;if(e=1)return{styleObj:{width:"100vw",height:i/n*2+"rpx"}};const r=n*s*2;return r{{currentSwiperIndex + 1}}/{{images.length}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.wxss b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.wxss new file mode 100644 index 0000000..9acec8b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/image-viewer.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-image-viewer{position:fixed;top:var(--td-image-viewer-top,var(--td-position-fixed-top,0));left:0;bottom:0;right:0;z-index:1001;transform:translateZ(0);overflow:hidden}.t-image-viewer__mask{position:absolute;z-index:1000;left:0;top:0;width:100%;height:100%}.t-image-viewer__content{width:100vw;display:inline-block;position:absolute;top:50%;transform:translateY(-50%);z-index:1005}.t-image-viewer .swiper{outline:0}.t-image-viewer__image{width:100%;display:inline-block;position:absolute;top:50%;transform:translateY(-50%)}.t-image-viewer .t-image--external{width:inherit;height:inherit;display:block}.t-image-viewer__nav{width:100%;position:absolute;display:flex;align-items:center;justify-content:space-between;height:var(--td-image-viewer-nav-height,96rpx);background-color:var(--td-image-viewer-nav-bg-color,var(--td-font-gray-3,rgba(0,0,0,.4)));left:0;color:var(--td-image-viewer-nav-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));z-index:1005}.t-image-viewer__nav-close{margin-left:var(--td-image-viewer-close-margin-left,var(--td-spacer-1,24rpx))}.t-image-viewer__nav-close:empty{display:none}.t-image-viewer__nav-delete{margin-right:var(--td-image-viewer-delete-margin-right,var(--td-spacer-1,24rpx))}.t-image-viewer__nav-delete:empty{display:none}.t-image-viewer__nav-close,.t-image-viewer__nav-delete{font-size:48rpx}.t-image-viewer__nav-index{flex:1;font-size:var(--td-image-viewer-nav-index-font-size,var(--td-font-size-base,28rpx));text-align:center} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image-viewer/props.js b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/props.js new file mode 100644 index 0000000..49cab90 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/props.js @@ -0,0 +1 @@ +const props={backgroundColor:{type:String,value:"rgba(0, 0, 0, 1)"},closeBtn:{type:null,value:!1},deleteBtn:{type:null,value:!1},images:{type:Array,value:[]},initialIndex:{type:Number,value:0},showIndex:{type:Boolean,value:!1},usingCustomNavbar:{type:Boolean,value:!1},visible:{type:Boolean,value:null},defaultVisible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image-viewer/type.js b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image-viewer/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image-info.json b/app/miniprogram_npm/tdesign-miniprogram/image/image-info.json new file mode 100644 index 0000000..e4999ff --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image-info.json @@ -0,0 +1 @@ +{"key":"Image","label":"图片","icon":"","properties":[{"key":"error","type":["String","TNode"],"defaultValue":"'default'","desc":"加载失败时显示的内容。值为 `default` 则表示使用默认加载失败风格;值为空或者 `slot` 表示使用插槽渲染,插槽名称为 `error`;值为其他则表示普通文本内容,如“加载失败”","label":""},{"key":"externalClasses","type":["Array"],"defaultValue":"","desc":"组件类名,分别用于设置加载组件外层元素,中间内容等元素类名","label":""},{"key":"lazy","type":["Boolean"],"defaultValue":"false","desc":"是否开启图片懒加载","label":""},{"key":"loading","type":["String","TNode"],"defaultValue":"'default'","desc":"加载态内容。值为 `default` 则表示使用默认加载中风格;值为空或者 `slot` 表示使用插槽渲染,插槽名称为 `loading`;值为其他则表示普通文本内容,如“加载中”","label":""},{"key":"MP_EXCLUDE_PROPS","type":["String"],"defaultValue":"","desc":"为避免重复或冲突,需要过滤掉的小程序原生属性","label":""},{"key":"MP_PROPS","type":["String"],"defaultValue":"","desc":"[小程序原生属性](https://developers.weixin.qq.com/miniprogram/dev/component/image.html)","label":""},{"key":"shape","type":["String"],"defaultValue":"square","desc":"图片圆角类型","label":""},{"key":"src","type":["String"],"defaultValue":"","desc":"图片链接","label":""}],"events":[{"key":"error","desc":"图片加载失败时触发","label":""},{"key":"load","desc":"图片加载完成时触发","label":""}]} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image.d.ts b/app/miniprogram_npm/tdesign-miniprogram/image/image.d.ts new file mode 100644 index 0000000..36dc635 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image.d.ts @@ -0,0 +1,26 @@ +import { SuperComponent } from '../common/src/index'; +export default class Image extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdImageProps; + data: { + prefix: string; + isLoading: boolean; + isFailed: boolean; + innerStyle: string; + classPrefix: string; + }; + preSrc: any; + observers: { + src(): void; + 'width, height'(width: any, height: any): void; + }; + methods: { + onLoaded(e: any): void; + onLoadError(e: any): void; + calcSize(width: any, height: any): void; + update(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image.js b/app/miniprogram_npm/tdesign-miniprogram/image/image.js new file mode 100644 index 0000000..6a67fa8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import ImageProps from"./props";import config from"../common/config";import{addUnit,getRect,appBaseInfo}from"../common/utils";import{compareVersion}from"../common/version";const{prefix:prefix}=config,name=`${prefix}-image`;let Image=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-load`,`${prefix}-class-image`,`${prefix}-class-error`],this.options={multipleSlots:!0},this.properties=ImageProps,this.data={prefix:prefix,isLoading:!0,isFailed:!1,innerStyle:"",classPrefix:name},this.preSrc=void 0,this.observers={src(){this.preSrc!==this.properties.src&&this.update()},"width, height"(e,i){this.calcSize(e,i)}},this.methods={onLoaded(e){const i=appBaseInfo.SDKVersion,{mode:t,tId:s}=this.properties,r=compareVersion(i,"2.10.3")<0;if("heightFix"===t&&r){const{height:i,width:t}=e.detail;getRect(this,`#${s||"image"}`).then((e=>{const{height:s}=e,r=(s/i*t).toFixed(2);this.setData({innerStyle:`height: ${addUnit(s)}; width: ${r}px;`})}))}this.setData({isLoading:!1,isFailed:!1}),this.triggerEvent("load",e.detail)},onLoadError(e){this.setData({isLoading:!1,isFailed:!0}),this.triggerEvent("error",e.detail)},calcSize(e,i){let t="";e&&(t+=`width: ${addUnit(e)};`),i&&(t+=`height: ${addUnit(i)};`),this.setData({innerStyle:t})},update(){const{src:e}=this.properties;this.preSrc=e,e?this.setData({isLoading:!0,isFailed:!1}):this.onLoadError({errMsg:"图片链接为空"})}}}};Image=__decorate([wxComponent()],Image);export default Image; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image.json b/app/miniprogram_npm/tdesign-miniprogram/image/image.json new file mode 100644 index 0000000..3b6ed8c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-loading":"../loading/loading","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image.wxml b/app/miniprogram_npm/tdesign-miniprogram/image/image.wxml new file mode 100644 index 0000000..c735d3c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image.wxml @@ -0,0 +1 @@ +{{loading}}{{error}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/image.wxss b/app/miniprogram_npm/tdesign-miniprogram/image/image.wxss new file mode 100644 index 0000000..623b66f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/image.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-image{position:relative;display:inline-block}.t-image__img,.t-image__mask{color:var(--td-image-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));vertical-align:top;width:inherit;height:inherit}.t-image__mask{display:flex;align-items:center;justify-content:center;background-color:var(--td-image-loading-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));color:var(--td-image-loading-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-image--loading-text{width:0;height:0}.t-image__common{width:100%;height:100%}.t-image--lazy{position:absolute;top:0;left:0;z-index:-1}.t-image--shape-circle{border-radius:50%;overflow:hidden}.t-image--shape-round{border-radius:var(--td-image-round-radius,var(--td-radius-default,12rpx));overflow:hidden}.t-image--shape-square{border-radius:0;overflow:hidden} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/image/index.d.ts new file mode 100644 index 0000000..0f85c43 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/index.d.ts @@ -0,0 +1,4 @@ +import { TdImageProps } from './type'; +export declare type ImageProps = TdImageProps; +export * from './props'; +export * from './image'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/index.js b/app/miniprogram_npm/tdesign-miniprogram/image/index.js new file mode 100644 index 0000000..b2b8ed2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./image"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/props.js b/app/miniprogram_npm/tdesign-miniprogram/image/props.js new file mode 100644 index 0000000..dd7132a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/props.js @@ -0,0 +1 @@ +const props={error:{type:String,value:"default"},height:{type:null},lazy:{type:Boolean,value:!1},loading:{type:String,value:"default"},mode:{type:String,value:"scaleToFill"},shape:{type:String,value:"square"},showMenuByLongpress:{type:Boolean,value:!1},src:{type:String,value:""},tId:{type:String,value:""},webp:{type:Boolean,value:!1},width:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/image/type.js b/app/miniprogram_npm/tdesign-miniprogram/image/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/image/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/index.d.ts new file mode 100644 index 0000000..9af8cc5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/index.d.ts @@ -0,0 +1,4 @@ +export { default as ActionSheet, ActionSheetTheme } from './action-sheet/index'; +export { default as Dialog } from './dialog/index'; +export { default as Message } from './message/index'; +export { default as Toast } from './toast/index'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/index.js b/app/miniprogram_npm/tdesign-miniprogram/index.js new file mode 100644 index 0000000..c65d7b2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/index.js @@ -0,0 +1 @@ +export{default as ActionSheet,ActionSheetTheme}from"./action-sheet/index";export{default as Dialog}from"./dialog/index";export{default as Message}from"./message/index";export{default as Toast}from"./toast/index"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.d.ts b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.d.ts new file mode 100644 index 0000000..62d07a1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.d.ts @@ -0,0 +1,13 @@ +import { RelationsOptions, SuperComponent } from '../common/src/index'; +export default class IndexesAnchor extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdIndexesAnchorProps; + data: { + prefix: string; + classPrefix: string; + anchorStyle: string; + sticky: boolean; + active: boolean; + }; + relations: RelationsOptions; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.js b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.js new file mode 100644 index 0000000..7da837b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-indexes-anchor`;let IndexesAnchor=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=props,this.data={prefix:prefix,classPrefix:name,anchorStyle:"",sticky:!1,active:!1},this.relations={"../indexes/indexes":{type:"parent"}}}};IndexesAnchor=__decorate([wxComponent()],IndexesAnchor);export default IndexesAnchor; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.json b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxml b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxml new file mode 100644 index 0000000..5a5311b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxml @@ -0,0 +1 @@ +{{index}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxss b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxss new file mode 100644 index 0000000..5094a6f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/indexes-anchor.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-indexes-anchor{color:var(--td-indexes-anchor-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-indexes-anchor-font-size,28rpx);line-height:var(--td-indexes-anchor-line-height,44rpx)}.t-indexes-anchor__header{display:none;padding:8rpx 32rpx;background-color:var(--td-indexes-anchor-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-indexes-anchor__header--active{background-color:var(--td-indexes-anchor-active-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));position:relative}.t-indexes-anchor__header--active::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-component-border,var(--td-gray-color-4,#dcdcdc))}.t-indexes-anchor__header--active::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-indexes-anchor__slot{overflow:hidden}.t-indexes-anchor__slot:empty+.t-indexes-anchor__header{display:block}.t-indexes-anchor__wrapper{will-change:transform}.t-indexes-anchor__wrapper--sticky{position:fixed;top:0;left:0;width:100%;z-index:1}.t-indexes-anchor__wrapper--active{color:var(--td-indexes-anchor-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-weight:var(--td-indexes-anchor-active-font-weight,600)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/props.js b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/props.js new file mode 100644 index 0000000..d33a8b7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/props.js @@ -0,0 +1 @@ +const props={index:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/type.js b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes-anchor/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.d.ts b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.d.ts new file mode 100644 index 0000000..0071d19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.d.ts @@ -0,0 +1,45 @@ +import { RelationsOptions, SuperComponent } from '../common/src/index'; +export default class Indexes extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdIndexesProps; + data: { + prefix: string; + classPrefix: string; + _height: number; + _indexList: any[]; + scrollTop: number; + activeAnchor: any; + showTips: boolean; + }; + relations: RelationsOptions; + behaviors: string[]; + timer: any; + groupTop: any[]; + sidebar: any; + currentTouchAnchor: any; + observers: { + indexList(v: any): void; + height(v: any): void; + }; + lifetimes: { + ready(): void; + }; + methods: { + setHeight(height: string | number): void; + setIndexList(list: any): void; + getAllRect(): void; + getAnchorsRect(): Promise; + getSidebarRect(): void; + toggleTips(flag: boolean): void; + setAnchorByIndex(index: any): void; + onClick(e: any): void; + onTouchMove(e: any): void; + onTouchCancel(): void; + onTouchEnd(e: any): void; + onAnchorTouch: (...args: any[]) => void; + setAnchorOnScroll(scrollTop: number): void; + onScroll({ scrollTop }: { + scrollTop: any; + }): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.js b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.js new file mode 100644 index 0000000..2f2d369 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getRect,throttle,systemInfo}from"../common/utils";import pageScrollMixin from"../mixins/page-scroll";const{prefix:prefix}=config,name=`${prefix}-indexes`;let Indexes=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-sidebar`,`${prefix}-class-sidebar-item`],this.properties=props,this.data={prefix:prefix,classPrefix:name,_height:0,_indexList:[],scrollTop:0,activeAnchor:null,showTips:!1},this.relations={"../indexes-anchor/indexes-anchor":{type:"child"}},this.behaviors=[pageScrollMixin()],this.timer=null,this.groupTop=[],this.sidebar=null,this.currentTouchAnchor=null,this.observers={indexList(t){this.setIndexList(t),this.setHeight(this.data._height)},height(t){this.setHeight(t)}},this.lifetimes={ready(){this.timer=null,this.groupTop=[],this.sidebar=null,0===this.data._height&&this.setHeight(),null===this.data.indexList&&this.setIndexList()}},this.methods={setHeight(t){if(!t){const{windowHeight:e}=systemInfo;t=e}this.setData({_height:t},(()=>{this.getAllRect()}))},setIndexList(t){if(t)this.setData({_indexList:t});else{const t="A".charCodeAt(0),e=[];for(let i=t,s=t+26;i{this.groupTop.forEach(((t,e)=>{const i=this.groupTop[e+1];t.totalHeight=((null==i?void 0:i.top)||1/0)-t.top})),this.setAnchorOnScroll(0)})),this.getSidebarRect()},getAnchorsRect(){return Promise.all(this.$children.map((t=>getRect(t,`.${name}-anchor`).then((e=>{this.groupTop.push({height:e.height,top:e.top,anchor:t.data.index})})))))},getSidebarRect(){getRect(this,`#id-${name}__bar`).then((t=>{const{top:e,height:i}=t,{length:s}=this.data._indexList;this.sidebar={top:e,height:i,itemHeight:(i-2*(s-1))/s}}))},toggleTips(t){t?this.setData({showTips:!0}):(clearInterval(this.timer),this.timer=setTimeout((()=>{this.setData({showTips:!1})}),300))},setAnchorByIndex(t){const{_indexList:e,stickyOffset:i}=this.data,s=e[t];if(null!==this.data.activeAnchor&&this.data.activeAnchor===s)return;const o=this.groupTop.find((t=>t.anchor===s));if(o){this.currentTouchAnchor=s;const t=o.top-i;wx.pageScrollTo({scrollTop:t,duration:0}),this.toggleTips(!0),this.triggerEvent("select",{index:s}),this.setData({activeAnchor:s})}},onClick(t){const{index:e}=t.currentTarget.dataset;this.setAnchorByIndex(e)},onTouchMove(t){this.onAnchorTouch(t)},onTouchCancel(){this.toggleTips(!1)},onTouchEnd(t){this.toggleTips(!1),this.onAnchorTouch(t)},onAnchorTouch:throttle((function(t){const e=(t=>{const e=t-this.sidebar.top;return e<=0?0:e>this.sidebar.height?this.data._indexList.length-1:Math.floor(e/this.sidebar.itemHeight)})(t.changedTouches[0].clientY);this.setAnchorByIndex(e)}),1e3/30),setAnchorOnScroll(t){if(!this.groupTop)return;const{sticky:e,stickyOffset:i,activeAnchor:s}=this.data;t+=i;const o=this.groupTop.findIndex((e=>t>=e.top-e.height&&t<=e.top+e.totalHeight-e.height));if(-1===o)return;const h=this.groupTop[o];if(null!==this.currentTouchAnchor?(this.triggerEvent("change",{index:h.anchor}),this.currentTouchAnchor=null):s!==h.anchor&&(this.triggerEvent("change",{index:h.anchor}),this.setData({activeAnchor:h.anchor})),e){const e=h.top-t,s=e0&&t>i;this.$children.forEach(((n,r)=>{if(r===o){const o=t>i,r=`transform: translate3d(0, ${s?e:0}px, 0); top: ${i}px`;r===n.data.anchorStyle&&o===n.data.sticky||n.setData({sticky:o,active:!0,style:`height: ${h.height}px`,anchorStyle:r})}else if(r+1===o){const t=`transform: translate3d(0, ${s?e-h.height:0}px, 0); top: ${i}px`;t!==n.data.anchorStyle&&n.setData({sticky:!0,active:!0,style:`height: ${h.height}px`,anchorStyle:t})}else n.setData({active:!1,sticky:!1,anchorStyle:""})}))}},onScroll({scrollTop:t}){this.setAnchorOnScroll(t)}}}};Indexes=__decorate([wxComponent()],Indexes);export default Indexes; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.json b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.json new file mode 100644 index 0000000..020034e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-cell":"../cell/cell","t-cell-group":"../cell-group/cell-group"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxml b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxml new file mode 100644 index 0000000..5d11a73 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxml @@ -0,0 +1 @@ +{{ _this.getFirstCharacter(item) }}{{ activeAnchor }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxs b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxs new file mode 100644 index 0000000..e8bbe2b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxs @@ -0,0 +1,7 @@ +function getFirstCharacter(str) { + return str.toString().substring(0, 1); +} + +module.exports = { + getFirstCharacter: getFirstCharacter, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxss b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxss new file mode 100644 index 0000000..2cd267f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/indexes.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-indexes{position:relative;height:100vh}.t-indexes__sidebar{position:fixed;right:var(--td-indexes-sidebar-right,16rpx);width:var(--td-indexes-sidebar-item-size,40rpx);color:var(--td-indexes-sidebar-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-indexes-sidebar-font-size,24rpx);line-height:var(--td-indexes-sidebar-line-height,40rpx);display:flex;flex-flow:column nowrap;top:50%;transform:translateY(-50%);z-index:1}.t-indexes__sidebar-item{border-radius:50%;position:relative;text-align:center}.t-indexes__sidebar-item--active{background-color:var(--td-indexes-sidebar-active-bg-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));color:var(--td-indexes-sidebar-active-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-indexes__sidebar-item+.t-indexes__sidebar-item{margin-top:4rpx}.t-indexes__sidebar-tips{min-width:var(--td-indexes-sidebar-tips-size,96rpx);max-width:198rpx;padding:0 32rpx;box-sizing:border-box;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;height:var(--td-indexes-sidebar-tips-size,96rpx);line-height:var(--td-indexes-sidebar-tips-size,96rpx);text-align:center;font-size:var(--td-indexes-sidebar-tips-font-size,40rpx);font-weight:700;color:var(--td-indexes-sidebar-tips-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-indexes-sidebar-tips-bg-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)));border-radius:var(--td-indexes-sidebar-tips-size,96rpx);position:absolute;top:50%;bottom:0;transform:translateY(-50%);right:var(--td-indexes-sidebar-tips-right,calc(100% + 32rpx))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/props.js b/app/miniprogram_npm/tdesign-miniprogram/indexes/props.js new file mode 100644 index 0000000..5da56b2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/props.js @@ -0,0 +1 @@ +const props={indexList:{type:null},sticky:{type:Boolean,value:!0},stickyOffset:{type:Number,value:0}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/indexes/type.js b/app/miniprogram_npm/tdesign-miniprogram/indexes/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/indexes/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.d.ts b/app/miniprogram_npm/tdesign-miniprogram/input/input.d.ts new file mode 100644 index 0000000..94b84bc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.d.ts @@ -0,0 +1,37 @@ +import { SuperComponent } from '../common/src/index'; +export default class Input extends SuperComponent { + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + behaviors: string[]; + properties: import("./type").TdInputProps; + data: { + prefix: string; + classPrefix: string; + classBasePrefix: string; + showClearIcon: boolean; + }; + lifetimes: { + ready(): void; + }; + observers: { + prefixIcon(v: any): void; + suffixIcon(v: any): void; + clearable(v: any): void; + 'clearTrigger, clearable, disabled, readonly'(): void; + }; + methods: { + updateValue(value: any): void; + updateClearIconVisible(value?: boolean): void; + onInput(e: any): void; + onFocus(e: any): void; + onBlur(e: any): void; + onConfirm(e: any): void; + onSuffixClick(): void; + onSuffixIconClick(): void; + clearInput(e: any): void; + onKeyboardHeightChange(e: any): void; + onNickNameReview(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.js b/app/miniprogram_npm/tdesign-miniprogram/input/input.js new file mode 100644 index 0000000..1fc3069 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getCharacterLength,calcIcon}from"../common/utils";import{isDef}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-input`;let Input=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-prefix-icon`,`${prefix}-class-label`,`${prefix}-class-input`,`${prefix}-class-clearable`,`${prefix}-class-suffix`,`${prefix}-class-suffix-icon`,`${prefix}-class-tips`],this.behaviors=["wx://form-field"],this.properties=props,this.data={prefix:prefix,classPrefix:name,classBasePrefix:prefix,showClearIcon:!0},this.lifetimes={ready(){var e;const{value:t,defaultValue:i}=this.properties;this.updateValue(null!==(e=null!=t?t:i)&&void 0!==e?e:"")}},this.observers={prefixIcon(e){this.setData({_prefixIcon:calcIcon(e)})},suffixIcon(e){this.setData({_suffixIcon:calcIcon(e)})},clearable(e){this.setData({_clearIcon:calcIcon(e,"close-circle-filled")})},"clearTrigger, clearable, disabled, readonly"(){this.updateClearIconVisible()}},this.methods={updateValue(e){const{allowInputOverMax:t,maxcharacter:i,maxlength:r}=this.properties;if(!t&&i&&i>0&&!Number.isNaN(i)){const{length:t,characters:r}=getCharacterLength("maxcharacter",e,i);this.setData({value:r,count:t})}else if(!t&&r&&r>0&&!Number.isNaN(r)){const{length:t,characters:i}=getCharacterLength("maxlength",e,r);this.setData({value:i,count:t})}else this.setData({value:e,count:isDef(e)?String(e).length:0})},updateClearIconVisible(e=!1){const{clearTrigger:t,disabled:i,readonly:r}=this.properties;i||r?this.setData({showClearIcon:!1}):this.setData({showClearIcon:e||"always"===t})},onInput(e){const{value:t,cursor:i,keyCode:r}=e.detail;this.updateValue(t),this.triggerEvent("change",{value:this.data.value,cursor:i,keyCode:r})},onFocus(e){this.updateClearIconVisible(!0),this.triggerEvent("focus",e.detail)},onBlur(e){if(this.updateClearIconVisible(),"function"==typeof this.properties.format){const t=this.properties.format(e.detail.value);return this.updateValue(t),void this.triggerEvent("blur",{value:this.data.value,cursor:this.data.count})}this.triggerEvent("blur",e.detail)},onConfirm(e){this.triggerEvent("enter",e.detail)},onSuffixClick(){this.triggerEvent("click",{trigger:"suffix"})},onSuffixIconClick(){this.triggerEvent("click",{trigger:"suffix-icon"})},clearInput(e){this.triggerEvent("clear",e.detail),this.setData({value:""})},onKeyboardHeightChange(e){this.triggerEvent("keyboardheightchange",e.detail)},onNickNameReview(e){this.triggerEvent("nicknamereview",e.detail)}}}};Input=__decorate([wxComponent()],Input);export default Input; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.json b/app/miniprogram_npm/tdesign-miniprogram/input/input.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.wxml b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxml new file mode 100644 index 0000000..615d2fe --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxml @@ -0,0 +1 @@ +{{label}}{{suffix}}{{tips}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.wxs b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxs new file mode 100644 index 0000000..ee9eb11 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxs @@ -0,0 +1,16 @@ +function getInputClass(classPrefix, suffix, align, disabled) { + var className = [classPrefix + '__control']; + + if (align) { + className.push(classPrefix + '--' + align); + } + + if (disabled) { + className.push(classPrefix + '__control--disabled'); + } + return className.join(' '); +} + +module.exports = { + getInputClass: getInputClass, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/input.wxss b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxss new file mode 100644 index 0000000..bc19c66 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/input.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-input{background-color:var(--td-input-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));display:flex;align-items:var(--td-input-align-items,center);flex:1;padding:var(--td-input-vertical-padding,32rpx);overflow:hidden}.t-input--border{position:relative}.t-input--border::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-input-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)))}.t-input--border::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-input--border:after{left:var(--td-input-border-left-space,32rpx);right:var(--td-input-border-right-space,0)}.t-input--layout-vertical{flex-direction:column;align-items:start}.t-input__wrap--prefix{display:flex}.t-input__icon--prefix{font-size:48rpx;color:var(--td-input-prefix-icon-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-input__label:not(:empty){min-width:var(--td-input-label-min-width,2em);max-width:var(--td-input-label-max-width,5em);font-size:var(--td-font-size-m,32rpx);line-height:48rpx;color:var(--td-input-label-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));margin-right:var(--td-spacer-2,32rpx);word-wrap:break-word}.t-input--layout-vertical .t-input__label:not(:empty){font-size:var(--td-font-size-base,28rpx);padding-bottom:8rpx}.t-input__icon--prefix:not(:empty)+.t-input__label:not(:empty){padding-left:8rpx}.t-input__label:not(:empty)+.t-input__wrap{margin-left:var(--td-spacer-2,32rpx)}.t-input__icon--prefix:not(:empty)+.t-input__label:empty{margin-right:var(--td-spacer-2,32rpx)}.t-input__wrap{width:100%;display:flex;flex-direction:column;flex-wrap:wrap;justify-content:center;flex-shrink:1;flex:1}.t-input__wrap .t-input__content{display:flex;width:100%;align-items:center;line-height:48rpx;font-size:var(--td-font-size-m,32rpx)}.t-input__wrap--clearable-icon,.t-input__wrap--suffix,.t-input__wrap--suffix-icon{flex:0 0 auto;padding-left:var(--td-spacer-1,24rpx)}.t-input__wrap--clearable-icon:empty,.t-input__wrap--suffix-icon:empty,.t-input__wrap--suffix:empty{display:none}.t-input__wrap--clearable-icon,.t-input__wrap--suffix-icon{font-size:48rpx;color:var(--td-input-suffix-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-input__wrap--suffix{font-size:var(--td-font-size-m,32rpx);color:var(--td-input-suffix-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-input__icon--prefix:empty,.t-input__tips:empty,.t-input__wrap--clearable-icon:empty,.t-input__wrap--suffix-icon:empty,.t-input__wrap--suffix:empty{display:none}.t-input__control{display:block;box-sizing:border-box;width:100%;min-width:0;min-height:48rpx;margin:0;padding:0;color:var(--td-input-default-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));line-height:inherit;background-color:transparent;border:0;resize:none;font-size:inherit}.t-input__control--disabled{color:var(--td-input-disabled-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));cursor:not-allowed;opacity:1;-webkit-text-fill-color:currentColor}.t-input__control--read-only{cursor:default}.t-input--left{text-align:left}.t-input--right{text-align:right}.t-input--center{text-align:center}.t-input__placeholder{color:var(--td-input-placeholder-text-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-input-placeholder-text-font-size,var(--td-font-size-m,32rpx))}.t-input__placeholder--disabled{color:var(--td-input-disabled-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-input__tips{font-size:var(--td-font-size-s,24rpx);line-height:40rpx;padding-top:8rpx}.t-input--default+.t-input__tips{color:var(--td-input-default-tips-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-input--success+.t-input__tips{color:var(--td-input-success-tips-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-input--warning+.t-input__tips{color:var(--td-input-warning-tips-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-input--error+.t-input__tips{color:var(--td-input-error-tips-color,var(--td-error-color,var(--td-error-color-6,#d54941)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/props.js b/app/miniprogram_npm/tdesign-miniprogram/input/props.js new file mode 100644 index 0000000..668d6e9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/props.js @@ -0,0 +1 @@ +const props={adjustPosition:{type:Boolean,value:!0},align:{type:String,value:"left"},allowInputOverMax:{type:Boolean,value:!1},alwaysEmbed:{type:Boolean,value:!1},autoFocus:{type:Boolean,value:!1},borderless:{type:Boolean,value:!1},clearTrigger:{type:String,value:"always"},clearable:{type:null,value:!1},confirmHold:{type:Boolean,value:!1},confirmType:{type:String,value:"done"},cursor:{type:Number,required:!0},cursorColor:{type:String,value:"#0052d9"},cursorSpacing:{type:Number,value:0},disabled:{type:null,value:void 0},focus:{type:Boolean,value:!1},format:{type:null},holdKeyboard:{type:Boolean,value:!1},label:{type:String},layout:{type:String,value:"horizontal"},maxcharacter:{type:Number},maxlength:{type:Number,value:-1},placeholder:{type:String,value:void 0},placeholderClass:{type:String,value:"input-placeholder"},placeholderStyle:{type:String,value:"",required:!0},prefixIcon:{type:null},readonly:{type:null,value:void 0},safePasswordCertPath:{type:String,value:""},safePasswordCustomHash:{type:String,value:""},safePasswordLength:{type:Number},safePasswordNonce:{type:String,value:""},safePasswordSalt:{type:String,value:""},safePasswordTimeStamp:{type:Number},selectionEnd:{type:Number,value:-1},selectionStart:{type:Number,value:-1},status:{type:String,value:"default"},suffix:{type:String},suffixIcon:{type:null},tips:{type:String},type:{type:String,value:"text"},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/input/type.js b/app/miniprogram_npm/tdesign-miniprogram/input/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/input/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/link.d.ts b/app/miniprogram_npm/tdesign-miniprogram/link/link.d.ts new file mode 100644 index 0000000..f407a65 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/link.d.ts @@ -0,0 +1,26 @@ +import { SuperComponent } from '../common/src/index'; +export default class Link extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdLinkProps; + options: { + multipleSlots: boolean; + }; + data: { + prefix: string; + classPrefix: string; + }; + observers: { + 'theme, disabled, size, underline, navigatorProps'(): void; + prefixIcon(v: any): void; + suffixIcon(v: any): void; + }; + lifetimes: { + attached(): void; + }; + methods: { + setClass(): void; + onSuccess(e: any): void; + onFail(e: any): void; + onComplete(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/link.js b/app/miniprogram_npm/tdesign-miniprogram/link/link.js new file mode 100644 index 0000000..e65ba04 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/link.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-link`;let Link=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-hover`,`${prefix}-class-prefix-icon`,`${prefix}-class-content`,`${prefix}-class-suffix-icon`],this.properties=props,this.options={multipleSlots:!0},this.data={prefix:prefix,classPrefix:name},this.observers={"theme, disabled, size, underline, navigatorProps"(){this.setClass()},prefixIcon(e){this.setData({_prefixIcon:calcIcon(e)})},suffixIcon(e){this.setData({_suffixIcon:calcIcon(e)})}},this.lifetimes={attached(){this.setClass()}},this.methods={setClass(){const{theme:e,size:s,underline:i,navigatorProps:t,disabled:o}=this.properties,n=[name,`${name}--${e}`,`${name}--${s}`];i&&n.push(`${name}--underline`),(t&&!t.url&&!["navigateBack","exit"].includes(t.openType)||o)&&n.push(`${name}--disabled`),this.setData({className:n.join(" ")})},onSuccess(e){this.triggerEvent("success",e)},onFail(e){this.triggerEvent("fail",e)},onComplete(e){this.triggerEvent("complete",e)}}}};Link=__decorate([wxComponent()],Link);export default Link; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/link.json b/app/miniprogram_npm/tdesign-miniprogram/link/link.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/link.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/link.wxml b/app/miniprogram_npm/tdesign-miniprogram/link/link.wxml new file mode 100644 index 0000000..8c2445e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/link.wxml @@ -0,0 +1 @@ +{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/link.wxss b/app/miniprogram_npm/tdesign-miniprogram/link/link.wxss new file mode 100644 index 0000000..1b42d83 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/link.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-link--small .t-link__content{font-size:24rpx;line-height:40rpx}.t-link--small .t-link__prefix-icon,.t-link--small .t-link__suffix-icon{font-size:28rpx}.t-link--medium .t-link__content{font-size:28rpx;line-height:44rpx}.t-link--medium .t-link__prefix-icon,.t-link--medium .t-link__suffix-icon{font-size:32rpx}.t-link--large .t-link__content{font-size:32rpx;line-height:48rpx}.t-link--large .t-link__prefix-icon,.t-link--large .t-link__suffix-icon{font-size:36rpx}.t-link--primary{color:var(--td-link-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-link--primary.t-link--underline::after{border-color:var(--td-link-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-link--primary.t-link--disabled{color:var(--td-link-primary-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-link--primary.t-link--hover{color:var(--td-link-primary-active-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-link--primary.t-link--hover.t-link--underline::after{border-color:var(--td-link-primary-active-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-link--success{color:var(--td-link-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-link--success.t-link--underline::after{border-color:var(--td-link-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-link--success.t-link--disabled{color:var(--td-link-success-disabled-color,var(--td-success-color-disabled,var(--td-success-color-3,#92dab2)))}.t-link--success.t-link--hover{color:var(--td-link-success-active-color,var(--td-success-color-active,var(--td-success-color-6,#008858)))}.t-link--success.t-link--hover.t-link--underline::after{border-color:var(--td-link-success-active-color,var(--td-success-color-active,var(--td-success-color-6,#008858)))}.t-link--warning{color:var(--td-link-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-link--warning.t-link--underline::after{border-color:var(--td-link-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-link--warning.t-link--disabled{color:var(--td-link-warning-disabled-color,var(--td-warning-color-disabled,var(--td-warning-color-3,#ffb98c)))}.t-link--warning.t-link--hover{color:var(--td-link-warning-active-color,var(--td-warning-color-active,var(--td-warning-color-6,#be5a00)))}.t-link--warning.t-link--hover.t-link--underline::after{border-color:var(--td-link-warning-active-color,var(--td-warning-color-active,var(--td-warning-color-6,#be5a00)))}.t-link--default{color:var(--td-link-default-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-link--default.t-link--underline::after{border-color:var(--td-link-default-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-link--default.t-link--disabled{color:var(--td-link-default-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-link--default.t-link--hover{color:var(--td-link-default-active-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-link--default.t-link--hover.t-link--underline::after{border-color:var(--td-link-default-active-color,var(--td-brand-color-active,var(--td-primary-color-8,#003cab)))}.t-link--danger{color:var(--td-link-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-link--danger.t-link--underline::after{border-color:var(--td-link-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-link--danger.t-link--disabled{color:var(--td-link-danger-disabled-color,var(--td-error-color-disabled,var(--td-error-color-3,#ffb9b0)))}.t-link--danger.t-link--hover{color:var(--td-link-danger-active-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-link--danger.t-link--hover.t-link--underline::after{border-color:var(--td-link-danger-active-color,var(--td-error-color-active,var(--td-error-color-7,#ad352f)))}.t-link{position:relative;display:flex;align-items:center;box-sizing:content-box}.t-link--underline::after{content:'';position:absolute;left:0;right:0;height:0;bottom:0;opacity:1;border-bottom:2rpx solid #cd0be7}.t-link__prefix-icon:not(:empty)+.t-link__content:not(:empty){padding-left:8rpx}.t-link__content:not(:empty)+.t-link__suffix-icon:not(:empty){padding-left:8rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/props.js b/app/miniprogram_npm/tdesign-miniprogram/link/props.js new file mode 100644 index 0000000..b9738de --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/props.js @@ -0,0 +1 @@ +const props={content:{type:String},disabled:{type:Boolean,value:!1},hover:{type:Boolean},navigatorProps:{type:Object},prefixIcon:{type:null},size:{type:String,value:"medium"},suffixIcon:{type:null},theme:{type:String,value:"default"},underline:{type:Boolean}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/link/type.js b/app/miniprogram_npm/tdesign-miniprogram/link/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/link/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/loading/index.d.ts new file mode 100644 index 0000000..2806bd6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './loading'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/index.js b/app/miniprogram_npm/tdesign-miniprogram/loading/index.js new file mode 100644 index 0000000..00a3bd6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./loading"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/loading.d.ts b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.d.ts new file mode 100644 index 0000000..4d2f2d4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.d.ts @@ -0,0 +1,77 @@ +import { SuperComponent } from '../common/src/index'; +import type { TdLoadingProps } from './type'; +export interface LoadingProps extends TdLoadingProps { +} +export default class Loading extends SuperComponent { + externalClasses: string[]; + data: { + prefix: string; + classPrefix: string; + show: boolean; + }; + options: { + multipleSlots: boolean; + }; + properties: { + delay?: { + type: NumberConstructor; + value?: number; + }; + duration?: { + type: NumberConstructor; + value?: number; + }; + fullscreen?: { + type: BooleanConstructor; + value?: boolean; + }; + indicator?: { + type: BooleanConstructor; + value?: boolean; + }; + inheritColor?: { + type: BooleanConstructor; + value?: boolean; + }; + layout?: { + type: StringConstructor; + value?: "horizontal" | "vertical"; + }; + loading?: { + type: BooleanConstructor; + value?: boolean; + }; + pause?: { + type: BooleanConstructor; + value?: boolean; + }; + progress?: { + type: NumberConstructor; + value?: number; + }; + reverse?: { + type: BooleanConstructor; + value?: boolean; + }; + size?: { + type: StringConstructor; + value?: string; + }; + text?: { + type: StringConstructor; + value?: string; + }; + theme?: { + type: StringConstructor; + value?: "circular" | "spinner" | "dots"; + }; + }; + timer: any; + observers: { + loading(this: any, cur: any): void; + }; + lifetimes: { + detached(): void; + }; + refreshPage(): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/loading.js b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.js new file mode 100644 index 0000000..bb55f05 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-loading`;let Loading=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-text`,`${prefix}-class-indicator`],this.data={prefix:prefix,classPrefix:name,show:!0},this.options={multipleSlots:!0},this.properties=Object.assign({},props),this.timer=null,this.observers={loading(e){const{delay:t}=this.properties;this.timer&&clearTimeout(this.timer),e&&t?this.timer=setTimeout((()=>{this.setData({show:e}),this.timer=null}),t):this.setData({show:e})}},this.lifetimes={detached(){clearTimeout(this.timer)}}}refreshPage(){this.triggerEvent("reload")}};Loading=__decorate([wxComponent()],Loading);export default Loading; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/loading.json b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxml b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxml new file mode 100644 index 0000000..6ffc154 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxml @@ -0,0 +1 @@ +{{text}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxss b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxss new file mode 100644 index 0000000..be8d8c9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/loading.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-loading{display:inline-flex;align-items:center;justify-content:center;font-size:24rpx}.t-loading--fullscreen{position:fixed;display:flex;align-items:center;vertical-align:middle;justify-content:center;top:0;left:0;width:100%;height:100%;z-index:var(--td-loading-z-index,3500);background-color:var(--td-loading-full-bg-color,rgba(255,255,255,.6))}.t-loading__spinner{position:relative;box-sizing:border-box;width:100%;height:100%;max-width:100%;max-height:100%;animation:rotate .8s linear infinite;color:var(--td-loading-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-loading__spinner.reverse{animation-name:rotateReverse}.t-loading__spinner--spinner{animation-timing-function:steps(12);color:var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9)))}.t-loading__spinner--spinner .t-loading__dot{position:absolute;top:0;left:0;width:100%;height:100%}.t-loading__spinner--spinner .t-loading__dot::before{display:block;width:5rpx;height:25%;margin:0 auto;background-color:var(--td-loading-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-radius:40%;content:' '}.t-loading__spinner--circular .t-loading__circular{border-radius:100%;width:100%;height:100%;background:conic-gradient(from 180deg at 50% 50%,rgba(255,255,255,0) 0deg,rgba(255,255,255,0) 60deg,currentColor 330deg,rgba(255,255,255,0) 360deg);mask:radial-gradient(transparent calc(50% - 1rpx),#fff 50%);-webkit-mask:radial-gradient(transparent calc(50% - 1rpx),#fff 50%)}.t-loading__spinner--dots{display:flex;justify-content:space-between;align-items:center;animation:none}.t-loading__spinner--dots .t-loading__dot{width:20%;height:20%;border-radius:50%;background-color:var(--td-loading-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));animation-duration:1.8s;animation-name:dotting;animation-timing-function:linear;animation-iteration-count:infinite;animation-fill-mode:both}.t-loading__text{color:var(--td-loading-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-loading-text-font-size,24rpx);line-height:var(--td-loading-text-line-height,40rpx)}.t-loading__text--vertical:not(:first-child):not(:empty){margin-top:12rpx}.t-loading__text--horizontal:not(:first-child):not(:empty){margin-left:16rpx}.t-loading--vertical{flex-direction:column}.t-loading--horizontal{flex-direction:row;vertical-align:top}@keyframes t-bar{0%{width:0}50%{width:70%}100%{width:80%}}@keyframes t-bar-loaded{0%{height:6rpx;opacity:1;width:90%}50%{height:6rpx;opacity:1;width:100%}100%{height:0;opacity:0;width:100%}}.t-loading__dot-1{transform:rotate(30deg);opacity:0}.t-loading__dot-2{transform:rotate(60deg);opacity:.08333333}.t-loading__dot-3{transform:rotate(90deg);opacity:.16666667}.t-loading__dot-4{transform:rotate(120deg);opacity:.25}.t-loading__dot-5{transform:rotate(150deg);opacity:.33333333}.t-loading__dot-6{transform:rotate(180deg);opacity:.41666667}.t-loading__dot-7{transform:rotate(210deg);opacity:.5}.t-loading__dot-8{transform:rotate(240deg);opacity:.58333333}.t-loading__dot-9{transform:rotate(270deg);opacity:.66666667}.t-loading__dot-10{transform:rotate(300deg);opacity:.75}.t-loading__dot-11{transform:rotate(330deg);opacity:.83333333}.t-loading__dot-12{transform:rotate(360deg);opacity:.91666667}@keyframes rotate{from{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes rotateReverse{from{transform:rotate(360deg)}to{transform:rotate(0)}}@keyframes dotting{0%{opacity:.15}1%{opacity:.8}33%{opacity:.8}34%{opacity:.15}100%{opacity:.15}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/props.js b/app/miniprogram_npm/tdesign-miniprogram/loading/props.js new file mode 100644 index 0000000..2dcd35c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/props.js @@ -0,0 +1 @@ +const props={delay:{type:Number,value:0},duration:{type:Number,value:800},fullscreen:{type:Boolean,value:!1},indicator:{type:Boolean,value:!0},inheritColor:{type:Boolean,value:!1},layout:{type:String,value:"horizontal"},loading:{type:Boolean,value:!0},pause:{type:Boolean,value:!1},progress:{type:Number},reverse:{type:Boolean},size:{type:String,value:"20px"},text:{type:String},theme:{type:String,value:"circular"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/loading/type.js b/app/miniprogram_npm/tdesign-miniprogram/loading/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/loading/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/message-item/index.d.ts new file mode 100644 index 0000000..82441ea --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/index.d.ts @@ -0,0 +1,17 @@ +/// +/// +/// +import { MessageProps } from '../message/message.interface'; +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +interface MessageActionOptionsType extends Optional { + context?: Context; + selector?: string; +} +declare const _default: { + info(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + success(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + warning(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + error(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + hide(options: MessageActionOptionsType): void; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/index.js b/app/miniprogram_npm/tdesign-miniprogram/message-item/index.js new file mode 100644 index 0000000..33d8d67 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/index.js @@ -0,0 +1 @@ +import{__rest}from"tslib";import{MessageType}from"../message/message.interface";import{getInstance}from"../common/utils";const showMessage=function(e,s=MessageType.info){const{context:t,selector:o="#t-message"}=e,n=__rest(e,["context","selector"]),a=getInstance(t,o);if(a)return a.resetData((()=>{a.setData(Object.assign({theme:s},n),a.show.bind(a))})),a;console.error("未找到组件,请确认 selector && context 是否正确")};export default{info:e=>showMessage(e,MessageType.info),success:e=>showMessage(e,MessageType.success),warning:e=>showMessage(e,MessageType.warning),error:e=>showMessage(e,MessageType.error),hide(e){const{context:s,selector:t="#t-message"}=Object.assign({},e),o=getInstance(s,t);o&&o.hide()}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.d.ts new file mode 100644 index 0000000..49bdb7e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.d.ts @@ -0,0 +1,39 @@ +/// +import { SuperComponent, ComponentsOptionsType } from '../common/src/index'; +import { MessageProps } from '../message/message.interface'; +export default class Message extends SuperComponent { + externalClasses: string[]; + options: ComponentsOptionsType; + properties: MessageProps; + data: { + prefix: string; + classPrefix: string; + loop: number; + animation: any[]; + showAnimation: any[]; + wrapTop: number; + fadeClass: string; + }; + closeTimeoutContext: number; + nextAnimationContext: number; + resetAnimation: WechatMiniprogram.Animation; + observers: { + marquee(val: any): void; + 'icon, theme'(icon: any, theme: any): void; + link(v: any): void; + closeBtn(v: any): void; + }; + lifetimes: { + ready(): void; + detached(): void; + }; + memoInitialData(): void; + resetData(cb: () => void): void; + checkAnimation(): void; + clearMessageAnimation(): void; + show(offsetHeight?: number): void; + hide(): void; + reset(): void; + handleClose(): void; + handleLinkClick(): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.js b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.js new file mode 100644 index 0000000..39b8085 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"../message/props";import{getRect,unitConvert,calcIcon}from"../common/utils";import{isObject}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-message`,SHOW_DURATION=500,THEME_ICON={info:"info-circle-filled",success:"check-circle-filled",warning:"info-circle-filled",error:"error-circle-filled"};let Message=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-icon`,`${prefix}-class-link`,`${prefix}-class-close-btn`],this.options={multipleSlots:!0},this.properties=Object.assign({},props),this.data={prefix:prefix,classPrefix:name,loop:-1,animation:[],showAnimation:[],wrapTop:-999,fadeClass:""},this.closeTimeoutContext=0,this.nextAnimationContext=0,this.resetAnimation=wx.createAnimation({duration:0,timingFunction:"linear"}),this.observers={marquee(t){"{}"!==JSON.stringify(t)&&"true"!==JSON.stringify(t)||this.setData({marquee:{speed:50,loop:-1,delay:0}})},"icon, theme"(t,e){this.setData({_icon:calcIcon(t,THEME_ICON[e])})},link(t){const e=isObject(t)?Object.assign({},t):{content:t};this.setData({_link:e})},closeBtn(t){this.setData({_closeBtn:calcIcon(t,"close")})}},this.lifetimes={ready(){this.memoInitialData()},detached(){this.clearMessageAnimation()}}}memoInitialData(){this.initialData=Object.assign(Object.assign({},this.properties),this.data)}resetData(t){this.setData(Object.assign({},this.initialData),t)}checkAnimation(){const{marquee:t}=this.properties;if(!t||0===t.loop)return;const e=t.speed;if(this.data.loop>0)this.data.loop-=1;else if(0===this.data.loop)return void this.setData({animation:this.resetAnimation.translateX(0).step().export()});this.nextAnimationContext&&this.clearMessageAnimation();const i=`#${name}__text-wrap`,s=`#${name}__text`;Promise.all([getRect(this,s),getRect(this,i)]).then((([t,i])=>{this.setData({animation:this.resetAnimation.translateX(i.width).step().export()},(()=>{const s=(t.width+i.width)/e*1e3,a=wx.createAnimation({duration:s}).translateX(-t.width).step().export();setTimeout((()=>{this.nextAnimationContext=setTimeout(this.checkAnimation.bind(this),s),this.setData({animation:a})}),20)}))}))}clearMessageAnimation(){clearTimeout(this.nextAnimationContext),this.nextAnimationContext=0}show(t=0){const{duration:e,marquee:i,offset:s,id:a}=this.properties;this.setData({visible:!0,loop:i.loop||this.data.loop,fadeClass:`${name}__fade`,wrapTop:unitConvert(s[0])+t}),this.reset(),this.checkAnimation(),e&&e>0&&(this.closeTimeoutContext=setTimeout((()=>{this.hide(),this.triggerEvent("duration-end",{self:this})}),e));getRect(this,a?`#${a}`:`#${name}`).then((t=>{this.setData({height:t.height},(()=>{this.setData({fadeClass:""})}))}))}hide(){this.reset(),this.setData({fadeClass:`${name}__fade`}),setTimeout((()=>{this.setData({visible:!1,animation:[]})}),500),"function"==typeof this.onHide&&this.onHide()}reset(){this.nextAnimationContext&&this.clearMessageAnimation(),clearTimeout(this.closeTimeoutContext),this.closeTimeoutContext=0}handleClose(){this.hide(),this.triggerEvent("close-btn-click")}handleLinkClick(){this.triggerEvent("link-click")}};Message=__decorate([wxComponent()],Message);export default Message; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.json b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.json new file mode 100644 index 0000000..ddbc1d7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-link":"../link/link"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxml new file mode 100644 index 0000000..3022a37 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxml @@ -0,0 +1 @@ +{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxs b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxs new file mode 100644 index 0000000..4cf0bd9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxs @@ -0,0 +1,29 @@ +var isEmptyObj = function (obj) { + return JSON.stringify(obj) === '{}'; +}; + +var changeNumToStr = function (arr) { + return arr.map(function (item) { + return typeof item === 'number' ? item + 'rpx' : item; + }); +}; + +var getMessageStyles = function (zIndex, offset, wrapTop) { + var arr = changeNumToStr(offset || [0, 0]); + var left = arr[1] || 0; + var right = arr[1] || 0; + + var zIndexStyle = zIndex ? 'z-index:' + zIndex + ';' : ''; + var styleOffset = ''; + + styleOffset += 'top:' + wrapTop + 'px;'; + styleOffset += 'left:' + left + ';'; + styleOffset += 'right:' + right + ';'; + + return zIndexStyle + styleOffset; +}; + +module.exports = { + getMessageStyles: getMessageStyles, + isEmptyObj: isEmptyObj, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxss new file mode 100644 index 0000000..728d398 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message-item/message-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-message{position:fixed;top:0;left:0;right:0;transition:opacity .3s,transform .4s,top .4s;display:flex;justify-content:flex-start;height:96rpx;align-items:center;z-index:15000;padding:0 32rpx;box-sizing:border-box;border-radius:var(--td-message-border-radius,var(--td-radius-default,12rpx));line-height:1;background-color:var(--td-message-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));box-shadow:var(--td-message-box-shadow,var(--td-shadow-1,0 1px 10px rgba(0,0,0,.05),0 4px 5px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.12)))}.t-message__text{display:inline-block;color:var(--td-message-content-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-font-size-base,28rpx);line-height:44rpx}.t-message__text-wrap{flex:1 1 auto;overflow-x:hidden;text-overflow:ellipsis}.t-message__text-nowrap{word-break:keep-all;white-space:nowrap}.t-message--info{color:var(--td-message-info-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-message--success{color:var(--td-message-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-message--warning{color:var(--td-message-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-message--error{color:var(--td-message-error-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-message__icon--left,.t-message__icon--right{font-size:44rpx}.t-message__icon--left:not(:empty){margin-right:var(--td-spacer,16rpx)}.t-message__icon--right{color:var(--td-message-close-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-message__icon--right:not(:empty),.t-message__link{flex:0 0 auto;margin-left:var(--td-spacer,16rpx)}.t-message__fade{opacity:0;transform:translateY(-100%)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/message/index.d.ts new file mode 100644 index 0000000..a8cf1e3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/index.d.ts @@ -0,0 +1,17 @@ +/// +/// +/// +import { MessageProps } from './message.interface'; +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +interface MessageActionOptionsType extends Optional { + context?: Context; + selector?: string; +} +declare const _default: { + info(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + success(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + warning(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + error(options: MessageActionOptionsType): WechatMiniprogram.Component.TrivialInstance; + hide(options: MessageActionOptionsType): void; +}; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/index.js b/app/miniprogram_npm/tdesign-miniprogram/message/index.js new file mode 100644 index 0000000..8016163 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/index.js @@ -0,0 +1 @@ +import{__rest}from"tslib";import{MessageType}from"./message.interface";import{getInstance}from"../common/utils";const showMessage=function(e,s=MessageType.info){const{context:t,selector:o="#t-message"}=e,n=__rest(e,["context","selector"]),r=getInstance(t,o);if("boolean"!=typeof n.single&&(n.single=!0),r)return r.setMessage(n,s),r;console.error("未找到组件,请确认 selector && context 是否正确")};export default{info:e=>showMessage(e,MessageType.info),success:e=>showMessage(e,MessageType.success),warning:e=>showMessage(e,MessageType.warning),error:e=>showMessage(e,MessageType.error),hide(e){const{context:s,selector:t="#t-message"}=Object.assign({},e),o=getInstance(s,t);o&&o.hide()}}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.d.ts b/app/miniprogram_npm/tdesign-miniprogram/message/message.d.ts new file mode 100644 index 0000000..e3de7ca --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.d.ts @@ -0,0 +1,37 @@ +/// +import { SuperComponent, ComponentsOptionsType } from '../common/src/index'; +import { MessageType, MessageProps } from './message.interface'; +export default class Message extends SuperComponent { + options: ComponentsOptionsType; + properties: MessageProps; + data: { + prefix: string; + classPrefix: string; + messageList: any[]; + }; + index: number; + instances: any[]; + gap: number; + observers: { + visible(value: any): void; + }; + pageLifetimes: { + show(): void; + }; + lifetimes: { + ready(): void; + }; + memoInitialData(): void; + setMessage(msg: MessageProps, theme?: MessageType): void; + addMessage(msgObj: MessageProps): void; + getOffsetHeight(index?: number): number; + showMessageItem(options: MessageProps, id: string, offsetHeight: number): WechatMiniprogram.Component.TrivialInstance; + close(id: any): void; + hide(id?: string): void; + hideAll(): void; + removeInstance(id: any): void; + removeMsg(id: any): void; + handleClose(): void; + handleLinkClick(): void; + handleDurationEnd(): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.d.ts b/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.d.ts new file mode 100644 index 0000000..1cfe3d8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.d.ts @@ -0,0 +1,28 @@ +export declare enum MessageType { + info = "info", + success = "success", + warning = "warning", + error = "error" +} +export interface MessageMarquee { + speed?: number; + loop?: number; + delay?: number; +} +export interface MessageProps { + visible?: boolean; + content: string; + align?: string; + theme?: MessageType; + icon?: boolean | string; + link?: string | object; + closeBtn?: boolean; + action?: string; + marquee?: MessageMarquee; + offset?: object; + duration?: number; + zIndex?: number; + id?: string; + gap?: string | number; + single?: boolean; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.js b/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.js new file mode 100644 index 0000000..89ec4c4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.interface.js @@ -0,0 +1 @@ +export var MessageType;!function(e){e.info="info",e.success="success",e.warning="warning",e.error="error"}(MessageType||(MessageType={})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.js b/app/miniprogram_npm/tdesign-miniprogram/message/message.js new file mode 100644 index 0000000..cb18993 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import{MessageType}from"./message.interface";import props from"./props";import{unitConvert}from"../common/utils";const SHOW_DURATION=400,{prefix:prefix}=config,name=`${prefix}-message`;let Message=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.properties=Object.assign({},props),this.data={prefix:prefix,classPrefix:name,messageList:[]},this.index=0,this.instances=[],this.gap=12,this.observers={visible(s){s?this.setMessage(this.properties,this.properties.theme):this.setData({messageList:[]})}},this.pageLifetimes={show(){this.hideAll()}},this.lifetimes={ready(){this.memoInitialData()}}}memoInitialData(){this.initialData=Object.assign(Object.assign({},this.properties),this.data)}setMessage(s,e=MessageType.info){let t=`${name}_${this.index}`;s.single&&(t=name),this.gap=unitConvert(s.gap||this.gap);const i=Object.assign(Object.assign({},s),{theme:e,id:t,gap:this.gap}),n=this.instances.findIndex((s=>s.id===t));if(n<0)this.addMessage(i);else{const s=this.instances[n],e=this.getOffsetHeight(n);s.resetData((()=>{s.setData(i,s.show.bind(s,e)),s.onHide=()=>{this.close(t)}}))}}addMessage(s){const e=[...this.data.messageList,{id:s.id}];this.setData({messageList:e},(()=>{const e=this.getOffsetHeight(),t=this.showMessageItem(s,s.id,e);this.instances&&(this.instances.push(t),this.index+=1)}))}getOffsetHeight(s=-1){let e=0,t=s;(-1===t||t>this.instances.length)&&(t=this.instances.length);for(let s=0;s{i.setData(s,i.show.bind(i,t)),i.onHide=()=>{this.close(e)}})),i;console.error("未找到组件,请确认 selector && context 是否正确")}close(s){setTimeout((()=>{this.removeMsg(s)}),400),this.removeInstance(s)}hide(s){s||this.hideAll();const e=this.instances.find((e=>e.id===s));e&&e.hide()}hideAll(){for(let s=0;se.id===s));if(e<0)return;const t=this.instances[e].data.height;this.instances.splice(e,1);for(let s=e;se.id===s));e>-1&&(this.data.messageList.splice(e,1),this.setData({messageList:this.data.messageList}))}handleClose(){this.triggerEvent("close-btn-click")}handleLinkClick(){this.triggerEvent("link-click")}handleDurationEnd(){this.triggerEvent("duration-end")}};Message=__decorate([wxComponent()],Message);export default Message; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.json b/app/miniprogram_npm/tdesign-miniprogram/message/message.json new file mode 100644 index 0000000..d44facc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-message-item":"../message-item/message-item"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.wxml b/app/miniprogram_npm/tdesign-miniprogram/message/message.wxml new file mode 100644 index 0000000..de8c248 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/message.wxss b/app/miniprogram_npm/tdesign-miniprogram/message/message.wxss new file mode 100644 index 0000000..aed803e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/message.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/props.js b/app/miniprogram_npm/tdesign-miniprogram/message/props.js new file mode 100644 index 0000000..b95c20a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/props.js @@ -0,0 +1 @@ +const props={align:{type:String,value:"left"},closeBtn:{type:null,value:!1},content:{type:String},duration:{type:Number,value:3e3},gap:{type:null,value:12},icon:{type:null,value:!0},link:{type:null},marquee:{type:null,value:!1},offset:{type:Array},single:{type:Boolean,value:!0},theme:{type:String,value:"info"},visible:{type:Boolean,value:!1},defaultVisible:{type:Boolean,value:!1},zIndex:{type:Number,value:15e3}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/message/type.js b/app/miniprogram_npm/tdesign-miniprogram/message/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/message/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/index.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/index.js new file mode 100644 index 0000000..2365cc3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/index.js @@ -0,0 +1 @@ +!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).dayjs=e()}(this,(function(){"use strict";var t=6e4,e=36e5,n="millisecond",r="second",i="minute",s="hour",u="day",a="week",o="month",c="quarter",f="year",h="date",d="Invalid Date",l=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,$=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,y={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(t){var e=["th","st","nd","rd"],n=t%100;return"["+t+(e[(n-20)%10]||e[n]||e[0])+"]"}},M=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},m={s:M,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+M(r,2,"0")+":"+M(i,2,"0")},m:function t(e,n){if(e.date()1)return t(u[0])}else{var a=e.name;g[a]=e,i=a}return!r&&i&&(v=i),i||!r&&v},w=function(t,e){if(p(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new b(n)},O=m;O.l=S,O.i=p,O.w=function(t,e){return w(t,{locale:e.$L,utc:e.$u,x:e.$x,$offset:e.$offset})};var b=function(){function y(t){this.$L=S(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[D]=!0}var M=y.prototype;return M.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(O.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(l);if(r){var i=r[2]-1||0,s=(r[7]||"0").substring(0,3);return n?new Date(Date.UTC(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)):new Date(r[1],i,r[3]||1,r[4]||0,r[5]||0,r[6]||0,s)}}return new Date(e)}(t),this.init()},M.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},M.$utils=function(){return O},M.isValid=function(){return!(this.$d.toString()===d)},M.isSame=function(t,e){var n=w(t);return this.startOf(e)<=n&&n<=this.endOf(e)},M.isAfter=function(t,e){return w(t)=2&&n%10<=4&&(n%100<10||n%100>=20)?s[1]:s[2])}var d=function(_,t){return o.test(t)?e[_.month()]:n[_.month()]};d.s=n,d.f=e;var u=function(_,t){return o.test(t)?s[_.month()]:r[_.month()]};u.s=r,u.f=s;var a={name:"ru",weekdays:"воскресенье_понедельник_вторник_среда_четверг_пятница_суббота".split("_"),weekdaysShort:"вск_пнд_втр_срд_чтв_птн_сбт".split("_"),weekdaysMin:"вс_пн_вт_ср_чт_пт_сб".split("_"),months:d,monthsShort:u,weekStart:1,yearStart:4,formats:{LT:"H:mm",LTS:"H:mm:ss",L:"DD.MM.YYYY",LL:"D MMMM YYYY г.",LLL:"D MMMM YYYY г., H:mm",LLLL:"dddd, D MMMM YYYY г., H:mm"},relativeTime:{future:"через %s",past:"%s назад",s:"несколько секунд",m:i,mm:i,h:"час",hh:i,d:"день",dd:i,M:"месяц",MM:i,y:"год",yy:i},ordinal:function(_){return _},meridiem:function(_){return _<4?"ночи":_<12?"утра":_<17?"дня":"вечера"}};return t.default.locale(a,null,!0),a})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-cn.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-cn.js new file mode 100644 index 0000000..b4a88af --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-cn.js @@ -0,0 +1 @@ +!function(e,_){"object"==typeof exports&&"undefined"!=typeof module?module.exports=_(require("dayjs")):"function"==typeof define&&define.amd?define(["dayjs"],_):(e="undefined"!=typeof globalThis?globalThis:e||self).dayjs_locale_zh_cn=_(e.dayjs)}(this,(function(e){"use strict";var _=function(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}(e),t={name:"zh-cn",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"周日_周一_周二_周三_周四_周五_周六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(e,_){return"W"===_?e+"周":e+"日"},weekStart:1,yearStart:4,formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日Ah点mm分",LLLL:"YYYY年M月D日ddddAh点mm分",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s内",past:"%s前",s:"几秒",m:"1 分钟",mm:"%d 分钟",h:"1 小时",hh:"%d 小时",d:"1 天",dd:"%d 天",M:"1 个月",MM:"%d 个月",y:"1 年",yy:"%d 年"},meridiem:function(e,_){var t=100*e+_;return t<600?"凌晨":t<900?"早上":t<1100?"上午":t<1300?"中午":t<1800?"下午":"晚上"}};return _.default.locale(t,null,!0),t})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-tw.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-tw.js new file mode 100644 index 0000000..1cb18ac --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/locale/zh-tw.js @@ -0,0 +1 @@ +!function(_,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e(require("dayjs")):"function"==typeof define&&define.amd?define(["dayjs"],e):(_="undefined"!=typeof globalThis?globalThis:_||self).dayjs_locale_zh_tw=e(_.dayjs)}(this,(function(_){"use strict";var e=function(_){return _&&"object"==typeof _&&"default"in _?_:{default:_}}(_),t={name:"zh-tw",weekdays:"星期日_星期一_星期二_星期三_星期四_星期五_星期六".split("_"),weekdaysShort:"週日_週一_週二_週三_週四_週五_週六".split("_"),weekdaysMin:"日_一_二_三_四_五_六".split("_"),months:"一月_二月_三月_四月_五月_六月_七月_八月_九月_十月_十一月_十二月".split("_"),monthsShort:"1月_2月_3月_4月_5月_6月_7月_8月_9月_10月_11月_12月".split("_"),ordinal:function(_,e){return"W"===e?_+"週":_+"日"},formats:{LT:"HH:mm",LTS:"HH:mm:ss",L:"YYYY/MM/DD",LL:"YYYY年M月D日",LLL:"YYYY年M月D日 HH:mm",LLLL:"YYYY年M月D日dddd HH:mm",l:"YYYY/M/D",ll:"YYYY年M月D日",lll:"YYYY年M月D日 HH:mm",llll:"YYYY年M月D日dddd HH:mm"},relativeTime:{future:"%s內",past:"%s前",s:"幾秒",m:"1 分鐘",mm:"%d 分鐘",h:"1 小時",hh:"%d 小時",d:"1 天",dd:"%d 天",M:"1 個月",MM:"%d 個月",y:"1 年",yy:"%d 年"},meridiem:function(_,e){var t=100*_+e;return t<600?"凌晨":t<900?"早上":t<1100?"上午":t<1300?"中午":t<1800?"下午":"晚上"}};return e.default.locale(t,null,!0),t})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/plugin/localeData.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/plugin/localeData.js new file mode 100644 index 0000000..55e01ee --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/dayjs/plugin/localeData.js @@ -0,0 +1 @@ +!function(n,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(n="undefined"!=typeof globalThis?globalThis:n||self).dayjs_plugin_localeData=e()}(this,(function(){"use strict";return function(n,e,t){var r=e.prototype,o=function(n){return n&&(n.indexOf?n:n.s)},u=function(n,e,t,r,u){var i=n.name?n:n.$locale(),a=o(i[e]),s=o(i[t]),f=a||s.map((function(n){return n.slice(0,r)}));if(!u)return f;var d=i.weekStart;return f.map((function(n,e){return f[(e+(d||0))%7]}))},i=function(){return t.Ls[t.locale()]},a=function(n,e){return n.formats[e]||function(n){return n.replace(/(\[[^\]]+])|(MMMM|MM|DD|dddd)/g,(function(n,e,t){return e||t.slice(1)}))}(n.formats[e.toUpperCase()])},s=function(){var n=this;return{months:function(e){return e?e.format("MMMM"):u(n,"months")},monthsShort:function(e){return e?e.format("MMM"):u(n,"monthsShort","months",3)},firstDayOfWeek:function(){return n.$locale().weekStart||0},weekdays:function(e){return e?e.format("dddd"):u(n,"weekdays")},weekdaysMin:function(e){return e?e.format("dd"):u(n,"weekdaysMin","weekdays",2)},weekdaysShort:function(e){return e?e.format("ddd"):u(n,"weekdaysShort","weekdays",3)},longDateFormat:function(e){return a(n.$locale(),e)},meridiem:this.$locale().meridiem,ordinal:this.$locale().ordinal}};r.localeData=function(){return s.bind(this)()},t.localeData=function(){var n=i();return{firstDayOfWeek:function(){return n.weekStart||0},weekdays:function(){return t.weekdays()},weekdaysShort:function(){return t.weekdaysShort()},weekdaysMin:function(){return t.weekdaysMin()},months:function(){return t.months()},monthsShort:function(){return t.monthsShort()},longDateFormat:function(e){return a(n,e)},meridiem:n.meridiem,ordinal:n.ordinal}},t.months=function(){return u(i(),"months")},t.monthsShort=function(){return u(i(),"monthsShort","months",3)},t.weekdays=function(n){return u(i(),"weekdays",null,null,n)},t.weekdaysShort=function(n){return u(i(),"weekdaysShort","weekdays",3,n)},t.weekdaysMin=function(n){return u(i(),"weekdaysMin","weekdays",2,n)}}})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tinycolor2/index.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tinycolor2/index.js new file mode 100644 index 0000000..6af34fc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tinycolor2/index.js @@ -0,0 +1 @@ +!function(t,r){"object"==typeof exports&&"undefined"!=typeof module?module.exports=r():"function"==typeof define&&define.amd?define(r):(t="undefined"!=typeof globalThis?globalThis:t||self).tinycolor=r()}(this,(function(){"use strict";function t(r){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},t(r)}var r=/^\s+/,e=/\s+$/;function n(a,i){if(i=i||{},(a=a||"")instanceof n)return a;if(!(this instanceof n))return new n(a,i);var o=function(n){var a={r:0,g:0,b:0},i=1,o=null,h=null,s=null,f=!1,u=!1;"string"==typeof n&&(n=function(t){t=t.replace(r,"").replace(e,"").toLowerCase();var n,a=!1;if(y[t])t=y[t],a=!0;else if("transparent"==t)return{r:0,g:0,b:0,a:0,format:"name"};if(n=T.rgb.exec(t))return{r:n[1],g:n[2],b:n[3]};if(n=T.rgba.exec(t))return{r:n[1],g:n[2],b:n[3],a:n[4]};if(n=T.hsl.exec(t))return{h:n[1],s:n[2],l:n[3]};if(n=T.hsla.exec(t))return{h:n[1],s:n[2],l:n[3],a:n[4]};if(n=T.hsv.exec(t))return{h:n[1],s:n[2],v:n[3]};if(n=T.hsva.exec(t))return{h:n[1],s:n[2],v:n[3],a:n[4]};if(n=T.hex8.exec(t))return{r:w(n[1]),g:w(n[2]),b:w(n[3]),a:F(n[4]),format:a?"name":"hex8"};if(n=T.hex6.exec(t))return{r:w(n[1]),g:w(n[2]),b:w(n[3]),format:a?"name":"hex"};if(n=T.hex4.exec(t))return{r:w(n[1]+""+n[1]),g:w(n[2]+""+n[2]),b:w(n[3]+""+n[3]),a:F(n[4]+""+n[4]),format:a?"name":"hex8"};if(n=T.hex3.exec(t))return{r:w(n[1]+""+n[1]),g:w(n[2]+""+n[2]),b:w(n[3]+""+n[3]),format:a?"name":"hex"};return!1}(n));"object"==t(n)&&(E(n.r)&&E(n.g)&&E(n.b)?(l=n.r,c=n.g,d=n.b,a={r:255*A(l,255),g:255*A(c,255),b:255*A(d,255)},f=!0,u="%"===String(n.r).substr(-1)?"prgb":"rgb"):E(n.h)&&E(n.s)&&E(n.v)?(o=H(n.s),h=H(n.v),a=function(t,r,e){t=6*A(t,360),r=A(r,100),e=A(e,100);var n=Math.floor(t),a=t-n,i=e*(1-r),o=e*(1-a*r),h=e*(1-(1-a)*r),s=n%6,f=[e,o,i,i,h,e][s],u=[h,e,e,o,i,i][s],l=[i,i,h,e,e,o][s];return{r:255*f,g:255*u,b:255*l}}(n.h,o,h),f=!0,u="hsv"):E(n.h)&&E(n.s)&&E(n.l)&&(o=H(n.s),s=H(n.l),a=function(t,r,e){var n,a,i;function o(t,r,e){return e<0&&(e+=1),e>1&&(e-=1),e<1/6?t+6*(r-t)*e:e<.5?r:e<2/3?t+(r-t)*(2/3-e)*6:t}if(t=A(t,360),r=A(r,100),e=A(e,100),0===r)n=a=i=e;else{var h=e<.5?e*(1+r):e+r-e*r,s=2*e-h;n=o(s,h,t+1/3),a=o(s,h,t),i=o(s,h,t-1/3)}return{r:255*n,g:255*a,b:255*i}}(n.h,o,s),f=!0,u="hsl"),n.hasOwnProperty("a")&&(i=n.a));var l,c,d;return i=x(i),{ok:f,format:n.format||u,r:Math.min(255,Math.max(a.r,0)),g:Math.min(255,Math.max(a.g,0)),b:Math.min(255,Math.max(a.b,0)),a:i}}(a);this._originalInput=a,this._r=o.r,this._g=o.g,this._b=o.b,this._a=o.a,this._roundA=Math.round(100*this._a)/100,this._format=i.format||o.format,this._gradientType=i.gradientType,this._r<1&&(this._r=Math.round(this._r)),this._g<1&&(this._g=Math.round(this._g)),this._b<1&&(this._b=Math.round(this._b)),this._ok=o.ok}function a(t,r,e){t=A(t,255),r=A(r,255),e=A(e,255);var n,a,i=Math.max(t,r,e),o=Math.min(t,r,e),h=(i+o)/2;if(i==o)n=a=0;else{var s=i-o;switch(a=h>.5?s/(2-i-o):s/(i+o),i){case t:n=(r-e)/s+(r>1)+720)%360;--r;)a.h=(a.h+i)%360,o.push(n(a));return o}function v(t,r){r=r||6;for(var e=n(t).toHsv(),a=e.h,i=e.s,o=e.v,h=[],s=1/r;r--;)h.push(n({h:a,s:i,v:o})),o=(o+s)%1;return h}n.prototype={isDark:function(){return this.getBrightness()<128},isLight:function(){return!this.isDark()},isValid:function(){return this._ok},getOriginalInput:function(){return this._originalInput},getFormat:function(){return this._format},getAlpha:function(){return this._a},getBrightness:function(){var t=this.toRgb();return(299*t.r+587*t.g+114*t.b)/1e3},getLuminance:function(){var t,r,e,n=this.toRgb();return t=n.r/255,r=n.g/255,e=n.b/255,.2126*(t<=.03928?t/12.92:Math.pow((t+.055)/1.055,2.4))+.7152*(r<=.03928?r/12.92:Math.pow((r+.055)/1.055,2.4))+.0722*(e<=.03928?e/12.92:Math.pow((e+.055)/1.055,2.4))},setAlpha:function(t){return this._a=x(t),this._roundA=Math.round(100*this._a)/100,this},toHsv:function(){var t=i(this._r,this._g,this._b);return{h:360*t.h,s:t.s,v:t.v,a:this._a}},toHsvString:function(){var t=i(this._r,this._g,this._b),r=Math.round(360*t.h),e=Math.round(100*t.s),n=Math.round(100*t.v);return 1==this._a?"hsv("+r+", "+e+"%, "+n+"%)":"hsva("+r+", "+e+"%, "+n+"%, "+this._roundA+")"},toHsl:function(){var t=a(this._r,this._g,this._b);return{h:360*t.h,s:t.s,l:t.l,a:this._a}},toHslString:function(){var t=a(this._r,this._g,this._b),r=Math.round(360*t.h),e=Math.round(100*t.s),n=Math.round(100*t.l);return 1==this._a?"hsl("+r+", "+e+"%, "+n+"%)":"hsla("+r+", "+e+"%, "+n+"%, "+this._roundA+")"},toHex:function(t){return o(this._r,this._g,this._b,t)},toHexString:function(t){return"#"+this.toHex(t)},toHex8:function(t){return function(t,r,e,n,a){var i=[S(Math.round(t).toString(16)),S(Math.round(r).toString(16)),S(Math.round(e).toString(16)),S(R(n))];if(a&&i[0].charAt(0)==i[0].charAt(1)&&i[1].charAt(0)==i[1].charAt(1)&&i[2].charAt(0)==i[2].charAt(1)&&i[3].charAt(0)==i[3].charAt(1))return i[0].charAt(0)+i[1].charAt(0)+i[2].charAt(0)+i[3].charAt(0);return i.join("")}(this._r,this._g,this._b,this._a,t)},toHex8String:function(t){return"#"+this.toHex8(t)},toRgb:function(){return{r:Math.round(this._r),g:Math.round(this._g),b:Math.round(this._b),a:this._a}},toRgbString:function(){return 1==this._a?"rgb("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+")":"rgba("+Math.round(this._r)+", "+Math.round(this._g)+", "+Math.round(this._b)+", "+this._roundA+")"},toPercentageRgb:function(){return{r:Math.round(100*A(this._r,255))+"%",g:Math.round(100*A(this._g,255))+"%",b:Math.round(100*A(this._b,255))+"%",a:this._a}},toPercentageRgbString:function(){return 1==this._a?"rgb("+Math.round(100*A(this._r,255))+"%, "+Math.round(100*A(this._g,255))+"%, "+Math.round(100*A(this._b,255))+"%)":"rgba("+Math.round(100*A(this._r,255))+"%, "+Math.round(100*A(this._g,255))+"%, "+Math.round(100*A(this._b,255))+"%, "+this._roundA+")"},toName:function(){return 0===this._a?"transparent":!(this._a<1)&&(M[o(this._r,this._g,this._b,!0)]||!1)},toFilter:function(t){var r="#"+h(this._r,this._g,this._b,this._a),e=r,a=this._gradientType?"GradientType = 1, ":"";if(t){var i=n(t);e="#"+h(i._r,i._g,i._b,i._a)}return"progid:DXImageTransform.Microsoft.gradient("+a+"startColorstr="+r+",endColorstr="+e+")"},toString:function(t){var r=!!t;t=t||this._format;var e=!1,n=this._a<1&&this._a>=0;return r||!n||"hex"!==t&&"hex6"!==t&&"hex3"!==t&&"hex4"!==t&&"hex8"!==t&&"name"!==t?("rgb"===t&&(e=this.toRgbString()),"prgb"===t&&(e=this.toPercentageRgbString()),"hex"!==t&&"hex6"!==t||(e=this.toHexString()),"hex3"===t&&(e=this.toHexString(!0)),"hex4"===t&&(e=this.toHex8String(!0)),"hex8"===t&&(e=this.toHex8String()),"name"===t&&(e=this.toName()),"hsl"===t&&(e=this.toHslString()),"hsv"===t&&(e=this.toHsvString()),e||this.toHexString()):"name"===t&&0===this._a?this.toName():this.toRgbString()},clone:function(){return n(this.toString())},_applyModification:function(t,r){var e=t.apply(null,[this].concat([].slice.call(r)));return this._r=e._r,this._g=e._g,this._b=e._b,this.setAlpha(e._a),this},lighten:function(){return this._applyModification(l,arguments)},brighten:function(){return this._applyModification(c,arguments)},darken:function(){return this._applyModification(d,arguments)},desaturate:function(){return this._applyModification(s,arguments)},saturate:function(){return this._applyModification(f,arguments)},greyscale:function(){return this._applyModification(u,arguments)},spin:function(){return this._applyModification(g,arguments)},_applyCombination:function(t,r){return t.apply(null,[this].concat([].slice.call(r)))},analogous:function(){return this._applyCombination(_,arguments)},complement:function(){return this._applyCombination(b,arguments)},monochromatic:function(){return this._applyCombination(v,arguments)},splitcomplement:function(){return this._applyCombination(p,arguments)},triad:function(){return this._applyCombination(m,[3])},tetrad:function(){return this._applyCombination(m,[4])}},n.fromRatio=function(r,e){if("object"==t(r)){var a={};for(var i in r)r.hasOwnProperty(i)&&(a[i]="a"===i?r[i]:H(r[i]));r=a}return n(r,e)},n.equals=function(t,r){return!(!t||!r)&&n(t).toRgbString()==n(r).toRgbString()},n.random=function(){return n.fromRatio({r:Math.random(),g:Math.random(),b:Math.random()})},n.mix=function(t,r,e){e=0===e?0:e||50;var a=n(t).toRgb(),i=n(r).toRgb(),o=e/100;return n({r:(i.r-a.r)*o+a.r,g:(i.g-a.g)*o+a.g,b:(i.b-a.b)*o+a.b,a:(i.a-a.a)*o+a.a})},n.readability=function(t,r){var e=n(t),a=n(r);return(Math.max(e.getLuminance(),a.getLuminance())+.05)/(Math.min(e.getLuminance(),a.getLuminance())+.05)},n.isReadable=function(t,r,e){var a,i,o=n.readability(t,r);switch(i=!1,(a=function(t){var r,e;r=((t=t||{level:"AA",size:"small"}).level||"AA").toUpperCase(),e=(t.size||"small").toLowerCase(),"AA"!==r&&"AAA"!==r&&(r="AA");"small"!==e&&"large"!==e&&(e="small");return{level:r,size:e}}(e)).level+a.size){case"AAsmall":case"AAAlarge":i=o>=4.5;break;case"AAlarge":i=o>=3;break;case"AAAsmall":i=o>=7}return i},n.mostReadable=function(t,r,e){var a,i,o,h,s=null,f=0;i=(e=e||{}).includeFallbackColors,o=e.level,h=e.size;for(var u=0;uf&&(f=a,s=n(r[u]));return n.isReadable(t,s,{level:o,size:h})||!i?s:(e.includeFallbackColors=!1,n.mostReadable(t,["#fff","#000"],e))};var y=n.names={aliceblue:"f0f8ff",antiquewhite:"faebd7",aqua:"0ff",aquamarine:"7fffd4",azure:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"000",blanchedalmond:"ffebcd",blue:"00f",blueviolet:"8a2be2",brown:"a52a2a",burlywood:"deb887",burntsienna:"ea7e5d",cadetblue:"5f9ea0",chartreuse:"7fff00",chocolate:"d2691e",coral:"ff7f50",cornflowerblue:"6495ed",cornsilk:"fff8dc",crimson:"dc143c",cyan:"0ff",darkblue:"00008b",darkcyan:"008b8b",darkgoldenrod:"b8860b",darkgray:"a9a9a9",darkgreen:"006400",darkgrey:"a9a9a9",darkkhaki:"bdb76b",darkmagenta:"8b008b",darkolivegreen:"556b2f",darkorange:"ff8c00",darkorchid:"9932cc",darkred:"8b0000",darksalmon:"e9967a",darkseagreen:"8fbc8f",darkslateblue:"483d8b",darkslategray:"2f4f4f",darkslategrey:"2f4f4f",darkturquoise:"00ced1",darkviolet:"9400d3",deeppink:"ff1493",deepskyblue:"00bfff",dimgray:"696969",dimgrey:"696969",dodgerblue:"1e90ff",firebrick:"b22222",floralwhite:"fffaf0",forestgreen:"228b22",fuchsia:"f0f",gainsboro:"dcdcdc",ghostwhite:"f8f8ff",gold:"ffd700",goldenrod:"daa520",gray:"808080",green:"008000",greenyellow:"adff2f",grey:"808080",honeydew:"f0fff0",hotpink:"ff69b4",indianred:"cd5c5c",indigo:"4b0082",ivory:"fffff0",khaki:"f0e68c",lavender:"e6e6fa",lavenderblush:"fff0f5",lawngreen:"7cfc00",lemonchiffon:"fffacd",lightblue:"add8e6",lightcoral:"f08080",lightcyan:"e0ffff",lightgoldenrodyellow:"fafad2",lightgray:"d3d3d3",lightgreen:"90ee90",lightgrey:"d3d3d3",lightpink:"ffb6c1",lightsalmon:"ffa07a",lightseagreen:"20b2aa",lightskyblue:"87cefa",lightslategray:"789",lightslategrey:"789",lightsteelblue:"b0c4de",lightyellow:"ffffe0",lime:"0f0",limegreen:"32cd32",linen:"faf0e6",magenta:"f0f",maroon:"800000",mediumaquamarine:"66cdaa",mediumblue:"0000cd",mediumorchid:"ba55d3",mediumpurple:"9370db",mediumseagreen:"3cb371",mediumslateblue:"7b68ee",mediumspringgreen:"00fa9a",mediumturquoise:"48d1cc",mediumvioletred:"c71585",midnightblue:"191970",mintcream:"f5fffa",mistyrose:"ffe4e1",moccasin:"ffe4b5",navajowhite:"ffdead",navy:"000080",oldlace:"fdf5e6",olive:"808000",olivedrab:"6b8e23",orange:"ffa500",orangered:"ff4500",orchid:"da70d6",palegoldenrod:"eee8aa",palegreen:"98fb98",paleturquoise:"afeeee",palevioletred:"db7093",papayawhip:"ffefd5",peachpuff:"ffdab9",peru:"cd853f",pink:"ffc0cb",plum:"dda0dd",powderblue:"b0e0e6",purple:"800080",rebeccapurple:"663399",red:"f00",rosybrown:"bc8f8f",royalblue:"4169e1",saddlebrown:"8b4513",salmon:"fa8072",sandybrown:"f4a460",seagreen:"2e8b57",seashell:"fff5ee",sienna:"a0522d",silver:"c0c0c0",skyblue:"87ceeb",slateblue:"6a5acd",slategray:"708090",slategrey:"708090",snow:"fffafa",springgreen:"00ff7f",steelblue:"4682b4",tan:"d2b48c",teal:"008080",thistle:"d8bfd8",tomato:"ff6347",turquoise:"40e0d0",violet:"ee82ee",wheat:"f5deb3",white:"fff",whitesmoke:"f5f5f5",yellow:"ff0",yellowgreen:"9acd32"},M=n.hexNames=function(t){var r={};for(var e in t)t.hasOwnProperty(e)&&(r[t[e]]=e);return r}(y);function x(t){return t=parseFloat(t),(isNaN(t)||t<0||t>1)&&(t=1),t}function A(t,r){(function(t){return"string"==typeof t&&-1!=t.indexOf(".")&&1===parseFloat(t)})(t)&&(t="100%");var e=function(t){return"string"==typeof t&&-1!=t.indexOf("%")}(t);return t=Math.min(r,Math.max(0,parseFloat(t))),e&&(t=parseInt(t*r,10)/100),Math.abs(t-r)<1e-6?1:t%r/parseFloat(r)}function k(t){return Math.min(1,Math.max(0,t))}function w(t){return parseInt(t,16)}function S(t){return 1==t.length?"0"+t:""+t}function H(t){return t<=1&&(t=100*t+"%"),t}function R(t){return Math.round(255*parseFloat(t)).toString(16)}function F(t){return w(t)/255}var C,q,N,T=(q="[\\s|\\(]+("+(C="(?:[-\\+]?\\d*\\.\\d+%?)|(?:[-\\+]?\\d+%?)")+")[,|\\s]+("+C+")[,|\\s]+("+C+")\\s*\\)?",N="[\\s|\\(]+("+C+")[,|\\s]+("+C+")[,|\\s]+("+C+")[,|\\s]+("+C+")\\s*\\)?",{CSS_UNIT:new RegExp(C),rgb:new RegExp("rgb"+q),rgba:new RegExp("rgba"+N),hsl:new RegExp("hsl"+q),hsla:new RegExp("hsla"+N),hsv:new RegExp("hsv"+q),hsva:new RegExp("hsva"+N),hex3:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex6:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,hex4:/^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,hex8:/^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/});function E(t){return!!T.CSS_UNIT.exec(t)}return n})); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tslib/index.js b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tslib/index.js new file mode 100644 index 0000000..3b890d3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/miniprogram_npm/tslib/index.js @@ -0,0 +1 @@ +var __extends,__assign,__rest,__decorate,__param,__esDecorate,__runInitializers,__propKey,__setFunctionName,__metadata,__awaiter,__generator,__exportStar,__values,__read,__spread,__spreadArrays,__spreadArray,__await,__asyncGenerator,__asyncDelegator,__asyncValues,__makeTemplateObject,__importStar,__importDefault,__classPrivateFieldGet,__classPrivateFieldSet,__classPrivateFieldIn,__createBinding,__addDisposableResource,__disposeResources,__rewriteRelativeImportExtension;!function(e){var t="object"==typeof global?global:"object"==typeof self?self:"object"==typeof this?this:{};function r(e,r){return e!==t&&("function"==typeof Object.create?Object.defineProperty(e,"__esModule",{value:!0}):e.__esModule=!0),function(t,n){return e[t]=r?r(t,n):n}}"function"==typeof define&&define.amd?define("tslib",["exports"],(function(n){e(r(t,r(n)))})):"object"==typeof module&&"object"==typeof module.exports?e(r(t,r(module.exports))):e(r(t))}((function(e){var t=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])};__extends=function(e,r){if("function"!=typeof r&&null!==r)throw new TypeError("Class extends value "+String(r)+" is not a constructor or null");function n(){this.constructor=e}t(e,r),e.prototype=null===r?Object.create(r):(n.prototype=r.prototype,new n)},__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r=0;c--)(o=e[c])&&(i=(a<3?o(i):a>3?o(t,r,i):o(t,r))||i);return a>3&&i&&Object.defineProperty(t,r,i),i},__param=function(e,t){return function(r,n){t(r,n,e)}},__esDecorate=function(e,t,r,n,o,a){function i(e){if(void 0!==e&&"function"!=typeof e)throw new TypeError("Function expected");return e}for(var c,s=n.kind,_="getter"===s?"get":"setter"===s?"set":"value",u=!t&&e?n.static?e:e.prototype:null,l=t||(u?Object.getOwnPropertyDescriptor(u,n.name):{}),f=!1,p=r.length-1;p>=0;p--){var y={};for(var d in n)y[d]="access"===d?{}:n[d];for(var d in n.access)y.access[d]=n.access[d];y.addInitializer=function(e){if(f)throw new TypeError("Cannot add initializers after decoration has completed");a.push(i(e||null))};var v=(0,r[p])("accessor"===s?{get:l.get,set:l.set}:l[_],y);if("accessor"===s){if(void 0===v)continue;if(null===v||"object"!=typeof v)throw new TypeError("Object expected");(c=i(v.get))&&(l.get=c),(c=i(v.set))&&(l.set=c),(c=i(v.init))&&o.unshift(c)}else(c=i(v))&&("field"===s?o.unshift(c):l[_]=c)}u&&Object.defineProperty(u,n.name,l),f=!0},__runInitializers=function(e,t,r){for(var n=arguments.length>2,o=0;o0&&o[o.length-1])||6!==c[0]&&2!==c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")},__read=function(e,t){var r="function"==typeof Symbol&&e[Symbol.iterator];if(!r)return e;var n,o,a=r.call(e),i=[];try{for(;(void 0===t||t-- >0)&&!(n=a.next()).done;)i.push(n.value)}catch(e){o={error:e}}finally{try{n&&!n.done&&(r=a.return)&&r.call(a)}finally{if(o)throw o.error}}return i},__spread=function(){for(var e=[],t=0;t1||c(e,t)}))},t&&(n[e]=t(n[e])))}function c(e,t){try{(r=o[e](t)).value instanceof __await?Promise.resolve(r.value.v).then(s,_):u(a[0][2],r)}catch(e){u(a[0][3],e)}var r}function s(e){c("next",e)}function _(e){c("throw",e)}function u(e,t){e(t),a.shift(),a.length&&c(a[0][0],a[0][1])}},__asyncDelegator=function(e){var t,r;return t={},n("next"),n("throw",(function(e){throw e})),n("return"),t[Symbol.iterator]=function(){return this},t;function n(n,o){t[n]=e[n]?function(t){return(r=!r)?{value:__await(e[n](t)),done:!1}:o?o(t):t}:o}},__asyncValues=function(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t,r=e[Symbol.asyncIterator];return r?r.call(e):(e="function"==typeof __values?__values(e):e[Symbol.iterator](),t={},n("next"),n("throw"),n("return"),t[Symbol.asyncIterator]=function(){return this},t);function n(r){t[r]=e[r]&&function(t){return new Promise((function(n,o){(function(e,t,r,n){Promise.resolve(n).then((function(t){e({value:t,done:r})}),t)})(n,o,(t=e[r](t)).done,t.value)}))}}},__makeTemplateObject=function(e,t){return Object.defineProperty?Object.defineProperty(e,"raw",{value:t}):e.raw=t,e};var r=Object.create?function(e,t){Object.defineProperty(e,"default",{enumerable:!0,value:t})}:function(e,t){e.default=t},n=function(e){return n=Object.getOwnPropertyNames||function(e){var t=[];for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[t.length]=r);return t},n(e)};__importStar=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var o=n(e),a=0;a string; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/page-scroll.js b/app/miniprogram_npm/tdesign-miniprogram/mixins/page-scroll.js new file mode 100644 index 0000000..bb775d1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/page-scroll.js @@ -0,0 +1 @@ +import{getCurrentPage}from"../common/utils";const onPageScroll=function(r){const e=getCurrentPage();if(!e)return;const{pageScroller:o}=e;null==o||o.forEach((e=>{"function"==typeof e&&e(r)}))};export default(r="onScroll")=>Behavior({attached(){var e;const o=getCurrentPage();if(!o)return;const l=null===(e=this[r])||void 0===e?void 0:e.bind(this);l&&(this._pageScroller=l),Array.isArray(o.pageScroller)?o.pageScroller.push(l):o.pageScroller="function"==typeof o.onPageScroll?[o.onPageScroll.bind(o),l]:[l],o.onPageScroll=onPageScroll},detached(){var r;const e=getCurrentPage();e&&(e.pageScroller=(null===(r=e.pageScroller)||void 0===r?void 0:r.filter((r=>r!==this._pageScroller)))||[])}}); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.d.ts b/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.d.ts new file mode 100644 index 0000000..4821f37 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.d.ts @@ -0,0 +1,2 @@ +declare const themeChangeBehavior: string; +export default themeChangeBehavior; diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.js b/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.js new file mode 100644 index 0000000..335997b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/theme-change.js @@ -0,0 +1 @@ +import{appBaseInfo}from"../common/utils";const themeChangeBehavior=Behavior({data:{theme:"light"},attached(){this._initTheme()},methods:{_initTheme(){const e=this;e.setData({theme:appBaseInfo.theme}),wx.onThemeChange((t=>{e.setData({theme:t.theme})}))}}});export default themeChangeBehavior; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.d.ts b/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.d.ts new file mode 100644 index 0000000..ae80eca --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.d.ts @@ -0,0 +1,2 @@ +declare const _default: string; +export default _default; diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.js b/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.js new file mode 100644 index 0000000..0eccd27 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/touch.js @@ -0,0 +1 @@ +const MinDistance=10,getDirection=(t,s)=>t>s&&t>10?"horizontal":s>t&&s>10?"vertical":"";export default Behavior({methods:{resetTouchStatus(){this.direction="",this.deltaX=0,this.deltaY=0,this.offsetX=0,this.offsetY=0},touchStart(t){this.resetTouchStatus();const[s]=t.touches;this.startX=s.clientX,this.startY=s.clientY},touchMove(t){const[s]=t.touches;this.deltaX=s.clientX-this.startX,this.deltaY=s.clientY-this.startY,this.offsetX=Math.abs(this.deltaX),this.offsetY=Math.abs(this.deltaY),this.direction=getDirection(this.offsetX,this.offsetY)}}}); \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.d.ts b/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.d.ts new file mode 100644 index 0000000..8c23e35 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.d.ts @@ -0,0 +1 @@ +export default function transition(): string; diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.js b/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.js new file mode 100644 index 0000000..173ec7b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/transition.js @@ -0,0 +1 @@ +import config from"../common/config";const{prefix:prefix}=config;export default function transition(){return Behavior({properties:{visible:{type:Boolean,value:null,observer:"watchVisible"},appear:Boolean,name:{type:String,value:"fade"},durations:{type:Number,optionalTypes:[Array]}},data:{transitionClass:"",transitionDurations:300,className:"",realVisible:!1},created(){this.status="",this.transitionT=0},attached(){this.durations=this.getDurations(),this.data.visible&&this.enter(),this.inited=!0},detached(){clearTimeout(this.transitionT)},methods:{watchVisible(t,i){this.inited&&t!==i&&(t?this.enter():this.leave())},getDurations(){const{durations:t}=this.data;return Array.isArray(t)?t.map((t=>Number(t))):[Number(t),Number(t)]},enter(){const{name:t}=this.data,[i]=this.durations;this.status="entering",this.setData({realVisible:!0,transitionClass:`${prefix}-${t}-enter ${prefix}-${t}-enter-active`}),setTimeout((()=>{this.setData({transitionClass:`${prefix}-${t}-enter-active ${prefix}-${t}-enter-to`})}),30),"number"==typeof i&&i>0&&(this.transitionT=setTimeout(this.entered.bind(this),i+30))},entered(){this.customDuration=!1,clearTimeout(this.transitionT),this.status="entered",this.setData({transitionClass:""})},leave(){const{name:t}=this.data,[,i]=this.durations;this.status="leaving",this.setData({transitionClass:`${prefix}-${t}-leave ${prefix}-${t}-leave-active`}),clearTimeout(this.transitionT),setTimeout((()=>{this.setData({transitionClass:`${prefix}-${t}-leave-active ${prefix}-${t}-leave-to`})}),30),"number"==typeof i&&i>0&&(this.customDuration=!0,this.transitionT=setTimeout(this.leaved.bind(this),i+30))},leaved(){this.customDuration=!1,this.triggerEvent("leaved"),clearTimeout(this.transitionT),this.status="leaved",this.setData({transitionClass:""})},onTransitionEnd(){this.customDuration||(clearTimeout(this.transitionT),"entering"===this.status&&this.data.visible?this.entered():"leaving"!==this.status||this.data.visible||(this.leaved(),this.setData({realVisible:!1})))}}})} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.d.ts new file mode 100644 index 0000000..908f771 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.d.ts @@ -0,0 +1,2 @@ +declare const useCustomNavbarBehavior: string; +export default useCustomNavbarBehavior; diff --git a/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.js b/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.js new file mode 100644 index 0000000..d455c92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/mixins/using-custom-navbar.js @@ -0,0 +1 @@ +import{systemInfo}from"../common/utils";const useCustomNavbarBehavior=Behavior({properties:{usingCustomNavbar:{type:Boolean,value:!1},customNavbarHeight:{type:Number,value:0}},data:{distanceTop:0},lifetimes:{attached(){this.properties.usingCustomNavbar&&this.calculateCustomNavbarDistanceTop()}},methods:{calculateCustomNavbarDistanceTop(){const{statusBarHeight:t}=systemInfo,a=wx.getMenuButtonBoundingClientRect(),e=a.top+a.bottom-t;this.setData({distanceTop:Math.max(e,this.properties.customNavbarHeight+t)})}}});export default useCustomNavbarBehavior; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.d.ts new file mode 100644 index 0000000..a53dce9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.d.ts @@ -0,0 +1,36 @@ +import { SuperComponent } from '../common/src/index'; +export default class Navbar extends SuperComponent { + externalClasses: string[]; + timer: any; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdNavbarProps; + observers: { + visible(this: Navbar, visible: any): void; + 'title,titleMaxLength'(this: any): void; + }; + data: { + prefix: string; + classPrefix: string; + boxStyle: string; + showTitle: string; + hideLeft: boolean; + hideCenter: boolean; + _menuRect: any; + _leftRect: any; + _boxStyle: {}; + }; + attached(): void; + detached(): void; + methods: { + initStyle(): void; + calcCenterStyle(leftRect: WechatMiniprogram.BoundingClientRectResult, menuRect: WechatMiniprogram.BoundingClientRectResult, defaultStyle: object): void; + getLeftRect(): void; + getMenuRect(): void; + onMenuButtonBoundingClientRectWeightChange(): void; + offMenuButtonBoundingClientRectWeightChange(): void; + queryElements(capsuleRect: any): void; + goBack(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.js b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.js new file mode 100644 index 0000000..1814064 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import{getRect,systemInfo}from"../common/utils";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-navbar`;let Navbar=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-placeholder`,`${prefix}-class-content`,`${prefix}-class-title`,`${prefix}-class-left`,`${prefix}-class-center`,`${prefix}-class-left-icon`,`${prefix}-class-home-icon`,`${prefix}-class-capsule`,`${prefix}-class-nav-btn`],this.timer=null,this.options={multipleSlots:!0},this.properties=props,this.observers={visible(t){const{animation:e}=this.properties,i=`${name}${t?"--visible":"--hide"}`;this.setData({visibleClass:`${i}${e?"-animation":""}`}),this.timer&&clearTimeout(this.timer),e&&(this.timer=setTimeout((()=>{this.setData({visibleClass:i})}),300))},"title,titleMaxLength"(){const{title:t}=this.properties,e=this.properties.titleMaxLength||Number.MAX_SAFE_INTEGER;let i=t.slice(0,e);e`${t}: ${e}`)).join("; ");this.setData({boxStyle:a,_boxStyle:s})},getLeftRect(){getRect(this,`.${name}__left`).then((t=>{t.right>this.data._leftRect.right&&this.calcCenterStyle(t,this.data._menuRect,this.data._boxStyle)}))},getMenuRect(){if(wx.getMenuButtonBoundingClientRect){const t=wx.getMenuButtonBoundingClientRect();this.setData({_menuRect:t,_leftRect:{right:systemInfo.windowWidth-t.left}})}},onMenuButtonBoundingClientRectWeightChange(){wx.onMenuButtonBoundingClientRectWeightChange&&wx.onMenuButtonBoundingClientRectWeightChange((t=>this.queryElements(t)))},offMenuButtonBoundingClientRectWeightChange(){wx.offMenuButtonBoundingClientRectWeightChange&&wx.offMenuButtonBoundingClientRectWeightChange((t=>this.queryElements(t)))},queryElements(t){Promise.all([getRect(this,`.${this.data.classPrefix}__left`),getRect(this,`.${this.data.classPrefix}__center`)]).then((([e,i])=>{Math.round(e.right)>t.left?this.setData({hideLeft:!0,hideCenter:!0}):Math.round(i.right)>t.left?this.setData({hideLeft:!1,hideCenter:!0}):this.setData({hideLeft:!1,hideCenter:!1})}))},goBack(){const{delta:t}=this.data,e=this;this.triggerEvent("go-back"),t>0&&wx.navigateBack({delta:t,fail(t){e.triggerEvent("fail",t)},complete(t){e.triggerEvent("complete",t)},success(t){e.triggerEvent("success",t)}})}}}attached(){this.initStyle(),this.getLeftRect(),this.onMenuButtonBoundingClientRectWeightChange()}detached(){this.offMenuButtonBoundingClientRectWeightChange()}};Navbar=__decorate([wxComponent()],Navbar);export default Navbar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.json b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxml b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxml new file mode 100644 index 0000000..ddb1cb1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxml @@ -0,0 +1 @@ +{{showTitle}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxss b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxss new file mode 100644 index 0000000..1fcd8f1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/navbar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-navbar--fixed .t-navbar__content{position:fixed;top:0;left:0;z-index:5001}.t-navbar--visible{display:''}.t-navbar--visible-animation{opacity:1;transition:opacity .3s cubic-bezier(.645,.045,.355,1)}.t-navbar--hide-animation{opacity:0;transition:opacity .3s cubic-bezier(.645,.045,.355,1)}.t-navbar--hide{display:none}.t-navbar__placeholder{height:var(--td-navbar-height,48px);padding-top:var(--td-navbar-padding-top,20px);position:relative;visibility:hidden;box-sizing:content-box}.t-navbar__content{position:relative;z-index:1;height:var(--td-navbar-height,48px);width:calc(100% - var(--td-navbar-right,95px));padding-right:var(--td-navbar-right,95px);padding-top:var(--td-navbar-padding-top,20px);color:var(--td-navbar-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));background-color:var(--td-navbar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));display:flex;align-items:center;box-sizing:content-box}.t-navbar__left{position:relative;box-sizing:border-box;max-width:var(--td-navbar-left-max-width);overflow:hidden;display:flex;align-items:center;margin-left:var(--td-spacer-1,24rpx);transition:opacity .3s cubic-bezier(.645,.045,.355,1)}.t-navbar__left-arrow{font-size:var(--td-navbar-left-arrow-size,24px)}.t-navbar__left--hide{opacity:0}.t-navbar__capsule{box-sizing:border-box;width:var(--td-navbar-capsule-width,88px);height:var(--td-navbar-capsule-height,32px);display:flex;align-items:center}.t-navbar__capsule::before{content:'';position:absolute;z-index:-1;top:0;left:0;width:200%;height:200%;transform:scale(.5);transform-origin:0 0;box-sizing:border-box;border-radius:calc(var(--td-navbar-capsule-border-radius,16px) * 2);border:2rpx solid var(--td-navbar-capsule-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)))}.t-navbar__capsule:empty{display:none}.t-navbar__center{font-size:18px;text-align:center;position:absolute;bottom:0;left:var(--td-navbar-center-left,var(--td-navbar-right,95px));width:var(--td-navbar-center-width);height:var(--td-navbar-height,48px);line-height:var(--td-navbar-height,48px);flex:1;display:flex;align-items:center;justify-content:center;overflow:hidden;transition:opacity .3s cubic-bezier(.645,.045,.355,1)}.t-navbar__center:empty{display:none}.t-navbar__center-title{font-size:var(--td-navbar-title-font-size,18px);text-overflow:ellipsis;white-space:nowrap;overflow:hidden;font-weight:var(--td-navbar-title-font-weight,600)}.t-navbar__center--hide{opacity:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/props.js b/app/miniprogram_npm/tdesign-miniprogram/navbar/props.js new file mode 100644 index 0000000..34779c2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/props.js @@ -0,0 +1 @@ +const props={animation:{type:Boolean,value:!0},delta:{type:Number,value:1},fixed:{type:Boolean,value:!0},leftArrow:{type:Boolean,value:!1},title:{type:String},titleMaxLength:{type:Number},visible:{type:Boolean,value:!0}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/navbar/type.js b/app/miniprogram_npm/tdesign-miniprogram/navbar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/navbar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.d.ts new file mode 100644 index 0000000..783c09b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.d.ts @@ -0,0 +1,36 @@ +import { SuperComponent, ComponentsOptionsType } from '../common/src/index'; +export default class NoticeBar extends SuperComponent { + externalClasses: string[]; + options: ComponentsOptionsType; + properties: import("./type").TdNoticeBarProps; + data: { + prefix: string; + classPrefix: string; + loop: number; + __ready: boolean; + }; + observers: { + marquee(val: any): void; + visible(visible: any): void; + prefixIcon(prefixIcon: any): void; + suffixIcon(v: any): void; + content(): void; + }; + lifetimes: { + created(): void; + detached(): void; + ready(): void; + }; + methods: { + initAnimation(): void; + startScrollAnimation(isFirstScroll?: boolean): void; + show(): void; + clearNoticeBarAnimation(): void; + setPrefixIcon(v: any): void; + onChange(e: WechatMiniprogram.SwiperChange): void; + clickPrefixIcon(): void; + clickContent(): void; + clickSuffixIcon(): void; + clickOperation(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.js b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.js new file mode 100644 index 0000000..c77be96 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import{getRect,getAnimationFrame,calcIcon}from"../common/utils";import props from"./props";import config from"../common/config";const{prefix:prefix}=config,name=`${prefix}-notice-bar`,THEME_ICON={info:"info-circle-filled",success:"check-circle-filled",warning:"info-circle-filled",error:"error-circle-filled"};let NoticeBar=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-prefix-icon`,`${prefix}-class-operation`,`${prefix}-class-suffix-icon`],this.options={multipleSlots:!0,pureDataPattern:/^__/},this.properties=props,this.data={prefix:prefix,classPrefix:name,loop:-1,__ready:!1},this.observers={marquee(t){"{}"!==JSON.stringify(t)&&"true"!==JSON.stringify(t)||this.setData({marquee:{speed:50,loop:-1,delay:0}})},visible(t){this.data.__ready&&(t?this.show():this.clearNoticeBarAnimation())},prefixIcon(t){this.setPrefixIcon(t)},suffixIcon(t){this.setData({_suffixIcon:calcIcon(t)})},content(){this.data.__ready&&(this.clearNoticeBarAnimation(),this.initAnimation())}},this.lifetimes={created(){this.resetAnimation=wx.createAnimation({duration:0,timingFunction:"linear"})},detached(){this.clearNoticeBarAnimation()},ready(){this.show(),this.setData({__ready:!0})}},this.methods={initAnimation(){const t=`.${name}__content-wrap`,i=`.${name}__content`;getAnimationFrame(this,(()=>{Promise.all([getRect(this,i),getRect(this,t)]).then((([t,i])=>{const{marquee:e}=this.properties;if(null!=t&&null!=i&&t.width&&i.width&&!1!==e&&(e||i.width{}))}))},startScrollAnimation(t=!1){this.clearNoticeBarAnimation();const{wrapWidth:i,nodeWidth:e,firstAnimationDuration:n,animationDuration:o,delay:a}=this.data,r=t?a:0,s=t?n:o;this.setData({animationData:this.resetAnimation.translateX(t?0:i).step().export()}),getAnimationFrame(this,(()=>{this.setData({animationData:wx.createAnimation({duration:s,timingFunction:"linear",delay:r}).translateX(-e).step().export()})})),this.nextAnimationContext=setTimeout((()=>{this.data.loop>0?(this.data.loop-=1,this.startScrollAnimation()):0===this.data.loop?this.setData({animationData:this.resetAnimation.translateX(0).step().export()}):this.data.loop<0&&this.startScrollAnimation()}),s+r)},show(){this.clearNoticeBarAnimation(),this.setPrefixIcon(this.properties.prefixIcon),this.initAnimation()},clearNoticeBarAnimation(){this.nextAnimationContext&&clearTimeout(this.nextAnimationContext),this.nextAnimationContext=null},setPrefixIcon(t){const{theme:i}=this.properties;this.setData({_prefixIcon:calcIcon(t,THEME_ICON[i])})},onChange(t){const{current:i,source:e}=t.detail;this.triggerEvent("change",{current:i,source:e})},clickPrefixIcon(){this.triggerEvent("click",{trigger:"prefix-icon"})},clickContent(){this.triggerEvent("click",{trigger:"content"})},clickSuffixIcon(){this.triggerEvent("click",{trigger:"suffix-icon"})},clickOperation(){this.triggerEvent("click",{trigger:"operation"})}}}};NoticeBar=__decorate([wxComponent()],NoticeBar);export default NoticeBar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.json b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxml b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxml new file mode 100644 index 0000000..63ec32d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxml @@ -0,0 +1 @@ +{{item}}{{content}}{{operation}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxss b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxss new file mode 100644 index 0000000..190fccc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/notice-bar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-notice-bar{display:flex;align-items:flex-start;padding:26rpx 32rpx;font-size:var(--td-font-size-base,28rpx)}.t-notice-bar__content-wrap{flex:1;overflow-x:hidden;line-height:44rpx;color:var(--td-notice-bar-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-notice-bar__content{display:inline-block;white-space:nowrap}.t-notice-bar__content-wrapable{white-space:normal}.t-notice-bar__content--vertical{display:block;height:44rpx;line-height:44rpx}.t-notice-bar__content--vertical-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.t-notice-bar__prefix-icon{color:inherit}.t-notice-bar__prefix-icon:not(:empty){padding-right:var(--td-spacer,16rpx);width:44rpx}.t-notice-bar__suffix-icon{color:var(--td-notice-bar-suffix-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-notice-bar__prefix-icon,.t-notice-bar__suffix-icon{font-size:44rpx}.t-notice-bar__prefix-icon:empty,.t-notice-bar__suffix-icon:empty{display:none}.t-notice-bar__operation{display:inline-flex;vertical-align:top;color:var(--td-notice-bar-operation-font-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-weight:700}.t-notice-bar__operation:empty{display:none}.t-notice-bar__suffix-icon:not(:empty){padding-left:var(--td-spacer,16rpx);width:44rpx}.t-notice-bar--info{color:var(--td-notice-bar-info-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-notice-bar-info-bg-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-notice-bar--success{color:var(--td-notice-bar-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-notice-bar-success-bg-color,var(--td-success-color-1,#e3f9e9))}.t-notice-bar--warning{color:var(--td-notice-bar-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-notice-bar-warning-bg-color,var(--td-warning-color-1,#fff1e9))}.t-notice-bar--error{color:var(--td-notice-bar-error-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-notice-bar-error-bg-color,var(--td-error-color-1,#fff0ed))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/props.js b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/props.js new file mode 100644 index 0000000..fed5df5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/props.js @@ -0,0 +1 @@ +const props={content:{type:null},direction:{type:String,value:"horizontal"},interval:{type:Number,value:2e3},marquee:{type:null,value:!1},operation:{type:String},prefixIcon:{type:null,value:!0},suffixIcon:{type:null},theme:{type:String,value:"info"},visible:{type:Boolean,value:null},defaultVisible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/notice-bar/type.js b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/notice-bar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/overlay/index.d.ts new file mode 100644 index 0000000..164efb7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './overlay'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/index.js b/app/miniprogram_npm/tdesign-miniprogram/overlay/index.js new file mode 100644 index 0000000..fdfba01 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./overlay"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.d.ts b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.d.ts new file mode 100644 index 0000000..98ff36d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.d.ts @@ -0,0 +1,22 @@ +import { SuperComponent } from '../common/src/index'; +import { TdOverlayProps } from './type'; +export interface OverlayProps extends TdOverlayProps { +} +export default class Overlay extends SuperComponent { + properties: TdOverlayProps; + behaviors: string[]; + data: { + prefix: string; + classPrefix: string; + computedStyle: string; + _zIndex: number; + }; + observers: { + backgroundColor(v: any): void; + zIndex(v: any): void; + }; + methods: { + handleClick(): void; + noop(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.js b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.js new file mode 100644 index 0000000..98718b1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import transition from"../mixins/transition";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-overlay`;let Overlay=class extends SuperComponent{constructor(){super(...arguments),this.properties=props,this.behaviors=[transition(),useCustomNavbar],this.data={prefix:prefix,classPrefix:name,computedStyle:"",_zIndex:11e3},this.observers={backgroundColor(o){this.setData({computedStyle:o?`background-color: ${o};`:""})},zIndex(o){0!==o&&this.setData({_zIndex:o})}},this.methods={handleClick(){this.triggerEvent("click",{visible:!this.properties.visible})},noop(){}}}};Overlay=__decorate([wxComponent()],Overlay);export default Overlay; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.json b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxml b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxml new file mode 100644 index 0000000..5543e5b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxss b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxss new file mode 100644 index 0000000..2294ce6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/overlay.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-overlay{position:fixed;top:0;left:0;width:100%;bottom:0;background-color:var(--td-overlay-bg-color,var(--td-font-gray-2,rgba(0,0,0,.6)));transition-property:opacity;transition-duration:var(--td-overlay-transition-duration,300ms);transition-timing-function:ease}.t-fade-enter{opacity:0}.t-fade-leave-to{opacity:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/props.js b/app/miniprogram_npm/tdesign-miniprogram/overlay/props.js new file mode 100644 index 0000000..d0ffe55 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/props.js @@ -0,0 +1 @@ +const props={backgroundColor:{type:String,value:""},duration:{type:Number,value:300},preventScrollThrough:{type:Boolean,value:!0},zIndex:{type:Number,value:11e3}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/overlay/type.js b/app/miniprogram_npm/tdesign-miniprogram/overlay/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/overlay/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.d.ts new file mode 100644 index 0000000..29c54f9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.d.ts @@ -0,0 +1,36 @@ +import { SuperComponent, RelationsOptions, ComponentsOptionsType } from '../common/src/index'; +import { PickerItemOption } from './type'; +export default class PickerItem extends SuperComponent { + relations: RelationsOptions; + options: ComponentsOptionsType; + externalClasses: string[]; + properties: import("./type").TdPickerItemProps; + observers: { + 'options, pickerKeys'(): void; + }; + data: { + prefix: string; + classPrefix: string; + offset: number; + duration: number; + value: string; + curIndex: number; + columnIndex: number; + pickerKeys: { + value: string; + label: string; + }; + formatOptions: PickerItemOption[]; + }; + lifetimes: { + created(): void; + }; + methods: { + onTouchStart(event: any): void; + onTouchMove(event: any): void; + onTouchEnd(event: any): void; + formatOption(options: PickerItemOption[], columnIndex: number, format: any): any[]; + update(): void; + getCount(): any; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.js b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.js new file mode 100644 index 0000000..05d7b6c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-picker-item`,ANIMATION_DURATION=1e3,INERTIA_TIME=300,INERTIA_DISTANCE=15,range=function(t,e,i){return Math.min(Math.max(t,e),i)},momentum=(t,e)=>{let i=t;return i=Math.abs(i/e)/.005*(i<0?-1:1),i};let PickerItem=class extends SuperComponent{constructor(){super(...arguments),this.relations={"../picker/picker":{type:"parent",linked(t){if("keys"in t.data){const{keys:e}=t.data;if(null===e||JSON.stringify(this.data.pickerKeys)===JSON.stringify(e))return;this.setData({pickerKeys:e})}}}},this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`],this.properties=props,this.observers={"options, pickerKeys"(){this.update()}},this.data={prefix:prefix,classPrefix:name,offset:0,duration:0,value:"",curIndex:0,columnIndex:0,pickerKeys:{value:"value",label:"label"},formatOptions:props.options.value},this.lifetimes={created(){this.StartY=0,this.StartOffset=0,this.startTime=0}},this.methods={onTouchStart(t){this.StartY=t.touches[0].clientY,this.StartOffset=this.data.offset,this.startTime=Date.now(),this.setData({duration:0})},onTouchMove(t){const{StartY:e,StartOffset:i}=this,{pickItemHeight:s}=this.data,o=t.touches[0].clientY-e,n=range(i+o,-this.getCount()*s,0);this.setData({offset:n})},onTouchEnd(t){const{offset:e,pickerKeys:i,columnIndex:s,pickItemHeight:o,formatOptions:n}=this.data,{startTime:a}=this;if(e===this.StartOffset)return;let r=0;const l=t.changedTouches[0].clientY-this.StartY,d=Date.now()-a;d<300&&Math.abs(l)>15&&(r=momentum(l,d));const c=range(e+r,-this.getCount()*o,0),u=range(Math.round(-c/o),0,this.getCount()-1);this.setData({offset:-u*o,duration:1e3,curIndex:u}),u!==this._selectedIndex&&(this._selectedIndex=u,wx.nextTick((()=>{var t,e,o;this._selectedIndex=u,this._selectedValue=null===(t=n[u])||void 0===t?void 0:t[null==i?void 0:i.value],this._selectedLabel=null===(e=n[u])||void 0===e?void 0:e[null==i?void 0:i.label],null===(o=this.$parent)||void 0===o||o.triggerColumnChange({index:u,column:s})})))},formatOption:(t,e,i)=>"function"!=typeof i?t:t.map((t=>i(t,e))),update(){var t,e,i,s;const{options:o,value:n,pickerKeys:a,pickItemHeight:r,format:l,columnIndex:d}=this.data,c=this.formatOption(o,d,l),u=c.findIndex((t=>t[null==a?void 0:a.value]===n)),h=u>0?u:0;this._selectedIndex=h,this._selectedValue=null===(t=c[h])||void 0===t?void 0:t[null==a?void 0:a.value],this._selectedLabel=null===(e=c[h])||void 0===e?void 0:e[null==a?void 0:a.label],this.setData({formatOptions:c,offset:-h*r,curIndex:h}),this._selectedIndex=h,this._selectedValue=null===(i=o[h])||void 0===i?void 0:i[null==a?void 0:a.value],this._selectedLabel=null===(s=o[h])||void 0===s?void 0:s[null==a?void 0:a.label]},getCount(){var t,e;return null===(e=null===(t=this.data)||void 0===t?void 0:t.options)||void 0===e?void 0:e.length}}}};PickerItem=__decorate([wxComponent()],PickerItem);export default PickerItem; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.json b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxml new file mode 100644 index 0000000..e66f3b1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxml @@ -0,0 +1 @@ +{{option[pickerKeys.label]}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxss new file mode 100644 index 0000000..318e8d0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/picker-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';:host{display:flex}.t-picker-item__group{height:var(--td-picker-group-height,400rpx);overflow:hidden;flex:1;z-index:1}.t-picker-item__wrapper{padding:144rpx 0}.t-picker-item__item{display:flex;justify-content:center;align-items:center;color:var(--td-picker-item-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));font-size:var(--td-picker-item-font-size,var(--td-font-size-m,32rpx))}.t-picker-item__item-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.t-picker-item__item--active{color:var(--td-picker-item-active-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-weight:600} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/picker-item/props.js new file mode 100644 index 0000000..ab01464 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/props.js @@ -0,0 +1 @@ +const props={format:{type:null},options:{type:Array,value:[]}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/picker-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/picker.d.ts b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.d.ts new file mode 100644 index 0000000..c07d9b6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.d.ts @@ -0,0 +1,37 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Picker extends SuperComponent { + behaviors: string[]; + properties: import("./type").TdPickerProps; + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + relations: RelationsOptions; + observers: { + 'value, visible'(): void; + }; + lifetimes: { + attached(): void; + }; + data: { + prefix: string; + classPrefix: string; + defaultPopUpProps: {}; + defaultPopUpzIndex: number; + pickItemHeight: number; + }; + methods: { + updateChildren(): void; + getSelectedValue(): any[]; + getColumnIndexes(): any; + onConfirm(): void; + triggerColumnChange({ column, index }: { + column: any; + index: any; + }): void; + onCancel(): void; + onPopupChange(e: any): void; + close(trigger: any): void; + }; + ready(): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/picker.js b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.js new file mode 100644 index 0000000..d2c1927 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import{rpx2px}from"../common/utils";import config from"../common/config";import props from"./props";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-picker`;let Picker=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=[useCustomNavbar],this.properties=props,this.externalClasses=[`${prefix}-class`,`${prefix}-class-confirm`,`${prefix}-class-cancel`,`${prefix}-class-title`],this.options={multipleSlots:!0},this.relations={"../picker-item/picker-item":{type:"child",linked(){this.updateChildren()}}},this.observers={"value, visible"(){this.updateChildren()}},this.lifetimes={attached(){this.setData({pickItemHeight:rpx2px(this.properties.itemHeight)})}},this.data={prefix:prefix,classPrefix:name,defaultPopUpProps:{},defaultPopUpzIndex:11500,pickItemHeight:0},this.methods={updateChildren(){const{pickItemHeight:e}=this.data,{value:t,defaultValue:i}=this.properties;this.$children.forEach(((s,r)=>{var l,o;s.setData({value:null!==(o=null!==(l=null==t?void 0:t[r])&&void 0!==l?l:null==i?void 0:i[r])&&void 0!==o?o:"",columnIndex:r,pickItemHeight:e}),s.update()}))},getSelectedValue(){return[this.$children.map((e=>e._selectedValue)),this.$children.map((e=>e._selectedLabel))]},getColumnIndexes(){return this.$children.map(((e,t)=>({column:t,index:e._selectedIndex})))},onConfirm(){const[e,t]=this.getSelectedValue(),i=this.getColumnIndexes();this.close("confirm-btn"),this.triggerEvent("change",{value:e,label:t,columns:i}),this.triggerEvent("confirm",{value:e,label:t,columns:i})},triggerColumnChange({column:e,index:t}){const[i,s]=this.getSelectedValue();this.triggerEvent("pick",{value:i,label:s,column:e,index:t})},onCancel(){this.close("cancel-btn"),this.triggerEvent("cancel")},onPopupChange(e){const{visible:t}=e.detail;this.close("overlay"),this.triggerEvent("visible-change",{visible:t})},close(e){this.data.autoClose&&this.setData({visible:!1}),this.triggerEvent("close",{trigger:e})}}}ready(){this.$children.map(((e,t)=>e.columnIndex=t))}};Picker=__decorate([wxComponent()],Picker);export default Picker; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/picker.json b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.json new file mode 100644 index 0000000..f34a4c1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-popup":"../popup/popup"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxml b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxml new file mode 100644 index 0000000..a03e416 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxss b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxss new file mode 100644 index 0000000..35c260f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/picker.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-picker{position:relative;background-color:var(--td-picker-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));border-top-left-radius:var(--td-picker-border-radius,24rpx);border-top-right-radius:var(--td-picker-border-radius,24rpx)}.t-picker__toolbar{display:flex;align-items:center;justify-content:space-between;overflow:hidden;height:var(--td-picker-toolbar-height,116rpx)}.t-picker__title{flex:1;text-align:center;overflow:hidden;white-space:nowrap;text-overflow:ellipsis;color:var(--td-picker-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));line-height:var(--td-picker-title-line-height,52rpx);font-weight:var(--td-picker-title-font-weight,600);font-size:var(--td-picker-title-font-size,36rpx)}.t-picker__cancel,.t-picker__confirm{display:flex;align-items:center;justify-content:center;user-select:none;font-size:var(--td-picker-button-font-size,32rpx);height:100%;padding:0 32rpx}.t-picker__cancel{color:var(--td-picker-cancel-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))))}.t-picker__confirm{color:var(--td-picker-confirm-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-picker__main{position:relative;display:flex;justify-content:center;padding-left:64rpx;padding-right:64rpx}.t-picker__mask{position:absolute;left:0;right:0;z-index:3;backface-visibility:hidden;pointer-events:none;height:96rpx}.t-picker__mask--top{top:0;background:linear-gradient(180deg,var(--td-picker-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff))) 0,var(--td-picker-transparent-color) 100%)}.t-picker__mask--bottom{bottom:0;background:linear-gradient(180deg,var(--td-picker-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff))) 0,var(--td-picker-transparent-color) 100%);transform:matrix(1,0,0,-1,0,0)}.t-picker__indicator{position:absolute;left:32rpx;right:32rpx;top:144rpx;pointer-events:none;background-color:var(--td-picker-indicator-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));border-radius:var(--td-picker-indicator-border-radius,12rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/props.js b/app/miniprogram_npm/tdesign-miniprogram/picker/props.js new file mode 100644 index 0000000..ec78d87 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/props.js @@ -0,0 +1 @@ +const props={autoClose:{type:Boolean,value:!0},cancelBtn:{type:null,value:!0},confirmBtn:{type:null,value:!0},header:{type:Boolean,value:!0},itemHeight:{type:Number,value:80},keys:{type:Object},popupProps:{type:Object,value:{}},title:{type:String,value:""},usePopup:{type:Boolean,value:!0},usingCustomNavbar:{type:Boolean,value:!1},value:{type:Array,value:null},defaultValue:{type:Array},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/template.wxml b/app/miniprogram_npm/tdesign-miniprogram/picker/template.wxml new file mode 100644 index 0000000..316651f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/template.wxml @@ -0,0 +1 @@ +{{cancelBtn}}{{title}}{{confirmBtn}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/picker/type.js b/app/miniprogram_npm/tdesign-miniprogram/picker/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/picker/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/popup/index.d.ts new file mode 100644 index 0000000..03c4cf3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './popup'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/index.js b/app/miniprogram_npm/tdesign-miniprogram/popup/index.js new file mode 100644 index 0000000..64b982f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./popup"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.d.ts b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.d.ts new file mode 100644 index 0000000..23dae8c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.d.ts @@ -0,0 +1,19 @@ +import { TdPopupProps } from './type'; +import { SuperComponent } from '../common/src/index'; +export declare type PopupProps = TdPopupProps; +export default class Popup extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + options: { + multipleSlots: boolean; + }; + properties: TdPopupProps; + data: { + prefix: string; + classPrefix: string; + }; + methods: { + handleOverlayClick(): void; + handleClose(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.js b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.js new file mode 100644 index 0000000..7cde77f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import transition from"../mixins/transition";import useCustomNavbar from"../mixins/using-custom-navbar";delete props.visible;const{prefix:prefix}=config,name=`${prefix}-popup`;let Popup=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`],this.behaviors=[transition(),useCustomNavbar],this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name},this.methods={handleOverlayClick(){const{closeOnOverlayClick:e}=this.properties;e&&this.triggerEvent("visible-change",{visible:!1,trigger:"overlay"})},handleClose(){this.triggerEvent("visible-change",{visible:!1,trigger:"close-btn"})}}}};Popup=__decorate([wxComponent()],Popup);export default Popup; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.json b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.json new file mode 100644 index 0000000..7782d34 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-overlay":"../overlay/overlay","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxml b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxml new file mode 100644 index 0000000..97fc8d2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxs b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxs new file mode 100644 index 0000000..2f4a01f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxs @@ -0,0 +1,18 @@ +function getPopupStyles(zIndex, distanceTop, placement) { + var zIndexStyle = zIndex ? 'z-index:' + zIndex + ';' : ''; + if ((placement === 'top' || placement === 'left' || placement === 'right') && distanceTop) { + zIndexStyle = zIndexStyle + 'top:' + distanceTop + 'px;' + '--td-popup-distance-top:' + distanceTop + 'px;'; + } + return zIndexStyle; +} + +function onContentTouchMove(e) { + if (e.target && e.target.dataset.prevention) { + return false; + } +} + +module.exports = { + getPopupStyles: getPopupStyles, + onContentTouchMove: onContentTouchMove, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxss b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxss new file mode 100644 index 0000000..03d77c8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/popup.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-popup{position:fixed;z-index:11500;max-height:calc(100vh - var(--td-popup-distance-top,0));transition:all .3s ease;background-color:var(--td-popup-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-popup__content{position:relative;height:100%;z-index:1}.t-popup__close{position:absolute;top:0;right:0;padding:20rpx;line-height:1;color:var(--td-popup-close-btn-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-popup--top{top:0;left:0;width:100%;border-bottom-left-radius:var(--td-popup-border-radius,var(--td-radius-extra-large,24rpx));border-bottom-right-radius:var(--td-popup-border-radius,var(--td-radius-extra-large,24rpx))}.t-popup--bottom{bottom:0;left:0;width:100%;border-top-left-radius:var(--td-popup-border-radius,var(--td-radius-extra-large,24rpx));border-top-right-radius:var(--td-popup-border-radius,var(--td-radius-extra-large,24rpx));padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.t-popup--left{top:0;left:0;height:100%}.t-popup--right{top:0;right:0;height:100%}.t-popup--center{top:50%;left:50%;transform:scale(1) translate3d(-50%,-50%,0);transform-origin:0 0;border-radius:var(--td-popup-border-radius,var(--td-radius-extra-large,24rpx))}.t-popup.t-fade-enter.t-popup--top,.t-popup.t-fade-leave-to.t-popup--top{transform:translateY(-100%)}.t-popup.t-fade-enter.t-popup--bottom,.t-popup.t-fade-leave-to.t-popup--bottom{transform:translateY(100%)}.t-popup.t-fade-enter.t-popup--left,.t-popup.t-fade-leave-to.t-popup--left{transform:translateX(-100%)}.t-popup.t-fade-enter.t-popup--right,.t-popup.t-fade-leave-to.t-popup--right{transform:translateX(100%)}.t-popup.t-fade-enter.t-popup--center,.t-popup.t-fade-leave-to.t-popup--center{transform:scale(.6) translate3d(-50%,-50%,0);opacity:0}.t-popup.t-dialog-enter.t-popup--center,.t-popup.t-dialog-leave-to.t-popup--center{transform:scale(.6) translate3d(-50%,-50%,0);opacity:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/props.js b/app/miniprogram_npm/tdesign-miniprogram/popup/props.js new file mode 100644 index 0000000..af388c4 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/props.js @@ -0,0 +1 @@ +const props={closeBtn:{type:Boolean},closeOnOverlayClick:{type:Boolean,value:!0},content:{type:String},duration:{type:Number,value:240},externalClasses:{type:Array},overlayProps:{type:Object,value:{}},placement:{type:String,value:"top"},preventScrollThrough:{type:Boolean,value:!0},showOverlay:{type:Boolean,value:!0},usingCustomNavbar:{type:Boolean,value:!1},visible:{type:Boolean,value:null},defaultVisible:{type:Boolean},zIndex:{type:Number,value:11500}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/popup/type.js b/app/miniprogram_npm/tdesign-miniprogram/popup/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/popup/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.d.ts b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.d.ts new file mode 100644 index 0000000..ea66946 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.d.ts @@ -0,0 +1,24 @@ +import { SuperComponent } from '../common/src/index'; +export default class Progress extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdProgressProps; + data: { + prefix: string; + classPrefix: string; + colorBar: string; + heightBar: string; + computedStatus: string; + computedProgress: number; + isIOS: boolean; + }; + attached(): void; + observers: { + percentage(percentage: any): void; + color(color: any): void; + strokeWidth(strokeWidth: any): string; + trackColor(trackColor: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.js b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.js new file mode 100644 index 0000000..02f2d59 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getBackgroundColor}from"./utils";import{unitConvert,isIOS as isIOSValidator}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-progress`;let Progress=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-bar`,`${prefix}-class-label`],this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name,colorBar:"",heightBar:"",computedStatus:"",computedProgress:0,isIOS:!1},this.observers={percentage(o){o=Math.max(0,Math.min(o,100)),this.setData({computedStatus:100===o?"success":"",computedProgress:o})},color(o){this.setData({colorBar:getBackgroundColor(o),colorCircle:"object"==typeof o?"":o})},strokeWidth(o){if(!o)return"";this.setData({heightBar:unitConvert(o)})},trackColor(o){this.setData({bgColorBar:o})}}}attached(){const o=isIOSValidator();this.setData({isIOS:o})}};Progress=__decorate([wxComponent()],Progress);export default Progress; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.json b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxml b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxml new file mode 100644 index 0000000..7a504e3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxml @@ -0,0 +1 @@ +{{ _.isString(label)? label: computedProgress + '%' }}{{ _.isString(label)? label: computedProgress + '%' }}{{ _.isString(label)? label: computedProgress + '%' }}{{ _.isString(label)? label: computedProgress + '%' }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxs b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxs new file mode 100644 index 0000000..2a514ea --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxs @@ -0,0 +1,80 @@ +var utils = require('../common/utils.wxs'); + +var STATUS = ['success', 'error', 'warning']; +var STATUS_TEXT = ['success', 'error', 'warning', 'active']; + +var PRO_THEME = { + LINE: 'line', + PLUMP: 'plump', + CIRCLE: 'circle', +}; + +var STATUS_COLOR = { + success: '#00a870', + error: '#e34d59', + warning: '#ed7b2f', +}; + +var LINE_STATUS_ICON = { + success: 'check-circle-filled', + error: 'error-circle-filled', + warning: 'error-circle-filled', +}; + +var CIRCLE_STATUS_ICON = { + success: 'check', + error: 'close', + warning: 'error', +}; + +/** + * + * 1. getIOSAriaLabel, getAndroidAriaLabel 两个函数的初衷是处理progress异常情况的文案识别。 + * 2. iOS可以识别%,而安卓不会识别%,如 80, iOS可以识别成 80%, 而安卓只会80,因此android部分做了一个% 拼接,后续看是否有更好的方案去解决。 + * 3. 安卓 talkback 版本为 8.1.0.278818032 ,只会读一次 80, 最新版本talkback 会读 80.0, 80。(目前也是一个痛点,啰嗦了) + * + */ + +function getIOSAriaLabel(status) { + if (status === 'error') { + return '进度失败'; + } + if (status === 'warning') { + return '进度异常'; + } + return ''; +} + +function getAndroidAriaLabel(status) { + if (status === 'error') { + return '%' + ',进度失败'; + } + if (status === 'warning') { + return '%' + ',进度异常'; + } + return '%'; +} + +function getCircleStyle(size, strokeWidth) { + var styles = { + '--td-progress-stroke-circle-width': utils.addUnit(strokeWidth), + }; + + if (!utils.includes(['default', 'micro'], size)) { + styles['--td-progress-circle-width'] = utils.addUnit(size); + } + + return utils._style(styles); +} + +module.exports = { + STATUS: STATUS, + STATUS_TEXT: STATUS_TEXT, + PRO_THEME: PRO_THEME, + STATUS_COLOR: STATUS_COLOR, + LINE_STATUS_ICON: LINE_STATUS_ICON, + CIRCLE_STATUS_ICON: CIRCLE_STATUS_ICON, + getAndroidAriaLabel: getAndroidAriaLabel, + getIOSAriaLabel: getIOSAriaLabel, + getCircleStyle: getCircleStyle, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxss b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxss new file mode 100644 index 0000000..8ccf05b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/progress.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-progress{--td-progress-inner-bg-color:var(--td-brand-color, var(--td-primary-color-7, #0052d9));--td-progress-track-bg-color:var(--td-bg-color-component, var(--td-gray-color-3, #e7e7e7));--td-progress-circle-from:0deg}.t-progress__inner{position:relative;height:100%;background:var(--td-progress-inner-bg-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-radius:var(--td-radius-round,999px);transition:all var(--td-anim-duration-base,.2s) var(--td-anim-time-fn-easing,cubic-bezier(.38,0,.24,1))}.t-progress__bar{width:100%;height:var(--td-progress-line-stroke-width,12rpx);overflow:hidden;background:var(--td-progress-track-bg-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-radius:var(--td-radius-round,999px)}.t-progress__info{padding-left:var(--td-spacer,16rpx);box-sizing:border-box;color:var(--td-progress-info-dark-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));white-space:nowrap;display:inline-flex}.t-progress--thin{display:flex;justify-content:space-between;align-items:center}.t-progress--thin .t-progress__icon{font-size:calc(var(--td-font-size-base,28rpx) + 2px)}.t-progress--plump{height:var(--td-progress-stroke-plump-width,40rpx);border-radius:calc(var(--td-progress-stroke-plump-width,40rpx)/ 2);display:flex;align-items:center}.t-progress--plump .t-progress__info{font-size:var(--td-font-size-s,24rpx)}.t-progress--over-ten .t-progress__info{position:absolute;top:50%;right:var(--td-spacer,16rpx);color:var(--td-progress-info-light-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));transform:translateY(-50%)}.t-progress--under-ten .t-progress__info,.t-progress--under-ten .t-progress__inner{display:inline-block}.t-progress--under-ten .t-progress__info{vertical-align:top}.t-progress__canvas--circle{position:relative;width:var(--td-progress-circle-width,224rpx);height:var(--td-progress-circle-width,224rpx);border-radius:var(--td-radius-circle,50%)}.t-progress__canvas--circle .t-progress__canvas--inner{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:calc(100% - var(--td-progress-stroke-circle-width,12rpx)*2);height:calc(100% - var(--td-progress-stroke-circle-width,12rpx)*2);border-radius:var(--td-radius-circle,50%);display:flex;flex-direction:row;justify-content:center;align-items:center;background-color:var(--td-progress-circle-inner-bg-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-progress__canvas--circle .t-progress__info{margin:0;font-size:var(--td-progress-circle-label-font-size,40rpx);font-weight:var(--td-progress-circle-label-font-weight,700);line-height:var(--td-progress-circle-label-line-height,56rpx);overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.t-progress__canvas--circle--micro{--td-progress-circle-width:48rpx;--td-progress-stroke-circle-width:4rpx;--td-progress-circle-icon-font-size:40rpx}.t-progress--status--active .t-progress__inner::before{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:'';animation:progress-active-animation 2s cubic-bezier(.23,.99,.86,.2) infinite;background:var(--td-progress-inner-bg-color-active,var(--td-bg-color-container,var(--td-font-white-1,#fff)));opacity:.2}.t-progress--status--success .t-progress__inner{background:var(--td-progress-inner-bg-color-success,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-progress--status--success .t-progress__icon{color:var(--td-success-color,var(--td-success-color-5,#2ba471))}.t-progress--status--warning .t-progress__inner{background:var(--td-progress-inner-bg-color-warning,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-progress--status--warning .t-progress__icon{color:var(--td-warning-color,var(--td-warning-color-5,#e37318))}.t-progress--status--error .t-progress__inner{background:var(--td-progress-inner-bg-color-error,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-progress--status--error .t-progress__icon{color:var(--td-error-color,var(--td-error-color-6,#d54941))}@keyframes progress-active-animation{0%{width:0;opacity:.1}35%{width:50%;opacity:.4}100%{width:100%;opacity:0}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/props.js b/app/miniprogram_npm/tdesign-miniprogram/progress/props.js new file mode 100644 index 0000000..a9d2f19 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/props.js @@ -0,0 +1 @@ +const props={color:{type:null,value:""},label:{type:null,value:!0},percentage:{type:Number,value:0},size:{type:null,value:"default"},status:{type:String},strokeWidth:{type:null},theme:{type:String,value:"line"},trackColor:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/type.js b/app/miniprogram_npm/tdesign-miniprogram/progress/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/utils.d.ts b/app/miniprogram_npm/tdesign-miniprogram/progress/utils.d.ts new file mode 100644 index 0000000..84b7889 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/utils.d.ts @@ -0,0 +1,11 @@ +export declare type Gradients = { + [percent: string]: string; +}; +export declare type FromTo = { + from: string; + to: string; +}; +export declare type LinearGradient = { + direction?: string; +} & (Gradients | FromTo); +export declare function getBackgroundColor(color: string | string[] | LinearGradient): string; diff --git a/app/miniprogram_npm/tdesign-miniprogram/progress/utils.js b/app/miniprogram_npm/tdesign-miniprogram/progress/utils.js new file mode 100644 index 0000000..6ff6c76 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/progress/utils.js @@ -0,0 +1 @@ +import{__rest}from"tslib";export function getBackgroundColor(r){if("string"==typeof r)return r;if(Array.isArray(r))return r[0]&&"#"===r[0][0]&&r.unshift("90deg"),`linear-gradient( ${r.join(",")} )`;const{from:t,to:e,direction:n="to right"}=r,i=__rest(r,["from","to","direction"]);let o=Object.keys(i);if(o.length){o=o.sort(((r,t)=>parseFloat(r.substr(0,r.length-1))-parseFloat(t.substr(0,t.length-1))));return`linear-gradient(${n}, ${o.map((r=>`${i[r]} ${r}`)).join(",")})`}return`linear-gradient(${n}, ${t}, ${e})`} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/props.js b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/props.js new file mode 100644 index 0000000..d655b8a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/props.js @@ -0,0 +1 @@ +const props={disabled:{type:Boolean,value:!1},enableBackToTop:{type:Boolean,value:!0},enablePassive:{type:Boolean,value:!1},externalClasses:{type:Array},loadingBarHeight:{type:null,value:50},loadingProps:{type:Object},loadingTexts:{type:Array,value:[]},lowerThreshold:{type:null,value:50},maxBarHeight:{type:null,value:80},refreshTimeout:{type:Number,value:3e3},scrollIntoView:{type:String,value:""},showScrollbar:{type:Boolean,value:!0},upperThreshold:{type:null,value:50},usingCustomNavbar:{type:Boolean,value:!1},value:{type:Boolean,value:null},defaultValue:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.d.ts b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.d.ts new file mode 100644 index 0000000..e0d227e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.d.ts @@ -0,0 +1,58 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class PullDownRefresh extends SuperComponent { + pixelRatio: number; + startPoint: { + pageX: number; + pageY: number; + } | null; + isPulling: boolean; + maxRefreshAnimateTimeFlag: number; + closingAnimateTimeFlag: number; + refreshStatusTimer: any; + externalClasses: string[]; + options: { + multipleSlots: boolean; + pureDataPattern: RegExp; + }; + relations: RelationsOptions; + properties: import("./type").TdPullDownRefreshProps; + data: { + prefix: string; + classPrefix: string; + distanceTop: number; + barHeight: number; + tipsHeight: number; + refreshStatus: number; + loosing: boolean; + enableToRefresh: boolean; + scrollTop: number; + _maxBarHeight: number; + _loadingBarHeight: number; + }; + lifetimes: { + attached(): void; + detached(): void; + }; + observers: { + value(val: any): void; + barHeight(val: any): void; + maxBarHeight(v: any): void; + loadingBarHeight(v: any): void; + }; + methods: { + resetTimer(): void; + onScrollToBottom(): void; + onScrollToTop(): void; + onScroll(e: any): void; + onTouchStart(e: WechatMiniprogram.Component.TrivialInstance): void; + onTouchMove(e: WechatMiniprogram.Component.TrivialInstance): void; + onTouchEnd(e: WechatMiniprogram.Component.TrivialInstance): void; + onDragStart(e: WechatMiniprogram.ScrollViewDragStart): void; + onDragging(e: WechatMiniprogram.ScrollViewDragging): void; + onDragEnd(e: WechatMiniprogram.ScrollViewDragEnd): void; + doRefresh(): void; + setRefreshBarHeight(value: number): Promise; + setScrollTop(scrollTop: number): void; + scrollToTop(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.js b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.js new file mode 100644 index 0000000..02d045b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{unitConvert,systemInfo,getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-pull-down-refresh`,defaultLoadingTexts=["下拉刷新","松手刷新","正在刷新","刷新完成"];let PullDownRefresh=class extends SuperComponent{constructor(){super(...arguments),this.pixelRatio=1,this.startPoint=null,this.isPulling=!1,this.maxRefreshAnimateTimeFlag=0,this.closingAnimateTimeFlag=0,this.refreshStatusTimer=null,this.externalClasses=[`${prefix}-class`,`${prefix}-class-loading`,`${prefix}-class-text`,`${prefix}-class-indicator`],this.options={multipleSlots:!0,pureDataPattern:/^_/},this.relations={"../back-top/back-top":{type:"descendant"}},this.properties=props,this.data={prefix:prefix,classPrefix:name,distanceTop:0,barHeight:0,tipsHeight:0,refreshStatus:-1,loosing:!1,enableToRefresh:!0,scrollTop:0,_maxBarHeight:0,_loadingBarHeight:0},this.lifetimes={attached(){const{screenWidth:t}=systemInfo,{loadingTexts:e,maxBarHeight:s,loadingBarHeight:i}=this.properties,r=Array.isArray(e)&&e.length>=4;this.setData({_maxBarHeight:unitConvert(s),_loadingBarHeight:unitConvert(i),loadingTexts:r?e:defaultLoadingTexts}),this.pixelRatio=750/t,getRect(this,`.${name}`).then((t=>{this.setData({distanceTop:t.top})}))},detached(){clearTimeout(this.maxRefreshAnimateTimeFlag),clearTimeout(this.closingAnimateTimeFlag),this.resetTimer()}},this.observers={value(t){t?this.doRefresh():(clearTimeout(this.maxRefreshAnimateTimeFlag),this.data.refreshStatus>0&&this.setData({refreshStatus:3}),this.setData({barHeight:0}))},barHeight(t){this.resetTimer(),0===t&&-1!==this.data.refreshStatus&&(this.refreshStatusTimer=setTimeout((()=>{this.setData({refreshStatus:-1})}),240)),this.setData({tipsHeight:Math.min(t,this.data._loadingBarHeight)})},maxBarHeight(t){this.setData({_maxBarHeight:unitConvert(t)})},loadingBarHeight(t){this.setData({_loadingBarHeight:unitConvert(t)})}},this.methods={resetTimer(){this.refreshStatusTimer&&(clearTimeout(this.refreshStatusTimer),this.refreshStatusTimer=null)},onScrollToBottom(){this.triggerEvent("scrolltolower")},onScrollToTop(){this.setData({enableToRefresh:!0})},onScroll(t){const{scrollTop:e}=t.detail;this.setData({enableToRefresh:0===e}),this.triggerEvent("scroll",{scrollTop:e})},onTouchStart(t){if(this.isPulling||!this.data.enableToRefresh||this.properties.disabled)return;const{touches:e}=t;if(1!==e.length)return;const{pageX:s,pageY:i}=e[0];this.setData({loosing:!1}),this.startPoint={pageX:s,pageY:i},this.isPulling=!0},onTouchMove(t){if(!this.startPoint||this.properties.disabled)return;const{touches:e}=t;if(1!==e.length)return;const{pageY:s}=e[0],i=s-this.startPoint.pageY;i>0&&this.setRefreshBarHeight(i)},onTouchEnd(t){if(!this.startPoint||this.properties.disabled)return;const{changedTouches:e}=t;if(1!==e.length)return;const{pageY:s}=e[0],i=s-this.startPoint.pageY;this.startPoint=null,this.isPulling=!1,this.setData({loosing:!0}),i>this.data._loadingBarHeight?(this._trigger("change",{value:!0}),this.triggerEvent("refresh")):this.setData({barHeight:0})},onDragStart(t){const{scrollTop:e,scrollLeft:s}=t.detail;this.triggerEvent("dragstart",{scrollTop:e,scrollLeft:s})},onDragging(t){const{scrollTop:e,scrollLeft:s}=t.detail;this.triggerEvent("dragging",{scrollTop:e,scrollLeft:s})},onDragEnd(t){const{scrollTop:e,scrollLeft:s}=t.detail;this.triggerEvent("dragend",{scrollTop:e,scrollLeft:s})},doRefresh(){this.properties.disabled||(this.setData({barHeight:this.data._loadingBarHeight,refreshStatus:2,loosing:!0}),this.maxRefreshAnimateTimeFlag=setTimeout((()=>{this.maxRefreshAnimateTimeFlag=null,2===this.data.refreshStatus&&(this.triggerEvent("timeout"),this._trigger("change",{value:!1}))}),this.properties.refreshTimeout))},setRefreshBarHeight(t){const e=Math.min(t,this.data._maxBarHeight),s={barHeight:e};return e>=this.data._loadingBarHeight?s.refreshStatus=1:s.refreshStatus=0,new Promise((t=>{this.setData(s,(()=>t(e)))}))},setScrollTop(t){this.setData({scrollTop:t})},scrollToTop(){this.setScrollTop(0)}}}};PullDownRefresh=__decorate([wxComponent()],PullDownRefresh);export default PullDownRefresh; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.json b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.json new file mode 100644 index 0000000..656034e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-loading":"../loading/loading"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxml b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxml new file mode 100644 index 0000000..30eac27 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxml @@ -0,0 +1 @@ +{{loadingTexts[refreshStatus]}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxss b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxss new file mode 100644 index 0000000..9dada32 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/pull-down-refresh.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-pull-down-refresh{overflow:hidden;height:100%}.t-pull-down-refresh__track{position:relative}.t-pull-down-refresh__track--loosing{transition:transform ease .24s}.t-pull-down-refresh__tips{position:absolute;color:var(--td-pull-down-refresh-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:24rpx;top:0;width:100%;transform:translateY(-100%);display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden}.t-pull-down-refresh__tips--loosing{transition:height ease .24s}.t-pull-down-refresh__text{margin:16rpx 0 0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/type.js b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/pull-down-refresh/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/props.js b/app/miniprogram_npm/tdesign-miniprogram/radio-group/props.js new file mode 100644 index 0000000..850d529 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/props.js @@ -0,0 +1 @@ +const props={allowUncheck:{type:Boolean,value:!1},borderless:{type:Boolean,value:!1},disabled:{type:null,value:void 0},icon:{type:null,value:"circle"},keys:{type:Object},name:{type:String,value:""},options:{type:Array},placement:{type:String,value:"left"},readonly:{type:null,value:void 0},value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.d.ts b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.d.ts new file mode 100644 index 0000000..ee08cb5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.d.ts @@ -0,0 +1,27 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class RadioGroup extends SuperComponent { + behaviors: string[]; + externalClasses: string[]; + data: { + prefix: string; + classPrefix: string; + radioOptions: any[]; + }; + relations: RelationsOptions; + properties: import("./type").TdRadioGroupProps; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + value(v: any): void; + options(): void; + disabled(v: any): void; + }; + methods: { + getChildren(): any; + updateValue(value: any): void; + handleRadioChange(e: any): void; + initWithOptions(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.js b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.js new file mode 100644 index 0000000..42bcb77 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import config from"../common/config";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-radio-group`;let RadioGroup=class extends SuperComponent{constructor(){super(...arguments),this.behaviors=["wx://form-field"],this.externalClasses=[`${prefix}-class`],this.data={prefix:prefix,classPrefix:name,radioOptions:[]},this.relations={"../radio/radio":{type:"descendant",linked(e){const{value:t,disabled:i,readonly:o}=this.data;e.setData({checked:t===e.data.value}),e.setDisabled(i),e.setReadonly(o)}}},this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.observers={value(e){this.getChildren().forEach((t=>{t.setData({checked:e===t.data.value})}))},options(){this.initWithOptions()},disabled(e){var t;(null===(t=this.data.options)||void 0===t?void 0:t.length)?this.initWithOptions():this.getChildren().forEach((t=>{t.setDisabled(e)}))}},this.methods={getChildren(){let e=this.$children;return(null==e?void 0:e.length)||(e=this.selectAllComponents(`.${prefix}-radio-option`)),e},updateValue(e){this._trigger("change",{value:e})},handleRadioChange(e){const{checked:t}=e.detail,{value:i,index:o,allowUncheck:a}=e.target.dataset;this._trigger("change",!1===t&&a?{value:null,index:o}:{value:i,index:o})},initWithOptions(){const{options:e,value:t,keys:i,disabled:o,readonly:a}=this.data;if(!(null==e?void 0:e.length)||!Array.isArray(e))return void this.setData({radioOptions:[]});const s=[];try{e.forEach((e=>{var l,r,n;const d=typeof e;"number"===d||"string"===d?s.push({label:`${e}`,value:e,checked:t===e,disabled:o,readonly:a}):"object"===d&&s.push(Object.assign(Object.assign({},e),{label:e[null!==(l=null==i?void 0:i.label)&&void 0!==l?l:"label"],value:e[null!==(r=null==i?void 0:i.value)&&void 0!==r?r:"value"],checked:t===e[null!==(n=null==i?void 0:i.value)&&void 0!==n?n:"value"],disabled:e.disabled||o,readonly:e.readonly||a}))})),this.setData({radioOptions:s})}catch(e){console.error("error",e)}}}}};RadioGroup=__decorate([wxComponent()],RadioGroup);export default RadioGroup; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.json b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.json new file mode 100644 index 0000000..2e52c48 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-radio":"../radio/radio"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxml b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxml new file mode 100644 index 0000000..b5679a9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxss b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxss new file mode 100644 index 0000000..aed803e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/radio-group.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio-group/type.js b/app/miniprogram_npm/tdesign-miniprogram/radio-group/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio-group/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/props.js b/app/miniprogram_npm/tdesign-miniprogram/radio/props.js new file mode 100644 index 0000000..0fcbdaf --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/props.js @@ -0,0 +1 @@ +const props={allowUncheck:{type:Boolean,value:!1},block:{type:Boolean,value:!0},checked:{type:Boolean,value:null},defaultChecked:{type:Boolean,value:!1},content:{type:String},contentDisabled:{type:Boolean,value:!1},disabled:{type:null,value:void 0},icon:{type:null,value:"circle"},label:{type:String},maxContentRow:{type:Number,value:5},maxLabelRow:{type:Number,value:3},name:{type:String,value:""},placement:{type:String},readonly:{type:null,value:void 0},value:{type:null,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/radio.d.ts b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.d.ts new file mode 100644 index 0000000..5e142e1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.d.ts @@ -0,0 +1,107 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Radio extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + relations: RelationsOptions; + options: { + multipleSlots: boolean; + }; + lifetimes: { + attached(): void; + }; + properties: { + borderless: { + type: BooleanConstructor; + value: boolean; + }; + tId: { + type: StringConstructor; + }; + allowUncheck?: { + type: BooleanConstructor; + value?: boolean; + }; + block?: { + type: BooleanConstructor; + value?: boolean; + }; + checked?: { + type: BooleanConstructor; + value?: boolean; + }; + defaultChecked?: { + type: BooleanConstructor; + value?: boolean; + }; + content?: { + type: StringConstructor; + value?: string; + }; + contentDisabled?: { + type: BooleanConstructor; + value?: boolean; + }; + disabled?: { + type: BooleanConstructor; + value?: boolean; + }; + icon?: { + type: null; + value?: string[] | "circle" | "line" | "dot"; + }; + label?: { + type: StringConstructor; + value?: string; + }; + maxContentRow?: { + type: NumberConstructor; + value?: number; + }; + maxLabelRow?: { + type: NumberConstructor; + value?: number; + }; + name?: { + type: StringConstructor; + value?: string; + }; + placement?: { + type: StringConstructor; + value?: "left" | "right"; + }; + readonly?: { + type: BooleanConstructor; + value?: boolean; + }; + value?: { + type: null; + value?: import("./type").RadioValue; + }; + }; + controlledProps: { + key: string; + event: string; + }[]; + data: { + prefix: string; + classPrefix: string; + customIcon: boolean; + slotIcon: boolean; + optionLinked: boolean; + iconVal: any[]; + _placement: string; + _disabled: boolean; + _readonly: boolean; + }; + observers: { + disabled(v: any): void; + readonly(v: any): void; + }; + methods: { + handleTap(e: any): void; + doChange(): void; + init(): void; + setDisabled(disabled: Boolean): void; + setReadonly(readonly: Boolean): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/radio.js b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.js new file mode 100644 index 0000000..6178e80 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import config from"../common/config";import{SuperComponent,wxComponent}from"../common/src/index";import Props from"./props";const{prefix:prefix}=config,name=`${prefix}-radio`;let Radio=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-label`,`${prefix}-class-icon`,`${prefix}-class-content`,`${prefix}-class-border`],this.behaviors=["wx://form-field"],this.relations={"../radio-group/radio-group":{type:"ancestor",linked(e){e.data.borderless&&this.setData({borderless:!0})}}},this.options={multipleSlots:!0},this.lifetimes={attached(){this.init()}},this.properties=Object.assign(Object.assign({},Props),{borderless:{type:Boolean,value:!1},tId:{type:String}}),this.controlledProps=[{key:"checked",event:"change"}],this.data={prefix:prefix,classPrefix:name,customIcon:!1,slotIcon:!1,optionLinked:!1,iconVal:[],_placement:"",_disabled:!1,_readonly:!1},this.observers={disabled(e){this.setData({_disabled:e})},readonly(e){this.setData({_readonly:e})}},this.methods={handleTap(e){const{_disabled:t,_readonly:a,contentDisabled:o}=this.data,{target:s}=e.currentTarget.dataset;t||a||"text"===s&&o||this.doChange()},doChange(){var e;const{value:t,checked:a,allowUncheck:o}=this.data,s=Boolean(o||(null===(e=this.$parent)||void 0===e?void 0:e.data.allowUncheck));this.$parent?this.$parent.updateValue(a&&s?null:t):this._trigger("change",{checked:!s||!a})},init(){var e,t,a,o;const{icon:s}=this.data,i=Array.isArray((null===(e=this.$parent)||void 0===e?void 0:e.icon)||s);this.setData({customIcon:i,slotIcon:"slot"===s,iconVal:i?(null===(t=this.$parent)||void 0===t?void 0:t.icon)||s:[],_placement:this.data.placement||(null===(o=null===(a=this.$parent)||void 0===a?void 0:a.data)||void 0===o?void 0:o.placement)||"left"})},setDisabled(e){this.setData({_disabled:this.data.disabled||e})},setReadonly(e){this.setData({_readonly:this.data.readonly||e})}}}};Radio=__decorate([wxComponent()],Radio);export default Radio; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/radio.json b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxml b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxml new file mode 100644 index 0000000..c6fe3a6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxml @@ -0,0 +1 @@ +{{label}}{{content}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxss b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxss new file mode 100644 index 0000000..15b0a09 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/radio.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.limit-title-row{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.t-radio{position:relative;display:inline-flex;vertical-align:middle;font-size:var(--td-radio-font-size,32rpx);background:var(--td-radio-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-radio:focus{outline:0}.t-radio--block{display:flex;padding:var(--td-radio-vertical-padding,32rpx)}.t-radio--right{flex-direction:row-reverse}.t-radio__icon{position:relative;margin-top:calc((var(--td-radio-label-line-height,48rpx) - var(--td-radio-icon-size,48rpx))/ 2);width:var(--td-radio-icon-size,48rpx);height:var(--td-radio-icon-size,48rpx);font-size:var(--td-radio-icon-size,48rpx);color:var(--td-radio-icon-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));overflow:hidden}.t-radio__icon:empty{display:none}.t-radio__icon--left{margin-right:16rpx}.t-radio__icon--checked{color:var(--td-radio-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-radio__icon--disabled{cursor:not-allowed;color:var(--td-radio-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-radio__icon-circle{width:var(--td-radio-icon-size,48rpx);height:var(--td-radio-icon-size,48rpx);box-sizing:border-box}.t-radio__icon-circle::after{content:'';width:calc(200% - 6rpx);height:calc(200% - 6rpx);border-radius:50%;border:3px solid var(--td-radio-icon-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.5);box-sizing:border-box}.t-radio__icon-circle--disabled::after{background:var(--td-radio-icon-disabled-bg-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-radio__icon-line::after,.t-radio__icon-line::before{content:'';display:block;position:absolute;width:5rpx;border-radius:2rpx;background:var(--td-radio-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));transform-origin:top center}.t-radio__icon-line::before{height:16rpx;left:8rpx;top:22rpx;transform:rotate(-45deg)}.t-radio__icon-line::after{height:26rpx;right:8rpx;top:14rpx;transform:rotate(45deg)}.t-radio__icon-line--disabled::after,.t-radio__icon-line--disabled::before{background:var(--td-radio-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-radio__icon-dot{width:calc((var(--td-radio-icon-size,48rpx) - 6rpx) * 2);height:calc((var(--td-radio-icon-size,48rpx) - 6rpx) * 2);border:6rpx solid var(--td-radio-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-radius:50%;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(.5);box-sizing:border-box;display:flex;align-items:center;justify-content:center}.t-radio__icon-dot::after{content:'';display:block;width:var(--td-radio-icon-size,48rpx);height:var(--td-radio-icon-size,48rpx);background:var(--td-radio-icon-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-radius:50%}.t-radio__icon-dot--disabled{border-color:var(--td-radio-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-radio__icon-dot--disabled::after{background:var(--td-radio-icon-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-radio__image{line-height:var(--td-radio-icon-size,48rpx)}.t-radio-icon__image{height:var(--td-radio-icon-size,48rpx);width:var(--td-radio-icon-size,48rpx);vertical-align:sub}.t-radio__content{flex:1}.t-radio__content:empty{display:none}.t-radio__title{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;color:var(--td-radio-label-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));line-height:var(--td-radio-label-line-height,48rpx)}.t-radio__title--checked{color:var(--td-radio-label-checked-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-radio__title--disabled{cursor:not-allowed;color:var(--td-radio-label-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-radio__description{display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;color:var(--td-radio-content-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));font-size:var(--td-radio-content-font-size,28rpx);line-height:var(--td-radio-content-line-height,44rpx)}.t-radio__description--checked{color:var(--td-radio-content-checked-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))))}.t-radio__description--disabled{cursor:not-allowed;color:var(--td-radio-content-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-radio__description:empty{display:none}.t-radio__title+.t-radio__description{margin-top:8rpx}.t-radio__border{position:absolute;bottom:0;height:1px;background:var(--td-radio-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)));left:96rpx;right:0;transform:scaleY(.5)}.t-radio__border--right{left:32rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/radio/type.js b/app/miniprogram_npm/tdesign-miniprogram/radio/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/radio/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/props.js b/app/miniprogram_npm/tdesign-miniprogram/rate/props.js new file mode 100644 index 0000000..98acf92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/props.js @@ -0,0 +1 @@ +const props={allowHalf:{type:Boolean,value:!1},color:{type:null,value:"#ED7B2F"},count:{type:Number,value:5},disabled:{type:null,value:void 0},gap:{type:null,value:8},icon:{type:null},iconPrefix:{type:String,value:void 0},placement:{type:String,value:"top"},showText:{type:Boolean,value:!1},size:{type:String,value:"24px"},texts:{type:Array,value:[]},value:{type:Number,value:null},defaultValue:{type:Number,value:0},variant:{type:String,value:"outline"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.d.ts b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.d.ts new file mode 100644 index 0000000..e6070ab --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.d.ts @@ -0,0 +1,29 @@ +import { SuperComponent } from '../common/src/index'; +export default class Rate extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdRateProps; + controlledProps: { + key: string; + event: string; + }[]; + data: { + prefix: string; + classPrefix: string; + defaultTexts: string[]; + tipsVisible: boolean; + tipsLeft: number; + actionType: string; + scaleIndex: number; + isVisibleToScreenReader: boolean; + }; + methods: { + onTouch(e: WechatMiniprogram.TouchEvent, eventType: 'tap' | 'move'): void; + onTap(e: WechatMiniprogram.TouchEvent): void; + onTouchStart(): void; + onTouchMove(e: WechatMiniprogram.TouchEvent): void; + onTouchEnd(): void; + hideTips(): void; + onSelect(e: WechatMiniprogram.TouchEvent): void; + showAlertText(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.js b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.js new file mode 100644 index 0000000..92f2b73 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{unitConvert,getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-rate`;let Rate=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-icon`,`${prefix}-class-text`],this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.data={prefix:prefix,classPrefix:name,defaultTexts:["极差","失望","一般","满意","惊喜"],tipsVisible:!1,tipsLeft:0,actionType:"",scaleIndex:-1,isVisibleToScreenReader:!1},this.methods={onTouch(e,t){const{count:i,allowHalf:s,gap:o,value:a,size:n}=this.properties,[r]=e.changedTouches,c=unitConvert(o);getRect(this,`.${name}__wrapper`).then((e=>{const{width:p,left:h}=e,l=(p-(i-1)*c)/i,d=(r.pageX-h+c)/(l+c),m=d%1,u=d-m;let T=m<=.5&&s?u+.5:u+1;if(T>i?T=i:T<0&&(T=0),"move"===t||"tap"===t&&s){const e=Math.ceil(T-1)*(unitConvert(o)+unitConvert(n))+.5*unitConvert(n);this.setData({tipsVisible:!0,actionType:t,scaleIndex:Math.ceil(T),tipsLeft:Math.max(e,0)})}T!==a&&this._trigger("change",{value:T}),this.touchEnd&&this.hideTips()}))},onTap(e){const{disabled:t}=this.properties;t||this.onTouch(e,"tap")},onTouchStart(){this.touchEnd=!1},onTouchMove(e){this.onTouch(e,"move"),this.showAlertText()},onTouchEnd(){this.touchEnd=!0,this.hideTips()},hideTips(){"move"===this.data.actionType&&this.setData({tipsVisible:!1,scaleIndex:-1})},onSelect(e){const{value:t}=e.currentTarget.dataset,{actionType:i}=this.data;"move"!==i&&(this._trigger("change",{value:t}),setTimeout((()=>this.setData({tipsVisible:!1,scaleIndex:-1})),300))},showAlertText(){!0!==this.data.isVisibleToScreenReader&&(this.setData({isVisibleToScreenReader:!0}),setTimeout((()=>{this.setData({isVisibleToScreenReader:!1})}),2e3))}}}};Rate=__decorate([wxComponent()],Rate);export default Rate; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.json b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxml b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxml new file mode 100644 index 0000000..0dbd117 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxml @@ -0,0 +1 @@ +{{utils.getText(texts,value,defaultTexts)}}{{value+'星'}} {{utils.getText(texts,value,defaultTexts)}}{{utils.ceil(value) - 0.5}}{{utils.ceil(value)}}{{value}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxs b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxs new file mode 100644 index 0000000..8387b10 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxs @@ -0,0 +1,65 @@ +module.exports = { + getText: function (texts, val, defaultTexts) { + if (!texts.length) { + texts = defaultTexts; + } + var curVal = Math.floor(val - 1); + return texts[curVal] || '未评分'; + }, + + getIconName: function (defaultValue, value, index, icon) { + var curVal = value >= 0 ? value : defaultValue; + var name = ['star-filled', 'star-filled']; + + if (icon) { + name = icon.constructor == 'Array' ? icon : [icon, icon]; + } + + return name[curVal >= index + 1 ? 0 : 1]; + }, + + getIconClass: function (classPrefix, defaultValue, value, index, allowHalf, disabled, scaleIndex) { + var curVal = value >= 0 ? value : defaultValue; + var className = []; + if (curVal >= index + 1) { + className.push(classPrefix + '--selected'); + if (disabled) { + className.push(classPrefix + '--disabled'); + } + if (scaleIndex === index + 1) { + className.push(classPrefix + '--current'); + } + } else if (allowHalf && curVal - index > 0) { + className.push(classPrefix + '--selected-half'); + if (scaleIndex === index + 1) { + className.push(classPrefix + '--current'); + } + if (disabled) { + className.push(classPrefix + '--disabled-half'); + } + } else { + className.push(classPrefix + '--unselected'); + } + return className.join(' '); + }, + + ceil: function (value) { + return Math.ceil(value); + }, + + getColor: function (color) { + if (color.constructor === 'Array' && color.length === 2) { + return ';--td-rate-selected-color: ' + color[0] + '; --td-rate-unselected-color: ' + color[1]; + } + + if (typeof color === 'string') { + return ';--td-rate-selected-color: ' + color; + } + + return ''; + }, + + regSize: function (val) { + return val.indexOf('px') ? val : val + 'px'; + }, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxss b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxss new file mode 100644 index 0000000..325d66c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/rate.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-rate{position:relative;display:flex;align-items:center;justify-content:flex-start}.t-rate__wrapper{line-height:1em;display:inline-flex}.t-rate__icon{display:block;line-height:1em;width:1em;transition:transform .3s ease}.t-rate__icon--current{transform:scale(var(--td-rate-icon-scale,1.33))}.t-rate__icon--selected{color:var(--td-rate-selected-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-rate__icon--selected-half{color:transparent;background:linear-gradient(to right,var(--td-rate-selected-color,var(--td-warning-color,var(--td-warning-color-5,#e37318))) 0,var(--td-rate-selected-color,var(--td-warning-color,var(--td-warning-color-5,#e37318))) 50%,var(--td-rate-unselected-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc))) 51%,var(--td-rate-unselected-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc))) 100%);-webkit-background-clip:text;background-clip:text}.t-rate__icon--unselected{color:var(--td-rate-unselected-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-rate__text{font-size:var(--td-rate-text-font-size,var(--td-font-size-m,32rpx));color:var(--td-rate-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));margin-left:32rpx;vertical-align:middle}.t-rate__text--active{color:var(--td-rate-text-active-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-weight:var(--td-rate-text-active-font-weight,600)}.t-rate__text--sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);border:0}.t-rate__tips{position:absolute;display:flex;align-items:center;bottom:calc(100% + 16rpx);padding:8rpx;border-radius:12rpx;box-shadow:var(--td-shadow-1,0 1px 10px rgba(0,0,0,.05),0 4px 5px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.12));background-color:var(--td-bg-color-container,var(--td-font-white-1,#fff));transform:translateX(-50%)}.t-rate__tips--bottom{top:calc(100% + 16rpx);bottom:auto}.t-rate__tips-item{display:flex;flex-direction:column;align-items:center;width:64rpx;border-radius:6rpx}.t-rate__tips-item--active{background-color:var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7))}.t-rate__tips-text{text-align:center;font-size:24rpx;line-height:40rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/rate/type.js b/app/miniprogram_npm/tdesign-miniprogram/rate/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/rate/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/result/index.d.ts new file mode 100644 index 0000000..74469ef --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/index.d.ts @@ -0,0 +1,3 @@ +export * from './type'; +export * from './props'; +export * from './result'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/index.js b/app/miniprogram_npm/tdesign-miniprogram/result/index.js new file mode 100644 index 0000000..3f23200 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/index.js @@ -0,0 +1 @@ +export*from"./type";export*from"./props";export*from"./result"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/props.js b/app/miniprogram_npm/tdesign-miniprogram/result/props.js new file mode 100644 index 0000000..12fb666 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/props.js @@ -0,0 +1 @@ +const props={description:{type:String},icon:{type:null,value:!0},image:{type:String},theme:{type:String,value:"default"},title:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/result.d.ts b/app/miniprogram_npm/tdesign-miniprogram/result/result.d.ts new file mode 100644 index 0000000..9dfa5ff --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/result.d.ts @@ -0,0 +1,21 @@ +import { SuperComponent } from '../common/src/index'; +export default class extends SuperComponent { + options: { + multipleSlots: boolean; + }; + externalClasses: string[]; + properties: import("./type").TdResultProps; + data: { + prefix: string; + classPrefix: string; + }; + lifetimes: { + ready(): void; + }; + observers: { + 'icon, theme'(): void; + }; + methods: { + initIcon(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/result.js b/app/miniprogram_npm/tdesign-miniprogram/result/result.js new file mode 100644 index 0000000..009a276 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/result.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import{calcIcon}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-result`,THEME_ICON={default:"error-circle",success:"check-circle",warning:"error-circle",error:"close-circle"};let default_1=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.externalClasses=[`${prefix}-class`,`${prefix}-class-image`,`${prefix}-class-title`,`${prefix}-class-description`],this.properties=props,this.data={prefix:prefix,classPrefix:name},this.lifetimes={ready(){this.initIcon()}},this.observers={"icon, theme"(){this.initIcon()}},this.methods={initIcon(){const{icon:e,theme:o}=this.properties;this.setData({_icon:calcIcon(e,THEME_ICON[o])})}}}};default_1=__decorate([wxComponent()],default_1);export default default_1; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/result.json b/app/miniprogram_npm/tdesign-miniprogram/result/result.json new file mode 100644 index 0000000..dd7b01e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/result.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/result.wxml b/app/miniprogram_npm/tdesign-miniprogram/result/result.wxml new file mode 100644 index 0000000..8a101a8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/result.wxml @@ -0,0 +1 @@ +{{title}}{{description}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/result.wxss b/app/miniprogram_npm/tdesign-miniprogram/result/result.wxss new file mode 100644 index 0000000..2085bea --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/result.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-result{display:flex;flex-direction:column;align-items:center}.t-result__icon{font-size:160rpx}.t-result__title{line-height:var(--td-result-title-line-height,56rpx);font-size:var(--td-result-title-font-size,var(--td-font-size-xl,40rpx));font-weight:700;color:var(--td-result-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-result__thumb:not(:empty)+.t-result__title:not(:empty){margin-top:var(--td-result-title-margin-top,var(--td-spacer-1,24rpx))}.t-result__description{text-align:center;color:var(--td-result-description-color,var(--td-text-color-secondary,var(--td-font-gray-2,rgba(0,0,0,.6))));font-size:var(--td-result-description-font-size,var(--td-font-size-base,28rpx));line-height:var(--td-result-description-line-height,44rpx)}.t-result__title+.t-result__description:not(:empty){margin-top:var(--td-result-description-margin-top,var(--td-spacer,16rpx))}.t-result--theme-default{color:var(--td-result-icon-default-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-result--theme-success{color:var(--td-result-icon-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-result--theme-warning{color:var(--td-result-icon-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-result--theme-error{color:var(--td-result-icon-error-color,var(--td-error-color,var(--td-error-color-6,#d54941)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/result/type.js b/app/miniprogram_npm/tdesign-miniprogram/result/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/result/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/props.js b/app/miniprogram_npm/tdesign-miniprogram/row/props.js new file mode 100644 index 0000000..3710d43 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/props.js @@ -0,0 +1 @@ +const props={gutter:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.d.ts b/app/miniprogram_npm/tdesign-miniprogram/row/row.d.ts new file mode 100644 index 0000000..136e65c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.d.ts @@ -0,0 +1,15 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Row extends SuperComponent { + externalClasses: any[]; + properties: import("./type").TdRowProps; + data: { + prefix: string; + }; + relations: RelationsOptions; + observers: { + gutter(): void; + }; + methods: { + setGutter(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.js b/app/miniprogram_npm/tdesign-miniprogram/row/row.js new file mode 100644 index 0000000..f7c8f4c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config;let Row=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[],this.properties=props,this.data={prefix:prefix},this.relations={"../col/col":{type:"child",linked(t){const{gutter:o}=this.data;o&&t.setData({gutter:o})}}},this.observers={gutter(){this.setGutter()}},this.methods={setGutter(){const{gutter:t}=this.data;this.$children.forEach((o=>{o.setData({gutter:t})}))}}}};Row=__decorate([wxComponent()],Row);export default Row; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.json b/app/miniprogram_npm/tdesign-miniprogram/row/row.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.wxml b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxml new file mode 100644 index 0000000..a438348 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.wxs b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxs new file mode 100644 index 0000000..9d83b9d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxs @@ -0,0 +1,17 @@ +var utils = require('../common/utils.wxs'); + +function getRowStyles(gutter, style, customStyle) { + var _style = ''; + if (gutter) { + _style = utils._style({ + 'margin-right': utils.addUnit(-gutter / 2), + 'margin-left': utils.addUnit(-gutter / 2), + }); + } + + return utils._style([style, customStyle]) + _style; +} + +module.exports = { + getRowStyles: getRowStyles, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/row.wxss b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxss new file mode 100644 index 0000000..4418a25 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/row.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-row{display:flex;flex-direction:row;flex-wrap:wrap;box-sizing:border-box} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/row/type.js b/app/miniprogram_npm/tdesign-miniprogram/row/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/row/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.d.ts b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.d.ts new file mode 100644 index 0000000..e42dd4c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.d.ts @@ -0,0 +1,10 @@ +import { SuperComponent } from '../common/src/index'; +export default class ScrollView extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + properties: { + scrollIntoView: { + type: StringConstructor; + }; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.js b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.js new file mode 100644 index 0000000..1dc78d2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import{canUseProxyScrollView}from"../common/version";const{prefix:prefix}=config;let ScrollView=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.behaviors=canUseProxyScrollView()?["wx://proxy-scroll-view"]:[],this.properties={scrollIntoView:{type:String}}}};ScrollView=__decorate([wxComponent()],ScrollView);export default ScrollView; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.json b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxml b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxml new file mode 100644 index 0000000..c17227d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxss b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxss new file mode 100644 index 0000000..aed803e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/scroll-view/scroll-view.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss'; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/props.js b/app/miniprogram_npm/tdesign-miniprogram/search/props.js new file mode 100644 index 0000000..db1630d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/props.js @@ -0,0 +1 @@ +const props={action:{type:String,value:""},adjustPosition:{type:Boolean,value:!0},alwaysEmbed:{type:Boolean,value:!1},center:{type:Boolean,value:!1},clearTrigger:{type:String,value:"always"},clearable:{type:Boolean,value:!0},confirmHold:{type:Boolean,value:!1},confirmType:{type:String,value:"search"},cursor:{type:Number,required:!0},cursorSpacing:{type:Number,value:0},disabled:{type:Boolean,value:!1},focus:{type:Boolean,value:!1},holdKeyboard:{type:Boolean,value:!1},leftIcon:{type:String,value:"search"},maxcharacter:{type:Number},maxlength:{type:Number,value:-1},placeholder:{type:String,value:""},placeholderClass:{type:String,value:"input-placeholder"},placeholderStyle:{type:String,value:"",required:!0},readonly:{type:null,value:void 0},resultList:{type:Array,value:[]},selectionEnd:{type:Number,value:-1},selectionStart:{type:Number,value:-1},shape:{type:String,value:"square"},type:{type:String,value:"text"},value:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.d.ts b/app/miniprogram_npm/tdesign-miniprogram/search/search.d.ts new file mode 100644 index 0000000..bb16745 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.d.ts @@ -0,0 +1,27 @@ +import { SuperComponent } from '../common/src/index'; +export default class Search extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdSearchProps; + observers: { + resultList(val: any): void; + 'clearTrigger, clearable, disabled, readonly'(): void; + }; + data: { + classPrefix: string; + prefix: string; + isShowResultList: boolean; + isSelected: boolean; + showClearIcon: boolean; + }; + updateClearIconVisible(value?: boolean): void; + onInput(e: any): void; + onFocus(e: any): void; + onBlur(e: any): void; + handleClear(): void; + onConfirm(e: any): void; + onActionClick(): void; + onSelectResultItem(e: any): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.js b/app/miniprogram_npm/tdesign-miniprogram/search/search.js new file mode 100644 index 0000000..a65b718 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getCharacterLength}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-search`;let Search=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-input-container`,`${prefix}-class-input`,`${prefix}-class-action`,`${prefix}-class-left`,`${prefix}-class-clear`],this.options={multipleSlots:!0},this.properties=props,this.observers={resultList(e){const{isSelected:t}=this.data;e.length?t?this.setData({isShowResultList:!1,isSelected:!1}):this.setData({isShowResultList:!0}):this.setData({isShowResultList:!1})},"clearTrigger, clearable, disabled, readonly"(){this.updateClearIconVisible()}},this.data={classPrefix:name,prefix:prefix,isShowResultList:!1,isSelected:!1,showClearIcon:!0}}updateClearIconVisible(e=!1){const{clearTrigger:t,disabled:s,readonly:i}=this.properties;s||i?this.setData({showClearIcon:!1}):this.setData({showClearIcon:e||"always"===String(t)})}onInput(e){let{value:t}=e.detail;const{maxcharacter:s}=this.properties;if(s&&"number"==typeof s&&s>0){const{characters:e}=getCharacterLength("maxcharacter",t,s);t=e}this.setData({value:t}),this.triggerEvent("change",{value:t})}onFocus(e){const{value:t}=e.detail;this.updateClearIconVisible(!0),this.triggerEvent("focus",{value:t})}onBlur(e){const{value:t}=e.detail;this.updateClearIconVisible(),this.triggerEvent("blur",{value:t})}handleClear(){this.setData({value:""}),this.triggerEvent("clear",{value:""}),this.triggerEvent("change",{value:""})}onConfirm(e){const{value:t}=e.detail;this.triggerEvent("submit",{value:t})}onActionClick(){this.triggerEvent("action-click")}onSelectResultItem(e){const{index:t}=e.currentTarget.dataset,s=this.properties.resultList[t];this.setData({value:s,isSelected:!0}),this.triggerEvent("change",{value:s}),this.triggerEvent("selectresult",{index:t,item:s})}};Search=__decorate([wxComponent()],Search);export default Search; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.json b/app/miniprogram_npm/tdesign-miniprogram/search/search.json new file mode 100644 index 0000000..e7cf83b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-cell":"../cell/cell"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.wxml b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxml new file mode 100644 index 0000000..5118c56 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxml @@ -0,0 +1 @@ +{{action}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.wxs b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxs new file mode 100644 index 0000000..ac86989 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxs @@ -0,0 +1,6 @@ +var highLight = function (label, keyword) { + return label.replace(keyword, '' + keyword + ''); +}; +module.exports = { + highLight: highLight, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/search.wxss b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxss new file mode 100644 index 0000000..ec74663 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/search.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-search{display:flex;justify-content:space-between;align-items:center}.t-search__label{padding:8rpx;color:var(--td-search-label-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-search__input-box{flex:1;box-sizing:border-box;display:flex;height:var(--td-search-height,80rpx);align-items:center;border:2rpx solid var(--td-search-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));background:var(--td-search-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));padding:var(--td-search-padding,16rpx 24rpx)}.t-search__input-box.t-is-focused{border-color:var(--td-search-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-search__input-box--round{border-radius:calc(var(--td-search-height,80rpx)/ 2)}.t-search__input-box--square{border-radius:var(--td-search-square-radius,var(--td-radius-default,12rpx))}.t-search__input-box--center{text-align:center}.t-search__input-box .t-input__keyword{display:inline-block;flex:1;color:var(--td-search-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));font-size:var(--td-search-font-size,var(--td-font-size-m,32rpx));padding-left:10rpx;min-height:48rpx;line-height:48rpx}.t-search__input-box .t-input--disabled{color:var(--td-search-disabled-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));cursor:not-allowed;opacity:1;-webkit-text-fill-color:currentColor}.t-search__input-box .t-icon{color:var(--td-search-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-search-icon-font-size,48rpx)}.t-search__clear{position:relative;margin-left:10px;font-size:var(--td-search-clear-icon-font-size,48rpx);color:var(--td-search-clear-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-search__search-action{margin-left:30rpx;font-size:var(--td-search-font-size,var(--td-font-size-m,32rpx));color:var(--td-search-action-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-search__placeholder{color:var(--td-search-placeholder-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-search__placeholder--center{text-align:center}.t-search__result-item--highLight{color:var(--td-search-result-high-light-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-search__result-list .t-search__result-item{padding-left:0}.t-search__result-list .t-search__result-item::after{left:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/search/type.js b/app/miniprogram_npm/tdesign-miniprogram/search/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/search/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/props.js new file mode 100644 index 0000000..c442da0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/props.js @@ -0,0 +1 @@ +const props={badgeProps:{type:Object},disabled:{type:Boolean,value:!1},icon:{type:null},label:{type:String,value:""},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.d.ts new file mode 100644 index 0000000..fd2334f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.d.ts @@ -0,0 +1,44 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class SideBarItem extends SuperComponent { + externalClasses: string[]; + properties: { + tId: { + type: StringConstructor; + }; + badgeProps?: { + type: ObjectConstructor; + value?: import("../badge").BadgeProps; + }; + disabled?: { + type: BooleanConstructor; + value?: boolean; + }; + icon?: { + type: null; + value?: string | object; + }; + label?: { + type: StringConstructor; + value?: string; + }; + value?: { + type: null; + value?: string | number; + }; + }; + relations: RelationsOptions; + observers: { + icon(v: any): void; + }; + data: { + classPrefix: string; + prefix: string; + active: boolean; + isPre: boolean; + isNext: boolean; + }; + methods: { + updateActive(value: any): void; + handleClick(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.js new file mode 100644 index 0000000..ced9c65 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-side-bar-item`;let SideBarItem=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties=Object.assign(Object.assign({},props),{tId:{type:String}}),this.relations={"../side-bar/side-bar":{type:"parent",linked(e){this.parent=e,this.updateActive(e.data.value)}}},this.observers={icon(e){this.setData({_icon:"string"==typeof e?{name:e}:e})}},this.data={classPrefix:name,prefix:prefix,active:!1,isPre:!1,isNext:!1},this.methods={updateActive(e){const t=e===this.data.value;this.setData({active:t})},handleClick(){var e;if(this.data.disabled)return;const{value:t,label:i}=this.data;null===(e=this.parent)||void 0===e||e.doChange({value:t,label:i})}}}};SideBarItem=__decorate([wxComponent()],SideBarItem);export default SideBarItem; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.json b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.json new file mode 100644 index 0000000..53d0ea9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-badge":"../badge/badge","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxml new file mode 100644 index 0000000..b46786d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxml @@ -0,0 +1 @@ +{{label}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxss new file mode 100644 index 0000000..7187e0c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/side-bar-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-side-bar-item{display:flex;align-items:center;position:relative;padding:32rpx;font-size:var(--td-side-bar-font-size,32rpx);color:var(--td-side-bar-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));background:var(--td-side-bar-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));min-height:var(--td-side-bar-item-height,112rpx);box-sizing:border-box;white-space:wrap;line-height:var(--td-side-bar-item-line-height,48rpx)}.t-side-bar-item--active{font-weight:600;background:var(--td-bg-color-container,var(--td-font-white-1,#fff));color:var(--td-side-bar-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));--td-badge-content-text-color:var(--td-side-bar-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)))}.t-side-bar-item__icon{font-size:var(--td-side-bar-icon-size,40rpx);margin-right:4rpx}.t-side-bar-item__prefix,.t-side-bar-item__suffix{z-index:1;position:absolute;right:0;width:100%;height:calc(var(--td-side-bar-border-radius,18rpx) * 2);background:var(--td-bg-color-container,var(--td-font-white-1,#fff));pointer-events:none}.t-side-bar-item__prefix::after,.t-side-bar-item__suffix::after{content:'';display:block;width:100%;height:100%;background-color:var(--td-side-bar-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-side-bar-item__prefix{top:calc(var(--td-side-bar-border-radius,18rpx) * -2)}.t-side-bar-item__prefix::after{border-bottom-right-radius:var(--td-side-bar-border-radius,18rpx)}.t-side-bar-item__suffix{bottom:calc(var(--td-side-bar-border-radius,18rpx) * -2)}.t-side-bar-item__suffix::after{border-top-right-radius:var(--td-side-bar-border-radius,18rpx)}.t-side-bar-item--disabled{color:var(--td-side-bar-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-side-bar-item__line{width:6rpx;height:28rpx;position:absolute;left:0;top:50%;transform:translateY(-50%);background:var(--td-side-bar-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-radius:8rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/props.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar/props.js new file mode 100644 index 0000000..cab6349 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/props.js @@ -0,0 +1 @@ +const props={value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.d.ts new file mode 100644 index 0000000..f5ac06e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.d.ts @@ -0,0 +1,24 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class SideBar extends SuperComponent { + externalClasses: string[]; + children: any[]; + relations: RelationsOptions; + controlledProps: { + key: string; + event: string; + }[]; + properties: import("./type").TdSideBarProps; + observers: { + value(v: any): void; + }; + data: { + classPrefix: string; + prefix: string; + }; + methods: { + doChange({ value, label }: { + value: any; + label: any; + }): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.js new file mode 100644 index 0000000..dc077d3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-side-bar`,relationsPath="../side-bar-item/side-bar-item";let SideBar=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.children=[],this.relations={[relationsPath]:{type:"child",linked(e){this.children.push(e)},unlinked(e){const i=this.children.findIndex((i=>i===e));this.children.splice(i,1)}}},this.controlledProps=[{key:"value",event:"change"}],this.properties=props,this.observers={value(e){this.$children.forEach((i=>{i.updateActive(e)}))}},this.data={classPrefix:name,prefix:prefix},this.methods={doChange({value:e,label:i}){this._trigger("change",{value:e,label:i})}}}};SideBar=__decorate([wxComponent()],SideBar);export default SideBar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.json b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.json new file mode 100644 index 0000000..4b9f595 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-side-bar-item":"../side-bar-item/side-bar-item"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxml b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxml new file mode 100644 index 0000000..eb0c986 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxss b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxss new file mode 100644 index 0000000..a118303 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/side-bar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-side-bar{display:flex;flex-direction:column;width:var(--td-side-bar-width,206rpx);height:var(--td-side-bar-height,100%);overflow-y:auto}.t-side-bar::-webkit-scrollbar{display:none}.t-side-bar__padding{flex:1;background-color:var(--td-side-bar-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/side-bar/type.js b/app/miniprogram_npm/tdesign-miniprogram/side-bar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/side-bar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/props.js b/app/miniprogram_npm/tdesign-miniprogram/skeleton/props.js new file mode 100644 index 0000000..564c251 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/props.js @@ -0,0 +1 @@ +const props={animation:{type:String,value:"none"},delay:{type:Number,value:0},loading:{type:Boolean,value:!0},rowCol:{type:Array},theme:{type:String,value:"text"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.d.ts b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.d.ts new file mode 100644 index 0000000..f7e1353 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.d.ts @@ -0,0 +1,25 @@ +import { SuperComponent } from '../common/src/index'; +import { SkeletonRowColObj } from './type'; +import { ClassName, Styles } from '../common/common'; +export default class Skeleton extends SuperComponent { + externalClasses: string[]; + properties: import("./type").TdSkeletonProps; + data: { + prefix: string; + classPrefix: string; + parsedRowcols: any[]; + }; + observers: { + rowCol(): void; + 'loading, delay'(): void; + }; + lifetimes: { + attached(): void; + }; + methods: { + init(): void; + getColItemClass(obj: SkeletonRowColObj): ClassName; + getColItemStyle(obj: SkeletonRowColObj): Styles; + isShowSkeleton(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.js b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.js new file mode 100644 index 0000000..37331ef --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{classNames}from"../common/utils";import{isNumber}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-skeleton`,ThemeMap={avatar:[{type:"circle",size:"96rpx"}],image:[{type:"rect",size:"144rpx"}],text:[[{width:"24%",height:"32rpx",marginRight:"32rpx"},{width:"76%",height:"32rpx"}],1],paragraph:[1,1,1,{width:"55%"}]};let Skeleton=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-col`,`${prefix}-class-row`],this.properties=props,this.data={prefix:prefix,classPrefix:name,parsedRowcols:[]},this.observers={rowCol(){this.init()},"loading, delay"(){this.isShowSkeleton()}},this.lifetimes={attached(){this.init(),this.isShowSkeleton()}},this.methods={init(){const{theme:t,rowCol:e}=this.properties,s=[];e.length?s.push(...e):s.push(...ThemeMap[t||"text"]);const i=s.map((t=>{if(isNumber(t))return[{class:this.getColItemClass({type:"text"}),style:{}}];if(Array.isArray(t))return t.map((t=>Object.assign(Object.assign({},t),{class:this.getColItemClass(t),style:this.getColItemStyle(t)})));const e=t;return[Object.assign(Object.assign({},e),{class:this.getColItemClass(e),style:this.getColItemStyle(e)})]}));this.setData({parsedRowcols:i})},getColItemClass(t){return classNames([`${name}__col`,`${name}--type-${t.type||"text"}`,`${name}--animation-${this.properties.animation}`])},getColItemStyle(t){const e={};return["width","height","marginRight","marginLeft","margin","size","background","backgroundColor","borderRadius"].forEach((s=>{if(s in t){const i=isNumber(t[s])?`${t[s]}px`:t[s];"size"===s?[e.width,e.height]=[i,i]:e[s]=i}})),e},isShowSkeleton(){const{loading:t,delay:e}=this.properties;t&&0!==e?setTimeout((()=>{this.setData({isShow:t})}),e):this.setData({isShow:t})}}}};Skeleton=__decorate([wxComponent()],Skeleton);export default Skeleton; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.json b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxml b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxml new file mode 100644 index 0000000..0f5a8e7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxss b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxss new file mode 100644 index 0000000..001a314 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/skeleton.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-skeleton{box-sizing:border-box}.t-skeleton__row{display:flex;margin-bottom:var(--td-skeleton-row-spacing,var(--td-spacer-2,32rpx));align-items:center;justify-content:space-between}.t-skeleton__row:last-child,.t-skeleton__row:only-child{margin-bottom:0}.t-skeleton__col{background-color:var(--td-skeleton-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));display:flex;align-items:center;justify-content:center}.t-skeleton__col:first-child:last-child,.t-skeleton__col:last-child{margin-right:0}.t-skeleton--type-text{width:100%;height:var(--td-skeleton-text-height,32rpx);border-radius:var(--td-skeleton-text-border-radius,var(--td-radius-small,6rpx))}.t-skeleton--type-rect{width:100%;height:var(--td-skeleton-rect-height,32rpx);border-radius:var(--td-skeleton-rect-border-radius,var(--td-radius-default,12rpx))}.t-skeleton--type-circle{width:var(--td-skeleton-circle-height,96rpx);height:var(--td-skeleton-circle-height,96rpx);border-radius:var(--td-skeleton-circle-border-radius,var(--td-skeleton-circle-border-radius,var(--td-radius-circle,50%)));flex-shrink:0}.t-skeleton--animation-gradient{position:relative;overflow-x:hidden}.t-skeleton--animation-gradient::after{content:' ';position:absolute;bottom:0;left:0;right:0;top:0;background:linear-gradient(90deg,rgba(255,255,255,0),var(--td-skeleton-animation-gradient,rgba(0,0,0,.04)),rgba(255,255,255,0));animation:t-skeleton--gradient 1.5s linear 2s infinite}.t-skeleton--animation-flashed{animation:t-skeleton--flashed 2s linear 2s infinite}@keyframes t-skeleton--gradient{0%{transform:translateX(-100%) skewX(-15deg)}100%{transform:translateX(100%) skewX(-15deg)}}@keyframes t-skeleton--flashed{0%{opacity:1}50%{background-color:var(--td-skeleton-animation-flashed,rgba(230,230,230,.3));opacity:.3}100%{opacity:1}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/skeleton/type.js b/app/miniprogram_npm/tdesign-miniprogram/skeleton/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/skeleton/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/props.js b/app/miniprogram_npm/tdesign-miniprogram/slider/props.js new file mode 100644 index 0000000..0afd3cb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/props.js @@ -0,0 +1 @@ +const props={disabled:{type:null,value:void 0},label:{type:null,value:!1},marks:{type:null,value:{}},max:{type:Number,value:100},min:{type:Number,value:0},range:{type:Boolean,value:!1},showExtremeValue:{type:Boolean,value:!1},step:{type:Number,value:1},theme:{type:String,value:"default"},value:{type:null,value:null},defaultValue:{type:null,value:0},vertical:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.d.ts b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.d.ts new file mode 100644 index 0000000..df8933d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.d.ts @@ -0,0 +1,66 @@ +/// +import { SuperComponent } from '../common/src/index'; +import type { SliderValue } from './type'; +declare type dataType = { + sliderStyles: string; + classPrefix: string; + initialLeft: number | null; + initialRight: number | null; + activeLeft: number; + activeRight: number; + maxRange: number; + lineLeft: number; + lineRight: number; + dotTopValue: number[]; + blockSize: number; + isScale: boolean; + scaleArray: any[]; + scaleTextArray: any[]; + _value: SliderValue; + prefix: string; + isVisibleToScreenReader: boolean; + identifier: number[]; + __inited: boolean; +}; +export default class Slider extends SuperComponent { + externalClasses: string[]; + options: { + pureDataPattern: RegExp; + }; + properties: import("./type").TdSliderProps; + controlledProps: { + key: string; + event: string; + }[]; + data: dataType; + observers: { + value(newValue: SliderValue): void; + _value(newValue: SliderValue): void; + marks(val: any): void; + }; + lifetimes: { + created(): void; + attached(): void; + }; + injectPageScroll(): void; + observerScrollTop(rest: any): void; + toggleA11yTips(): void; + renderLine(val: any): void; + triggerValue(value?: SliderValue): void; + handlePropsChange(newValue: SliderValue): void; + handleMark(marks: any): void; + setSingleBarWidth(value: number): void; + init(): Promise; + stepValue(value: number): number; + onSingleLineTap(e: WechatMiniprogram.TouchEvent): void; + getSingleChangeValue(e: WechatMiniprogram.TouchEvent): number; + convertPosToValue(posValue: number, dir: 0 | 1): number; + onLineTap(e: WechatMiniprogram.TouchEvent): void; + onTouchStart(e: WechatMiniprogram.TouchEvent): void; + onTouchMoveLeft(e: WechatMiniprogram.TouchEvent): void; + onTouchMoveRight(e: WechatMiniprogram.TouchEvent): void; + setLineStyle(left: number, right: number): void; + onTouchEnd(e: WechatMiniprogram.TouchEvent): void; + getPagePosition(touch: any): any; +} +export {}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.js b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.js new file mode 100644 index 0000000..0d18fa1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import{trimSingleValue,trimValue}from"./tool";import props from"./props";import{getRect}from"../common/utils";import Bus from"../common/bus";const{prefix:prefix}=config,name=`${prefix}-slider`;let Slider=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-bar`,`${prefix}-class-bar-active`,`${prefix}-class-bar-disabled`,`${prefix}-class-cursor`],this.options={pureDataPattern:/^__/},this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.data={sliderStyles:"",classPrefix:name,initialLeft:null,initialRight:null,activeLeft:0,activeRight:0,maxRange:0,lineLeft:0,lineRight:0,dotTopValue:[0,0],_value:0,blockSize:20,isScale:!1,scaleArray:[],scaleTextArray:[],prefix:prefix,isVisibleToScreenReader:!1,identifier:[-1,-1],__inited:!1},this.observers={value(e){this.handlePropsChange(e)},_value(e){this.bus.on("initial",(()=>this.renderLine(e))),this.toggleA11yTips()},marks(e){this.bus.on("initial",(()=>this.handleMark(e)))}},this.lifetimes={created(){this.bus=new Bus},attached(){const{value:e}=this.properties;e||this.handlePropsChange(0),this.init(),this.injectPageScroll()}}}injectPageScroll(){const{range:e,vertical:t}=this.properties;if(!e||!t)return;const i=getCurrentPages()||[];let r=null;if(i&&i.length-1>=0&&(r=i[i.length-1]),!r)return;const s=null==r?void 0:r.onPageScroll;r.onPageScroll=e=>{null==s||s.call(this,e),this.observerScrollTop(e)}}observerScrollTop(e){const{scrollTop:t}=e||{};this.pageScrollTop=t}toggleA11yTips(){this.setData({isVisibleToScreenReader:!0}),setTimeout((()=>{this.setData({isVisibleToScreenReader:!1})}),2e3)}renderLine(e){const{min:t,max:i,range:r}=this.properties,{maxRange:s}=this.data;if(r){const r=s*(e[0]-Number(t))/(Number(i)-Number(t)),a=s*(Number(i)-e[1])/(Number(i)-Number(t));this.setLineStyle(r,a)}else this.setSingleBarWidth(e)}triggerValue(e){this.preval!==e&&(this.preval=e,this._trigger("change",{value:trimValue(e,this.properties)}))}handlePropsChange(e){const t=trimValue(e,this.properties),i=()=>{this.setData({_value:t})};0!==this.data.maxRange?i():this.init().then(i)}handleMark(e){const t=e=>{const{max:t,theme:i}=this.properties,{blockSize:r,maxRange:s}=this.data,a="capsule"===i?r/2:0;return e.map((e=>({val:e,left:Math.round(e/Number(t)*s)+a})))};if((null==e?void 0:e.length)&&Array.isArray(e)&&this.setData({isScale:!0,scaleArray:t(e),scaleTextArray:[]}),"[object Object]"===Object.prototype.toString.call(e)){const i=Object.keys(e).map((e=>Number(e))),r=i.map((t=>e[t]));this.setData({isScale:i.length>0,scaleArray:t(i),scaleTextArray:r})}}setSingleBarWidth(e){const{max:t,min:i,theme:r}=this.properties,{maxRange:s,blockSize:a}=this.data,n="capsule"===r?Number(a)/2:0,o=(Number(e)-Number(i))/(Number(t)-Number(i))*s+n;this.setData({lineBarWidth:`${o}px`})}init(){return __awaiter(this,void 0,void 0,(function*(){if(this.data.__inited)return;const e=yield getRect(this,"#sliderLine"),{blockSize:t}=this.data,{theme:i,vertical:r}=this.properties,s=Number(t)/2,{top:a,bottom:n,right:o,left:l}=e;let h=r?n-a:o-l,c=r?a:l,u=r?n:o;0===c&&0===u||("capsule"===i&&(h=h-Number(t)-6,c-=s,u-=s),this.setData({maxRange:h,initialLeft:c,initialRight:u,__inited:!0}),this.bus.emit("initial"))}))}stepValue(e){const{step:t,min:i,max:r}=this.properties,s=String(t).indexOf(".")>-1?String(t).length-String(t).indexOf(".")-1:0;return trimSingleValue(Number((Math.round(e/Number(t))*Number(t)).toFixed(s)),Number(i),Number(r))}onSingleLineTap(e){const{disabled:t}=this.properties;if(t)return;const i=-1===this.data.identifier[0];if(i){const[t]=e.changedTouches;this.data.identifier[0]=t.identifier}const r=this.getSingleChangeValue(e);i&&(this.data.identifier[0]=-1),this.triggerValue(r)}getSingleChangeValue(e){const{min:t,max:i,theme:r,vertical:s}=this.properties,{initialLeft:a,maxRange:n,blockSize:o}=this.data,l=e.changedTouches.find((e=>e.identifier===this.data.identifier[0])),h=this.getPagePosition(l);let c=0;"capsule"===r?(c=Number(o),s&&(c*=2),c+=6):s&&(c=Number(o));const u=h-a-c;let p=0;return p=u<=0?Number(t):u>=n?Number(i):u/n*(Number(i)-Number(t))+Number(t),this.stepValue(p)}convertPosToValue(e,t){const{maxRange:i}=this.data,{max:r,min:s}=this.properties;return 0===t?e/i*(Number(r)-Number(s))+Number(s):Number(r)-e/i*(Number(r)-Number(s))}onLineTap(e){const{disabled:t,theme:i,vertical:r}=this.properties,{initialLeft:s,initialRight:a,maxRange:n,blockSize:o}=this.data;if(t)return;const[l]=e.changedTouches,h=this.getPagePosition(l),c="capsule"===i?Number(o)/2:0;h-s<0||-(h-a)>n+Number(o)||Promise.all([getRect(this,"#leftDot"),getRect(this,"#rightDot")]).then((([e,t])=>{const n=this.pageScrollTop||0,l=r?e.top+n:e.left,u=Math.abs(h-l-c),p=r?t.top+n:t.left,d=ue.identifier===this.data.identifier[0])),l=this.getPagePosition(o);let h=0;"capsule"===i&&(h+=Number(n)),r&&(h+=Number(n)+6);const c=l-s-h,u=[...a],p=this.convertPosToValue(c,0);u[0]=this.stepValue(p),this.triggerValue(u)}onTouchMoveRight(e){const{disabled:t,vertical:i}=this.properties,{initialRight:r,_value:s,blockSize:a}=this.data;if(t)return;const n=e.changedTouches.find((e=>e.identifier===this.data.identifier[1])),o=this.getPagePosition(n);let l=0;i&&(l+=Number(a)/2+6);const h=-(o-r-l),c=[...s],u=this.convertPosToValue(h,1);c[1]=this.stepValue(u),this.triggerValue(c)}setLineStyle(e,t){const{theme:i}=this.properties,{blockSize:r,maxRange:s}=this.data,a="capsule"===i?Number(r)/2:0,[n,o]=this.data._value,l=e=>parseInt(e,10);this.setData({dotTopValue:[n,o]}),e+t<=s?this.setData({lineLeft:l(e+a),lineRight:l(t+a)}):this.setData({lineLeft:l(s+a-t),lineRight:l(s-e+1.5*a)})}onTouchEnd(e){this.triggerEvent("dragend",{e:e,value:this.data._value}),"rightDot"===e.currentTarget.id?this.data.identifier[1]=-1:this.data.identifier[0]=-1}getPagePosition(e){const{pageX:t,pageY:i}=e,{vertical:r}=this.properties;return r?i:t}};Slider=__decorate([wxComponent()],Slider);export default Slider; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.json b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxml b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxml new file mode 100644 index 0000000..d5503ce --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxml @@ -0,0 +1 @@ +{{ label ? t.getValue(label, min) : min}}{{scaleTextArray[index]}}{{t.getValue(label, _value) || _value}}{{ label ? t.getValue(label, max) : max}}{{min}}{{scaleTextArray[index]}}{{t.getValue(label, dotTopValue[0]) || dotTopValue[0]}}{{t.getValue(label, dotTopValue[1]) || dotTopValue[1]}}{{max}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxs b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxs new file mode 100644 index 0000000..b4be3ff --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxs @@ -0,0 +1,10 @@ +var REGEXP = getRegExp('[$][{value}]{7}'); + +function getValue(label, value) { + if (label && label === 'true') return value; + if (REGEXP.test(label)) return label.replace(REGEXP, value); +} + +module.exports = { + getValue: getValue, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxss b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxss new file mode 100644 index 0000000..71c40ae --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/slider.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-slider{width:100%;font-size:14px;display:flex;align-items:center}.t-slider--disabled .t-slider__dot-value,.t-slider--disabled .t-slider__range-extreme,.t-slider--disabled .t-slider__scale-desc,.t-slider--disabled .t-slider__value{color:var(--td-slider-disabled-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-slider--disabled .t-slider__dot{background-color:var(--td-slider-dot-disabled-bg-color,#fff);border-color:var(--td-slider-dot-disabled-border-color,#f3f3f3)}.t-slider--top{padding-top:40rpx}.t-slider__line{position:absolute;top:0;height:var(--td-slider-bar-height,8rpx);border-radius:calc(var(--td-slider-bar-height,8rpx)/ 2);background-color:var(--td-slider-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-slider__line--disabled{background-color:var(--td-slider-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-slider__line--capsule{height:var(--td-slider-capsule-line-heihgt,36rpx)}.t-slider__line--capsule.t-slider__line--single{border-top-left-radius:calc(var(--td-slider-capsule-line-heihgt,36rpx)/ 2);border-bottom-left-radius:calc(var(--td-slider-capsule-line-heihgt,36rpx)/ 2)}.t-slider__dot{border-radius:50%;border:2rpx solid var(--td-slider-dot-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));position:absolute;top:50%;right:0;transform:translate3d(50%,-50%,0);z-index:2;background-color:var(--td-slider-dot-bg-color,#fff);width:var(--td-slider-dot-size,40rpx);height:var(--td-slider-dot-size,40rpx);box-shadow:var(--td-shadow-1,0 1px 10px rgba(0,0,0,.05),0 4px 5px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.12));box-sizing:border-box}.t-slider__dot--left{left:0;transform:translate3d(-50%,-50%,0)}.t-slider__dot-value{position:relative;left:50%;transform:translateX(-50%);top:-52rpx;text-align:center;width:96rpx;height:44rpx;line-height:44rpx}.t-slider__dot-value,.t-slider__range-extreme,.t-slider__value{color:var(--td-slider-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-slider__dot-value--sr-only,.t-slider__range-extreme--sr-only,.t-slider__value--sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;clip-path:inset(50%);border:0}.t-slider__dot-slider{width:100%;height:100%;position:absolute;left:0;top:0}.t-slider__value--min{margin-left:32rpx}.t-slider__value--max{margin-right:32rpx}.t-slider__value--right{flex-basis:80rpx}.t-slider__value--right__value--text{margin-right:32rpx;text-align:right;display:block}.t-slider__bar{margin:16rpx 32rpx;flex:10;background-clip:content-box;height:var(--td-slider-bar-height,8rpx);border-radius:calc(var(--td-slider-bar-height,8rpx)/ 2);position:relative;background-color:var(--td-slider-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-slider__bar--capsule{height:var(--td-slider-capsule-bar-heihgt,48rpx);border-radius:calc(var(--td-slider-capsule-bar-heihgt,48rpx)/ 2);background-color:var(--td-slider-capsule-bar-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border:6rpx solid var(--td-slider-capsule-bar-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));box-sizing:border-box}.t-slider__bar--marks{background-color:var(--td-slider-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-slider__bar--disabled{background-color:var(--td-slider-default-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-slider__range-extreme--min{margin-left:32rpx;text-align:left}.t-slider__range-extreme--max{margin-right:32rpx;text-align:right}.t-slider__scale-item{background-color:var(--td-slider-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));width:var(--td-slider-bar-height,8rpx);height:16rpx;width:16rpx;border-radius:50%;position:absolute;top:50%;margin-top:-8rpx;z-index:1}.t-slider__scale-item--active{background-color:var(--td-slider-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-slider__scale-item--disabled{background-color:var(--td-slider-default-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-slider__scale-item--active.t-slider__scale-item--disabled{background-color:var(--td-slider-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-slider__scale-item--capsule{height:var(--td-slider-capsule-line-heihgt,36rpx);width:4rpx;border-radius:0;background-color:var(--td-slider-capsule-bar-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));margin-top:calc(-.5 * var(--td-slider-capsule-line-heihgt,36rpx))}.t-slider__scale-item--hidden{background-color:transparent}.t-slider__scale-desc{position:absolute;left:50%;color:var(--td-slider-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));transform:translateX(-50%);bottom:32rpx}.t-slider__scale-desc--capsule{bottom:46rpx}.t-slider--vertical{--td-slider-bar-height:400rpx;height:var(--td-slider-bar-height,8rpx);justify-content:center;position:relative}.t-slider--vertical .t-slider__bar{flex:none;height:100%;width:var(--td-slider-bar-width,8rpx)}.t-slider--vertical .t-slider__bar--capsule{width:var(--td-slider-capsule-bar-width,48rpx);border-radius:calc(var(--td-slider-capsule-bar-width,48rpx)/ 2)}.t-slider--vertical .t-slider__line{width:100%;height:unset;left:0;border-radius:calc(var(--td-slider-bar-width,8rpx)/ 2)}.t-slider--vertical .t-slider__line--capsule.t-slider__line--single{border-top-left-radius:calc(var(--td-slider-capsule-line-heihgt,36rpx)/ 2);border-top-right-radius:calc(var(--td-slider-capsule-line-heihgt,36rpx)/ 2)}.t-slider--vertical .t-slider__dot{left:50%;top:100%;transform:translate(-50%,-50%)}.t-slider--vertical .t-slider__dot--left{top:0;transform:translate(-50%,-50%);left:50%}.t-slider--vertical .t-slider__dot--right{left:50%;transform:translate(-50%,-50%);top:100%}.t-slider--vertical .t-slider__dot-value{left:54rpx;top:50%;transform:translate(0,-50%);width:auto}.t-slider--vertical .t-slider__range-extreme{position:absolute;left:50%;transform:translateX(-50%);margin:0}.t-slider--vertical .t-slider__range-extreme--min{top:0}.t-slider--vertical .t-slider__range-extreme--max{bottom:0}.t-slider--vertical .t-slider__scale-item{left:50%;margin-top:0}.t-slider--vertical .t-slider__scale-item--capsule{height:4rpx;width:var(--td-slider-capsule-line-heihgt,36rpx)}.t-slider--vertical .t-slider__scale-desc{top:50%;transform:translateY(-50%);bottom:unset;left:38rpx}.t-slider--vertical .t-slider__scale-desc--capsule{left:52rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/tool.d.ts b/app/miniprogram_npm/tdesign-miniprogram/slider/tool.d.ts new file mode 100644 index 0000000..b9383e6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/tool.d.ts @@ -0,0 +1,2 @@ +export declare const trimSingleValue: (value: any, min: number, max: number) => number; +export declare const trimValue: (value: number | number[], props: any) => number | number[]; diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/tool.js b/app/miniprogram_npm/tdesign-miniprogram/slider/tool.js new file mode 100644 index 0000000..5f5cd96 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/tool.js @@ -0,0 +1 @@ +export const trimSingleValue=(r,e,i)=>ri?i:r;export const trimValue=(r,e)=>{const{min:i,max:t,range:n}=e;return n&&Array.isArray(r)?(r[0]=trimSingleValue(r[0],i,t),r[1]=trimSingleValue(r[1],i,t),r[0]<=r[1]?r:[r[1],r[0]]):n?[i,t]:n?void 0:trimSingleValue(r,i,t)}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/slider/type.js b/app/miniprogram_npm/tdesign-miniprogram/slider/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/slider/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/step-item/props.js new file mode 100644 index 0000000..9c438f9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/props.js @@ -0,0 +1 @@ +const props={content:{type:String,value:""},icon:{type:String},status:{type:String,value:"default"},title:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.d.ts new file mode 100644 index 0000000..c2f2ecc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.d.ts @@ -0,0 +1,34 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class StepItem extends SuperComponent { + options: { + multipleSlots: boolean; + }; + relations: RelationsOptions; + externalClasses: string[]; + properties: import("./type").TdStepItemProps; + data: { + classPrefix: string; + prefix: string; + index: number; + isDot: boolean; + curStatus: string; + layout: string; + isLastChild: boolean; + sequence: string; + }; + observers: { + status(value: any): void; + }; + methods: { + updateStatus({ current, currentStatus, index, theme, layout, items, sequence }: { + current: any; + currentStatus: any; + index: any; + theme: any; + layout: any; + items: any; + sequence: any; + }): void; + onTap(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.js b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.js new file mode 100644 index 0000000..5d02097 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-steps-item`;let StepItem=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.relations={"../steps/steps":{type:"parent"}},this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`,`${prefix}-class-title`,`${prefix}-class-description`,`${prefix}-class-extra`],this.properties=props,this.data={classPrefix:name,prefix:prefix,index:0,isDot:!1,curStatus:"",layout:"vertical",isLastChild:!1,sequence:"positive"},this.observers={status(t){const{curStatus:e}=this.data;""!==e&&t!==e&&this.setData({curStatus:t})}},this.methods={updateStatus({current:t,currentStatus:e,index:s,theme:i,layout:r,items:o,sequence:a}){let p=this.data.status;"default"===p&&(s{{index + 1}}{{ title }}{{ content }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxs b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxs new file mode 100644 index 0000000..491902c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxs @@ -0,0 +1,7 @@ +function getAriaLabel(index, title, content) { + return '第' + (index + 1) + '步,' + title + ',' + content; +} + +module.exports = { + getAriaLabel: getAriaLabel, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxss new file mode 100644 index 0000000..61c1d7b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/step-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-steps-item{flex:1;vertical-align:top;position:relative;display:flex}.t-steps-item__circle--default{color:var(--td-step-item-default-circle-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));background-color:var(--td-step-item-default-circle-bg,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-steps-item__title--default{color:var(--td-step-item-default-title-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-steps-item__icon--default{color:var(--td-step-item-default-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-steps-item__dot--default{border-color:var(--td-step-item-default-dot-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));background-color:var(--td-step-item-default-dot-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-steps-item__circle--process{color:var(--td-step-item-process-circle-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));background-color:var(--td-step-item-process-circle-bg,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__title--process{color:var(--td-step-item-process-title-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__icon--process{color:var(--td-step-item-process-icon-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__dot--process{border-color:var(--td-step-item-process-dot-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-step-item-process-dot-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__circle--finish{color:var(--td-step-item-finish-circle-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-step-item-finish-circle-bg,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-steps-item__title--finish{color:var(--td-step-item-finish-title-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-steps-item__icon--finish{color:var(--td-step-item-finish-icon-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__dot--finish{border-color:var(--td-step-item-finish-dot-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-step-item-finish-dot-border-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__circle--error{color:var(--td-step-item-error-circle-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-step-item-error-circle-bg,var(--td-error-color-1,#fff0ed))}.t-steps-item__title--error{color:var(--td-step-item-error-title-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-steps-item__icon--error{color:var(--td-step-item-error-icon-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-steps-item__dot--error{border-color:var(--td-step-item-error-dot-border-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-step-item-error-dot-border-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-steps-item--horizontal{flex-direction:column;justify-content:center;align-items:center}.t-steps-item__anchor{display:flex;align-items:center;justify-content:center}.t-steps-item__anchor--vertical{width:var(--td-step-item-circle-size,44rpx);height:var(--td-step-item-circle-size,44rpx)}.t-steps-item__circle{display:flex;justify-content:center;align-items:center;width:var(--td-step-item-circle-size,44rpx);height:var(--td-step-item-circle-size,44rpx);text-align:center;border-radius:50%;font-size:var(--td-step-item-circle-font-size,28rpx)}.t-steps-item__icon{z-index:1;vertical-align:top;font-size:var(--td-font-size-base,28rpx);position:relative}.t-steps-item__dot{width:var(--td-step-item-dot-size,16rpx);height:var(--td-step-item-dot-size,16rpx);border-radius:50%;border-width:1px;border-style:solid;box-sizing:border-box}.t-steps-item__content{text-align:center}.t-steps-item__content--horizontal{max-width:80px;margin-top:16rpx}.t-steps-item__content--vertical{margin-left:16rpx;flex:1;padding-bottom:32rpx}.t-steps-item__content--vertical.t-steps-item__content--last{padding-bottom:0}.t-steps-item__title{position:relative;line-height:var(--td-step-item-circle-size,44rpx);font-size:var(--td-font-size-base,28rpx)}.t-steps-item__title--process{font-weight:600}.t-steps-item__title--vertical{text-align:left;display:flex;align-items:center;justify-content:space-between;margin-bottom:8rpx}.t-steps-item__description{color:var(--td-step-item-description-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));line-height:40rpx;font-size:var(--td-font-size-s,24rpx)}.t-steps-item__description--vertical{text-align:left}.t-steps-item__extra:not(:empty){margin-top:16rpx}.t-steps-item__line{background-color:var(--td-step-item-line-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));content:'';display:block;position:absolute}.t-steps-item__line--horizontal{height:1px;transform:translateY(-50%);width:calc(100% - 32rpx - var(--td-step-item-circle-size,44rpx));top:calc(var(--td-step-item-circle-size,44rpx)/ 2 + 1px);left:calc(50% + var(--td-step-item-circle-size,44rpx)/ 2 + 16rpx)}.t-steps-item__line--horizontal.t-steps-item__line--dot{top:calc(var(--td-step-item-dot-size,16rpx)/ 2)}.t-steps-item__line--finish,.t-steps-item__line--reverse.t-steps-item__line--process{background-color:var(--td-step-item-finish-line-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-steps-item__line--vertical{height:calc(100% - 32rpx - var(--td-step-item-circle-size,44rpx));width:1px;transform:translateX(-50%);left:calc(var(--td-step-item-circle-size,44rpx)/ 2);top:calc(var(--td-step-item-circle-size,44rpx) + 16rpx)}.t-steps-item__line--vertical.t-steps-item__line--dot{top:var(--td-step-item-circle-size,44rpx);height:calc(100% - var(--td-step-item-circle-size,44rpx))}:host{flex:1;vertical-align:top;position:relative;align-self:flex-start;width:inherit} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/step-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/step-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/step-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/props.js b/app/miniprogram_npm/tdesign-miniprogram/stepper/props.js new file mode 100644 index 0000000..f72fa3e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/props.js @@ -0,0 +1 @@ +const props={disableInput:{type:Boolean,value:!1},disabled:{type:null,value:void 0},inputWidth:{type:Number},integer:{type:Boolean,value:!0},max:{type:Number,value:100},min:{type:Number,value:0},size:{type:String,value:"medium"},step:{type:Number,value:1},theme:{type:String,value:"normal"},value:{type:null,value:null},defaultValue:{type:null,value:0}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.d.ts b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.d.ts new file mode 100644 index 0000000..3938064 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.d.ts @@ -0,0 +1,78 @@ +import { SuperComponent } from '../common/src/index'; +export default class Stepper extends SuperComponent { + externalClasses: string[]; + properties: { + disableInput?: { + type: BooleanConstructor; + value?: boolean; + }; + disabled?: { + type: BooleanConstructor; + value?: boolean; + }; + inputWidth?: { + type: NumberConstructor; + value?: number; + }; + integer?: { + type: BooleanConstructor; + value?: boolean; + }; + max?: { + type: NumberConstructor; + value?: number; + }; + min?: { + type: NumberConstructor; + value?: number; + }; + size?: { + type: StringConstructor; + value?: import("../common/common").SizeEnum; + }; + step?: { + type: NumberConstructor; + value?: number; + }; + theme?: { + type: StringConstructor; + value?: "outline" | "filled" | "normal"; + }; + value?: { + type: null; + value?: string | number; + }; + defaultValue?: { + type: null; + value?: string | number; + }; + }; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + value(v: any): void; + }; + data: { + currentValue: number; + classPrefix: string; + prefix: string; + }; + lifetimes: { + attached(): void; + }; + methods: { + isDisabled(type: any): boolean; + getLen(num: number): number; + add(a: number, b: number): number; + format(value: any): string; + setValue(value: any): void; + minusValue(): boolean; + plusValue(): boolean; + filterIllegalChar(value: string | number): string; + handleFocus(e: any): void; + handleInput(e: any): void; + handleBlur(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.js b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.js new file mode 100644 index 0000000..a07dfb9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-stepper`;let Stepper=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-input`,`${prefix}-class-minus`,`${prefix}-class-plus`],this.properties=Object.assign({},props),this.controlledProps=[{key:"value",event:"change"}],this.observers={value(e){this.preValue=Number(e),this.setData({currentValue:this.format(Number(e))})}},this.data={currentValue:0,classPrefix:name,prefix:prefix},this.lifetimes={attached(){const{value:e,min:t}=this.properties;this.setData({currentValue:e?Number(e):t})}},this.methods={isDisabled(e){const{min:t,max:s,disabled:r}=this.properties,{currentValue:i}=this.data;return!!r||("minus"===e&&i<=t||"plus"===e&&i>=s)},getLen(e){const t=e.toString();return-1===t.indexOf(".")?0:t.split(".")[1].length},add(e,t){const s=Math.max(this.getLen(e),this.getLen(t)),r=Math.pow(10,s);return Math.round(e*r+t*r)/r},format(e){const{min:t,max:s,step:r}=this.properties,i=Math.max(this.getLen(r),this.getLen(e));return Math.max(Math.min(s,e,Number.MAX_SAFE_INTEGER),t,Number.MIN_SAFE_INTEGER).toFixed(i)},setValue(e){e=this.format(e),this.preValue!==e&&(this.preValue=e,this._trigger("change",{value:Number(e)}))},minusValue(){if(this.isDisabled("minus"))return this.triggerEvent("overlimit",{type:"minus"}),!1;const{currentValue:e,step:t}=this.data;this.setValue(this.add(e,-t))},plusValue(){if(this.isDisabled("plus"))return this.triggerEvent("overlimit",{type:"plus"}),!1;const{currentValue:e,step:t}=this.data;this.setValue(this.add(e,t))},filterIllegalChar(e){const t=String(e).replace(/[^0-9.]/g,""),s=t.indexOf(".");return this.properties.integer&&-1!==s?t.split(".")[0]:this.properties.integer||-1===s||s===t.lastIndexOf(".")?t:t.split(".",2).join(".")},handleFocus(e){const{value:t}=e.detail;this.triggerEvent("focus",{value:t})},handleInput(e){const{value:t}=e.detail;if(""===t)return;const s=this.filterIllegalChar(t);this.setData({currentValue:s}),this.triggerEvent("input",{value:s})},handleBlur(e){const{value:t}=e.detail,s=this.format(t);this.setValue(s),this.triggerEvent("blur",{value:s})}}}};Stepper=__decorate([wxComponent()],Stepper);export default Stepper; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.json b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.json new file mode 100644 index 0000000..eacfbb7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-cell":"../cell/cell","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxml b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxml new file mode 100644 index 0000000..ba2b243 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxss b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxss new file mode 100644 index 0000000..97b7eb2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/stepper.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-stepper{display:flex;align-items:center;color:var(--td-stepper-input-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-stepper__input{margin:0 8rpx;text-align:center;vertical-align:top;height:inherit;min-height:inherit}.t-stepper__minus,.t-stepper__plus{padding:8rpx;box-sizing:border-box}.t-stepper__input,.t-stepper__minus-icon,.t-stepper__plus-icon{color:inherit}.t-stepper__input--filled,.t-stepper__input--normal,.t-stepper__input--outline{height:inherit;box-sizing:border-box}.t-stepper--small{height:40rpx;font-size:20rpx}.t-stepper--medium{height:48rpx;font-size:24rpx}.t-stepper--large{height:56rpx;font-size:32rpx}.t-stepper__input--small{width:68rpx}.t-stepper__input--medium{height:48rpx;width:76rpx}.t-stepper__input--large{width:90rpx}.t-stepper__icon--small{width:40rpx;height:40rpx;font-size:24rpx}.t-stepper__icon--medium{width:48rpx;height:48rpx;font-size:32rpx}.t-stepper__icon--large{width:56rpx;height:56rpx;font-size:40rpx}.t-stepper__minus--outline,.t-stepper__plus--outline{border:2rpx solid var(--td-stepper-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-stepper__input--outline{border:none;border-top:2rpx solid var(--td-stepper-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)));border-bottom:2rpx solid var(--td-stepper-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-stepper__minus--filled,.t-stepper__minus--outline{border-radius:0;border-top-left-radius:var(--td-stepper-border-radius,var(--td-radius-small,6rpx));border-bottom-left-radius:var(--td-stepper-border-radius,var(--td-radius-small,6rpx))}.t-stepper__plus--filled,.t-stepper__plus--outline{border-radius:0;border-top-right-radius:var(--td-stepper-border-radius,var(--td-radius-small,6rpx));border-bottom-right-radius:var(--td-stepper-border-radius,var(--td-radius-small,6rpx))}.t-stepper__minus--filled,.t-stepper__plus--filled{background-color:var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3))}.t-stepper__input--filled{background-color:var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3));margin:0 8rpx}.t-stepper__input--filled .t-stepper__input{margin:0}.t-stepper--normal-disabled{color:var(--td-stepper-input-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-stepper--filled-disabled,.t-stepper--outline-disabled{color:var(--td-stepper-input-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));background-color:var(--td-stepper-input-disabled-bg,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/stepper/type.js b/app/miniprogram_npm/tdesign-miniprogram/stepper/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/stepper/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/props.js b/app/miniprogram_npm/tdesign-miniprogram/steps/props.js new file mode 100644 index 0000000..706db9d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/props.js @@ -0,0 +1 @@ +const props={current:{type:null,value:null},defaultCurrent:{type:null},currentStatus:{type:String,value:"process"},layout:{type:String,value:"horizontal"},readonly:{type:Boolean,value:!1},sequence:{type:String,value:"positive"},theme:{type:String,value:"default"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/steps.d.ts b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.d.ts new file mode 100644 index 0000000..9f4edc0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.d.ts @@ -0,0 +1,22 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Steps extends SuperComponent { + relations: RelationsOptions; + externalClasses: string[]; + properties: import("./type").TdStepsProps; + controlledProps: { + key: string; + event: string; + }[]; + data: { + prefix: string; + classPrefix: string; + }; + observers: { + 'current, theme, sequence'(): void; + }; + methods: { + updateChildren(): void; + updateLastChid(): void; + handleClick(index: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/steps.js b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.js new file mode 100644 index 0000000..0ed927a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-steps`;let Steps=class extends SuperComponent{constructor(){super(...arguments),this.relations={"../step-item/step-item":{type:"child",linked(e){this.updateChildren();const{readonly:t}=this.data;e.setData({readonly:t})},unlinked(){this.updateLastChid()}}},this.externalClasses=[`${prefix}-class`],this.properties=props,this.controlledProps=[{key:"current",event:"change"}],this.data={prefix:prefix,classPrefix:name},this.observers={"current, theme, sequence"(){this.updateChildren()}},this.methods={updateChildren(){const e=this.$children;e.forEach(((t,s)=>{t.updateStatus(Object.assign({index:s,items:e},this.data))}))},updateLastChid(){const e=this.$children;e.forEach(((t,s)=>t.setData({isLastChild:s===e.length-1})))},handleClick(e){if(!this.data.readonly){const t=this.data.current;this._trigger("change",{previous:t,current:e})}}}}};Steps=__decorate([wxComponent()],Steps);export default Steps; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/steps.json b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.json new file mode 100644 index 0000000..d2480dd --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-step":"../step-item/step-item"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxml b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxml new file mode 100644 index 0000000..56b7a9d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxss b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxss new file mode 100644 index 0000000..be96c07 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/steps.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';:host{display:flex}.t-step--vertical{padding-right:32rpx}.t-steps{display:flex;width:100%}.t-steps--vertical{flex-direction:column}.t-steps--reverse{flex-direction:row-reverse}.t-steps--vertical.t-steps--reverse{flex-direction:column-reverse} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/steps/type.js b/app/miniprogram_npm/tdesign-miniprogram/steps/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/steps/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/sticky/index.d.ts new file mode 100644 index 0000000..a6df66d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/index.d.ts @@ -0,0 +1,3 @@ +export * from './props'; +export * from './type'; +export * from './sticky'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/index.js b/app/miniprogram_npm/tdesign-miniprogram/sticky/index.js new file mode 100644 index 0000000..af29307 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type";export*from"./sticky"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/props.js b/app/miniprogram_npm/tdesign-miniprogram/sticky/props.js new file mode 100644 index 0000000..cdab8a5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/props.js @@ -0,0 +1 @@ +const props={container:{type:null},disabled:{type:Boolean,value:!1},offsetTop:{type:null,value:0},zIndex:{type:Number,value:99}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.d.ts b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.d.ts new file mode 100644 index 0000000..89ba546 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.d.ts @@ -0,0 +1,30 @@ +import { SuperComponent } from '../common/src/index'; +import type { TdStickyProps } from './type'; +export interface StickyProps extends TdStickyProps { +} +export default class Sticky extends SuperComponent { + externalClasses: string[]; + properties: TdStickyProps; + behaviors: string[]; + observers: { + 'offsetTop, disabled, container'(): void; + }; + data: { + prefix: string; + classPrefix: string; + containerStyle: string; + contentStyle: string; + }; + ready(): void; + methods: { + onScroll(event?: { + scrollTop: number; + }): void; + setDataAfterDiff(data: { + isFixed: boolean; + height?: number; + transform?: number; + }): void; + getContainerRect(): Promise; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.js b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.js new file mode 100644 index 0000000..3d505ca --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import pageScrollMixin from"../mixins/page-scroll";import{getRect}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-sticky`,ContainerClass=`.${name}`;let Sticky=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-content`],this.properties=props,this.behaviors=[pageScrollMixin()],this.observers={"offsetTop, disabled, container"(){this.onScroll()}},this.data={prefix:prefix,classPrefix:name,containerStyle:"",contentStyle:""},this.methods={onScroll(t){const{scrollTop:e}=t||{},{container:i,offsetTop:o,disabled:s}=this.properties;s?this.setDataAfterDiff({isFixed:!1,transform:0}):(this.scrollTop=e||this.scrollTop,"function"!=typeof i?getRect(this,ContainerClass).then((t=>{t&&(o>=t.top?(this.setDataAfterDiff({isFixed:!0,height:t.height}),this.transform=0):this.setDataAfterDiff({isFixed:!1}))})):Promise.all([getRect(this,ContainerClass),this.getContainerRect()]).then((([t,e])=>{t&&e&&(o+t.height>e.height+e.top?this.setDataAfterDiff({isFixed:!1,transform:e.height-t.height}):o>=t.top?this.setDataAfterDiff({isFixed:!0,height:t.height,transform:0}):this.setDataAfterDiff({isFixed:!1,transform:0}))})))},setDataAfterDiff(t){const{offsetTop:e}=this.properties,{containerStyle:i,contentStyle:o}=this.data,{isFixed:s,height:r,transform:n}=t;wx.nextTick((()=>{let t="",a="";if(s&&(t+=`height:${r}px;`,a+=`position:fixed;top:${e}px;left:0;right:0;`),n){const t=`translate3d(0, ${n}px, 0)`;a+=`-webkit-transform:${t};transform:${t};`}i===t&&o===a||this.setData({containerStyle:t,contentStyle:a}),this.triggerEvent("scroll",{scrollTop:this.scrollTop,isFixed:s})}))},getContainerRect(){const t=this.properties.container();return new Promise((e=>t.boundingClientRect(e).exec()))}}}ready(){this.onScroll()}};Sticky=__decorate([wxComponent()],Sticky);export default Sticky; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.json b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxml b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxml new file mode 100644 index 0000000..802adb8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxss b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxss new file mode 100644 index 0000000..d0fe63e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/sticky.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-sticky{position:relative} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/sticky/type.js b/app/miniprogram_npm/tdesign-miniprogram/sticky/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/sticky/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/props.js b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/props.js new file mode 100644 index 0000000..cc244d5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/props.js @@ -0,0 +1 @@ +const props={disabled:{type:Boolean},left:{type:Array},opened:{type:null,value:!1},right:{type:Array},style:{type:String,value:""}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.d.ts b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.d.ts new file mode 100644 index 0000000..8faa283 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.d.ts @@ -0,0 +1,31 @@ +import { SuperComponent } from '../common/src/index'; +export default class SwiperCell extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdSwipeCellProps; + data: { + prefix: string; + wrapperStyle: string; + closed: boolean; + classPrefix: string; + skipMove: boolean; + }; + observers: { + 'left, right'(): void; + }; + lifetimes: { + attached(): void; + ready(): void; + detached(): void; + }; + setSwipeWidth(): void; + skipMove(): void; + catchMove(): void; + open(): void; + close(): void; + closeOther(): void; + onTap(): void; + onActionTap(event: any): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.js b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.js new file mode 100644 index 0000000..42778fe --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getRect}from"../common/utils";import{getObserver}from"../common/wechat";let ARRAY=[];const{prefix:prefix}=config,name=`${prefix}-swipe-cell`,ContainerClass=`.${name}`;let SwiperCell=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,wrapperStyle:"",closed:!0,classPrefix:name,skipMove:!1},this.observers={"left, right"(){this.setSwipeWidth()}},this.lifetimes={attached(){ARRAY.push(this)},ready(){this.setSwipeWidth()},detached(){ARRAY=ARRAY.filter((e=>e!==this))}}}setSwipeWidth(){Promise.all([getRect(this,`${ContainerClass}__left`),getRect(this,`${ContainerClass}__right`)]).then((([e,t])=>{0!==e.width||0!==t.width||this._hasObserved||(this._hasObserved=!0,getObserver(this,`.${name}`).then((()=>{this.setSwipeWidth()}))),this.setData({leftWidth:e.width,rightWidth:t.width})}))}skipMove(){this.data.skipMove||this.setData({skipMove:!0})}catchMove(){this.data.skipMove&&this.setData({skipMove:!1})}open(){this.setData({opened:!0})}close(){this.setData({opened:!1})}closeOther(){ARRAY.filter((e=>e!==this)).forEach((e=>e.close()))}onTap(){this.close()}onActionTap(e){const{currentTarget:{dataset:{action:t}}}=e;this.triggerEvent("click",t)}};SwiperCell=__decorate([wxComponent()],SwiperCell);export default SwiperCell; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.json b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.json new file mode 100644 index 0000000..9269b92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxml b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxml new file mode 100644 index 0000000..3a3c776 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxml @@ -0,0 +1 @@ +{{item.text}}{{item.text}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxs b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxs new file mode 100644 index 0000000..14efbf6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxs @@ -0,0 +1,185 @@ +var THRESHOLD = 0.3; +var MIN_DISTANCE = 10; +var owner; +var state; + +var getState = function (ownerInstance) { + owner = ownerInstance; + state = owner.getState(); + state.leftWidth = state.leftWidth || 0; + state.rightWidth = state.rightWidth || 0; + state.offset = state.offset || 0; + state.startOffset = state.startOffset || 0; + state.opened = state.opened || false; +}; + +var initRightWidth = function (newVal, oldVal, ownerInstance) { + getState(ownerInstance); + state.rightWidth = newVal; + initOpen(ownerInstance); +}; + +var initLeftWidth = function (newVal, oldVal, ownerInstance) { + getState(ownerInstance); + state.leftWidth = newVal; + initOpen(ownerInstance); +}; + +var initOpen = function (ownerInstance) { + getState(ownerInstance); + if (state.opened.constructor === 'Boolean') { + // opened为boolean类型,判断默认打开 + if (state.opened && state.rightWidth > 0) { + swipeMove(-state.rightWidth); + } else if (state.opened && state.leftWidth > 0) { + swipeMove(state.leftWidth); + } + } + + if (state.opened.constructor === 'Array') { + // opened为array类型,判断默认打开,同时设定左右action时优先打开右边 + if (state.opened[1] && state.rightWidth > 0) { + swipeMove(-state.rightWidth); + } else if (state.opened[0] && state.leftWidth > 0) { + swipeMove(state.leftWidth); + } + } +}; + +var resetTouchStatus = function () { + state.direction = ''; + state.deltaX = 0; + state.deltaY = 0; + state.offsetX = 0; + state.offsetY = 0; +}; + +var touchMove = function (event) { + var touchPoint = event.touches[0]; + state.deltaX = touchPoint.clientX - state.startX; + state.deltaY = touchPoint.clientY - state.startY; + state.offsetX = Math.abs(state.deltaX); + state.offsetY = Math.abs(state.deltaY); + state.direction = state.direction || getDirection(state.offsetX, state.offsetY); +}; + +var getDirection = function (x, y) { + if (x > y && x > MIN_DISTANCE) { + return 'horizontal'; + } + if (y > x && y > MIN_DISTANCE) { + return 'vertical'; + } + return ''; +}; + +var range = function (num, min, max) { + return Math.min(Math.max(num, min), max); +}; + +var swipeMove = function (_offset) { + if (_offset === undefined) _offset = 0; + state.offset = range(_offset, -state.rightWidth, +state.leftWidth); + var transform = 'translate3d(' + state.offset + 'px, 0, 0)'; + var transition = state.dragging ? 'none' : 'transform .6s cubic-bezier(0.18, 0.89, 0.32, 1)'; + owner.selectComponent('#wrapper').setStyle({ + '-webkit-transform': transform, + '-webkit-transition': transition, + transform: transform, + transition: transition, + }); +}; + +var close = function () { + swipeMove(0); +}; + +var onCloseChange = function (newVal, oldVal, ownerInstance) { + getState(ownerInstance); + if (newVal === oldVal) return; + if (newVal) { + close(); + } +}; + +var onOpenedChange = function (newVal, oldVal, ownerInstance) { + getState(ownerInstance); + state.opened = newVal; + if (newVal === oldVal) return; + if (!newVal) { + close(); + } +}; + +var touchStart = function (event) { + resetTouchStatus(); + state.startOffset = state.offset; + var touchPoint = event.touches[0]; + state.startX = touchPoint.clientX; + state.startY = touchPoint.clientY; + owner.callMethod('closeOther'); +}; + +var startDrag = function (event, ownerInstance) { + ownerInstance.callMethod('catchMove'); + getState(ownerInstance); + touchStart(event); +}; + +var onDrag = function (event, ownerInstance) { + getState(ownerInstance); + touchMove(event); + if (state.direction === 'vertical') { + ownerInstance.callMethod('skipMove'); + } + if (state.direction !== 'horizontal') { + return; + } + if (!state.dragging) { + ownerInstance.triggerEvent('dragstart'); + } + state.dragging = true; + swipeMove(state.startOffset + state.deltaX); + return false; +}; + +var open = function (position) { + var _offset = position === 'left' ? +state.leftWidth : -state.rightWidth; + owner.callMethod('open', { position: position }); + swipeMove(_offset); +}; + +var endDrag = function (event, ownerInstance) { + getState(ownerInstance); + state.dragging = false; + // 左/右侧有可滑动区域,且当前不是已open状态,且滑动幅度超过阈值时open左/右侧(滚动到该侧的最边上) + if ( + +state.rightWidth > 0 && + -state.startOffset < +state.rightWidth && + -state.offset > +state.rightWidth * THRESHOLD + ) { + open('right'); + } else if ( + +state.leftWidth > 0 && + state.startOffset < +state.leftWidth && + state.offset > +state.leftWidth * THRESHOLD + ) { + open('left'); + } else { + // 仅在有发生侧滑的情况下自动关闭(由js控制是否异步关闭) + if (state.startOffset !== state.offset) { + close(); + } + } + ownerInstance.triggerEvent('dragend'); +}; + +module.exports = { + initLeftWidth: initLeftWidth, + initRightWidth: initRightWidth, + startDrag: startDrag, + onDrag: onDrag, + endDrag: endDrag, + onCloseChange: onCloseChange, + onOpenedChange: onOpenedChange, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxss b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxss new file mode 100644 index 0000000..6e5b164 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/swipe-cell.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-swipe-cell{position:relative;overflow:hidden}.t-swipe-cell__left,.t-swipe-cell__right{position:absolute;top:0;height:100%}.t-swipe-cell__left{left:0;transform:translate3d(-100%,0,0)}.t-swipe-cell__right{right:0;transform:translate3d(100%,0,0)}.t-swipe-cell__content{display:inline-flex;justify-content:center;align-items:center;padding:0 var(--td-spacer-2,32rpx)}.t-swipe-cell__icon{font-size:var(--td-font-size-xl,40rpx)}.t-swipe-cell__icon+.t-swipe-cell__text:not(:empty){margin-left:var(--td-spacer,16rpx);font-size:var(--td-font-size-base,28rpx);line-height:44rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/type.js b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swipe-cell/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.d.ts new file mode 100644 index 0000000..5dcaf6b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.d.ts @@ -0,0 +1,3 @@ +export * from './type'; +export * from './props'; +export * from './swiper-nav'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.js b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.js new file mode 100644 index 0000000..315c833 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/index.js @@ -0,0 +1 @@ +export*from"./type";export*from"./props";export*from"./swiper-nav"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/props.js b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/props.js new file mode 100644 index 0000000..adbb8a7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/props.js @@ -0,0 +1 @@ +const props={current:{type:Number,value:0},direction:{type:String,value:"horizontal"},minShowNum:{type:Number,value:2},paginationPosition:{type:String,value:"bottom"},showControls:{type:Boolean,value:!1},total:{type:Number,value:0},type:{type:String,value:"dots"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.d.ts b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.d.ts new file mode 100644 index 0000000..ce01166 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.d.ts @@ -0,0 +1,45 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +import { TdSwiperNavProps } from './type'; +export interface SwiperNavProps extends TdSwiperNavProps { +} +export default class SwiperNav extends SuperComponent { + externalClasses: string[]; + properties: { + current: { + type: NumberConstructor; + value: number; + }; + total: { + type: NumberConstructor; + value: number; + }; + type: { + type: StringConstructor; + value: string; + }; + minShowNum: { + type: NumberConstructor; + value: number; + }; + showControls: { + type: BooleanConstructor; + value: boolean; + }; + direction: { + type: StringConstructor; + value: string; + }; + paginationPosition: { + type: StringConstructor; + value: string; + }; + }; + relations: RelationsOptions; + data: { + prefix: string; + classPrefix: string; + }; + methods: { + nav(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.js b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.js new file mode 100644 index 0000000..ad4da4f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";const{prefix:prefix}=config,name=`${prefix}-swiper-nav`;let SwiperNav=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.properties={current:{type:Number,value:0},total:{type:Number,value:0},type:{type:String,value:"dots"},minShowNum:{type:Number,value:2},showControls:{type:Boolean,value:!1},direction:{type:String,value:"horizontal"},paginationPosition:{type:String,value:"bottom"}},this.relations={"../swiper/swiper":{type:"parent"}},this.data={prefix:prefix,classPrefix:name},this.methods={nav(e){var t;const{dir:r}=e.target.dataset;this.triggerEvent("nav-btn-change",{dir:r,source:"nav"}),this.$parent&&(null===(t=this.$parent)||void 0===t||t.doNavBtnChange(r,"nav"))}}}};SwiperNav=__decorate([wxComponent()],SwiperNav);export default SwiperNav; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.json b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.json new file mode 100644 index 0000000..1bbd8ba --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared"} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxml b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxml new file mode 100644 index 0000000..2f3bf1a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxml @@ -0,0 +1 @@ +{{current + 1}}/{{total}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxss b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxss new file mode 100644 index 0000000..965a757 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/swiper-nav.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-swiper-nav__dots,.t-swiper-nav__dots-bar{display:flex;flex-direction:row}.t-swiper-nav__dots-bar-item,.t-swiper-nav__dots-item{width:var(--td-swiper-nav-dot-size,12rpx);height:var(--td-swiper-nav-dot-size,12rpx);background:var(--td-swiper-nav-dot-color,var(--td-font-white-2,rgba(255,255,255,.55)));border-radius:50%;margin:0 10rpx;transition:all .4s ease-in}.t-swiper-nav__dots-bar-item--vertical,.t-swiper-nav__dots-item--vertical{margin:10rpx 0}.t-swiper-nav__dots-bar-item--active,.t-swiper-nav__dots-item--active{background-color:var(--td-swiper-nav-dot-active-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-swiper-nav__dots-bar-item--vertical.t-swiper-nav__dots-bar-item--active{width:var(--td-swiper-nav-dot-size,12rpx);height:var(--td-swiper-nav-dots-bar-active-width,40rpx)}.t-swiper-nav__dots-bar-item--active{width:var(--td-swiper-nav-dots-bar-active-width,40rpx);border-radius:calc(var(--td-swiper-nav-dot-size,12rpx)/ 2);background-color:var(--td-swiper-nav-dot-active-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)))}.t-swiper-nav--left{position:absolute;left:24rpx;top:50%;transform:translateY(-50%)}.t-swiper-nav--right{position:absolute;right:24rpx;top:50%;transform:translateY(-50%)}.t-swiper-nav--top-left{position:absolute;top:24rpx;left:24rpx}.t-swiper-nav--top{position:absolute;left:50%;top:24rpx;transform:translateX(-50%)}.t-swiper-nav--top-right{position:absolute;top:24rpx;right:24rpx}.t-swiper-nav--bottom-left{position:absolute;left:24rpx;bottom:24rpx}.t-swiper-nav--bottom{position:absolute;left:50%;bottom:24rpx;transform:translateX(-50%)}.t-swiper-nav--bottom-right{position:absolute;right:24rpx;bottom:24rpx}.t-swiper-nav--vertical{flex-direction:column}.t-swiper-nav__fraction{padding:0 16rpx;height:var(--td-swiper-nav-fraction-height,48rpx);line-height:var(--td-swiper-nav-fraction-height,48rpx);border-radius:calc(var(--td-swiper-nav-fraction-height,48rpx)/ 2);background:var(--td-swiper-nav-fraction-bg-color,var(--td-font-gray-3,rgba(0,0,0,.4)));color:var(--td-swiper-nav-fraction-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));font-size:var(--td-swiper-nav-fraction-font-size,24rpx)}.t-swiper-nav__btn{width:100%;position:absolute;top:50%;transform:translateY(-50%)}.t-swiper-nav__btn--next,.t-swiper-nav__btn--prev{position:absolute;top:50%;transform:translateY(-50%);width:var(--td-swiper-nav-btn-size,48rpx);height:var(--td-swiper-nav-btn-size,48rpx);border-radius:50%;background:var(--td-swiper-nav-btn-bg-color,var(--td-font-gray-3,rgba(0,0,0,.4)))}.t-swiper-nav__btn--next::after,.t-swiper-nav__btn--prev::after{position:absolute;left:50%;top:50%;display:block;content:'';width:12rpx;height:12rpx;border-color:var(--td-swiper-nav-btn-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));border-style:solid}.t-swiper-nav__btn--prev{left:30rpx}.t-swiper-nav__btn--prev::after{margin-left:4rpx;border-width:2rpx 0 0 2rpx;transform:translate(-50%,-50%) rotateZ(-45deg)}.t-swiper-nav__btn--next{right:30rpx}.t-swiper-nav__btn--next::after{margin-left:-4rpx;border-width:2rpx 2rpx 0 0;transform:translate(-50%,-50%) rotateZ(45deg)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/type.js b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper-nav/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/index.wxs b/app/miniprogram_npm/tdesign-miniprogram/swiper/index.wxs new file mode 100644 index 0000000..41eca3d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/index.wxs @@ -0,0 +1,25 @@ +function isPrev(current, index, list) { + return (current - 1 + list.length) % list.length === index; +} + +function isNext(current, index, list) { + return (current + 1 + list.length) % list.length === index; +} + +function getImageClass(prefix, current, index, list) { + var arr = [prefix + '-swiper__image-host', prefix + '-swiper__image', prefix + '-class-image']; + + if (isPrev(current, index, list)) { + arr.push(prefix + '-class-prev-image'); + } + + if (isNext(current, index, list)) { + arr.push(prefix + '-class-next-image'); + } + + return arr.join(' '); +} + +module.exports.isPrev = isPrev; +module.exports.isNext = isNext; +module.exports.getImageClass = getImageClass; diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/props.js b/app/miniprogram_npm/tdesign-miniprogram/swiper/props.js new file mode 100644 index 0000000..eb4c100 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/props.js @@ -0,0 +1 @@ +const props={autoplay:{type:Boolean,value:!0},current:{type:Number,value:0},direction:{type:String,value:"horizontal"},displayMultipleItems:{type:Number,value:1},duration:{type:Number,value:300},easingFunction:{type:String,value:"default"},height:{type:null,value:192},imageProps:{type:Object},interval:{type:Number,value:5e3},list:{type:Array},loop:{type:Boolean,value:!0},navigation:{type:null,value:!0},nextMargin:{type:null,value:0},paginationPosition:{type:String,value:"bottom"},previousMargin:{type:null,value:0},snapToEdge:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.d.ts b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.d.ts new file mode 100644 index 0000000..e653a57 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.d.ts @@ -0,0 +1,28 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Swiper extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdSwiperProps; + observers: { + navCurrent(v: any): void; + }; + $nav: any; + relations: RelationsOptions; + data: { + prefix: string; + classPrefix: string; + }; + lifetimes: { + ready(): void; + }; + methods: { + updateNav(currentValue: any): void; + onTap(e: any): void; + onChange(e: any): void; + onNavBtnChange(e: any): void; + doNavBtnChange(dir: any, source: any): void; + onImageLoad(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.js b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.js new file mode 100644 index 0000000..a5c71c0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-swiper`;let Swiper=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-nav`,`${prefix}-class-image`,`${prefix}-class-prev-image`,`${prefix}-class-next-image`],this.options={multipleSlots:!0},this.properties=props,this.observers={navCurrent(t){this.updateNav(t)}},this.$nav=null,this.relations={"../swiper-nav/swiper-nav":{type:"child"}},this.data={prefix:prefix,classPrefix:name},this.lifetimes={ready(){const{current:t}=this.properties;this.setData({navCurrent:t})}},this.methods={updateNav(t){var e;if(this.data.navigation)return;const i=null===(e=this.getRelationNodes("./swiper-nav"))||void 0===e?void 0:e[0];if(!i)return;const{direction:r,paginationPosition:n,list:s}=this.properties;i.setData({current:t,total:s.length,direction:r,paginationPosition:n})},onTap(t){const{index:e}=t.currentTarget.dataset;this.triggerEvent("click",{index:e})},onChange(t){const{current:e,source:i}=t.detail;this.setData({navCurrent:e}),this.triggerEvent("change",{current:e,source:i})},onNavBtnChange(t){const{dir:e,source:i}=t.detail;this.doNavBtnChange(e,i)},doNavBtnChange(t,e){const{current:i,list:r,loop:n}=this.data,s=r.length;let o="next"===t?i+1:i-1;o=n?"next"===t?(i+1)%s:(i-1+s)%s:o<0||o>=s?i:o,o!==i&&(this.setData({current:o}),this.triggerEvent("change",{current:o,source:e}))},onImageLoad(t){this.triggerEvent("image-load",{index:t.target.dataset.custom})}}}};Swiper=__decorate([wxComponent()],Swiper);export default Swiper; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.json b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.json new file mode 100644 index 0000000..fd6447e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-swiper-nav":"../swiper-nav/swiper-nav","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxml b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxml new file mode 100644 index 0000000..0d55e92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxss b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxss new file mode 100644 index 0000000..edfd003 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/swiper.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-swiper{position:relative}.t-swiper-host{border-radius:var(--td-swiper-radius,var(--td-radius-large,18rpx));overflow:hidden;transform:translateY(0)}.t-swiper__item{display:flex;align-items:center;box-sizing:border-box;padding:var(--td-swiper-item-padding,0)}.t-swiper__image{width:100%;transition:all .3s ease}.t-swiper__image-host{width:100%} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/swiper/type.js b/app/miniprogram_npm/tdesign-miniprogram/swiper/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/swiper/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/props.js b/app/miniprogram_npm/tdesign-miniprogram/switch/props.js new file mode 100644 index 0000000..a99a069 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/props.js @@ -0,0 +1 @@ +const props={customValue:{type:Array,value:[!0,!1]},disabled:{type:null,value:void 0},icon:{type:Array,value:[]},label:{type:Array,value:[]},loading:{type:Boolean,value:!1},size:{type:String,value:"medium"},value:{type:null,value:null},defaultValue:{type:null,value:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/switch.d.ts b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.d.ts new file mode 100644 index 0000000..7db8002 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.d.ts @@ -0,0 +1,21 @@ +import { SuperComponent } from '../common/src/index'; +export default class Switch extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + properties: import("./type").TdSwitchProps; + data: { + prefix: string; + classPrefix: string; + checked: boolean; + }; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + value(val: any): void; + }; + methods: { + handleSwitch(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/switch.js b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.js new file mode 100644 index 0000000..e951498 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-switch`;let Switch=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=["t-class","t-class-label","t-class-body","t-class-dot"],this.behaviors=["wx://form-field"],this.properties=props,this.data={prefix:prefix,classPrefix:name,checked:!1},this.controlledProps=[{key:"value",event:"change"}],this.observers={value(e){const[t]=this.data.customValue;this.setData({checked:e===t})}},this.methods={handleSwitch(){const{loading:e,disabled:t,value:s,customValue:o}=this.data,[i,r]=o;e||t||this._trigger("change",{value:s===i?r:i})}}}};Switch=__decorate([wxComponent()],Switch);export default Switch; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/switch.json b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.json new file mode 100644 index 0000000..18ba7f1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-loading":"../loading/loading"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxml b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxml new file mode 100644 index 0000000..fa792d2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxml @@ -0,0 +1 @@ +{{checked ? label[0] : label[1]}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxss b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxss new file mode 100644 index 0000000..66e43fe --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/switch.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-switch{display:flex;align-items:center;overflow:hidden}.t-switch__label{position:absolute;top:0;left:0;bottom:0;width:100%;display:flex;align-items:center;justify-content:center;flex-wrap:nowrap;font-size:var(--td-switch-label-font-size,28rpx);color:var(--td-switch-label-color,var(--td-bg-color-secondarycontainer-active,var(--td-gray-color-4,#dcdcdc)));overflow:hidden}.t-switch__label--checked{color:var(--td-switch-label-checked-color,var(--td-switch-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9))))}.t-switch__label--disabled{color:var(--td-switch-unchecked-disabled-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-switch__label--checked.t-switch__label--disabled{color:var(--td-switch-checked-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-switch__label--large{font-size:var(--td-switch-label-large-font-size,32rpx)}.t-switch__label--small{font-size:var(--td-switch-label-small-font-size,24rpx)}.t-switch__label:empty{display:none}.t-switch__icon{font-size:var(--td-switch-icon-size,40rpx)}.t-switch__icon--large{font-size:var(--td-switch-icon-large-size,48rpx)}.t-switch__icon--small{font-size:var(--td-switch-icon-small-size,32rpx)}.t-switch__loading{color:var(--td-switch-label-checked-color,var(--td-switch-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9))))}.t-switch__body{vertical-align:middle;width:var(--td-switch-width,90rpx);height:var(--td-switch-height,56rpx);border-radius:var(--td-switch-radius,calc(var(--td-switch-height,56rpx)/ 2));background-color:var(--td-switch-unchecked-color,var(--td-bg-color-secondarycontainer-active,var(--td-gray-color-4,#dcdcdc)));position:relative;transition:all .3s ease;overflow:hidden}.t-switch__body--checked{background-color:var(--td-switch-checked-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-switch__body--disabled{background-color:var(--td-switch-unchecked-disabled-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)))}.t-switch__body--checked.t-switch__body--disabled{background-color:var(--td-switch-checked-disabled-color,var(--td-brand-color-disabled,var(--td-primary-color-3,#b5c7ff)))}.t-switch__body--large{width:var(--td-switch-large-width,104rpx);height:var(--td-switch-large-height,64rpx);border-radius:var(--td-switch-large-radius,calc(var(--td-switch-large-height,64rpx)/ 2))}.t-switch__body--small{width:var(--td-switch-small-width,78rpx);height:var(--td-switch-small-height,48rpx);border-radius:var(--td-switch-small-radius,calc(var(--td-switch-small-height,48rpx)/ 2))}.t-switch__dot{position:absolute;left:var(--td-switch-dot-horizontal-margin,6rpx);top:50%;width:var(--td-switch-dot-size,44rpx);height:var(--td-switch-dot-size,44rpx);border-radius:50%;background-color:var(--td-text-color-anti,var(--td-font-white-1,#fff));transition:all .3s;transform:translateY(-50%);box-shadow:var(--td-switch-dot-shadow,var(--td-shadow-1,0 1px 10px rgba(0,0,0,.05),0 4px 5px rgba(0,0,0,.08),0 2px 4px -1px rgba(0,0,0,.12)))}.t-switch__dot--disabled{background-color:var(--td-switch-dot-disabled-color,var(--td-font-white-1,#fff))}.t-switch__dot--large{width:var(--td-switch-dot-large-size,52rpx);height:var(--td-switch-dot-large-size,52rpx)}.t-switch__dot--small{width:var(--td-switch-dot-small-size,36rpx);height:var(--td-switch-dot-small-size,36rpx)}.t-switch__dot--checked{left:calc(var(--td-switch-width,90rpx) - var(--td-switch-dot-size,44rpx) - var(--td-switch-dot-horizontal-margin,6rpx))}.t-switch__dot--large.t-switch__dot--checked{left:calc(var(--td-switch-large-width,104rpx) - var(--td-switch-dot-large-size,52rpx) - var(--td-switch-dot-horizontal-margin,6rpx))}.t-switch__dot--small.t-switch__dot--checked{left:calc(var(--td-switch-small-width,78rpx) - var(--td-switch-dot-small-size,36rpx) - var(--td-switch-dot-horizontal-margin,6rpx))}.t-switch__dot--plain:not(.t-switch__dot--checked){width:var(--td-switch-dot-plain-size,36rpx);height:var(--td-switch-dot-plain-size,36rpx);left:var(--td-switch-dot-plain-horizontal-margin,10rpx)}.t-switch__dot--large.t-switch__dot--plain:not(.t-switch__dot--checked){width:var(--td-switch-dot-plain-large-size,44rpx);height:var(--td-switch-dot-plain-large-size,44rpx)}.t-switch__dot--small.t-switch__dot--plain:not(.t-switch__dot--checked){width:var(--td-switch-dot-plain-small-size,28rpx);height:var(--td-switch-dot-plain-small-size,28rpx)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/switch/type.js b/app/miniprogram_npm/tdesign-miniprogram/switch/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/switch/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/props.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/props.js new file mode 100644 index 0000000..d92b620 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/props.js @@ -0,0 +1 @@ +const props={badgeProps:{type:Object},icon:{type:null},subTabBar:{type:Array},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.d.ts new file mode 100644 index 0000000..4efd9f7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.d.ts @@ -0,0 +1,37 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class TabBarItem extends SuperComponent { + externalClasses: string[]; + parent: any; + relations: RelationsOptions; + options: { + multipleSlots: boolean; + }; + data: { + prefix: string; + classPrefix: string; + isSpread: boolean; + isChecked: boolean; + hasChildren: boolean; + currentName: string; + split: boolean; + iconOnly: boolean; + theme: string; + crowded: boolean; + shape: string; + }; + properties: import("./type").TdTabBarItemProps; + observers: { + subTabBar(value: Record[]): void; + icon(v: any): void; + }; + lifetimes: { + attached(): Promise; + }; + methods: { + showSpread(): void; + toggle(): void; + selectChild(event: any): void; + checkActive(value: any): void; + closeSpread(): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.js new file mode 100644 index 0000000..30875cb --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getRect,calcIcon}from"../common/utils";const{prefix:prefix}=config,classPrefix=`${prefix}-tab-bar-item`;let TabBarItem=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.parent=null,this.relations={"../tab-bar/tab-bar":{type:"ancestor",linked(t){const{theme:e,split:a,shape:s}=t.data;this.setData({theme:e,split:a,shape:s,currentName:this.properties.value?this.properties.value:t.initName()}),t.updateChildren()}}},this.options={multipleSlots:!0},this.data={prefix:prefix,classPrefix:classPrefix,isSpread:!1,isChecked:!1,hasChildren:!1,currentName:"",split:!0,iconOnly:!1,theme:"",crowded:!1,shape:"normal"},this.properties=props,this.observers={subTabBar(t){this.setData({hasChildren:t.length>0})},icon(t){this.setData({_icon:calcIcon(t)})}},this.lifetimes={attached(){return __awaiter(this,void 0,void 0,(function*(){const t=yield getRect(this,`.${classPrefix}__text`);this.setData({iconOnly:0===t.height})}))}},this.methods={showSpread(){this.setData({isSpread:!0})},toggle(){const{currentName:t,hasChildren:e,isSpread:a}=this.data;e&&this.setData({isSpread:!a}),this.$parent.updateValue(t),this.$parent.changeOtherSpread(t)},selectChild(t){const{value:e}=t.target.dataset;this.$parent.updateValue(e),this.setData({isSpread:!1})},checkActive(t){const{currentName:e,subTabBar:a}=this.data,s=(null==a?void 0:a.some((e=>e.value===t)))||e===t;this.setData({isChecked:s})},closeSpread(){this.setData({isSpread:!1})}}}};TabBarItem=__decorate([wxComponent()],TabBarItem);export default TabBarItem; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.json b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.json new file mode 100644 index 0000000..fb7b731 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-badge":"../badge/badge"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxml b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxml new file mode 100644 index 0000000..6c9715d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxml @@ -0,0 +1 @@ +{{ child.label }} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxss b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxss new file mode 100644 index 0000000..8f7fe85 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/tab-bar-item.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';:host{flex:1}.t-tab-bar-item{flex:1;height:var(--td-tab-bar-height,80rpx);box-sizing:border-box;user-select:none;position:relative;margin:16rpx 0;background-color:var(--td-tab-bar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));padding:0 24rpx}.t-tab-bar-item--text-only{font-size:32rpx}.t-tab-bar-item--split+.t-tab-bar-item--split::before{position:absolute;box-sizing:border-box;content:' ';pointer-events:none;top:0;bottom:0;left:0;border-left:1px solid var(--td-tab-bar-border-color,var(--td-border-color,var(--td-gray-color-3,#e7e7e7)));transform:scaleX(.5);top:16rpx;bottom:16rpx}.t-tab-bar-item--crowded{padding:0 16rpx}.t-tab-bar-item--round{border-radius:99px}.t-tab-bar-item__content{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:16rpx;color:var(--td-tab-bar-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tab-bar-item__content--checked{color:var(--td-tab-bar-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));font-weight:600}.t-tab-bar-item__content--tag{border-radius:99px}.t-tab-bar-item__content--tag.t-tab-bar-item__content--checked{background-color:var(--td-tab-bar-active-bg,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tab-bar-item__icon{display:contents}.t-tab-bar-item__icon:empty{display:none}.t-tab-bar-item__text{display:flex;align-items:center}.t-tab-bar-item__text--small{font-size:20rpx;line-height:32rpx}.t-tab-bar-item__icon-menu{margin-right:8rpx}.t-tab-bar-item__spread{position:absolute;top:0;left:7%;width:86%;background-color:var(--td-tab-bar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));transform:translate3d(0,calc(-100% - 32rpx),0);z-index:1;border-radius:12rpx;color:var(--td-tab-bar-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));box-shadow:var(--td-tab-bar-spread-shadow,var(--td-shadow-3,0 6px 30px 5px rgba(0,0,0,.05),0 16px 24px 2px rgba(0,0,0,.04),0 8px 10px -5px rgba(0,0,0,.08)))}.t-tab-bar-item__spread::before{display:block;content:'';position:absolute;bottom:0;left:50%;width:0;height:0;border:16rpx solid transparent;border-top:16rpx solid var(--td-tab-bar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));transform:translate3d(-50%,32rpx,0)}.t-tab-bar-item__spread-item{width:100%;height:96rpx;display:flex;align-items:center;justify-content:flex-start;position:relative;flex-direction:column}.t-tab-bar-item__spread-item--active{background-color:var(--td-tab-bar-hover-bg-color,rgba(0,0,0,.05))}.t-tab-bar-item__spread-item-split{box-sizing:border-box;content:' ';pointer-events:none;background-color:var(--td-tab-bar-spread-border-color,var(--td-border-color,var(--td-gray-color-3,#e7e7e7)));width:80%;height:1px;transform:translateY(.5)}.t-tab-bar-item__spread-item-text{padding-top:24rpx} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/type.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar-item/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/props.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/props.js new file mode 100644 index 0000000..f8f7f9e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/props.js @@ -0,0 +1 @@ +const props={bordered:{type:Boolean,value:!0},externalClasses:{type:Array},fixed:{type:Boolean,value:!0},safeAreaInsetBottom:{type:Boolean,value:!0},shape:{type:String,value:"normal"},split:{type:Boolean,value:!0},theme:{type:String,value:"normal"},value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.d.ts new file mode 100644 index 0000000..13e2da6 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.d.ts @@ -0,0 +1,28 @@ +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class Tabbar extends SuperComponent { + relations: RelationsOptions; + externalClasses: string[]; + backupValue: number; + data: { + prefix: string; + classPrefix: string; + }; + properties: import("./type").TdTabBarProps; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + value(): void; + }; + lifetimes: { + ready(): void; + }; + methods: { + showChildren(): void; + updateChildren(): void; + updateValue(value: any): void; + changeOtherSpread(value: any): void; + initName(): any; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.js new file mode 100644 index 0000000..8403dac --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,classPrefix=`${prefix}-tab-bar`;let Tabbar=class extends SuperComponent{constructor(){super(...arguments),this.relations={"../tab-bar-item/tab-bar-item":{type:"descendant"}},this.externalClasses=[`${prefix}-class`],this.backupValue=-1,this.data={prefix:prefix,classPrefix:classPrefix},this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.observers={value(){this.updateChildren()}},this.lifetimes={ready(){this.showChildren()}},this.methods={showChildren(){const{value:e}=this.data;this.$children.forEach((r=>{r.setData({crowded:this.$children.length>3}),r.properties.value===e&&r.showSpread()}))},updateChildren(){const{value:e}=this.data;this.$children.forEach((r=>{r.checkActive(e)}))},updateValue(e){this._trigger("change",{value:e})},changeOtherSpread(e){this.$children.forEach((r=>{r.properties.value!==e&&r.closeSpread()}))},initName(){return this.backupValue+=1}}}};Tabbar=__decorate([wxComponent()],Tabbar);export default Tabbar; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.json b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxml b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxml new file mode 100644 index 0000000..0f9e9c0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxss b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxss new file mode 100644 index 0000000..5baa929 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/tab-bar.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tab-bar{display:flex;flex-wrap:nowrap;align-items:center;position:relative;font-size:16px;background-color:var(--td-tab-bar-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));box-sizing:border-box}.t-tab-bar--normal.t-tab-bar--border::before{z-index:1;position:absolute;box-sizing:border-box;content:' ';pointer-events:none;right:0;left:0;top:0;border-top:1px solid var(--td-tab-bar-border-color,var(--td-border-level-1-color,var(--td-gray-color-3,#e7e7e7)));transform:scaleY(.5);transform-origin:0 0}.t-tab-bar--fixed{position:fixed;left:0;bottom:0;right:0}.t-tab-bar--normal.t-tab-bar--safe{padding-bottom:constant(safe-area-inset-bottom);padding-bottom:env(safe-area-inset-bottom)}.t-tab-bar--round{margin-left:32rpx;margin-right:32rpx;border-radius:999px;box-shadow:var(--td-tab-bar-round-shadow,var(--td-shadow-3,0 6px 30px 5px rgba(0,0,0,.05),0 16px 24px 2px rgba(0,0,0,.04),0 8px 10px -5px rgba(0,0,0,.08)))}.t-tab-bar--fixed.t-tab-bar--round.t-tab-bar--safe{bottom:constant(safe-area-inset-bottom);bottom:env(safe-area-inset-bottom)} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-bar/type.js b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-bar/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/props.js b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/props.js new file mode 100644 index 0000000..a71e197 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/props.js @@ -0,0 +1 @@ +const props={badgeProps:{type:Object},disabled:{type:Boolean,value:!1},icon:{type:null},label:{type:String,value:""},lazy:{type:Boolean,value:!1},panel:{type:String},value:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.d.ts new file mode 100644 index 0000000..c1a18de --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.d.ts @@ -0,0 +1,25 @@ +/// +import { SuperComponent, RelationsOptions } from '../common/src/index'; +export default class TabPanel extends SuperComponent { + externalClasses: string[]; + relations: RelationsOptions; + options: { + multipleSlots: boolean; + }; + properties: import("./type").TdTabPanelProps; + data: { + prefix: string; + classPrefix: string; + active: boolean; + hide: boolean; + id: string; + hasActivated: boolean; + }; + setId(id: any): void; + observers: { + 'label, badgeProps, disabled, icon, panel, value, lazy'(): void; + }; + getComputedName(): string; + update(): void; + render(active: Boolean, parent: WechatMiniprogram.Component.TrivialInstance): void; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.js b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.js new file mode 100644 index 0000000..048be2b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";const{prefix:prefix}=config,name=`${prefix}-tab-panel`;let TabPanel=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.relations={"../tabs/tabs":{type:"ancestor"}},this.options={multipleSlots:!0},this.properties=props,this.data={prefix:prefix,classPrefix:name,active:!1,hide:!0,id:"",hasActivated:!1},this.observers={"label, badgeProps, disabled, icon, panel, value, lazy"(){this.update()}}}setId(e){this.setData({id:e})}getComputedName(){return null!=this.properties.value?`${this.properties.value}`:`${this.index}`}update(){var e;null===(e=this.$parent)||void 0===e||e.updateTabs()}render(e,t){this.initialized=this.initialized||e,e&&!this.data.hasActivated&&this.setData({hasActivated:!0}),this.setData({active:e,hide:!t.data.animation&&!e})}};TabPanel=__decorate([wxComponent()],TabPanel);export default TabPanel; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.json b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxml b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxml new file mode 100644 index 0000000..d8acb0b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxml @@ -0,0 +1 @@ +{{panel}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxss b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxss new file mode 100644 index 0000000..01be28b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/tab-panel.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tab-panel{flex-shrink:0;width:100%;height:100%;box-sizing:border-box;overflow-y:auto;-webkit-overflow-scrolling:touch}.t-tab-panel--active{height:auto}.t-tab-panel--inactive{height:0;overflow:visible} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tab-panel/type.js b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tab-panel/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tabs/index.d.ts new file mode 100644 index 0000000..2f91d15 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/index.d.ts @@ -0,0 +1,3 @@ +export * from './tabs'; +export * from './type'; +export * from './props'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/index.js b/app/miniprogram_npm/tdesign-miniprogram/tabs/index.js new file mode 100644 index 0000000..6f0131f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/index.js @@ -0,0 +1 @@ +export*from"./tabs";export*from"./type";export*from"./props"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/props.js b/app/miniprogram_npm/tdesign-miniprogram/tabs/props.js new file mode 100644 index 0000000..f624354 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/props.js @@ -0,0 +1 @@ +const props={animation:{type:Object},bottomLineMode:{type:String,value:"fixed"},externalClasses:{type:Array},showBottomLine:{type:Boolean,value:!0},spaceEvenly:{type:Boolean,value:!0},split:{type:Boolean,value:!0},sticky:{type:Boolean,value:!1},stickyProps:{type:Object},swipeable:{type:Boolean,value:!0},theme:{type:String,value:"line"},value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.d.ts new file mode 100644 index 0000000..254d030 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.d.ts @@ -0,0 +1,59 @@ +import { RelationsOptions, SuperComponent } from '../common/src/index'; +import { TdTabsProps } from './type'; +export interface TabsProps extends TdTabsProps { +} +export default class Tabs extends SuperComponent { + options: { + pureDataPattern: RegExp; + }; + behaviors: string[]; + externalClasses: string[]; + relations: RelationsOptions; + properties: TdTabsProps; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + value(name: any): void; + }; + data: { + prefix: string; + classPrefix: string; + tabs: any[]; + currentLabels: any[]; + currentIndex: number; + trackOption: { + lineWidth: number; + distance: number; + isInit: boolean; + }; + offset: number; + scrollLeft: number; + tabID: string; + placement: string; + }; + lifetimes: { + created(): void; + attached(): void; + }; + initChildId(): void; + methods: { + onScroll(e: any): void; + updateTabs(cb: any): void; + setCurrentIndexByName(name: any): void; + setCurrentIndex(index: number): void; + getCurrentName(): any; + calcScrollOffset(containerWidth: number, targetLeft: number, targetWidth: number, offset: number): number; + getTabHeight(): Promise; + getTrackSize(): Promise; + setTrack(): Promise; + onTabTap(event: any): void; + onTouchStart(event: any): void; + onTouchMove(event: any): void; + onTouchEnd(): void; + onTouchScroll(event: WechatMiniprogram.CustomEvent): void; + changeIndex(index: any): void; + getAvailableTabIndex(deltaX: number): any; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.js b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.js new file mode 100644 index 0000000..eb0392c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.js @@ -0,0 +1 @@ +import{__awaiter,__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import touch from"../mixins/touch";import{getRect,uniqueFactory}from"../common/utils";import{getObserver}from"../common/wechat";const{prefix:prefix}=config,name=`${prefix}-tabs`,getUniqueID=uniqueFactory("tabs");let Tabs=class extends SuperComponent{constructor(){super(...arguments),this.options={pureDataPattern:/^currentLabels$/},this.behaviors=[touch],this.externalClasses=[`${prefix}-class`,`${prefix}-class-item`,`${prefix}-class-active`,`${prefix}-class-track`,`${prefix}-class-content`],this.relations={"../tab-panel/tab-panel":{type:"descendant",linked(t){this.children.push(t),this.initChildId(),t.index=this.children.length-1,this.updateTabs()},unlinked(t){this.children=this.children.filter((e=>e.index!==t.index)),this.updateTabs((()=>this.setTrack())),this.initChildId()}}},this.properties=props,this.controlledProps=[{key:"value",event:"change"}],this.observers={value(t){t!==this.getCurrentName()&&this.setCurrentIndexByName(t)}},this.data={prefix:prefix,classPrefix:name,tabs:[],currentLabels:[],currentIndex:-1,trackOption:{lineWidth:0,distance:0,isInit:!0},offset:0,scrollLeft:0,tabID:"",placement:"top"},this.lifetimes={created(){this.children=this.children||[]},attached(){wx.nextTick((()=>{this.setTrack()})),getRect(this,`.${name}`).then((t=>{this.containerWidth=t.width})),this.setData({tabID:getUniqueID()})}},this.methods={onScroll(t){const{scrollLeft:e}=t.detail;this.setData({scrollLeft:e})},updateTabs(t){const{children:e}=this,i=e.map((t=>t.data));i.forEach((t=>{"string"==typeof t.icon&&(t.icon={name:t.icon})})),this.setData({tabs:i},t),this.setCurrentIndexByName(this.properties.value)},setCurrentIndexByName(t){const{children:e}=this,i=e.findIndex((e=>e.getComputedName()===`${t}`));i>-1&&this.setCurrentIndex(i)},setCurrentIndex(t){if(t<=-1||t>=this.children.length)return;const e=[];this.children.forEach(((i,s)=>{const r=t===s;r===i.data.active&&i.initialized||i.render(r,this),e.push(i.data.label)}));const{currentIndex:i,currentLabels:s}=this.data;i===t&&s.join("")===e.join("")||this.setData({currentIndex:t,currentLabels:e},(()=>{this.setTrack()}))},getCurrentName(){if(this.children){const t=this.children[this.data.currentIndex];if(t)return t.getComputedName()}},calcScrollOffset:(t,e,i,s)=>s+e-.5*t+i/2,getTabHeight(){return getRect(this,`.${name}`)},getTrackSize(){const{bottomLineMode:t}=this.properties,e={fixed:`.${prefix}-tabs__track`,auto:`.${prefix}-tabs__item--active .${prefix}-tabs__item-inner`,full:`.${prefix}-tabs__item--active`};return new Promise(((i,s)=>{this.trackWidth?i(this.trackWidth):getRect(this,e[t]||e.fixed).then((t=>{t&&i(t.width)})).catch(s)}))},setTrack(){return __awaiter(this,void 0,void 0,(function*(){const{children:t}=this;if(!t)return;const{currentIndex:e}=this.data;if(!(e<=-1))try{const t=yield getRect(this,`.${prefix}-tabs__item`,!0),i=t[e];if(!i)return;let s=0,r=0,n=0;if(t.forEach((t=>{sthis.setTrack())));const a=yield this.getTrackSize();"line"===this.data.theme&&(r+=(i.width-a)/2);const h=void 0===this.previousIndex;(h||this.previousIndex!==e)&&(this.previousIndex=e,this.setData({trackOption:{lineWidth:a,distance:r,isInit:h}}))}catch(t){this.triggerEvent("error",t)}}))},onTabTap(t){const{index:e}=t.currentTarget.dataset;this.changeIndex(e)},onTouchStart(t){this.properties.swipeable&&this.touchStart(t)},onTouchMove(t){this.properties.swipeable&&this.touchMove(t)},onTouchEnd(){if(!this.properties.swipeable)return;const{direction:t,deltaX:e,offsetX:i}=this;if("horizontal"===t&&i>=50){const t=this.getAvailableTabIndex(e);-1!==t&&this.changeIndex(t)}},onTouchScroll(t){this._trigger("scroll",t.detail)},changeIndex(t){const e=this.data.tabs[t],{value:i,label:s}=e;(null==e?void 0:e.disabled)||t===this.data.currentIndex||this._trigger("change",{value:i,label:s}),this._trigger("click",{value:i,label:s})},getAvailableTabIndex(t){const e=t>0?-1:1,{currentIndex:i,tabs:s}=this.data,r=s.length;for(let t=e;i+e>=0&&i+e=0&&e{t.setId(`${this.data.tabID}_panel_${e}`)}))}};Tabs=__decorate([wxComponent()],Tabs);export default Tabs; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.json b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.json new file mode 100644 index 0000000..376444d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-sticky":"../sticky/sticky","t-badge":"../badge/badge","t-icon":"../icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxml b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxml new file mode 100644 index 0000000..54fb414 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxml @@ -0,0 +1 @@ +{{item.label}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxs b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxs new file mode 100644 index 0000000..801c03c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxs @@ -0,0 +1,29 @@ +var utils = require('../common/utils.wxs'); + +function animate(options) { + if (options.duration) { + return utils._style({ + 'transition-duration': options.duration + 's', + transform: 'translate3d( ' + -100 * options.currentIndex + '%,0, 0)', + }); + } + return ''; +} + +function trackStyle(options) { + if (options.distance) { + return utils._style({ + '-webkit-transform': 'translateX(' + options.distance + 'px)', + transform: 'translateX(' + options.distance + 'px)', + 'transition-duration': options.isInit ? '0' : '0.3s', + width: options.lineWidth, + opacity: 1, + }); + } + return ''; +} + +module.exports = { + animate: animate, + trackStyle: trackStyle, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxss b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxss new file mode 100644 index 0000000..d71b984 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/tabs.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tabs{position:relative;font-size:var(--td-tab-font-size,28rpx);background:var(--td-tab-nav-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));flex-wrap:wrap}.t-tabs__wrapper{display:flex;overflow:hidden;background:var(--td-tab-nav-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tabs__wrapper--card{background:var(--td-tab-item-tag-bg,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));--td-tab-border-color:transparent}.t-tabs__item{position:relative;display:flex;flex:none;align-items:center;justify-content:center;font-weight:400;color:var(--td-tab-item-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));padding:0 var(--td-spacer-2,32rpx);box-sizing:border-box;white-space:nowrap;overflow:hidden;height:var(--td-tab-item-height,96rpx)}.t-tabs__item--active{font-weight:600;color:var(--td-tab-item-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-tabs__item--disabled{color:var(--td-tab-item-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-tabs__item--evenly{flex:1 0 auto}.t-tabs__item-inner{display:flex;align-items:center;justify-content:center}.t-tabs__item-inner--tag{width:100%;text-align:center;padding:0 var(--td-spacer-2,32rpx);line-height:var(--td-tab-item-tag-height,64rpx);border-radius:calc(var(--td-tab-item-tag-height,64rpx)/ 2);background-color:var(--td-tab-item-tag-bg,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tabs__item-inner--active.t-tabs__item-inner--tag{background-color:var(--td-tab-item-tag-active-bg,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tabs__item--tag:not(.t-tabs__item--evenly){padding:0 calc(var(--td-spacer,16rpx)/ 2)}.t-tabs__item--tag:not(.t-tabs__item--evenly):first-child{margin-left:var(--td-spacer,16rpx)}.t-tabs__item--tag:not(.t-tabs__item--evenly):last-child{padding-right:var(--td-spacer-1,24rpx)}.t-tabs__item--tag{padding:0 var(--td-spacer,16rpx)}.t-tabs__item--card.t-tabs__item--active{background-color:var(--td-tab-nav-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)));border-radius:var(--td-radius-large,18rpx) var(--td-radius-large,18rpx) 0 0}.t-tabs__item--card.t-tabs__item--active:first-child{border-top-left-radius:0}.t-tabs__item--card.t-tabs__item--active:last-child{border-top-right-radius:0}.t-tabs__item--card.t-tabs__item--pre{border-bottom-right-radius:var(--td-radius-large,18rpx)}.t-tabs__item-prefix,.t-tabs__item-suffix{position:absolute;bottom:0;width:18rpx;height:18rpx;background-color:var(--td-tab-nav-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tabs__item-prefix::after,.t-tabs__item-suffix::after{content:'';display:block;width:100%;height:100%;background-color:var(--td-tab-item-tag-bg,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tabs__item-prefix{right:0}.t-tabs__item-prefix::after{border-bottom-right-radius:var(--td-radius-large,18rpx)}.t-tabs__item-suffix{left:0}.t-tabs__item-suffix::after{border-bottom-left-radius:var(--td-radius-large,18rpx)}.t-tabs__badge--active{--td-badge-content-text-color:var(--td-tab-item-active-color, var(--td-brand-color, var(--td-primary-color-7, #0052d9)))}.t-tabs__badge--disabled{--td-badge-content-text-color:var(--td-tab-item-disabled-color, var(--td-text-color-disabled, var(--td-font-gray-4, rgba(0, 0, 0, 0.26))))}.t-tabs__icon{font-size:var(--td-tab-icon-size,36rpx);margin-right:calc(var(--td-spacer,16rpx)/ 4)}.t-tabs__content{overflow:hidden}.t-tabs__nav{position:relative;user-select:none;display:flex;flex-wrap:nowrap;align-items:center}.t-tabs__nav.t-tabs__nav--evenly{width:100%}.t-tabs__track{position:absolute;font-weight:600;z-index:1;opacity:0;background-color:var(--td-tab-track-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));left:0;bottom:1rpx;width:var(--td-tab-track-width,32rpx);height:var(--td-tab-track-thickness,6rpx);border-radius:var(--td-tab-track-radius,8rpx)}.t-tabs__scroll{position:relative;height:var(--td-tab-item-height,96rpx)}.t-tabs__scroll--split{position:relative}.t-tabs__scroll--split::after{content:'';display:block;position:absolute;top:unset;bottom:0;left:unset;right:unset;background-color:var(--td-tab-border-color,var(--td-component-stroke,var(--td-gray-color-3,#e7e7e7)))}.t-tabs__scroll--split::after{height:1px;left:0;right:0;transform:scaleY(.5)}.t-tabs__scroll::-webkit-scrollbar{display:none}.t-tabs__content{width:100%}.t-tabs__content-inner{display:block}.t-tabs__content--animated .t-tabs__content-inner{position:relative;width:100%;height:100%;display:flex;will-change:left;transition-property:transform} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tabs/type.js b/app/miniprogram_npm/tdesign-miniprogram/tabs/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tabs/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/props.js b/app/miniprogram_npm/tdesign-miniprogram/tag/props.js new file mode 100644 index 0000000..84a9521 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/props.js @@ -0,0 +1 @@ +const props={closable:{type:null,value:!1},disabled:{type:Boolean,value:!1},externalClasses:{type:Array},icon:{type:null},maxWidth:{type:null},shape:{type:String,value:"square"},size:{type:String,value:"medium"},theme:{type:String,value:"default"},variant:{type:String,value:"dark"}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/tag.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.d.ts new file mode 100644 index 0000000..2c86ef0 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.d.ts @@ -0,0 +1,28 @@ +/// +import { SuperComponent } from '../common/src/index'; +export default class Tag extends SuperComponent { + data: { + prefix: string; + classPrefix: string; + className: string; + tagStyle: string; + }; + properties: import("./type").TdTagProps; + externalClasses: string[]; + options: WechatMiniprogram.Component.ComponentOptions; + lifetimes: { + attached(): void; + }; + observers: { + 'size, shape, theme, variant, closable, disabled'(): void; + maxWidth(): void; + icon(v: any): void; + closable(v: any): void; + }; + methods: { + setClass(): void; + setTagStyle(): string; + handleClick(e: WechatMiniprogram.BaseEvent): void; + handleClose(e: WechatMiniprogram.BaseEvent): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/tag.js b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.js new file mode 100644 index 0000000..086df92 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{wxComponent,SuperComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{classNames,calcIcon}from"../common/utils";import{isNumber}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-tag`;let Tag=class extends SuperComponent{constructor(){super(...arguments),this.data={prefix:prefix,classPrefix:name,className:"",tagStyle:""},this.properties=props,this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0},this.lifetimes={attached(){this.setClass(),this.setTagStyle()}},this.observers={"size, shape, theme, variant, closable, disabled"(){this.setClass()},maxWidth(){this.setTagStyle()},icon(s){this.setData({_icon:calcIcon(s)})},closable(s){this.setData({_closable:calcIcon(s,"close")})}},this.methods={setClass(){const{prefix:s,classPrefix:t}=this.data,{size:e,shape:a,theme:i,variant:o,closable:l,disabled:r}=this.properties,c=classNames([t,`${t}--${i||"default"}`,`${t}--${o}`,l?`${t}--closable ${s}-is-closable`:"",r?`${t}--disabled ${s}-is-disabled`:"",`${t}--${e}`,`${t}--${a}`]);this.setData({className:c})},setTagStyle(){const{maxWidth:s}=this.properties;if(!s)return"";const t=isNumber(s)?`${s}px`:s;this.setData({tagStyle:`max-width:${t};`})},handleClick(s){this.data.disabled||this.triggerEvent("click",s)},handleClose(s){this.data.disabled||this.triggerEvent("close",s)}}}};Tag=__decorate([wxComponent()],Tag);export default Tag; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/tag.json b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.json new file mode 100644 index 0000000..235b52f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":".././icon/icon"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxml b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxml new file mode 100644 index 0000000..c3eb0a7 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxss b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxss new file mode 100644 index 0000000..18f4ce1 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/tag.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tag{display:inline-flex;align-items:center;border:2rpx solid transparent;box-sizing:border-box;border-radius:var(--td-tag-square-border-radius,8rpx);font-size:var(--td-tag-medium-font-size,var(--td-font-size-s,24rpx));user-select:none;vertical-align:middle}.t-tag__text{word-wrap:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.t-tag__icon,.t-tag__icon-close{display:flex;align-items:center}.t-tag__icon-close{color:var(--td-tag-close-icon-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))))}.t-tag__icon:not(:empty)+.t-tag__text:not(:empty),.t-tag__text:not(:empty)+.t-tag__icon-close:not(:empty){margin-left:8rpx}.t-tag.t-tag--small{height:var(--td-tag-small-height,40rpx);line-height:var(--td-tag-small-height,40rpx);padding:0 var(--td-tag-small-padding,11rpx);font-size:var(--td-tag-small-font-size,var(--td-font-size,20rpx))}.t-tag.t-tag--small .t-icon,.t-tag.t-tag--small .t-icon-close{font-size:var(--td-tag-small-icon-size,24rpx)}.t-tag.t-tag--small .t-tag__icon:not(:empty)+.t-tag__text:not(:empty),.t-tag.t-tag--small .t-tag__text:not(:empty)+.t-tag__icon-close:not(:empty){margin-left:4rpx}.t-tag.t-tag--medium{height:var(--td-tag-medium-height,48rpx);line-height:var(--td-tag-medium-height,48rpx);padding:0 var(--td-tag-medium-padding,15rpx);font-size:var(--td-tag-medium-font-size,var(--td-font-size-s,24rpx))}.t-tag.t-tag--medium .t-icon,.t-tag.t-tag--medium .t-icon-close{font-size:var(--td-tag-medium-icon-size,28rpx)}.t-tag.t-tag--large{height:var(--td-tag-large-height,56rpx);line-height:var(--td-tag-large-height,56rpx);padding:0 var(--td-tag-large-padding,15rpx);font-size:var(--td-tag-large-font-size,var(--td-font-size-base,28rpx))}.t-tag.t-tag--large .t-icon,.t-tag.t-tag--large .t-icon-close{font-size:var(--td-tag-large-icon-size,32rpx)}.t-tag.t-tag--extra-large{height:var(--td-tag-extra-large-height,80rpx);line-height:var(--td-tag-extra-large-height,80rpx);padding:0 var(--td-tag-extra-large-padding,31rpx);font-size:var(--td-tag-extra-large-font-size,var(--td-font-size-base,28rpx))}.t-tag.t-tag--extra-large .t-icon,.t-tag.t-tag--extra-large .t-icon-close{font-size:var(--td-tag-extra-large-icon-size,32rpx)}.t-tag.t-tag--square{border-radius:var(--td-tag-square-border-radius,8rpx)}.t-tag.t-tag--round{border-radius:var(--td-tag-round-border-radius,999px)}.t-tag.t-tag--mark{border-radius:0;border-top-right-radius:var(--td-tag-mark-border-radius,var(--td-tag-round-border-radius,999px));border-bottom-right-radius:var(--td-tag-mark-border-radius,var(--td-tag-round-border-radius,999px))}.t-tag--dark.t-tag--default{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)))}.t-tag--dark.t-tag--primary{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-tag--dark.t-tag--success{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)))}.t-tag--dark.t-tag--warning{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)))}.t-tag--dark.t-tag--danger{color:var(--td-text-color-anti,var(--td-font-white-1,#fff));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)))}.t-tag--dark.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--outline.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--outline.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--outline.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--outline.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--outline.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--outline.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--outline.t-tag--default{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--primary{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--success{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--warning{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--outline.t-tag--danger{background-color:var(--td-tag-outline-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tag--light.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--light.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--light.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--light.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--light.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--light.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tag--light-outline.t-tag--default{color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));border-color:var(--td-tag-default-color,var(--td-bg-color-component,var(--td-gray-color-3,#e7e7e7)));background-color:var(--td-tag-default-light-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tag--light-outline.t-tag--primary{color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));border-color:var(--td-tag-primary-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)));background-color:var(--td-tag-primary-light-color,var(--td-brand-color-light,var(--td-primary-color-1,#f2f3ff)))}.t-tag--light-outline.t-tag--success{color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));border-color:var(--td-tag-success-color,var(--td-success-color,var(--td-success-color-5,#2ba471)));background-color:var(--td-tag-success-light-color,var(--td-success-color-1,#e3f9e9))}.t-tag--light-outline.t-tag--warning{color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));border-color:var(--td-tag-warning-color,var(--td-warning-color,var(--td-warning-color-5,#e37318)));background-color:var(--td-tag-warning-light-color,var(--td-warning-color-1,#fff1e9))}.t-tag--light-outline.t-tag--danger{color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));border-color:var(--td-tag-danger-color,var(--td-error-color,var(--td-error-color-6,#d54941)));background-color:var(--td-tag-danger-light-color,var(--td-error-color-1,#fff0ed))}.t-tag--light-outline.t-tag--default{color:var(--td-tag-default-font-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));border-color:var(--td-component-border,var(--td-gray-color-4,#dcdcdc))}.t-tag.t-tag--closable.t-tag--disabled{cursor:not-allowed;color:var(--td-tag-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))));background-color:var(--td-tag-disabled-background-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)));border-color:var(--td-tag-disabled-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tag/type.js b/app/miniprogram_npm/tdesign-miniprogram/tag/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tag/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/props.js b/app/miniprogram_npm/tdesign-miniprogram/textarea/props.js new file mode 100644 index 0000000..6768842 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/props.js @@ -0,0 +1 @@ +const props={adjustPosition:{type:Boolean,value:!0},allowInputOverMax:{type:Boolean,value:!1},autofocus:{type:Boolean,value:!1},autosize:{type:null,value:!1},bordered:{type:Boolean,value:!1},confirmHold:{type:Boolean,value:!1},confirmType:{type:String,value:"return"},cursor:{type:Number,value:-1},cursorSpacing:{type:Number,value:0},disableDefaultPadding:{type:Boolean,value:!1},disabled:{type:null,value:void 0},fixed:{type:Boolean,value:!1},focus:{type:Boolean,value:!1},holdKeyboard:{type:Boolean,value:!1},indicator:{type:Boolean,value:!1},label:{type:String},maxcharacter:{type:Number},maxlength:{type:Number,value:-1},placeholder:{type:String,value:void 0},placeholderClass:{type:String,value:"textarea-placeholder"},placeholderStyle:{type:String,value:""},readonly:{type:null,value:void 0},selectionEnd:{type:Number,value:-1},selectionStart:{type:Number,value:-1},showConfirmBar:{type:Boolean,value:!0},value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.d.ts b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.d.ts new file mode 100644 index 0000000..a3d8ec2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.d.ts @@ -0,0 +1,34 @@ +import { SuperComponent } from '../common/src/index'; +export default class Textarea extends SuperComponent { + options: { + multipleSlots: boolean; + }; + behaviors: string[]; + externalClasses: string[]; + properties: import("./type").TdTextareaProps; + data: { + prefix: string; + classPrefix: string; + count: number; + }; + observers: { + value(val: any): void; + }; + lifetimes: { + ready(): void; + }; + methods: { + updateCount(val: any): void; + updateValue(val: any): void; + calculateValue(value: any, maxcharacter: any, maxlength: any): { + value: any; + count: number; + }; + onInput(event: any): void; + onFocus(event: any): void; + onBlur(event: any): void; + onConfirm(event: any): void; + onLineChange(event: any): void; + onKeyboardHeightChange(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.js b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.js new file mode 100644 index 0000000..094c0db --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import{getCharacterLength}from"../common/utils";const{prefix:prefix}=config,name=`${prefix}-textarea`;let Textarea=class extends SuperComponent{constructor(){super(...arguments),this.options={multipleSlots:!0},this.behaviors=["wx://form-field"],this.externalClasses=[`${prefix}-class`,`${prefix}-class-textarea`,`${prefix}-class-label`,`${prefix}-class-indicator`],this.properties=props,this.data={prefix:prefix,classPrefix:name,count:0},this.observers={value(e){this.updateCount(null!=e?e:this.properties.defaultValue)}},this.lifetimes={ready(){var e;const{value:t,defaultValue:a}=this.properties;this.updateValue(null!==(e=null!=t?t:a)&&void 0!==e?e:"")}},this.methods={updateCount(e){const{maxcharacter:t,maxlength:a}=this.properties,{count:r}=this.calculateValue(e,t,a);this.setData({count:r})},updateValue(e){const{maxcharacter:t,maxlength:a}=this.properties,{value:r,count:s}=this.calculateValue(e,t,a);this.setData({value:r,count:s})},calculateValue(e,t,a){const{allowInputOverMax:r}=this.properties;if(t>0&&!Number.isNaN(t)){const{length:a,characters:s}=getCharacterLength("maxcharacter",e,r?1/0:t);return{value:s,count:a}}if(a>0&&!Number.isNaN(a)){const{length:t,characters:s}=getCharacterLength("maxlength",e,r?1/0:a);return{value:s,count:t}}return{value:e,count:e?String(e).length:0}},onInput(e){const{value:t,cursor:a}=e.detail;this.updateValue(t),this.triggerEvent("change",{value:this.data.value,cursor:a})},onFocus(e){this.triggerEvent("focus",Object.assign({},e.detail))},onBlur(e){this.triggerEvent("blur",Object.assign({},e.detail))},onConfirm(e){this.triggerEvent("enter",Object.assign({},e.detail))},onLineChange(e){this.triggerEvent("line-change",Object.assign({},e.detail))},onKeyboardHeightChange(e){this.triggerEvent("keyboardheightchange",e.detail)}}}};Textarea=__decorate([wxComponent()],Textarea);export default Textarea; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.json b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxml b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxml new file mode 100644 index 0000000..7074d58 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxml @@ -0,0 +1 @@ +{{ label }}{{count}} / {{maxcharacter || maxlength}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxs b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxs new file mode 100644 index 0000000..eae6814 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxs @@ -0,0 +1,15 @@ +var utils = require('../common/utils.wxs'); + +function textareaStyle(autosize) { + if (autosize && autosize.constructor === 'Object') { + return utils._style({ + 'min-height': utils.addUnit(autosize.minHeight), + 'max-height': utils.addUnit(autosize.maxHeight), + }); + } + return ''; +} + +module.exports = { + textareaStyle: textareaStyle, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxss b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxss new file mode 100644 index 0000000..2192543 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/textarea.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-textarea{display:flex;flex-direction:column;box-sizing:border-box;padding:32rpx 32rpx;background-color:var(--td-textarea-background-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-textarea__label:not(:empty){font-size:var(--td-font-size-base,28rpx);color:var(--td-textarea-label-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));flex-shrink:0;line-height:44rpx;padding-bottom:var(--td-spacer,16rpx);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.t-textarea__wrapper{display:flex;flex-direction:column;width:100%;flex:1 1 auto;overflow:hidden}.t-textarea__wrapper-inner{flex:1 1 auto;box-sizing:border-box;width:inherit;min-width:0;min-height:20px;margin:0;padding:0;text-align:left;background-color:transparent;border:0;resize:none;font-size:var(--td-font-size-m,32rpx);color:var(--td-textarea-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))));line-height:48rpx}.t-textarea__placeholder{color:var(--td-textarea-placeholder-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-font-size-m,32rpx)}.t-textarea__indicator:not(:empty){flex-shrink:0;color:var(--td-textarea-indicator-text-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));font-size:var(--td-spacer-1,24rpx);text-align:right;line-height:40rpx;padding-top:var(--td-spacer,16rpx)}.t-textarea--border{border-radius:var(--td-textarea-border-radius,var(--td-radius-default,12rpx));border:2rpx solid var(--td-textarea-border-color,var(--td-component-border,var(--td-gray-color-4,#dcdcdc)))}.t-textarea .t-is-disabled{color:var(--td-textarea-disabled-text-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/textarea/type.js b/app/miniprogram_npm/tdesign-miniprogram/textarea/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/textarea/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/toast/index.d.ts new file mode 100644 index 0000000..681cfef --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/index.d.ts @@ -0,0 +1,22 @@ +/// +/// +declare type Context = WechatMiniprogram.Page.TrivialInstance | WechatMiniprogram.Component.TrivialInstance; +declare type ToastType = 'loading' | 'success' | 'warning' | 'error'; +declare type ToastPositionType = 'top' | 'middle' | 'bottom'; +declare type ToastDirectionType = 'row' | 'column'; +export declare type ToastOptionsType = { + context?: Context; + selector?: string; + icon?: string; + message?: string; + duration?: number; + theme?: ToastType; + placement?: ToastPositionType; + preventScrollThrough?: boolean; + direction?: ToastDirectionType; + close?: () => void; +}; +declare function Toast(options: ToastOptionsType): void; +declare function showToast(options?: ToastOptionsType): void; +declare function hideToast(options?: ToastOptionsType): void; +export { Toast as default, showToast, hideToast }; diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/index.js b/app/miniprogram_npm/tdesign-miniprogram/toast/index.js new file mode 100644 index 0000000..15c4d25 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/index.js @@ -0,0 +1 @@ +import{__rest}from"tslib";import{getInstance}from"../common/utils";function Toast(t){var o;const{context:s,selector:e="#t-toast"}=t,n=__rest(t,["context","selector"]),a=getInstance(s,e);a&&a.show(Object.assign(Object.assign({},n),{duration:null!==(o=n.duration)&&void 0!==o?o:2e3}))}function showToast(t={}){Toast(t)}function hideToast(t={}){const{context:o,selector:s="#t-toast"}=t,e=getInstance(o,s);e&&e.hide()}export{Toast as default,showToast,hideToast}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/props.js b/app/miniprogram_npm/tdesign-miniprogram/toast/props.js new file mode 100644 index 0000000..62194a3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/props.js @@ -0,0 +1 @@ +const props={direction:{type:String,value:"row"},duration:{type:Number,value:2e3},icon:{type:null},message:{type:String},overlayProps:{type:Object},placement:{type:String,value:"middle"},preventScrollThrough:{type:Boolean,value:!1},showOverlay:{type:Boolean,value:!1},theme:{type:String},usingCustomNavbar:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/toast.d.ts b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.d.ts new file mode 100644 index 0000000..ce0f9fc --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.d.ts @@ -0,0 +1,31 @@ +/// +import { SuperComponent } from '../common/src/index'; +import { ToastOptionsType } from './index'; +declare type Timer = NodeJS.Timeout | null; +export default class Toast extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + behaviors: string[]; + hideTimer: Timer; + data: { + prefix: string; + classPrefix: string; + typeMapIcon: string; + }; + properties: import("./type").TdToastProps; + lifetimes: { + detached(): void; + }; + pageLifetimes: { + hide(): void; + }; + methods: { + show(options: ToastOptionsType): void; + hide(): void; + destroyed(): void; + loop(): void; + }; +} +export {}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/toast.js b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.js new file mode 100644 index 0000000..e1219aa --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";import transition from"../mixins/transition";import{calcIcon}from"../common/utils";import useCustomNavbar from"../mixins/using-custom-navbar";const{prefix:prefix}=config,name=`${prefix}-toast`;let Toast=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0},this.behaviors=[transition(),useCustomNavbar],this.hideTimer=null,this.data={prefix:prefix,classPrefix:name,typeMapIcon:""},this.properties=props,this.lifetimes={detached(){this.destroyed()}},this.pageLifetimes={hide(){this.hide()}},this.methods={show(e){this.hideTimer&&clearTimeout(this.hideTimer);const i={loading:"loading",success:"check-circle",warning:"error-circle",error:"close-circle"}[null==e?void 0:e.theme],t={direction:props.direction.value,duration:props.duration.value,icon:props.icon.value,message:props.message.value,placement:props.placement.value,preventScrollThrough:props.preventScrollThrough.value,theme:props.theme.value},o=Object.assign(Object.assign(Object.assign({},t),e),{visible:!0,isLoading:"loading"===(null==e?void 0:e.theme),_icon:calcIcon(null!=i?i:e.icon)}),{duration:s}=o;this.setData(o),s>0&&(this.hideTimer=setTimeout((()=>{this.hide()}),s))},hide(){var e,i;this.data.visible&&(this.setData({visible:!1}),null===(i=null===(e=this.data)||void 0===e?void 0:e.close)||void 0===i||i.call(e),this.triggerEvent("close"))},destroyed(){this.hideTimer&&(clearTimeout(this.hideTimer),this.hideTimer=null),this.triggerEvent("destory")},loop(){}}}};Toast=__decorate([wxComponent()],Toast);export default Toast; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/toast.json b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.json new file mode 100644 index 0000000..a594851 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-icon":"../icon/icon","t-loading":"../loading/loading","t-overlay":"../overlay/overlay"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxml b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxml new file mode 100644 index 0000000..c502d01 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxml @@ -0,0 +1 @@ +{{message}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxss b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxss new file mode 100644 index 0000000..3db4985 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/toast.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-toast{position:fixed;right:-50%;left:50%;transform:translate(-50%,-50%);z-index:12001;opacity:1;transition:opacity .3s ease;background-color:var(--td-toast-bg-color,var(--td-font-gray-2,rgba(0,0,0,.6)));border-radius:var(--td-toast-radius,8rpx);font-size:28rpx;color:var(--td-toast-color,var(--td-text-color-anti,var(--td-font-white-1,#fff)));max-width:var(--td-toast-max-width,374rpx);width:fit-content;box-sizing:border-box}.t-toast--column{padding:48rpx;min-width:160rpx;min-height:160rpx;border-radius:16rpx;display:flex;align-items:center;justify-content:center}.t-toast--loading.t-toast--with-text{min-width:204rpx;min-height:204rpx;padding-top:0;padding-bottom:0}.t-toast__content{align-items:center;line-height:44rpx}.t-toast__content--row{display:flex;text-align:left;padding:28rpx 44rpx}.t-toast__content--column{display:flex;flex-direction:column;justify-content:center;align-items:center}.t-toast__icon--row{display:flex;font-size:var(--td-toast-row-icon-size,48rpx)}.t-toast__icon--column{font-size:var(--td-toast-column-icon-size,64rpx)}.t-toast__text{overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:3;display:-webkit-box;-webkit-box-orient:vertical;white-space:pre-line}.t-toast__text--column:not(:empty):not(:only-child){margin-top:16rpx}.t-toast__text--row:not(:empty):not(:only-child){margin-left:16rpx}.t-toast.t-fade-enter,.t-toast.t-fade-leave-to{opacity:0} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/toast/type.js b/app/miniprogram_npm/tdesign-miniprogram/toast/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/toast/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/index.d.ts b/app/miniprogram_npm/tdesign-miniprogram/transition/index.d.ts new file mode 100644 index 0000000..e5ac999 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/index.d.ts @@ -0,0 +1,2 @@ +export * from './props'; +export * from './type'; diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/index.js b/app/miniprogram_npm/tdesign-miniprogram/transition/index.js new file mode 100644 index 0000000..cdff944 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/index.js @@ -0,0 +1 @@ +export*from"./props";export*from"./type"; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/props.js b/app/miniprogram_npm/tdesign-miniprogram/transition/props.js new file mode 100644 index 0000000..d764748 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/props.js @@ -0,0 +1 @@ +const props={appear:{type:Boolean,value:!1},destoryOnHide:{type:Boolean,value:!1},durations:{type:null},name:{type:String,value:"t-transition"},visible:{type:Boolean,value:!1}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/transition.d.ts b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.d.ts new file mode 100644 index 0000000..e487bd5 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.d.ts @@ -0,0 +1,8 @@ +import { SuperComponent } from '../common/src/index'; +export default class Transition extends SuperComponent { + externalClasses: string[]; + behaviors: string[]; + data: { + classPrefix: string; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/transition.js b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.js new file mode 100644 index 0000000..5a12f8b --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import transition from"../mixins/transition";import config from"../common/config";const{prefix:prefix}=config,name=`${prefix}-transition`;let Transition=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.behaviors=[transition()],this.data={classPrefix:name}}};Transition=__decorate([wxComponent()],Transition);export default Transition; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/transition.json b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.json new file mode 100644 index 0000000..c673d75 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxml b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxml new file mode 100644 index 0000000..1bba30f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxss b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxss new file mode 100644 index 0000000..c9a2eb3 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/transition.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-transition-enter{opacity:0}.t-transition-enter-to{opacity:1;transition:opacity 1s}.t-transition-leave{opacity:1}.t-transition-leave-to{opacity:0;transition:opacity 1s} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/transition/type.js b/app/miniprogram_npm/tdesign-miniprogram/transition/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/transition/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/index.wxs b/app/miniprogram_npm/tdesign-miniprogram/tree-select/index.wxs new file mode 100644 index 0000000..dc28a9d --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/index.wxs @@ -0,0 +1,7 @@ +var getTreeClass = function (level, total) { + if (level === 0) return 'right'; + if (level === 1 && level !== total - 1) return 'middle'; + return 'left'; +}; + +module.exports.getTreeClass = getTreeClass; diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/props.js b/app/miniprogram_npm/tdesign-miniprogram/tree-select/props.js new file mode 100644 index 0000000..8dd3cb8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/props.js @@ -0,0 +1 @@ +const props={customValue:{type:null},height:{type:null,value:336},keys:{type:Object},multiple:{type:Boolean,value:!1},options:{type:Array,value:[]},value:{type:null,value:null},defaultValue:{type:null}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.d.ts b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.d.ts new file mode 100644 index 0000000..dbf8f90 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.d.ts @@ -0,0 +1,60 @@ +import { SuperComponent } from '../common/src/index'; +import type { TreeOptionData } from '../common/common'; +export default class TreeSelect extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + data: { + prefix: string; + classPrefix: string; + scrollIntoView: any; + }; + properties: { + customValue: { + type: any; + value: any; + }; + height?: { + type: null; + value?: string | number; + }; + keys?: { + type: ObjectConstructor; + value?: import("../common/common").KeysType; + }; + multiple?: { + type: BooleanConstructor; + value?: boolean; + }; + options?: { + type: ArrayConstructor; + value?: TreeOptionData[]; + }; + value?: { + type: null; + value?: import("./type").TreeSelectValue; + }; + defaultValue?: { + type: null; + value?: import("./type").TreeSelectValue; + }; + }; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + 'value, customValue, options, keys, multiple'(): void; + }; + lifetimes: { + ready(): void; + }; + methods: { + buildTreeOptions(): void; + getScrollIntoView(status: string): void; + onRootChange(e: any): void; + handleTreeClick(e: any): void; + handleChange(e: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.js b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.js new file mode 100644 index 0000000..42c0fa9 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.js @@ -0,0 +1 @@ +import{__decorate}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import config from"../common/config";import props from"./props";const{prefix:prefix}=config,name=`${prefix}-tree-select`;let TreeSelect=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`,`${prefix}-class-left-column`,`${prefix}-class-left-item`,`${prefix}-class-middle-item`,`${prefix}-class-right-column`,`${prefix}-class-right-item`,`${prefix}-class-right-item-label`],this.options={multipleSlots:!0},this.data={prefix:prefix,classPrefix:name,scrollIntoView:null},this.properties=Object.assign(Object.assign({},props),{customValue:{type:null,value:null}}),this.controlledProps=[{key:"value",event:"change"}],this.observers={"value, customValue, options, keys, multiple"(){this.buildTreeOptions()}},this.lifetimes={ready(){this.getScrollIntoView("init")}},this.methods={buildTreeOptions(){const{options:e,value:l,defaultValue:t,customValue:i,multiple:s,keys:n}=this.data,r=[];let o=-1,a={children:e};if(0===e.length)return;for(;a&&a.children;){o+=1;const e=a.children.map((e=>({label:e[(null==n?void 0:n.label)||"label"],value:e[(null==n?void 0:n.value)||"value"],children:e.children}))),t=(null==i?void 0:i[o])||(null==l?void 0:l[o]);if(r.push([...e]),null==t){const[l]=e;a=l}else{const l=e.find((e=>e.value===t));a=null!=l?l:e[0]}}const c=Math.max(0,o);if(s){const e=i||l||t;if(null!=e[c]&&!Array.isArray(e[c]))throw TypeError("应传入数组类型的 value")}this.setData({innerValue:i||(null==r?void 0:r.map(((e,t)=>{const i=t===r.length-1&&s?[e[0].value]:e[0].value;return(null==l?void 0:l[t])||i}))),leafLevel:c,treeOptions:r})},getScrollIntoView(e){const{value:l,customValue:t,scrollIntoView:i}=this.data;if("init"===e){const e=t||l,i=Array.isArray(e)?e.map((e=>Array.isArray(e)?e[0]:e)):[e];this.setData({scrollIntoView:i})}else{if(null===i)return;this.setData({scrollIntoView:null})}},onRootChange(e){const{innerValue:l}=this.data,{value:t}=e.detail;this.getScrollIntoView("none"),l[0]=t,this._trigger("change",{value:l,level:0})},handleTreeClick(e){const{level:l,value:t}=e.currentTarget.dataset,{innerValue:i}=this.data;i[l]=t,this.getScrollIntoView("none"),this._trigger("change",{value:i,level:1})},handleChange(e){const{innerValue:l}=this.data,{level:t,type:i}=e.target.dataset;if("multiple"===i){const{context:{value:i}}=e.detail,s=l[t].indexOf(i);-1!==s?l[t].splice(s,1):l[t].push(i)}else{const{value:i}=e.detail;l[t]=i}this.getScrollIntoView("none"),this._trigger("change",{value:l,level:t})}}}};TreeSelect=__decorate([wxComponent()],TreeSelect);export default TreeSelect; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.json b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.json new file mode 100644 index 0000000..3b8f81a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-radio":"../radio/radio","t-radio-group":"../radio-group/radio-group","t-checkbox":"../checkbox/checkbox","t-checkbox-group":"../checkbox-group/checkbox-group","t-side-bar":"../side-bar/side-bar","t-side-bar-item":"../side-bar-item/side-bar-item","t-scroll-view":"../scroll-view/scroll-view"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxml b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxml new file mode 100644 index 0000000..8c6bf89 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxml @@ -0,0 +1 @@ +{{item.label}}{{item.label}}{{item.label}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxss b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxss new file mode 100644 index 0000000..7cb9109 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/tree-select.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-tree-select{display:flex;background-color:var(--td-tree-bg-color,var(--td-bg-color-container,var(--td-font-white-1,#fff)))}.t-tree-select__column{width:var(--td-tree-colum-width,206rpx);color:var(--td-tree-colum-text-color,var(--td-text-color-primary,var(--td-font-gray-1,rgba(0,0,0,.9))))}.t-tree-select__column--left{background:var(--td-tree-root-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)))}.t-tree-select__column--right{flex:1}.t-tree-select__column::-webkit-scrollbar{display:none;width:0;height:0;color:transparent}.t-tree-select__item{overflow:hidden;text-overflow:ellipsis;-webkit-line-clamp:1;display:-webkit-box;-webkit-box-orient:vertical;height:var(--td-tree-item-height,112rpx);line-height:var(--td-tree-item-height,112rpx);font-size:var(--td-tree-item-font-size,32rpx);padding-left:32rpx}.t-tree-select__item--active{font-weight:600;color:var(--td-tree-item-active-color,var(--td-brand-color,var(--td-primary-color-7,#0052d9)))}.t-tree-select-column{width:100%;height:auto} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/tree-select/type.js b/app/miniprogram_npm/tdesign-miniprogram/tree-select/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/tree-select/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/drag.wxs b/app/miniprogram_npm/tdesign-miniprogram/upload/drag.wxs new file mode 100644 index 0000000..a136b58 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/drag.wxs @@ -0,0 +1,238 @@ +var classPrefix = ''; +var startIndex = 0; +var endIndex = 0; +var dragCollisionList = []; + +var isOutRange = function (x1, y1, x2, y2, x3, y3) { + return x1 < 0 || x1 >= y1 || x2 < 0 || x2 >= y2 || x3 < 0 || x3 >= y3; +}; + +var sortCore = function (sKey, eKey, st) { + var _ = st.dragBaseData; + + var excludeFix = function (cKey, type) { + if (st.list[cKey].fixed) { + // fixed 元素位置不会变化, 这里直接用 cKey(sortKey) 获取, 更加快捷 + type ? --cKey : ++cKey; + return excludeFix(cKey, type); + } + return cKey; + }; + + // 先获取到 endKey 对应的 realKey, 防止下面排序过程中该 realKey 被修改 + var endRealKey = -1; + st.list.forEach(function (item) { + if (item.sortKey === eKey) endRealKey = item.realKey; + }); + + return st.list.map(function (item) { + if (item.fixed) return item; + var cKey = item.sortKey; + var rKey = item.realKey; + + if (sKey < eKey) { + // 正序拖动 + if (cKey > sKey && cKey <= eKey) { + --rKey; + cKey = excludeFix(--cKey, true); + } else if (cKey === sKey) { + rKey = endRealKey; + cKey = eKey; + } + } else if (sKey > eKey) { + // 倒序拖动 + if (cKey >= eKey && cKey < sKey) { + ++rKey; + cKey = excludeFix(++cKey, false); + } else if (cKey === sKey) { + rKey = endRealKey; + cKey = eKey; + } + } + + if (item.sortKey !== cKey) { + item.tranX = (cKey % _.columns) * 100 + '%'; + item.tranY = Math.floor(cKey / _.columns) * 100 + '%'; + item.sortKey = cKey; + item.realKey = rKey; + } + return item; + }); +}; + +var triggerCustomEvent = function (list, type, ins) { + var _list = [], + listData = []; + + list.forEach(function (item) { + _list[item.sortKey] = item; + }); + + _list.forEach(function (item) { + if (!item.extraNode) { + listData.push(item.data); + } + }); + + ins.triggerEvent(type, { listData: listData }); +}; + +var longPress = function (event, ownerInstance) { + var ins = event.instance; + var st = ownerInstance.getState(); + var _ = st.dragBaseData; + + var sTouch = event.changedTouches[0]; + if (!sTouch) return; + + st.cur = ins.getDataset().index; + longPressIndex = st.cur; + + // 初始项是固定项则返回 + var item = st.list[st.cur]; + if (item && item.fixed) return; + + // 如果已经在 drag 中则返回, 防止多指触发 drag 动作, touchstart 事件中有效果 + if (st.dragging) return; + st.dragging = true; + ownerInstance.callMethod('dragStatusChange', { dragging: true }); + + // 计算X,Y轴初始位移, 使 item 中心移动到点击处, 单列时候X轴初始不做位移 + st.tranX = _.columns === 1 ? 0 : sTouch.pageX - (_.itemWidth / 2 + _.wrapLeft); + st.tranY = sTouch.pageY - (_.itemHeight / 2 + _.wrapTop); + st.sId = sTouch.identifier; + ins.setStyle({ + transform: 'translate3d(' + st.tranX + 'px, ' + st.tranY + 'px, 0)', + }); + st.itemsInstance.forEach(function (item, index) { + item.removeClass(classPrefix + '__drag--tran').removeClass(classPrefix + '__drag--cur'); + item.addClass(index === st.cur ? classPrefix + '__drag--cur' : classPrefix + '__drag--tran'); + }); + ownerInstance.callMethod('dragVibrate', { vibrateType: 'longPress' }); +}; + +var touchMove = function (event, ownerInstance) { + var ins = event.instance; + var st = ownerInstance.getState(); + var _ = st.dragBaseData; + + var mTouch = event.changedTouches[0]; + if (!mTouch) return; + + if (!st.dragging) return; + + // 如果不是同一个触发点则返回 + if (st.sId !== mTouch.identifier) return; + + // 计算X,Y轴位移, 单列时候X轴初始不做位移 + var tranX = _.columns === 1 ? 0 : mTouch.pageX - (_.itemWidth / 2 + _.wrapLeft); + var tranY = mTouch.pageY - (_.itemHeight / 2 + _.wrapTop); + + // 到顶到底自动滑动 + if (mTouch.clientY > _.windowHeight - _.itemHeight - _.realBottomSize) { + // 当前触摸点pageY + item高度 - (屏幕高度 - 底部固定区域高度) + ownerInstance.callMethod('pageScroll', { + scrollTop: mTouch.pageY + _.itemHeight - (_.windowHeight - _.realBottomSize), + }); + } else if (mTouch.clientY < _.itemHeight + _.realTopSize) { + // 当前触摸点pageY - item高度 - 顶部固定区域高度 + ownerInstance.callMethod('pageScroll', { + scrollTop: mTouch.pageY - _.itemHeight - _.realTopSize, + }); + } + + // 设置当前激活元素偏移量 + ins.setStyle({ + transform: 'translate3d(' + tranX + 'px, ' + tranY + 'px, 0)', + }); + + var startKey = st.list[st.cur].sortKey; + var curX = Math.round(tranX / _.itemWidth); + var curY = Math.round(tranY / _.itemHeight); + var endKey = curX + _.columns * curY; + + // 目标项是固定项则返回 + var item = st.list[endKey]; + if (item && item.fixed) return; + + // X轴或Y轴超出范围则返回 + if (isOutRange(curX, _.columns, curY, _.rows, endKey, st.list.length)) return; + + // 防止拖拽过程中发生乱序问题 + if (startKey === endKey || startKey === st.preStartKey) return; + st.preStartKey = startKey; + + dragCollisionList = sortCore(startKey, endKey, st); + startIndex = startKey; + endIndex = endKey; + st.itemsInstance.forEach(function (itemIns, index) { + var item = dragCollisionList[index]; + if (index !== st.cur) { + itemIns.setStyle({ + transform: 'translate3d(' + item.tranX + ',' + item.tranY + ', 0)', + }); + } + }); + + ownerInstance.callMethod('dragVibrate', { vibrateType: 'touchMove' }); + ownerInstance.callMethod('dragCollision', { + dragCollisionList: dragCollisionList, + startIndex: startIndex, + endIndex: endIndex, + }); + triggerCustomEvent(dragCollisionList, 'change', ownerInstance); +}; + +var touchEnd = function (event, ownerInstance) { + var ins = event.instance; + var st = ownerInstance.getState(); + + if (!st.dragging) return; + triggerCustomEvent(st.list, 'sortend', ownerInstance); + ins.addClass(classPrefix + '__drag--tran'); + ins.setStyle({ + transform: 'translate3d(' + st.list[st.cur].tranX + ',' + st.list[st.cur].tranY + ', 0)', + }); + st.preStartKey = -1; + st.dragging = false; + ownerInstance.callMethod('dragStatusChange', { dragging: false }); + ownerInstance.callMethod('dragEnd', { + dragCollisionList: dragCollisionList, + startIndex: startIndex, + endIndex: endIndex, + }); + st.cur = -1; + st.tranX = 0; + st.tranY = 0; +}; + +var baseDataObserver = function (newVal, oldVal, ownerInstance, ins) { + var st = ownerInstance.getState(); + st.dragBaseData = newVal; + classPrefix = newVal.classPrefix; +}; + +var listObserver = function (newVal, oldVal, ownerInstance, ins) { + var st = ownerInstance.getState(); + st.itemsInstance = ownerInstance.selectAllComponents('.' + classPrefix + '__drag-item'); + st.list = newVal || []; + st.list.forEach(function (item, index) { + var itemIns = st.itemsInstance[index]; + if (item && itemIns) { + itemIns.removeClass(classPrefix + '__drag--tran'); + itemIns.setStyle({ + transform: 'translate3d(' + item.tranX + ',' + item.tranY + ', 0)', + }); + if (item.fixed) itemIns.addClass(classPrefix + '__drag--fixed'); + } + }); + dragCollisionList = []; +}; + +module.exports = { + longPress: longPress, + touchMove: touchMove, + touchEnd: touchEnd, + baseDataObserver: baseDataObserver, + listObserver: listObserver, +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/props.js b/app/miniprogram_npm/tdesign-miniprogram/upload/props.js new file mode 100644 index 0000000..152bb87 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/props.js @@ -0,0 +1 @@ +const props={addBtn:{type:Boolean,value:!0},addContent:{type:String},allowUploadDuplicateFile:{type:Boolean,value:!1},config:{type:Object},disabled:{type:null,value:void 0},draggable:{type:null},files:{type:Array,value:null},defaultFiles:{type:Array},gridConfig:{type:Object},gutter:{type:Number,value:16},imageProps:{type:Object},max:{type:Number,value:0},mediaType:{type:Array,value:["image","video"]},removeBtn:{type:Boolean,value:!0},requestMethod:{type:null},sizeLimit:{type:null},source:{type:String,value:"media"},transition:{type:Object,value:{backTransition:!0,duration:300,timingFunction:"ease"}}};export default props; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/type.js b/app/miniprogram_npm/tdesign-miniprogram/upload/type.js new file mode 100644 index 0000000..17bca46 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/type.js @@ -0,0 +1 @@ +export{}; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload-info.json b/app/miniprogram_npm/tdesign-miniprogram/upload/upload-info.json new file mode 100644 index 0000000..a19ec9e --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload-info.json @@ -0,0 +1 @@ +{"key":"Upload","label":"上传","icon":"","properties":[{"key":"addContent","type":["String","TNode"],"defaultValue":"","desc":"添加按钮内容。值为空,使用默认图标渲染;值为 slot 则表示使用插槽渲染;其他值无效。","label":""},{"key":"config","type":["Object"],"defaultValue":"","desc":"图片上传配置,视频上传配置,文件上传配置等,包含图片尺寸、图片来源、视频来源、视频拍摄最长时间等。更多细节查看小程序官网。[图片上传](https://developers.weixin.qq.com/miniprogram/dev/api/media/image/wx.chooseImage.html)。[视频上传](https://developers.weixin.qq.com/miniprogram/dev/api/media/video/wx.chooseVideo.html)","label":""},{"key":"deleteBtn","type":["String","TNode"],"defaultValue":"","desc":"删除图标。值为空,使用默认图标渲染;值为 slot 则表示使用插槽渲染;其他值无效。","label":""},{"key":"fileListDisplay","type":["TNode"],"defaultValue":"","desc":"【开发中】用于完全自定义文件列表内容","label":""},{"key":"files","type":["Array"],"defaultValue":"","desc":"已上传文件列表","label":""},{"key":"gridConfig","type":["Object"],"defaultValue":"","desc":"upload组件每行上传图片列数以及图片的宽度和高度","label":""},{"key":"gutter","type":["Number"],"defaultValue":"16","desc":"预览窗格的 gutter 大小,单位 rpx","label":""},{"key":"imageProps","type":["Object"],"defaultValue":"","desc":"透传 Image 组件全部属性","label":""},{"key":"max","type":["Number"],"defaultValue":"0","desc":"用于控制文件上传数量,值为 0 则不限制","label":""},{"key":"mediaType","type":["Array"],"defaultValue":"['image', 'video']","desc":"支持上传的文件类型,图片或视频","label":""},{"key":"requestMethod","type":["Function"],"defaultValue":"","desc":"自定义上传方法","label":""},{"key":"sizeLimit","type":["Number","Object"],"defaultValue":"","desc":"图片文件大小限制,单位 KB。可选单位有:`'B' | 'KB' | 'MB' | 'GB'`。示例一:`1000`。示例二:`{ size: 2, unit: 'MB', message: '图片大小不超过 {sizeLimit} MB' }`","label":""}],"events":[{"key":"add","desc":"上传成功后触发,仅包含本次选择的照片;`context.url` 表示选定视频的临时文件路径 (本地路径)。`context.duration` 表示选定视频的时间长度。`context.size`选定视频的数据量大小。更多描述参考 wx.chooseMedia 小程序官网描述","label":""},{"key":"complete","desc":"上传成功或失败后触发","label":""},{"key":"fail","desc":"上传失败后触发","label":""},{"key":"remove","desc":"移除文件时触发","label":""},{"key":"selectChange","desc":"选择文件或图片之后,上传之前,触发该事件。`params.value` 表示之前已经上传完成的文件列表。`params.currentSelectedFiles` 表示本次上传选中的文件列表","label":""},{"key":"success","desc":"上传成功后触发,包含所有上传的文件;`context.url` 表示选定视频的临时文件路径 (本地路径)。`context.duration` 表示选定视频的时间长度。`context.size`选定视频的数据量大小。更多描述参考 wx.chooseMedia 小程序官网描述","label":""}]} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.d.ts b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.d.ts new file mode 100644 index 0000000..6c3225a --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.d.ts @@ -0,0 +1,60 @@ +import { SuperComponent } from '../common/src/index'; +import { UploadFile } from './type'; +export default class Upload extends SuperComponent { + externalClasses: string[]; + options: { + multipleSlots: boolean; + }; + data: { + classPrefix: string; + prefix: string; + current: boolean; + proofs: any[]; + customFiles: UploadFile[]; + customLimit: number; + column: number; + dragBaseData: {}; + rows: number; + dragWrapStyle: string; + dragList: any[]; + dragging: boolean; + dragLayout: boolean; + }; + properties: import("./type").TdUploadProps; + controlledProps: { + key: string; + event: string; + }[]; + observers: { + 'files, max, draggable'(files: UploadFile, max: number): void; + gridConfig(): void; + }; + lifetimes: { + ready(): void; + }; + onProofTap(e: any): void; + handleLimit(customFiles: UploadFile[], max: number): void; + triggerSuccessEvent(files: any): void; + triggerFailEvent(err: any): void; + onFileClick(e: any): void; + getFileType(mediaType: string[], tempFilePath: string, fileType?: string): string; + getRandFileName(filePath: any): string; + onDelete(e: any): void; + deleteHandle(index: number): void; + updateGrid(): void; + initDragLayout(): void; + initDragList(): void; + initDragBaseData(): void; + methods: { + uploadFiles(files: UploadFile[]): Promise; + startUpload(files: UploadFile[]): any; + onAddTap(): void; + chooseMedia(mediaType: any): void; + chooseMessageFile(mediaType: any): void; + afterSelect(files: any): void; + dragVibrate(e: any): void; + dragStatusChange(e: any): void; + dragEnd(e: any): void; + triggerDropEvent(files: any): void; + }; +} diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.js b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.js new file mode 100644 index 0000000..8f3f9a2 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.js @@ -0,0 +1 @@ +import{__decorate,__rest}from"tslib";import{SuperComponent,wxComponent}from"../common/src/index";import props from"./props";import config from"../common/config";import{isOverSize}from"../common/utils";import{isObject}from"../common/validator";const{prefix:prefix}=config,name=`${prefix}-upload`;let Upload=class extends SuperComponent{constructor(){super(...arguments),this.externalClasses=[`${prefix}-class`],this.options={multipleSlots:!0},this.data={classPrefix:name,prefix:prefix,current:!1,proofs:[],customFiles:[],customLimit:0,column:4,dragBaseData:{},rows:0,dragWrapStyle:"",dragList:[],dragging:!0,dragLayout:!1},this.properties=props,this.controlledProps=[{key:"files",event:"success"}],this.observers={"files, max, draggable"(t,e){this.handleLimit(t,e)},gridConfig(){this.updateGrid()}},this.lifetimes={ready(){this.handleLimit(this.data.customFiles,this.data.max),this.updateGrid()}},this.methods={uploadFiles(t){return new Promise((e=>{const i=this.data.requestMethod(t);if(i instanceof Promise)return i;e({})}))},startUpload(t){return"function"==typeof this.data.requestMethod?this.uploadFiles(t).then((()=>{t.forEach((t=>{t.percent=100})),this.triggerSuccessEvent(t)})).catch((t=>{this.triggerFailEvent(t)})):(this.triggerSuccessEvent(t),this.handleLimit(this.data.customFiles,this.data.max),Promise.resolve())},onAddTap(){const{disabled:t,mediaType:e,source:i}=this.properties;t||("media"===i?this.chooseMedia(e):this.chooseMessageFile(e))},chooseMedia(t){const{config:e,sizeLimit:i,customLimit:s}=this.data;wx.chooseMedia(Object.assign(Object.assign({count:s,mediaType:t},e),{success:e=>{const s=[];e.tempFiles.forEach((e=>{const{size:r,fileType:a,tempFilePath:o,width:n,height:l,duration:c,thumbTempFilePath:h}=e,g=__rest(e,["size","fileType","tempFilePath","width","height","duration","thumbTempFilePath"]);if(isOverSize(r,i)){let t=("image"===a?"图片":"视频")+"大小超过限制";return"number"!=typeof i&&(t=i.message.replace("{sizeLimit}",null==i?void 0:i.size)),void wx.showToast({icon:"none",title:t})}const d=this.getRandFileName(o);s.push(Object.assign({name:d,type:this.getFileType(t,o,a),url:o,size:r,width:n,height:l,duration:c,thumb:h,percent:0},g))})),this.afterSelect(s)},fail:t=>{this.triggerFailEvent(t)},complete:t=>{this.triggerEvent("complete",t)}}))},chooseMessageFile(t){const{max:e,config:i,sizeLimit:s}=this.properties;wx.chooseMessageFile(Object.assign(Object.assign({count:e,type:Array.isArray(t)?"all":t},i),{success:e=>{const i=[];e.tempFiles.forEach((e=>{const{size:r,type:a,path:o}=e,n=__rest(e,["size","type","path"]);if(isOverSize(r,s)){let t=("image"===a?"图片":"视频")+"大小超过限制";return"number"!=typeof s&&(t=s.message.replace("{sizeLimit}",null==s?void 0:s.size)),void wx.showToast({icon:"none",title:t})}const l=this.getRandFileName(o);i.push(Object.assign({name:l,type:this.getFileType(t,o,a),url:o,size:r,percent:0},n))})),this.afterSelect(i)},fail:t=>this.triggerFailEvent(t),complete:t=>this.triggerEvent("complete",t)}))},afterSelect(t){this._trigger("select-change",{files:[...this.data.customFiles],currentSelectedFiles:[t]}),this._trigger("add",{files:t}),this.startUpload(t)},dragVibrate(t){var e;const{vibrateType:i}=t,{draggable:s}=this.data,r=null===(e=null==s?void 0:s.vibrate)||void 0===e||e,a=null==s?void 0:s.collisionVibrate;(r&&"longPress"===i||a&&"touchMove"===i)&&wx.vibrateShort({type:"light"})},dragStatusChange(t){const{dragging:e}=t;this.setData({dragging:e})},dragEnd(t){const{dragCollisionList:e}=t;let i=[];i=0===e.length?this.data.customFiles:e.reduce(((t,e)=>{const{realKey:i,data:s,fixed:r}=e;return r||(t[i]=Object.assign({},s)),t}),[]),this.triggerDropEvent(i)},triggerDropEvent(t){const{transition:e}=this.properties;if(e.backTransition){const i=setTimeout((()=>{this.triggerEvent("drop",{files:t}),clearTimeout(i)}),e.duration)}else this.triggerEvent("drop",{files:t})}}}onProofTap(t){var e;this.onFileClick(t);const{index:i}=t.currentTarget.dataset;wx.previewImage({urls:this.data.customFiles.filter((t=>-1!==t.percent)).map((t=>t.url)),current:null===(e=this.data.customFiles[i])||void 0===e?void 0:e.url})}handleLimit(t,e){0===e&&(e=20),this.setData({customFiles:t.length>e?t.slice(0,e):t,customLimit:e-t.length,dragging:!0}),this.initDragLayout()}triggerSuccessEvent(t){this._trigger("success",{files:[...this.data.customFiles,...t]})}triggerFailEvent(t){this.triggerEvent("fail",t)}onFileClick(t){const{file:e}=t.currentTarget.dataset;this.triggerEvent("click",{file:e})}getFileType(t,e,i){if(i)return i;if(1===t.length)return t[0];const s=e.split("."),r=s[s.length-1];return["avi","wmv","mkv","mp4","mov","rm","3gp","flv","mpg","rmvb"].includes(r.toLocaleLowerCase())?"video":"image"}getRandFileName(t){const e=t.lastIndexOf("."),i=-1===e?"":t.substr(e);return parseInt(`${Date.now()}${Math.floor(900*Math.random()+100)}`,10).toString(36)+i}onDelete(t){const{index:e}=t.currentTarget.dataset;this.deleteHandle(e)}deleteHandle(t){const{customFiles:e}=this.data,i=e[t];this.triggerEvent("remove",{index:t,file:i})}updateGrid(){let{gridConfig:t={}}=this.properties;isObject(t)||(t={});const{column:e=4,width:i=160,height:s=160}=t;this.setData({gridItemStyle:`width:${i}rpx;height:${s}rpx`,column:e})}initDragLayout(){const{draggable:t,disabled:e}=this.properties;t&&!e&&(this.initDragList(),this.initDragBaseData())}initDragList(){let t=0;const{column:e,customFiles:i,customLimit:s}=this.data,r=[];if(i.forEach(((i,s)=>{r.push({realKey:t,sortKey:s,tranX:s%e*100+"%",tranY:100*Math.floor(s/e)+"%",data:Object.assign({},i)}),t+=1})),s>0){const t=r.length;r.push({realKey:t,sortKey:t,tranX:t%e*100+"%",tranY:100*Math.floor(t/e)+"%",fixed:!0})}this.data.rows=Math.ceil(r.length/e),this.setData({dragList:r})}initDragBaseData(){const{classPrefix:t,rows:e,column:i,customFiles:s}=this.data;if(0===s.length)return void this.setData({dragBaseData:{},dragWrapStyle:"",dragLayout:!1});const r=this.createSelectorQuery(),a=`.${t} >>> .t-grid-item`,o=`.${t} >>> .t-grid`;r.select(a).boundingClientRect(),r.select(o).boundingClientRect(),r.selectViewport().scrollOffset(),r.exec((s=>{const[{width:r,height:a},{left:o,top:n},{scrollTop:l}]=s,c={rows:e,classPrefix:t,itemWidth:r,itemHeight:a,wrapLeft:o,wrapTop:n+l,columns:i},h=`height: ${e*a}px`;this.setData({dragBaseData:c,dragWrapStyle:h,dragLayout:!0},(()=>{const t=setTimeout((()=>{this.setData({dragging:!1}),clearTimeout(t)}),0)}))}))}};Upload=__decorate([wxComponent()],Upload);export default Upload; \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.json b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.json new file mode 100644 index 0000000..e7b83d8 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.json @@ -0,0 +1 @@ +{"component":true,"styleIsolation":"apply-shared","usingComponents":{"t-grid":"../grid/grid","t-grid-item":"../grid-item/grid-item","t-icon":"../icon/icon","t-image":"../image/image"}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxml b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxml new file mode 100644 index 0000000..9bb6f78 --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxml @@ -0,0 +1 @@ +{{file.percent ? file.percent + '%' : '上传中...'}}{{file.status == 'reload' ? '重新上传' : '上传失败'}}{{addContent}}{{file.percent ? file.percent + '%' : '上传中...'}}{{file.status == 'reload' ? '重新上传' : '上传失败'}}{{addContent}} \ No newline at end of file diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxs b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxs new file mode 100644 index 0000000..03b321f --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxs @@ -0,0 +1,15 @@ +module.exports.getWrapperAriaRole = function (file) { + return file.status && file.status != 'done' ? 'text' : 'button'; +}; + +module.exports.getWrapperAriaLabel = function (file) { + if (file.status && file.status != 'done') { + if (file.status == 'loading') { + return file.percent ? '上传中:' + file.percent + '%' : '上传中'; + } else { + return file.status == 'reload' ? '重新上传' : '上传失败'; + } + } else { + return file.type === 'video' ? '视频' : '图像'; + } +}; diff --git a/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxss b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxss new file mode 100644 index 0000000..0fa7d3c --- /dev/null +++ b/app/miniprogram_npm/tdesign-miniprogram/upload/upload.wxss @@ -0,0 +1 @@ +@import '../common/style/index.wxss';.t-upload{position:relative}.t-upload__grid-content{padding:0}.t-upload__grid-file{position:relative}.t-upload__add-icon{width:100%;height:100%;display:none;align-items:center;justify-content:center;font-size:var(--td-upload-add-icon-font-size,56rpx);background-color:var(--td-upload-add-bg-color,var(--td-bg-color-secondarycontainer,var(--td-gray-color-1,#f3f3f3)));color:var(--td-upload-add-color,var(--td-text-color-placeholder,var(--td-font-gray-3,rgba(0,0,0,.4))));border-radius:var(--td-upload-radius,var(--td-radius-default,12rpx))}.t-upload__add-icon--disabled{background-color:var(--td-upload-add-disabled-bg-color,var(--td-bg-color-component-disabled,var(--td-gray-color-2,#eee)));color:var(--td-upload-add-icon-disabled-color,var(--td-text-color-disabled,var(--td-font-gray-4,rgba(0,0,0,.26))))}.t-upload__add-icon:only-child{display:flex}.t-upload__thumbnail{width:100%;height:100%;max-height:100%;overflow:hidden}.t-upload__wrapper{position:relative;border-radius:var(--td-upload-radius,var(--td-radius-default,12rpx));overflow:hidden}.t-upload__wrapper--disabled::before{content:'';position:absolute;top:0;left:0;width:100%;height:100%;background-color:var(--td-upload-disabled-mask,rgba(0,.6));z-index:1}.t-upload__close-btn{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;width:40rpx;height:40rpx;border-top-right-radius:var(--td-upload-radius,var(--td-radius-default,12rpx));border-bottom-left-radius:var(--td-upload-radius,var(--td-radius-default,12rpx));background-color:var(--td-font-gray-3,rgba(0,0,0,.4))}.t-upload__progress-mask{position:absolute;left:0;top:0;width:100%;height:100%;background-color:var(--td-font-gray-2,rgba(0,0,0,.6));display:flex;flex-direction:column;align-items:center;justify-content:center;border-radius:var(--td-upload-radius,var(--td-radius-default,12rpx));color:var(--td-text-color-anti,var(--td-font-white-1,#fff));padding:32rpx 0;box-sizing:border-box}.t-upload__progress-text{font-size:24rpx;line-height:40rpx;margin-top:8rpx}.t-upload__progress-loading{animation:spin infinite linear .6s}.t-upload__drag{position:relative;width:100%;--td-grid-item-bg-color:transparent}.t-upload__drag-item{position:absolute;z-index:1;top:0;left:0;height:auto;width:100%}.t-upload__drag--fixed{z-index:0}.t-upload__drag--tran{transition-property:transform;transition-duration:var(--td-upload-drag-transition-duration);transition-timing-function:var(--td-upload-drag-transition-timing-function)}.t-upload__drag--cur{z-index:var(--td-upload-drag-z-index,999)}@keyframes spin{0%{transform:rotate(0)}100%{transform:rotate(360deg)}} \ No newline at end of file diff --git a/app/mixins/SendVerifyCode.js b/app/mixins/SendVerifyCode.js deleted file mode 100644 index 46fa6b2..0000000 --- a/app/mixins/SendVerifyCode.js +++ /dev/null @@ -1,27 +0,0 @@ -export default { - data() { - return { - disabled: false, - text: "获取验证码" - }; - }, - methods: { - sendCode() { - if (this.disabled) return; - this.disabled = true; - let n = 60; - this.text = "剩余 " + n + "s"; - const run = setInterval(() => { - n = n - 1; - if (n < 0) { - clearInterval(run); - } - this.text = "剩余 " + n + "s"; - if (this.text < "剩余 " + 0 + "s") { - this.disabled = false; - this.text = "重新获取"; - } - }, 1000); - } - } -}; \ No newline at end of file diff --git a/app/package.json b/app/package.json new file mode 100644 index 0000000..779cf89 --- /dev/null +++ b/app/package.json @@ -0,0 +1,16 @@ +{ + "name": "app", + "version": "1.0.0", + "description": "", + "main": "app.js", + "scripts": { + "test": "echo \"Error: no test specified\" && exit 1" + }, + "keywords": [], + "author": "", + "license": "ISC", + "dependencies": { + "@vant/weapp": "^1.11.7", + "tdesign-miniprogram": "^1.9.0" + } +} diff --git a/app/pages.json b/app/pages.json deleted file mode 100644 index 4cf5545..0000000 --- a/app/pages.json +++ /dev/null @@ -1,823 +0,0 @@ -{ - "pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages - { - "path": "pages/index/index", - "style": { - "navigationBarTitleText": "首页", - "navigationStyle": "custom" - // "app-plus": { - // "scrollIndicator": false //禁用原生导航栏 - // } - } - }, - { - "path": "pages/order_addcart/order_addcart", - "style": { - "navigationBarTitleText": "购物车", - "navigationBarBackgroundColor": "#E93323", - "navigationStyle": "custom", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/user/index", - "style": { - //"navigationBarTitleText": "个人中心", - // #ifdef MP || APP-PLUS - "navigationBarTextStyle": "black", - "navigationBarBackgroundColor": "#E93323", - // #endif - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/goods_details/index", - "style": { - "navigationStyle": "custom" - } - }, - { - "path": "pages/goods_cate/goods_cate", - "style": { - "navigationBarBackgroundColor": "#E93323", - //"navigationBarTitleText": "商品分类", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/retrieve_password/index", - "style": { - "navigationBarTitleText": "找回密码" - } - }, - // #ifdef H5 - { - "path": "pages/customer_list/index", - "style": { - "navigationBarTitleText": "客服列表" - } - }, - { - "path": "pages/customer_list/chat", - "style": { - "navigationBarTitleText": "客服聊天" - } - }, - // #endif - { - "path": "pages/goods_list/index", - "style": { - "navigationBarTitleText": "商品列表", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/news_list/index", - "style": { - //"navigationBarTitleText": "资讯", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/news_details/index", - "style": { - //"navigationBarTitleText": "资讯详情", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - //#ifdef H5 - { - "path": "pages/auth/index", - "style": { - //"navigationBarTitleText": "CRMEB" - } - }, - //#endif - { - "path": "pages/goods_search/index", - "style": { - //"navigationBarTitleText": "搜索商品", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "pages/order_pay_status/index", - "style": { - "navigationBarTitleText": "支付成功" - } - }, - { - "path": "pages/order_details/index", - "style": { - //"navigationBarTitleText": "订单详情", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, { - "path": "pages/index/components/a_seckill", - "style": {} - }, { - "path": "pages/index/components/b_combination", - "style": {} - } - ], - "subPackages": [{ - "root": "pages/users", - "name": "users", - "pages": [ - { - "path": "privacy/index", - "style": { - "navigationBarTitleText": "隐私协议" - } - }, - { - "path": "web_page/index", - "style": { - } - }, - { - "path": "retrievePassword/index", - "style": { - "navigationBarTitleText": "忘记密码" - } - }, - { - "path": "user_info/index", - "style": { - //"navigationBarTitleText": "个人资料", - "navigationBarBackgroundColor": "#E93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_get_coupon/index", - "style": { - //"navigationBarTitleText": "领取优惠券", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_goods_collection/index", - "style": { - //"navigationBarTitleText": "收藏商品", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_sgin/index", - "style": { - //"navigationBarTitleText": "签到", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_sgin_list/index", - "style": { - //"navigationBarTitleText": "签到记录", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_money/index", - "style": { - //"navigationBarTitleText": "我的账户", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_bill/index", - "style": { - //"navigationBarTitleText": "账单明细", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_integral/index", - "style": { - //"navigationBarTitleText": "积分详情", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_coupon/index", - "style": { - //"navigationBarTitleText": "我的优惠券", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_spread_user/index", - "style": { - "navigationBarTitleText": "我的推广", - "navigationBarBackgroundColor": "#e93323", - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "user_spread_code/index", - "style": { - //"navigationBarTitleText": "分销海报", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_spread_money/index", - "style": { - "navigationBarTitleText": "佣金记录", - "navigationBarBackgroundColor": "#e93323", - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "user_cash/index", - "style": { - "navigationBarTitleText": "提现", - "navigationBarBackgroundColor": "#e93323", - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "user_vip/index", - "style": { - "navigationBarTitleText": "会员中心", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default", - "backgroundColor": "#fff" - } - // #endif - } - } - }, - { - "path": "user_address_list/index", - "style": { - "navigationBarTitleText": "地址管理", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_address/index", - "style": { - "navigationBarTitleText": "添加地址", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_phone/index", - "style": { - "navigationBarTitleText": "修改手机号", - "navigationBarBackgroundColor": "#e93323" - // #ifdef MP - , - "navigationBarTextStyle": "#fff" - // #endif - } - }, - { - "path": "user_payment/index", - "style": { - "navigationBarTitleText": "余额充值" - } - }, - { - "path": "user_pwd_edit/index", - "style": { - "navigationBarTitleText": "修改密码", - "navigationBarBackgroundColor": "#e93323" - // #ifdef MP - , - "navigationBarTextStyle": "#fff" - // #endif - } - }, - { - "path": "order_confirm/index", - "style": { - "navigationBarTitleText": "提交订单", - "navigationBarBackgroundColor": "#e93323", - // "navigationStyle": "custom", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_details_store/index", - "style": { - "navigationBarTitleText": "门店列表", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "promoter-list/index", - "style": { - "navigationBarTitleText": "推广人列表", - "navigationBarBackgroundColor": "#e93323", - - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "promoter-order/index", - "style": { - "navigationBarTitleText": "推广人订单", - "navigationBarBackgroundColor": "#e93323", - - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "promoter_rank/index", - "style": { - "navigationBarTitleText": "推广人排行", - "navigationBarBackgroundColor": "#e93323", - - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "commission_rank/index", - "style": { - "navigationBarTitleText": "佣金排行", - "navigationBarBackgroundColor": "#e93323", - "navigationBarTextStyle": "#fff", - - "app-plus": { - "titleNView": { - "type": "default" - } - } - - } - }, - { - "path": "order_list/index", - "style": { - "navigationBarTitleText": "我的订单", - "navigationBarBackgroundColor": "#e93323", - "navigationStyle": "custom", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_logistics/index", - "style": { - "navigationBarTitleText": "物流信息", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "user_return_list/index", - "style": { - "navigationBarTitleText": "退货列表", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_return/index", - "style": { - "navigationBarTitleText": "申请退货", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "login/index", - "style": { - "navigationBarTitleText": "登录", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_comment_list/index", - "style": { - "navigationBarTitleText": "商品评分", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_comment_con/index", - "style": { - "navigationBarTitleText": "商品评价", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "wechat_login/index", - "style": { - "navigationBarTitleText": "账户登录", - "navigationStyle": "custom" - } - }, - { - "path": "app_login/index", - "style": { - "navigationBarTitleText": "绑定手机号", - "navigationStyle": "custom" - } - } - ] - }, - { - "root": "pages/activity", - "name": "activity", - "pages": [{ - "path": "goods_bargain/index", - "style": { - "navigationBarTitleText": "砍价列表" - // #ifdef MP - , - "navigationBarTextStyle": "black", - "navigationBarBackgroundColor": "#fff" - // #endif - } - }, - { - "path": "goods_bargain_details/index", - "style": { - "navigationBarTitleText": "砍价详情" - // #ifdef MP - , - "navigationBarTextStyle": "black", - "navigationBarBackgroundColor": "#fff" - // #endif - } - }, - { - "path": "goods_combination/index", - "style": { - "navigationBarTitleText": "拼团列表" - // #ifdef MP || APP-PLUS - , - "navigationBarTextStyle": "#fff", - "navigationBarBackgroundColor": "#e93323" - // #endif - } - }, - { - "path": "goods_combination_details/index", - "style": { - "navigationStyle": "custom", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_combination_status/index", - "style": { - "navigationBarTitleText": "拼团", - "navigationBarBackgroundColor": "#e93323", - "app-plus": { - // #ifdef APP-PLUS - "titleNView": { - "type": "default" - } - // #endif - } - } - }, - { - "path": "goods_seckill/index", - "style": { - "navigationBarTitleText": "限时秒杀" - // #ifdef MP - , - "navigationBarTextStyle": "#fff", - "navigationBarBackgroundColor": "#e93323" - // #endif - } - }, - { - "path": "goods_seckill_details/index", - "style": { - "navigationBarTitleText": "秒杀详情" - // #ifdef MP - , - "navigationStyle": "custom" - // #endif - } - }, - { - "path": "poster-poster/index", - "style": { - "navigationBarTitleText": "砍价海报" - // #ifdef MP - , - "navigationBarTextStyle": "#fff", - "navigationBarBackgroundColor": "#e93323" - // #endif - } - }, - { - "path": "bargain/index", - "style": { - "navigationBarTitleText": "砍价记录" - } - } - ] - }, - { - "root": "pages/columnGoods", - "name": "columnGoods", - "pages": [{ - "path": "HotNewGoods/index", - "style": { - "navigationBarTitleText": "精品推荐" - } - }] - } - ], - "globalStyle": { - "navigationBarTextStyle": "black", - //"navigationBarTitleText": "crmeb", - "navigationBarBackgroundColor": "#ff5500", - "backgroundColor": "#F8F8F8", - "titleNView": false, - "rpxCalcMaxDeviceWidth": 960, - "rpxCalcBaseDeviceWidth": 375, - "rpxCalcIncludeWidth": 750 - }, - "tabBar": { - "color": "#282828", - "selectedColor": "#fc4141", - "borderStyle": "white", - "backgroundColor": "#ffffff", - "list": [{ - "pagePath": "pages/index/index", - "iconPath": "static/images/1-001.png", - "selectedIconPath": "static/images/1-002.png", - "text": "首页" - }, - { - "pagePath": "pages/goods_cate/goods_cate", - "iconPath": "static/images/2-001.png", - "selectedIconPath": "static/images/2-002.png", - "text": "分类" - }, - { - "pagePath": "pages/order_addcart/order_addcart", - "iconPath": "static/images/3-001.png", - "selectedIconPath": "static/images/3-002.png", - "text": "购物车" - }, - { - "pagePath": "pages/user/index", - "iconPath": "static/images/4-001.png", - "selectedIconPath": "static/images/4-002.png", - "text": "我的" - } - ] - }, - "condition": { //模式配置,仅开发期间生效 - "current": 0, //当前激活的模式(list 的索引项) - "list": [{ - "name": "", //模式名称 - "path": "", //启动页面,必选 - "query": "" //启动参数,在页面的onLoad函数里面得到 - }] - } -} \ No newline at end of file diff --git a/app/pages/activity/bargain/index.vue b/app/pages/activity/bargain/index.vue deleted file mode 100644 index 3c927a3..0000000 --- a/app/pages/activity/bargain/index.vue +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - - - - - - {{ item.title }} - - 砍价成功 - 活动已结束 - - 已砍至¥{{ item.surplusPrice }} - - - - - 活动进行中 - 砍价成功 - 活动已结束 - - - 去付款 - - - 立即付款 - - - 继续砍价 - - 重开一个 - - - - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_bargain/index.vue b/app/pages/activity/goods_bargain/index.vue deleted file mode 100644 index b178ab5..0000000 --- a/app/pages/activity/goods_bargain/index.vue +++ /dev/null @@ -1,386 +0,0 @@ - - - - - - - - - - - - - - - - {{$util.formatName(item.nickName)}} - 拿了 - {{item.title}} - - - - - - - 已有{{bargainTotal}}人砍成功 - - - - - - - - - {{item.title}} - - - 后结束 - - - 已结束 - - - 已售罄 - - - 最低: ¥{{item.minPrice}} - - 参与砍价 - 已售罄 - - - - {{loadTitle}} - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_bargain_details/index.vue b/app/pages/activity/goods_bargain_details/index.vue deleted file mode 100644 index 6d4b973..0000000 --- a/app/pages/activity/goods_bargain_details/index.vue +++ /dev/null @@ -1,1569 +0,0 @@ - - - - - - - 返回砍价列表 - - - - - - - - - - - {{bargainInfo.title}} - 最低价:¥{{bargainInfo.minPrice}} - 剩余:{{bargainInfo.quota}}{{bargainInfo.unitName}} - - 当前: ¥ - {{buyPrice}} - - - - 后结束 - - - 已结束 - - - 已售罄 - - - - - - - - - 已砍¥{{bargainUserInfo.alreadyPrice}} - - 还剩¥{{bargainUserInfo.surplusPrice}} - - - - - - - 一 已有{{bargainInfo.sales}}位好友砍价成功 一 - - - - - - - 立即参与砍价 - - 商品暂无库存 - - - - 邀请好友帮砍价 - 邀请好友帮砍价 - - - 邀请好友帮砍价 - - - - - 帮好友砍一刀 - - - - - 好友已砍成功 - - 我也要参与 - - - - - 您已帮其他好友砍过此商品 - - 我也要参与 - - - - - 已成功帮助好友砍价 - - 我也要参与 - - - - - 恭喜您砍价成功,快去支付吧~ - - - 继续选购 - 立即支付 - 去支付 - - - - - - 恭喜您砍价成功,去看看别的商品吧~ - - - 继续选购 - - - - 活动已结束 - - - 商品已售罄 - - - 再去逛逛 - - - - 您购买的商品数量已达上限 - - - - - - - - - - 砍价记录 - - - - - - - - - - - - - - - - {{item.nickname}} - {{item.addTimeStr }} - - - - 已砍 {{item.price}}元 - - - - - {{couponsHidden?'展开更多':'关闭展开'}} - - - - 暂无助力记录 - - - - - - - - - - - 商品详情 - - - - - - - - - - - - 暂无商品详情 - - - - - - - - - - - 您已砍掉{{bargainUserBargainPrice}}元 - - - - {{bargainUserInfo.bargainPercent}}% - - - - - - 分享次数越多,成功的机会越大哦! - - 邀请好友帮砍价 - - - 邀请好友帮砍价 - - - - - 帮好友砍掉{{bargainUserBargainPrice}}元 - - - - {{bargainUserInfo.bargainPercent}}% - - - - - - 您也可以砍价低价拿哦,快去挑选吧~ - - - 我也要参与 - - - - - - - - - - - - - - - - 保存到手机 - - - 长按图片保存至相册 - - - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_combination/index.vue b/app/pages/activity/goods_combination/index.vue deleted file mode 100644 index 8de1ddc..0000000 --- a/app/pages/activity/goods_combination/index.vue +++ /dev/null @@ -1,414 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ··· - - - - - {{totalPeople}}人参与 - - - - - - - - - - - {{item.title}} - ¥{{item.otPrice}} - - ¥{{item.price}} - - {{item.people}}人团 - 去拼团 - - - - - - - - {{loadTitle}} - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_combination_details/index.vue b/app/pages/activity/goods_combination_details/index.vue deleted file mode 100644 index bcc405e..0000000 --- a/app/pages/activity/goods_combination_details/index.vue +++ /dev/null @@ -1,1613 +0,0 @@ - - - - - - - - - {{ item }} - - - - - - - - - - - - - - - - - ¥{{storeInfo.price || 0}}¥{{storeInfo.otPrice || 0}} - - - - {{storeInfo.storeName}} - - 类型:{{storeInfo.people || 0}}人团 - 累计销量:{{parseFloat(storeInfo.sales) + parseFloat(storeInfo.ficti)}} {{storeInfo.unitName || ''}} - 限购: {{ storeInfo.quotaShow ? storeInfo.quotaShow : 0 }} - {{storeInfo.unitName || ''}} - - - - - {{attr}}:{{attrValue}} - - - - - - 已拼{{pinkOkSum}}件| - - - - - - {{item.nickname}}拼团成功 - - - - - - - - - - - - {{item.nickname}} - - - - 还差{{item.count}}人成团 - - - - - - - 去拼单 - - - - - - 查看更多 - 收起 - - - - - 拼团玩法 - - - - - ① - 开团/参团 - - - - ② - 邀请好友 - - - - - ③ - 满员发货 - - - - - - - - 用户评价({{replyCount}}) - - 好评{{replyChance || 0}}% - - - - - - - - - - - - - 产品详情 - - - - - - - - - - - - - 客服 - - - - - - 客服 - - - - - - 收藏 - - - 单独购买 - - 立即开团 - - - 立即开团 - - - 已售罄 - - - - - - - - - - - 发送给朋友 - - - - - - 发送给朋友 - - - - - 生成海报 - - - - - - - - - - - - 保存到手机 - - - 长按图片可以保存到手机 - - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_combination_status/index.vue b/app/pages/activity/goods_combination_status/index.vue deleted file mode 100644 index 1b1277e..0000000 --- a/app/pages/activity/goods_combination_status/index.vue +++ /dev/null @@ -1,1007 +0,0 @@ - - - - - - - - ¥ - - {{storeCombination.people +'人拼'}} - - - - - - - - - - 剩余 - - 结束 - - - - 恭喜您拼团成功 - 还差{{ count }}人,拼团失败 - 拼团中,还差{{ count }}人拼团成功 - - - - 团长 - - - - - - - - {{ iShidden ? '收起' : '查看全部' }} - - - - - 邀请好友参团 - - - - 邀请好友参团 - - 拼团已过期 - 我要参团 - - 再次开团 - - - 取消开团 - - - - 查看订单信息 - - - - - - 大家都在拼 - - 更多拼团 - - - - - - - - - - - - - - - - - - - - - - - - - 保存到手机 - - - 长按图片保存至相册 - - - - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_seckill/index.vue b/app/pages/activity/goods_seckill/index.vue deleted file mode 100644 index 4a1bb15..0000000 --- a/app/pages/activity/goods_seckill/index.vue +++ /dev/null @@ -1,406 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - {{item.time.split(',')[0]}} - {{item.statusName}} - - - - - - - - - - - - - {{item.title}} - ¥ - {{item.price}} - ¥{{item.otPrice}} - - 限量 {{item.quota}} {{item.unitName}} - - - - 已抢{{item.percent}}% - - - 马上抢 - 未开始 - 已结束 - - - - - - - - - - - - - - - - - diff --git a/app/pages/activity/goods_seckill_details/index.vue b/app/pages/activity/goods_seckill_details/index.vue deleted file mode 100644 index fcaaba7..0000000 --- a/app/pages/activity/goods_seckill_details/index.vue +++ /dev/null @@ -1,1391 +0,0 @@ - - - - - - - - - {{ item }} - - - - - - - - - - - - - ¥{{storeInfo.price}}¥{{storeInfo.otPrice}} - - - 距秒杀结束仅剩 - - - - - - - - {{storeInfo.storeName}} - - - - 累计销售:{{parseFloat(storeInfo.sales) + parseFloat(storeInfo.ficti) || 0}}{{storeInfo.unitName}} - 限量: {{ storeInfo.quota ? storeInfo.quota : 0 }} {{storeInfo.unitName}} - - - - {{attr}}:{{attrValue}} - - - - - 用户评价({{replyCount}}) - - {{replyChance}}%好评率 - - - - - - - - - - - 产品详情 - - - - - - - - - - - - - 客服 - - - - - - 客服 - - - - - - 收藏 - - - 单独购买 - 立即购买 - - - 单独购买 - 立即购买 - - - 单独购买 - 已售罄 - - - 单独购买 - 已关闭 - - - 单独购买 - 未开始 - - - 单独购买 - 已结束 - - - - - - - - - - - - - - 发送给朋友 - - - - - - 发送给朋友 - - - - - 生成海报 - - - - - - - - - - - 保存到手机 - - - 长按图片可以保存到手机 - - - - - - - - - - - - - - - - diff --git a/app/pages/activity/poster-poster/index.vue b/app/pages/activity/poster-poster/index.vue deleted file mode 100644 index 1e4421f..0000000 --- a/app/pages/activity/poster-poster/index.vue +++ /dev/null @@ -1,280 +0,0 @@ - - - - 提示:点击图片即可保存至手机相册 - - - - - - - - - - - - - - diff --git a/app/pages/activity/static/btn.png b/app/pages/activity/static/btn.png deleted file mode 100644 index ea0f376..0000000 Binary files a/app/pages/activity/static/btn.png and /dev/null differ diff --git a/app/pages/activity/static/canbj.png b/app/pages/activity/static/canbj.png deleted file mode 100644 index d9f2e37..0000000 Binary files a/app/pages/activity/static/canbj.png and /dev/null differ diff --git a/app/pages/activity/static/cheng.png b/app/pages/activity/static/cheng.png deleted file mode 100644 index 0ae3048..0000000 Binary files a/app/pages/activity/static/cheng.png and /dev/null differ diff --git a/app/pages/activity/static/chengh.png b/app/pages/activity/static/chengh.png deleted file mode 100644 index 4b7d329..0000000 Binary files a/app/pages/activity/static/chengh.png and /dev/null differ diff --git a/app/pages/activity/static/lun.png b/app/pages/activity/static/lun.png deleted file mode 100644 index e4be783..0000000 Binary files a/app/pages/activity/static/lun.png and /dev/null differ diff --git a/app/pages/activity/static/n1.png b/app/pages/activity/static/n1.png deleted file mode 100644 index 827998e..0000000 Binary files a/app/pages/activity/static/n1.png and /dev/null differ diff --git a/app/pages/activity/static/n2.png b/app/pages/activity/static/n2.png deleted file mode 100644 index e426297..0000000 Binary files a/app/pages/activity/static/n2.png and /dev/null differ diff --git a/app/pages/activity/static/n3.png b/app/pages/activity/static/n3.png deleted file mode 100644 index 6faf599..0000000 Binary files a/app/pages/activity/static/n3.png and /dev/null differ diff --git a/app/pages/activity/static/pinbei.png b/app/pages/activity/static/pinbei.png deleted file mode 100644 index 90c77ac..0000000 Binary files a/app/pages/activity/static/pinbei.png and /dev/null differ diff --git a/app/pages/activity/static/shandian.png b/app/pages/activity/static/shandian.png deleted file mode 100644 index acac9b8..0000000 Binary files a/app/pages/activity/static/shandian.png and /dev/null differ diff --git a/app/pages/activity/static/woman.png b/app/pages/activity/static/woman.png deleted file mode 100644 index b2bebb6..0000000 Binary files a/app/pages/activity/static/woman.png and /dev/null differ diff --git a/app/pages/activity/static/you.png b/app/pages/activity/static/you.png deleted file mode 100644 index 7ff33ab..0000000 Binary files a/app/pages/activity/static/you.png and /dev/null differ diff --git a/app/pages/activity/static/you2.png b/app/pages/activity/static/you2.png deleted file mode 100644 index cf80147..0000000 Binary files a/app/pages/activity/static/you2.png and /dev/null differ diff --git a/app/pages/activity/static/zhuangshi.png b/app/pages/activity/static/zhuangshi.png deleted file mode 100644 index 02376ba..0000000 Binary files a/app/pages/activity/static/zhuangshi.png and /dev/null differ diff --git a/app/pages/activity/static/zuo.png b/app/pages/activity/static/zuo.png deleted file mode 100644 index 0b3036f..0000000 Binary files a/app/pages/activity/static/zuo.png and /dev/null differ diff --git a/app/pages/activity/static/zuo2.png b/app/pages/activity/static/zuo2.png deleted file mode 100644 index a686c9e..0000000 Binary files a/app/pages/activity/static/zuo2.png and /dev/null differ diff --git a/app/pages/auth/index.vue b/app/pages/auth/index.vue deleted file mode 100644 index 95faec2..0000000 --- a/app/pages/auth/index.vue +++ /dev/null @@ -1,73 +0,0 @@ - - - - - - - - - - - diff --git a/app/pages/columnGoods/HotNewGoods/index.vue b/app/pages/columnGoods/HotNewGoods/index.vue deleted file mode 100644 index 57e60a5..0000000 --- a/app/pages/columnGoods/HotNewGoods/index.vue +++ /dev/null @@ -1,143 +0,0 @@ - - - - - - - - - - - - - - - - - {{ name }} - - - - - - 我是有底线的~ - - - - - - \ No newline at end of file diff --git a/app/pages/columnGoods/static/group02.gif b/app/pages/columnGoods/static/group02.gif deleted file mode 100644 index 0840dcd..0000000 Binary files a/app/pages/columnGoods/static/group02.gif and /dev/null differ diff --git a/app/pages/customer_list/chat.vue b/app/pages/customer_list/chat.vue deleted file mode 100644 index 083aaf0..0000000 --- a/app/pages/customer_list/chat.vue +++ /dev/null @@ -1,999 +0,0 @@ - - - - - - - - - - - - - - ¥{{ productInfo.price - }}¥{{ productInfo.otPrice }} - - - 发送客服 - - - - - - - 订单号:{{ orderInfo.order_id }} - {{ orderInfo.add_time_y }} {{ orderInfo.add_time_h }} - - - - - - {{ orderInfo.cartInfo ? orderInfo.cartInfo.length : 0 }}件商品 - - - - - {{ cartInfo.productInfo.store_name }} - - - - ¥{{ cartInfo.productInfo.price - }}¥{{ cartInfo.productInfo.ot_price }} - - - 发送客服 - - - - - - - - - - - - {{ item.nickname }} - - - - - 订单号:{{ item.orderInfo.order_id }} - - - - - - - - {{ - item.orderInfo.cartInfo - ? item.orderInfo.cartInfo.length - : 0 - }}件商品 - - - - - - ¥{{ val.productInfo.price }} - - - - - - - - - - - - - - - - - ¥{{ item.productInfo.price }} - - - - - - - - - 12’’ - - - - - - - - - - - - {{ item.msn }} - - - - - - - - {{ item.nickname }} - - - - - 订单号:{{ item.orderInfo.order_id }} - - - - - - - - {{ - item.orderInfo.cartInfo - ? item.orderInfo.cartInfo.length - : 0 - }}件商品 - - - - - - ¥{{ val.productInfo.price }} - - - - - - - - - - - - - - - - - ¥{{ item.productInfo.price }} - - - - - - - - - - - - - - - - - {{ item.msn }} - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/customer_list/index.vue b/app/pages/customer_list/index.vue deleted file mode 100644 index 269d0c1..0000000 --- a/app/pages/customer_list/index.vue +++ /dev/null @@ -1,80 +0,0 @@ - - - - - {{ item.nickname }} - - - - - - diff --git a/app/pages/first_new_product/index.vue b/app/pages/first_new_product/index.vue deleted file mode 100644 index bb53033..0000000 --- a/app/pages/first_new_product/index.vue +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - {{name}} - - - - - - - - - - - diff --git a/app/pages/goods_cate/goods_cate.vue b/app/pages/goods_cate/goods_cate.vue deleted file mode 100644 index 6ec885b..0000000 --- a/app/pages/goods_cate/goods_cate.vue +++ /dev/null @@ -1,261 +0,0 @@ - - - - - - - - - - - {{item.name}} - - - - - - - - - - - {{item.name}} - - - - - - - - - {{itemn.name}} - - - - - - - - - - - - - - diff --git a/app/pages/goods_details/index.vue b/app/pages/goods_details/index.vue deleted file mode 100644 index df4fdb7..0000000 --- a/app/pages/goods_details/index.vue +++ /dev/null @@ -1,1917 +0,0 @@ - - - - - - - - {{ item }} - - - - - - - - - - - - - - - - - - ¥ - {{productInfo.price}} - ¥{{productInfo.vipPrice}} - - - - - {{productInfo.storeName}} - - 原价:¥{{productInfo.otPrice || 0}} - 库存:{{productInfo.stock || 0}}{{productInfo.unitName || ''}} - - 销量:{{Math.floor(productInfo.sales) + Math.floor(productInfo.ficti) || 0}}{{productInfo.unitName || ''}} - - - - - - 优惠券: - - 满{{coupon.list[0].minPrice}}减{{coupon.list[0].money}} - - - - - - 活 动: - - - - 参与秒杀 - - - - 参与砍价 - - - - 参与拼团 - - - - - - - {{attrTxt}}: - {{attrValue}} - - - - - - 用户评价({{replyCount}}) - - 好评 {{replyChance || 0}}% - - - - - - - - - - - - 优品推荐 - - - - - - - - - - 秒杀 - 砍价 - 拼团 - - {{val.storeName}} - ¥{{val.price}} - - - - - - - - - - - - - 产品详情 - - - - - - - - - - - - - - - 客服 - - - - - - 客服 - - - - - - - 收藏 - - - - {{CartCount}} - - 购物车 - - - 加入购物车 - 已售罄 - - - - 加入购物车 - 立即购买 - - - - - 已售罄 - - - 立即购买 - - - - - - - - - - - - - - - 发送给朋友 - - - - - - 发送给朋友 - - - - - 生成海报 - - - - - - - - - - - - - 保存到手机 - - - 长按图片可以保存到手机 - - - - - - - - - - - - - - - - diff --git a/app/pages/goods_list/index.vue b/app/pages/goods_list/index.vue deleted file mode 100644 index 0a8c9db..0000000 --- a/app/pages/goods_list/index.vue +++ /dev/null @@ -1,435 +0,0 @@ - - - - - - - - - - - - - - - {{title ? title:'默认'}} - - 价格 - - - - - - 销量 - - - - - - 新品 - - - - - - - 秒杀 - 砍价 - 拼团 - - - {{item.storeName}} - ¥{{item.price}} - - ¥{{item.vip_price}} - - - 已售{{Number(item.sales) + Number(item.ficti) || 0}}{{item.unitName}} - - - - - - {{loadTitle}} - - - - - - - - - - - - - - - diff --git a/app/pages/goods_search/index.vue b/app/pages/goods_search/index.vue deleted file mode 100644 index b58e938..0000000 --- a/app/pages/goods_search/index.vue +++ /dev/null @@ -1,223 +0,0 @@ - - - - - - - - - 搜索 - - 热门搜索 - - - {{item.title}} - - - - - - {{loadTitle}} - - - - - - - - - - - - - - diff --git a/app/pages/index/components/a_seckill.vue b/app/pages/index/components/a_seckill.vue deleted file mode 100644 index 6614f47..0000000 --- a/app/pages/index/components/a_seckill.vue +++ /dev/null @@ -1,210 +0,0 @@ - - - - - - - - - - {{point}} 场 - - - GO - - - - - - - - - {{item.title}} - ¥{{item.price}} - ¥{{item.otPrice}} - - - - - - - - - - diff --git a/app/pages/index/components/b_combination.vue b/app/pages/index/components/b_combination.vue deleted file mode 100644 index e776e56..0000000 --- a/app/pages/index/components/b_combination.vue +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - ··· - - - {{assistUserCount}}人参与 - - - GO - - - - - - - - - - {{item.title}} - ¥{{item.price}} - ¥{{item.otPrice}} - - - - - - - - - - - - - diff --git a/app/pages/index/components/c_bargain.vue b/app/pages/index/components/c_bargain.vue deleted file mode 100644 index 1fd7834..0000000 --- a/app/pages/index/components/c_bargain.vue +++ /dev/null @@ -1,189 +0,0 @@ - - - - - - - - GO - - - - - - - - - - {{item.title}} - ¥{{item.minPrice}} - 参与砍价 - - - - - - - - - - - - diff --git a/app/pages/index/index.js b/app/pages/index/index.js new file mode 100644 index 0000000..0e66446 --- /dev/null +++ b/app/pages/index/index.js @@ -0,0 +1,29 @@ +Page({ + data: { + value: "", + navData: [{ + id: "1", + text: "即将开团", + icon: "tosend", + color: "#ff0000" + }, + { + id: "2", + text: "上新预告", + icon: "new-o", + color: "#36ab60" + }, + { + id: "3", + text: "团购结束", + icon: "stop-circle-o", + color: "#36ab60" + } + ] + }, + onSearch(e) { + console.log('搜索内容:', e.detail); + // 处理搜索逻辑 + }, + +}) \ No newline at end of file diff --git a/app/pages/index/index.json b/app/pages/index/index.json new file mode 100644 index 0000000..9f8f689 --- /dev/null +++ b/app/pages/index/index.json @@ -0,0 +1,12 @@ +{ + "usingComponents": { + "van-icon": "@vant/weapp/icon/index", + "van-search": "@vant/weapp/search/index", + "van-grid": "@vant/weapp/grid/index", + "van-grid-item": "@vant/weapp/grid-item/index", + "goods-list":"/components/goods-list/goods-list" + } + + + +} \ No newline at end of file diff --git a/app/pages/index/index.vue b/app/pages/index/index.vue deleted file mode 100644 index e3c775b..0000000 --- a/app/pages/index/index.vue +++ /dev/null @@ -1,1394 +0,0 @@ - - - - - - - - - - - 搜索商品 - - - - - - - - - - - - - - - - - - - - - - - - | - - - - - - {{item.info}} - - - - - - - - - - - - - - - {{item.name}} - - - - - - {{item.name}} - - - - - - - - 领取优惠券 - 福利大礼包,省了又省 - - 查看全部 - - - - - {{item.name}} - - - {{item.money?Number(item.money):''}}元 - 领取 - 已领取 - - 满{{item.minPrice?Number(item.minPrice):''}}元可用 - - - - - - - - - - - - - - - - - {{item.name}} - {{item.info}} - - - - - - - - - - - 秒杀 - 砍价 - 拼团 - - - - {{item.storeName}} - ¥{{item.otPrice}} - - ¥{{item.price}} - 券 - - - - - - - - - 我是有底线的 - - - - - - - - - - \ No newline at end of file diff --git a/app/pages/index/index.wxml b/app/pages/index/index.wxml new file mode 100644 index 0000000..74b0a2d --- /dev/null +++ b/app/pages/index/index.wxml @@ -0,0 +1,21 @@ + + + + + 嗨果嗨鲜 + + 默认收货地址 + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/pages/index/index.wxss b/app/pages/index/index.wxss new file mode 100644 index 0000000..1f2cff1 --- /dev/null +++ b/app/pages/index/index.wxss @@ -0,0 +1,36 @@ +.head{ + height: 100vh; + display: flex; + flex-direction: column; +} +.head_a{ + position: fixed; + top: 50px; + left: 0; + right: 0; + height:100px; + background-color: #fff; + + display: flex; + align-items: center; + padding: 0 15px; + z-index: 100; +} +.head_b{ + display: flex; + flex-direction: column; +} +.head_c{ + display: flex; + align-items:center; +} +.head_text{ + font-weight: bold; + font-size: 40rpx; + +} +.head_box{ + margin-top: 160px; + padding: 10px; + overflow-y: auto; +} \ No newline at end of file diff --git a/app/pages/logs/logs.js b/app/pages/logs/logs.js new file mode 100644 index 0000000..26e868a --- /dev/null +++ b/app/pages/logs/logs.js @@ -0,0 +1,66 @@ +// pages/logs/logs.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/app/pages/logs/logs.json b/app/pages/logs/logs.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/app/pages/logs/logs.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/app/pages/logs/logs.wxml b/app/pages/logs/logs.wxml new file mode 100644 index 0000000..576fa6b --- /dev/null +++ b/app/pages/logs/logs.wxml @@ -0,0 +1,2 @@ + +pages/logs/logs.wxml \ No newline at end of file diff --git a/app/pages/logs/logs.wxss b/app/pages/logs/logs.wxss new file mode 100644 index 0000000..92165d0 --- /dev/null +++ b/app/pages/logs/logs.wxss @@ -0,0 +1 @@ +/* pages/logs/logs.wxss */ \ No newline at end of file diff --git a/app/pages/mine/mine.js b/app/pages/mine/mine.js new file mode 100644 index 0000000..817f4c8 --- /dev/null +++ b/app/pages/mine/mine.js @@ -0,0 +1,36 @@ +Page({ + data: { + list: [ + { id: 1, text: '商品1' }, + { id: 2, text: '商品2' }, + { id: 3, text: '商品3' }, + { id: 4, text: '商品4' }, + { id: 5, text: '商品5' }, + { id: 6, text: '商品6' }, + { id: 7, text: '商品7' }, + { id: 8, text: '商品8' }, + { id: 9, text: '商品9' }, + { id: 10, text: '商品10' }, + { id: 11, text: '商品11' }, + { id: 12, text: '商品12' }, + // 更多数据... + ] + }, + + // 搜索确认事件 + onSearchConfirm(e) { + const keyword = e.detail.value; + if (keyword) { + wx.showToast({ + title: `搜索: ${keyword}`, + icon: 'none' + }); + // 这里可以添加实际的搜索逻辑 + } + }, + + // 输入框输入事件(可选) + onInputChange(e) { + console.log('输入内容:', e.detail.value); + } +}); \ No newline at end of file diff --git a/app/pages/mine/mine.json b/app/pages/mine/mine.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/app/pages/mine/mine.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/app/pages/mine/mine.wxml b/app/pages/mine/mine.wxml new file mode 100644 index 0000000..b73c99a --- /dev/null +++ b/app/pages/mine/mine.wxml @@ -0,0 +1,24 @@ + + + + 我的小程序 + + + + + 消息 + + + + + + + {{item.text}} + + + \ No newline at end of file diff --git a/app/pages/mine/mine.wxss b/app/pages/mine/mine.wxss new file mode 100644 index 0000000..f5efba8 --- /dev/null +++ b/app/pages/mine/mine.wxss @@ -0,0 +1,71 @@ +/* pages/mine/mine.wxss *//* 页面容器 */ +.container { + height: 100vh; + display: flex; + flex-direction: column; +} + +/* 固定导航栏 */ +.navbar { + position: fixed; + top: 50px; + left: 0; + right: 0; + height: 44px; + background-color: #fff; + box-shadow: 0 1px 6px rgba(0, 0, 0, 0.1); + display: flex; + align-items: center; + padding: 0 15px; + z-index: 100; +} + +/* 导航栏内容 */ +.logo { + font-size: 18px; + font-weight: bold; + color: #333; + margin-right: 15px; +} + +.search-box { + flex: 1; + height: 30px; + background-color: #f5f5f5; + border-radius: 15px; + display: flex; + align-items: center; + padding: 0 10px; +} + +.search-input { + flex: 1; + height: 100%; + margin-left: 5px; + font-size: 14px; + color: #333; + background-color: transparent; + border: none; + outline: none; +} + +.action-btn { + margin-left: 15px; + font-size: 14px; + color: #666; +} + +/* 页面内容区域 */ +.content { + flex: 1; + margin-top: 44px; /* 留出导航栏高度 */ + padding: 10px; + overflow-y: auto; +} + +.content-item { + padding: 15px; + margin-bottom: 10px; + background-color: #f9f9f9; + border-radius: 8px; +} \ No newline at end of file diff --git a/app/pages/news_details/index.vue b/app/pages/news_details/index.vue deleted file mode 100644 index 3d38b98..0000000 --- a/app/pages/news_details/index.vue +++ /dev/null @@ -1,275 +0,0 @@ - - - - {{articleInfo.title}} - - {{articleInfo.author}} - {{articleInfo.createTime}} - {{articleInfo.visit}} - - - - - - - - - - {{store_info.storeName}} - - ¥{{store_info.price}} - - ¥{{store_info.otPrice}} - - 查看商品 - - - 和好友一起分享 - - - 和好友一起分享 - - - - - - - - - - diff --git a/app/pages/news_list/index.vue b/app/pages/news_list/index.vue deleted file mode 100644 index 6fa8e86..0000000 --- a/app/pages/news_list/index.vue +++ /dev/null @@ -1,289 +0,0 @@ - - - - - - - - - - - - - - - - - - - {{item.name}} - - - - - - - - - - {{item.title}} - {{item.createTime}} - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/order_addcart/order_addcart.vue b/app/pages/order_addcart/order_addcart.vue deleted file mode 100644 index 0c1a432..0000000 --- a/app/pages/order_addcart/order_addcart.vue +++ /dev/null @@ -1,1248 +0,0 @@ - - - - - 100%正品保证 - 所有商品精挑细选 - 售后无忧 - - - - 购物数量 {{cartCount}} - {{ footerswitch ? '管理' : '取消'}} - - - - - - - - - - - - - - - - - - - {{item.storeName}} - - 属性:{{item.suk}} - ¥{{item.price}} - - - 请重新选择商品规格 - 重选 - - - - - - {{item.cartNum}} - + - - - - - - - - - - - 失效商品 - - - 失效商品 - - 清空 - - - - - 失效 - - - - - - {{item.storeName}} - 属性:{{item.suk}} - - 该商品已失效 - - - - - - - - - - {{loadTitleInvalid}} - - - - - - - - - - - - - - - 全选({{selectValue.length}}) - - - - ¥{{selectCountPrice}} - - 立即下单 - - - - - 收藏 - - - 删除 - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/pages/order_details/index.vue b/app/pages/order_details/index.vue deleted file mode 100644 index caa89d0..0000000 --- a/app/pages/order_details/index.vue +++ /dev/null @@ -1,1035 +0,0 @@ - - - - - - - - - - - {{orderInfo.orderStatusMsg}} - {{orderInfo.createTime}} - - - - - - - - 待付款 - - {{orderInfo.shippingType==1 ? '待发货':'待核销'}} - 待收货 - 待评价 - 已完成 - - - - - - - - - - - - - - - - - - - 核销信息 - - - - - - - - - - - {{orderInfo.verifyCode}} - - - - 核销时间 - - - 每日:{{orderInfo.systemStore.dayTime.replace(',','-')}} - - - - - 使用说明 - - 可将二维码出示给店员扫描或提供数字核销码 - - - - - 自提地址信息 - - 查看位置 - - - - {{orderInfo.realName}}{{orderInfo.userPhone}} - {{orderInfo.userAddress}} - - - {{orderInfo.systemStore?orderInfo.systemStore.name:''}}{{orderInfo.systemStore?orderInfo.systemStore.phone:''}} - {{orderInfo.systemStore?orderInfo.systemStore.detailedAddress:''}} - - - - - - 联系客服 - - - - - - 联系客服 - - - - - - - - - - {{orderInfo.refundStatus==1?'商家审核中':orderInfo.refundStatus==2?'商家已退款':'商家拒绝退款'}} - - {{orderInfo.refundStatus==1 ? "您已成功发起退款申请,请耐心等待商家处理;退款前请与商家协商一致,有助于更好的处理售后问题": orderInfo.refundStatus==2? "退款已成功受理,如商家已寄出商品请尽快退回;感谢您的支持": "拒绝原因:" + orderInfo.refundReason}} - - - - 订单编号: - {{orderInfo.orderId}} - - 复制 - - - 复制 - - - - - 下单时间: - {{(orderInfo.createTime || 0)}} - - - 支付状态: - 已支付 - 未支付 - - - 支付方式: - {{orderInfo.payTypeStr}} - - - 买家留言: - {{orderInfo.mark}} - - - - - - 收货人: - {{orderInfo.realName}} - - - 联系电话: - {{orderInfo.userPhone}} - - - 收货地址: - {{orderInfo.userAddress}} - - - - - - 配送方式: - 发货 - - - 快递公司: - {{orderInfo.deliveryName || ''}} - - - 快递号: - {{orderInfo.deliveryId || ''}} - - - - - 配送方式: - 送货 - - - 配送人姓名: - {{orderInfo.deliveryName || ''}} - - - 联系电话: - {{orderInfo.deliveryId || ''}}拨打 - - - - - 虚拟发货: - 已发货,请注意查收 - - - - - - 商品总价: - ¥{{orderInfo.proTotalPrice}} - - - 运费: - ¥{{orderInfo.payPostage}} - - - 优惠券抵扣: - -¥{{orderInfo.couponPrice}} - - - 积分抵扣: - -¥{{orderInfo.deductionPrice}} - - 实付款:¥{{orderInfo.payPrice}} - - - - 取消订单 - 立即付款 - - 申请退款 - - - - 申请退款 - - - 查看拼团 - 查看物流 - - 确认收货 - 删除订单 - 再次购买 - - - - - - - - - - - - - - - - - diff --git a/app/pages/order_pay_status/index.vue b/app/pages/order_pay_status/index.vue deleted file mode 100644 index a142d0d..0000000 --- a/app/pages/order_pay_status/index.vue +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - {{order_pay_info.paid ? '订单支付成功':'订单支付失败'}} - 订单创建成功 - - - 订单编号 - {{order_pay_info.orderId}} - - - 下单时间 - {{order_pay_info.createTime?order_pay_info.createTime:'-'}} - - - 支付方式 - 微信支付 - 余额支付 - 线下支付 - 支付宝支付 - - - 支付金额 - {{order_pay_info.payPrice}} - - - - 失败原因 - {{status==2 ? '取消支付':msg}} - - - - - 查看订单 - - - 邀请好友参团 - 返回首页 - - - - - - - - - - diff --git a/app/pages/promotional_items/index.vue b/app/pages/promotional_items/index.vue deleted file mode 100644 index 48d48ea..0000000 --- a/app/pages/promotional_items/index.vue +++ /dev/null @@ -1,8 +0,0 @@ - - - - - - diff --git a/app/pages/retrieve_password/index.vue b/app/pages/retrieve_password/index.vue deleted file mode 100644 index 21d89f7..0000000 --- a/app/pages/retrieve_password/index.vue +++ /dev/null @@ -1,122 +0,0 @@ - - - - - - - - - 找回密码 - - - - - - - - - - - - - {{ text }} - - - - - - - - - - - 确认 - - 立即登录 - - - - - - - - - diff --git a/app/pages/shopping/shopping.js b/app/pages/shopping/shopping.js new file mode 100644 index 0000000..8b32cb9 --- /dev/null +++ b/app/pages/shopping/shopping.js @@ -0,0 +1,66 @@ +// pages/shopping/shopping.js +Page({ + + /** + * 页面的初始数据 + */ + data: { + + }, + + /** + * 生命周期函数--监听页面加载 + */ + onLoad(options) { + + }, + + /** + * 生命周期函数--监听页面初次渲染完成 + */ + onReady() { + + }, + + /** + * 生命周期函数--监听页面显示 + */ + onShow() { + + }, + + /** + * 生命周期函数--监听页面隐藏 + */ + onHide() { + + }, + + /** + * 生命周期函数--监听页面卸载 + */ + onUnload() { + + }, + + /** + * 页面相关事件处理函数--监听用户下拉动作 + */ + onPullDownRefresh() { + + }, + + /** + * 页面上拉触底事件的处理函数 + */ + onReachBottom() { + + }, + + /** + * 用户点击右上角分享 + */ + onShareAppMessage() { + + } +}) \ No newline at end of file diff --git a/app/pages/shopping/shopping.json b/app/pages/shopping/shopping.json new file mode 100644 index 0000000..8835af0 --- /dev/null +++ b/app/pages/shopping/shopping.json @@ -0,0 +1,3 @@ +{ + "usingComponents": {} +} \ No newline at end of file diff --git a/app/pages/shopping/shopping.wxml b/app/pages/shopping/shopping.wxml new file mode 100644 index 0000000..5dcf6e2 --- /dev/null +++ b/app/pages/shopping/shopping.wxml @@ -0,0 +1,2 @@ + +pages/shopping/shopping.wxml \ No newline at end of file diff --git a/app/pages/shopping/shopping.wxss b/app/pages/shopping/shopping.wxss new file mode 100644 index 0000000..92dc93a --- /dev/null +++ b/app/pages/shopping/shopping.wxss @@ -0,0 +1 @@ +/* pages/shopping/shopping.wxss */ \ No newline at end of file diff --git a/app/pages/user/index.vue b/app/pages/user/index.vue deleted file mode 100644 index 4063799..0000000 --- a/app/pages/user/index.vue +++ /dev/null @@ -1,665 +0,0 @@ - - - - - - - - - - - - - 请点击登录 - - - {{userInfo.nickname}} - - - {{userInfo.vipName || ''}} - - - - - {{userInfo.phone}} - - - - - 绑定手机号 - - - - - {{userInfo.nowMoney && uid ?Number(userInfo.nowMoney).toFixed(2):0}} - 余额 - - - {{userInfo.integral && uid ? userInfo.integral: 0}} - 积分 - - - {{userInfo.couponCount && uid ? userInfo.couponCount : 0}} - 优惠券 - - - {{userInfo.collectCount && uid ? userInfo.collectCount : 0}} - 收藏 - - - - - - - 订单中心 - - 查看全部 - - - - - - - - - {{ item.num }} - - {{item.title}} - - - - - - - - - - - - - - - - - - - - 我的服务 - - - - - {{item.name}} - - - - - - 联系客服 - - - - - - 联系客服 - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/app_login/index.vue b/app/pages/users/app_login/index.vue deleted file mode 100644 index bacee33..0000000 --- a/app/pages/users/app_login/index.vue +++ /dev/null @@ -1,266 +0,0 @@ - - - - - - - - - - - - - - diff --git a/app/pages/users/commission_rank/index.vue b/app/pages/users/commission_rank/index.vue deleted file mode 100644 index 3cecd71..0000000 --- a/app/pages/users/commission_rank/index.vue +++ /dev/null @@ -1,248 +0,0 @@ - - - - - 您目前的排名{{position}}名 - 您目前暂无排名 - - - - - {{ item }} - - - - - - - - - {{index+1}} - - - - - - {{item.nickname}} - - ¥{{item.brokeragePrice}} - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/goods_comment_con/index.vue b/app/pages/users/goods_comment_con/index.vue deleted file mode 100644 index 5a27770..0000000 --- a/app/pages/users/goods_comment_con/index.vue +++ /dev/null @@ -1,325 +0,0 @@ - - - - - - - - - - - {{productInfo.storeName}} - {{productInfo.sku}} - - - ¥{{productInfo.truePrice}} - x{{productInfo.cartNum}} - - - - - - {{item.name}} - - - - {{item.index === -1 ? "" : item.index + 1 + "分"}} - - - - - - - - - - - 上传图片 - - - - 立即评价 - - - - - - - - - - - - diff --git a/app/pages/users/goods_comment_list/index.vue b/app/pages/users/goods_comment_list/index.vue deleted file mode 100644 index d2c2762..0000000 --- a/app/pages/users/goods_comment_list/index.vue +++ /dev/null @@ -1,183 +0,0 @@ - - - - - - 评分 - - - - {{(replyData.replyChance)*100}}%好评率 - - - 全部({{replyData.sumCount}}) - - 好评({{replyData.goodCount}}) - - 中评({{replyData.inCount}}) - - 差评({{replyData.poorCount}}) - - - - - - {{loadTitle}} - - - - - - - - - - - - diff --git a/app/pages/users/goods_details_store/index.vue b/app/pages/users/goods_details_store/index.vue deleted file mode 100644 index a9f4e87..0000000 --- a/app/pages/users/goods_details_store/index.vue +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - {{ item.name }} - - {{ item.address }}{{ ", " + item.detailedAddress }} - - - - - - - - - - - - - - 距离{{ item.distance/1000 }}千米 - 查看地图 - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/goods_logistics/index.vue b/app/pages/users/goods_logistics/index.vue deleted file mode 100644 index 7155ddd..0000000 --- a/app/pages/users/goods_logistics/index.vue +++ /dev/null @@ -1,300 +0,0 @@ - - - - - - - - - {{product.productName}} - - ¥{{product.price}} - x{{product.payNum}} - - - - - - - - - 物流公司: {{orderInfo.deliveryName}} - 快递单号: {{orderInfo.deliveryId}} - - - - 复制单号 - - - 复制单号 - - - - - - {{item.status}} - {{item.time}} - - - - - - - - - - - - - - diff --git a/app/pages/users/goods_return/index.vue b/app/pages/users/goods_return/index.vue deleted file mode 100644 index a09e1ee..0000000 --- a/app/pages/users/goods_return/index.vue +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - {{item.storeName}} - - ¥{{item.price}} - x{{item.cartNum}} - - - - - - 退货件数 - {{orderInfo.totalNum}} - - - 退款金额 - ¥{{orderInfo.payPrice}} - - - 退款原因 - - - {{RefundArray[index]}} - - - - - - 备注说明 - - - - - 上传凭证 - ( 最多可上传3张 ) - - - - - - - - - 上传凭证 - - - - 申请退款 - - - - - - - - - - - diff --git a/app/pages/users/kefu/index.vue b/app/pages/users/kefu/index.vue deleted file mode 100644 index 1c539f9..0000000 --- a/app/pages/users/kefu/index.vue +++ /dev/null @@ -1,34 +0,0 @@ - - - - - diff --git a/app/pages/users/login/index.vue b/app/pages/users/login/index.vue deleted file mode 100644 index e484d99..0000000 --- a/app/pages/users/login/index.vue +++ /dev/null @@ -1,608 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - {{ text }} - - - - - - - - - - - - 登录 - 登录 - - 快速登录 - 账号登录 - - - - - - - diff --git a/app/pages/users/order_confirm/index.vue b/app/pages/users/order_confirm/index.vue deleted file mode 100644 index a5b8281..0000000 --- a/app/pages/users/order_confirm/index.vue +++ /dev/null @@ -1,1273 +0,0 @@ - - - - - - - - - - - {{addressInfo.realName}} - {{addressInfo.phone}} - - - [默认] - {{addressInfo.province}}{{addressInfo.city}}{{addressInfo.district}}{{addressInfo.detail}} - - - - 设置收货地址 - - - - - - - {{system_store.name}} - {{system_store.phone}} - - {{system_store.address}}{{", " + system_store.detailedAddress}} - - - - - - 暂无门店信息 - - - - - - - - - - - 优惠券 - {{couponTitle}} - - - - - - 积分抵扣 - - - {{useIntegral ? "剩余积分":"当前积分"}} - {{useIntegral ? orderInfoVo.surplusIntegral : orderInfoVo.userIntegral || 0}} - - - - - - - - - 快递费用 - - +¥{{orderInfoVo.freightFee}} - - 免运费 - - - - 联系人 - - - - - - 联系电话 - - - - - - - - 备注信息 - - - - - - 支付方式 - - - - - - {{item.name}} - - {{item.title}} - - - - - - - 商品总价: - ¥{{orderInfoVo.proTotalFee || 0}} - - - 优惠券抵扣: - -¥{{orderInfoVo.couponFee}} - - - 积分抵扣: - -¥{{orderInfoVo.deductionPrice}} - - - 运费: - +¥{{orderInfoVo.freightFee}} - - - - - - 合计: - ¥{{orderInfoVo.payFee || 0}} - - 立即结算 - - - - - - - - - - - - - diff --git a/app/pages/users/order_list/index.vue b/app/pages/users/order_list/index.vue deleted file mode 100644 index 9552345..0000000 --- a/app/pages/users/order_list/index.vue +++ /dev/null @@ -1,550 +0,0 @@ - - - - - - - 订单信息 - 消费订单:{{orderData.orderCount || 0}} 总消费:¥{{Number(orderData.sumPrice).toFixed(2) || 0}} - - - - - - - - - 待付款 - {{orderData.unPaidCount || 0}} - - - 待发货 - {{orderData.unShippedCount || 0}} - - - 待收货 - {{orderData.receivedCount || 0}} - - - 待评价 - {{orderData.evaluatedCount || 0}} - - - 已完成 - {{orderData.completeCount || 0}} - - - - - - - - {{item.activityType}} - - {{item.createTime}} - - {{item.orderStatus}} - - - - - - - - {{items.storeName}} - - ¥{{items.price}} - x{{items.cartNum}} - - - - 共{{item.totalNum}}件商品,总金额 - ¥{{item.payPrice}} - - - - 取消订单 - 立即付款 - 查看详情 - 去评价 - 删除订单 - - - - - - {{loadTitle}} - - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/privacy/index.vue b/app/pages/users/privacy/index.vue deleted file mode 100644 index 1c85702..0000000 --- a/app/pages/users/privacy/index.vue +++ /dev/null @@ -1,43 +0,0 @@ - - - - - - - - - diff --git a/app/pages/users/promoter-list/index.vue b/app/pages/users/promoter-list/index.vue deleted file mode 100644 index 7399028..0000000 --- a/app/pages/users/promoter-list/index.vue +++ /dev/null @@ -1,367 +0,0 @@ - - - - - - - 推广人数 - {{peopleData.count}}人 - - - - - - - 一级({{peopleData.total}}) - 二级({{peopleData.totalLevel}}) - - - - - - - - - 团队排序 - - - 团队排序 - - - 团队排序 - - - - 金额排序 - - - 金额排序 - - - 金额排序 - - - 订单排序 - - - 订单排序 - - - 订单排序 - - - - - - - - - - - {{item.nickname}} - 加入时间: {{item.time.split(' ')[0]}} - - - - {{item.childCount ? item.childCount : 0}}人 - - {{item.orderCount ? item.orderCount : 0}}单 - {{item.numberCount ? item.numberCount : 0}}元 - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/promoter-order/index.vue b/app/pages/users/promoter-order/index.vue deleted file mode 100644 index c5dece6..0000000 --- a/app/pages/users/promoter-order/index.vue +++ /dev/null @@ -1,219 +0,0 @@ - - - - - - - 累积推广订单 - {{recordCount || 0}}单 - - - - - - - - - {{item.time}} - 本月累计推广订单:{{item.count || 0}}单 - - - - - - - - - - {{child.nickname}} - - 返佣:¥{{child.number}} - - - - 订单编号:{{child.orderId}} - 下单时间:{{child.time}} - - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/promoter_rank/index.vue b/app/pages/users/promoter_rank/index.vue deleted file mode 100644 index 890608e..0000000 --- a/app/pages/users/promoter_rank/index.vue +++ /dev/null @@ -1,317 +0,0 @@ - - - - - - - - {{ item }} - - - - - - - - {{Two.nickname}} - {{Two.spreadCount}}人 - - - - - - {{One.nickname}} - {{One.spreadCount}}人 - - - - - - {{Three.nickname}} - {{Three.spreadCount}}人 - - - - - - - {{index+4}} - - - - - {{item.nickname}} - - {{item.spreadCount}}人 - - - - - - - - - - - - - diff --git a/app/pages/users/retrievePassword/index.vue b/app/pages/users/retrievePassword/index.vue deleted file mode 100644 index e9937e6..0000000 --- a/app/pages/users/retrievePassword/index.vue +++ /dev/null @@ -1,161 +0,0 @@ - - - - - - - - - 找回密码 - - - - - - - - - - - - - - {{ text }} - - - - - - - - - - - - - - - - - 确认 - - 立即登录 - - - - - - - - diff --git a/app/pages/users/static/home.png b/app/pages/users/static/home.png deleted file mode 100644 index 3f8782b..0000000 Binary files a/app/pages/users/static/home.png and /dev/null differ diff --git a/app/pages/users/static/left.png b/app/pages/users/static/left.png deleted file mode 100644 index 0e593e4..0000000 Binary files a/app/pages/users/static/left.png and /dev/null differ diff --git a/app/pages/users/static/noCollection.png b/app/pages/users/static/noCollection.png deleted file mode 100644 index f967720..0000000 Binary files a/app/pages/users/static/noCollection.png and /dev/null differ diff --git a/app/pages/users/static/noEvaluate.png b/app/pages/users/static/noEvaluate.png deleted file mode 100644 index de6f538..0000000 Binary files a/app/pages/users/static/noEvaluate.png and /dev/null differ diff --git a/app/pages/users/static/vip.png b/app/pages/users/static/vip.png deleted file mode 100644 index dec82b6..0000000 Binary files a/app/pages/users/static/vip.png and /dev/null differ diff --git a/app/pages/users/static/vip01.png b/app/pages/users/static/vip01.png deleted file mode 100644 index e17ec4d..0000000 Binary files a/app/pages/users/static/vip01.png and /dev/null differ diff --git a/app/pages/users/static/vip02.png b/app/pages/users/static/vip02.png deleted file mode 100644 index 24e3468..0000000 Binary files a/app/pages/users/static/vip02.png and /dev/null differ diff --git a/app/pages/users/static/vip03.png b/app/pages/users/static/vip03.png deleted file mode 100644 index a5f0a0d..0000000 Binary files a/app/pages/users/static/vip03.png and /dev/null differ diff --git a/app/pages/users/static/vip04.png b/app/pages/users/static/vip04.png deleted file mode 100644 index 0486f50..0000000 Binary files a/app/pages/users/static/vip04.png and /dev/null differ diff --git a/app/pages/users/static/vip05.png b/app/pages/users/static/vip05.png deleted file mode 100644 index 4635901..0000000 Binary files a/app/pages/users/static/vip05.png and /dev/null differ diff --git a/app/pages/users/static/wechat_login.png b/app/pages/users/static/wechat_login.png deleted file mode 100644 index 65d6691..0000000 Binary files a/app/pages/users/static/wechat_login.png and /dev/null differ diff --git a/app/pages/users/user_address/index.vue b/app/pages/users/user_address/index.vue deleted file mode 100644 index 544c2a0..0000000 --- a/app/pages/users/user_address/index.vue +++ /dev/null @@ -1,589 +0,0 @@ - - - - - - - - - - 姓名 - - - - 联系电话 - - - - 所在地区 - - - - {{region[0]}},{{region[1]}},{{region[2]}} - - - - - - - 详细地址 - - - - - - - 设置为默认地址 - - - - 立即保存 - - 导入微信地址 - - - 导入微信地址 - - - - - - - - - - - - - diff --git a/app/pages/users/user_address_list/index.vue b/app/pages/users/user_address_list/index.vue deleted file mode 100644 index 8eaaf4e..0000000 --- a/app/pages/users/user_address_list/index.vue +++ /dev/null @@ -1,477 +0,0 @@ - - - - - - - - - - - - - 收货人:{{item.realName}}{{item.phone}} - 收货地址:{{item.province}}{{item.city}}{{item.district}}{{item.detail}} - - - - - 设为默认 - - - - - 设为默认 - - - - 编辑 - 删除 - - - - - - {{loadTitle}} - - - - - - - - - - - 添加新地址 - 导入微信地址 - - - - 添加新地址 - 导入微信地址 - - - - - 添加新地址 - - - - - - - - - - - - - diff --git a/app/pages/users/user_bill/index.vue b/app/pages/users/user_bill/index.vue deleted file mode 100644 index 6d25eae..0000000 --- a/app/pages/users/user_bill/index.vue +++ /dev/null @@ -1,172 +0,0 @@ - - - - - 全部 - 消费 - 充值 - - - - - {{item.date}} - - - - {{vo.title}} - {{vo.add_time}} - - +{{vo.number}} - -{{vo.number}} - - - - - - {{loadTitle}} - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_cash/index.vue b/app/pages/users/user_cash/index.vue deleted file mode 100644 index ff45174..0000000 --- a/app/pages/users/user_cash/index.vue +++ /dev/null @@ -1,459 +0,0 @@ - - - - - - - - {{item.name}} - - - - - - - 持卡人 - - - - 卡号 - - - - 银行 - - - {{array[index]}} - - - - - - 提现 - - - - 当前可提现金额: ¥{{commission.commissionCount}},冻结佣金:¥{{commission.brokenCommission}} - - - 说明: 每笔佣金的冻结期为{{commission.brokenDay}}天,到期后可提现 - - 提现 - - - - - - 账号 - - - - 提现 - - - - 收款码 - - - - - - - - 上传图片 - - - - - 当前可提现金额: ¥{{commission.commissionCount}},冻结佣金:¥{{commission.brokenCommission}} - - - 说明: 每笔佣金的冻结期为{{commission.brokenDay}}天,到期后可提现 - - 提现 - - - - - - 账号 - - - - 提现 - - - - 收款码 - - - - - - - - 上传图片 - - - - - 当前可提现金额: ¥{{commission.commissionCount}},冻结佣金:¥{{commission.brokenCommission}} - - - 说明: 每笔佣金的冻结期为{{commission.brokenDay}}天,到期后可提现 - - 提现 - - - - - - - - - - - - - diff --git a/app/pages/users/user_coupon/index.vue b/app/pages/users/user_coupon/index.vue deleted file mode 100644 index 662e436..0000000 --- a/app/pages/users/user_coupon/index.vue +++ /dev/null @@ -1,213 +0,0 @@ - - - - 未使用 - 已使用/过期 - - - - - ¥{{item.money?Number(item.money):''}} - 满{{ item.minPrice?Number(item.minPrice):'' }}元可用 - - - - 通用 - 商品 - 品类 - {{item.name}} - - - {{item.useStartTimeStr}}~{{item.useEndTimeStr}} - {{item.validStr | validStrFilter}} - - - - - - {{loadTitle}} - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_get_coupon/index.vue b/app/pages/users/user_get_coupon/index.vue deleted file mode 100644 index 1a74894..0000000 --- a/app/pages/users/user_get_coupon/index.vue +++ /dev/null @@ -1,241 +0,0 @@ - - - - - {{ item.name }} - - - - - - - ¥{{item.money?Number(item.money):''}} - 满{{item.minPrice?Number(item.minPrice):''}}元可用 - - - - 通用 - 品类 - 商品 - {{item.name}} - - - 领取后{{item.day}}天内可用 - - {{ item.useStartTimeStr&& item.useEndTimeStr ? item.useStartTimeStr + " - " + item.useEndTimeStr : ""}} - - 已领取 - 立即领取 - - - - - - {{couponsList.length?loadTitle:''}} - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_goods_collection/index.vue b/app/pages/users/user_goods_collection/index.vue deleted file mode 100644 index ea271a4..0000000 --- a/app/pages/users/user_goods_collection/index.vue +++ /dev/null @@ -1,458 +0,0 @@ - - - - - - - 当前共 {{ totals }}件商品 - {{ footerswitch ? '管理' : '取消'}} - - - - - - - - - - - - - {{item.storeName}} - ¥{{item.price}} - - - - - - - {{loadTitle}} - - - - - - 全选 - - - - - 取消收藏 - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_info/index.vue b/app/pages/users/user_info/index.vue deleted file mode 100644 index 6e48153..0000000 --- a/app/pages/users/user_info/index.vue +++ /dev/null @@ -1,380 +0,0 @@ - - - - - - - 头像 - - - - - - - 昵称 - - - - - 手机号码 - - 点击绑定手机号 - - - - - - - - - - - ID号 - - - - - - - - 权限设置 - - 点击管理 - - - - - 密码 - - 点击修改密码 - - - - 保存修改 - - 退出登录 - - - - - - - - - - - - diff --git a/app/pages/users/user_integral/index.vue b/app/pages/users/user_integral/index.vue deleted file mode 100644 index 09c80d0..0000000 --- a/app/pages/users/user_integral/index.vue +++ /dev/null @@ -1,360 +0,0 @@ - - - - - 当前积分 - {{integral.integral||0}} - - - - {{integral.sumIntegral||0}} - 累计积分 - - - {{integral.deductionIntegral||0}} - 累计消费 - - - {{integral.frozenIntegral||0}} - 冻结积分 - - - - - - {{item.name}} - - - 提示:积分数值的高低会直接影响您的会员等级 - - - {{item.title}} - {{item.updateTime}} - - +{{item.integral}} - -{{item.integral}} - - - {{loadTitle}} - - - - - - - - - - - 购买商品可获得积分奖励 - 赚积分 - - - - - - 每日签到可获得积分奖励 - 赚积分 - - - - - - - - - - - - - diff --git a/app/pages/users/user_money/index.vue b/app/pages/users/user_money/index.vue deleted file mode 100644 index 3a7115d..0000000 --- a/app/pages/users/user_money/index.vue +++ /dev/null @@ -1,446 +0,0 @@ - - - - - - - - - 总资产(元) - {{statistics.nowMoney || 0}} - - - 充值 - - - 充值 - - - - - - 累计充值(元) - {{statistics.recharge || 0}} - - - - - 累计充值(元) - {{statistics.recharge || 0}} - - - - 累计消费(元) - {{statistics.orderStatusSum || 0}} - - - - - - - - - - 账单记录 - - - - - - 消费记录 - - - - - - 充值记录 - - - - - - 积分中心 - - - - - - 签到领积分 - 赚积分抵现金 - - - - - - - - 领取优惠券 - 满减享优惠 - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_payment/index.vue b/app/pages/users/user_payment/index.vue deleted file mode 100644 index 60c18e7..0000000 --- a/app/pages/users/user_payment/index.vue +++ /dev/null @@ -1,526 +0,0 @@ - - - - - 我的余额 - - ¥{{ userInfo.nowMoney || 0 }} - - - - - {{item}} - - - - - {{ item.price }} 元 - - 赠送:{{ item.giveMoney }} 元 - - - - - - 注意事项: - - {{ item }} - - - - - ¥ - - 提示: - 当前佣金为 ¥{{userInfo.brokeragePrice || 0}} - - - 注意事项: - - {{ item }} - - - - {{active ? '立即转入': '立即充值' }} - - - - - - - - - - - - \ No newline at end of file diff --git a/app/pages/users/user_phone/index.vue b/app/pages/users/user_phone/index.vue deleted file mode 100644 index 49ef5ce..0000000 --- a/app/pages/users/user_phone/index.vue +++ /dev/null @@ -1,283 +0,0 @@ - - - - - - - - - - - - - - {{ text }} - - - - 下一步 - 保存 - - - - - - - - - - diff --git a/app/pages/users/user_pwd_edit/index.vue b/app/pages/users/user_pwd_edit/index.vue deleted file mode 100644 index 68cafe2..0000000 --- a/app/pages/users/user_pwd_edit/index.vue +++ /dev/null @@ -1,225 +0,0 @@ - - - - - 当前手机号:{{phone}} - - - - - - - - - - - {{ text }} - - - - 确认修改 - - - - - - - - - - - diff --git a/app/pages/users/user_return_list/index.vue b/app/pages/users/user_return_list/index.vue deleted file mode 100644 index be7203d..0000000 --- a/app/pages/users/user_return_list/index.vue +++ /dev/null @@ -1,192 +0,0 @@ - - - - - - - 订单号:{{item.orderId}} - - - - - - - {{items.storeName}} - x {{items.cartNum}} - - {{items.suk}} - {{items.storeName}} - ¥{{items.price}} - - - 共{{item.totalNum || 0}}件商品,总金额 ¥{{item.payPrice}} - - - - {{loadTitle}} - - - - - - - - - - - - - - diff --git a/app/pages/users/user_sgin/index.vue b/app/pages/users/user_sgin/index.vue deleted file mode 100644 index d04ea13..0000000 --- a/app/pages/users/user_sgin/index.vue +++ /dev/null @@ -1,554 +0,0 @@ - - - - - - - - - - - {{userInfo.nickname}} - 积分: {{userInfo.integral}} - - - - - 明细 - - - - - - - - {{item.title}} - - - - - +{{item.integral}} - - - 已签到 - - 立即签到 - - - - - 已累计签到 - - {{signCount[0] || 0}} - {{signCount[1] || 0}} - {{signCount[2] || 0}} - {{signCount[3] || 0}} - 天 - - 据说连续签到第{{day}}天可获得超额积分,一定要坚持签到哦~~~ - - - - {{item.title}} - {{item.createDay}} - - +{{item.number}} - - 点击加载更多 - - - - - - 签到成功 - 获得{{integral}}积分 - 好的 - - - - - - - - - - - - - diff --git a/app/pages/users/user_sgin_list/index.vue b/app/pages/users/user_sgin_list/index.vue deleted file mode 100644 index 9bf5729..0000000 --- a/app/pages/users/user_sgin_list/index.vue +++ /dev/null @@ -1,113 +0,0 @@ - - - - - - {{item.month}} - - - - {{itemn.title}} - {{itemn.createDay}} - - +{{itemn.number}} - - - - - - {{loadtitle}} - - - - - - - - - - - diff --git a/app/pages/users/user_spread_code/index.vue b/app/pages/users/user_spread_code/index.vue deleted file mode 100644 index 5a358f3..0000000 --- a/app/pages/users/user_spread_code/index.vue +++ /dev/null @@ -1,425 +0,0 @@ - - - - - - - - - - - - 保存海报 - - - - - 长按保存图片 - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_spread_money/index.vue b/app/pages/users/user_spread_money/index.vue deleted file mode 100644 index 8a58235..0000000 --- a/app/pages/users/user_spread_money/index.vue +++ /dev/null @@ -1,242 +0,0 @@ - - - - - - - {{name}} - ¥{{extractCount}} - ¥{{commissionCount}} - - - - - - - - - {{item.date}} - - - - - {{child.status | statusFilter}} - {{child.createTime}} - - +{{child.extractPrice}} - - -{{child.extractPrice}} - - - - - - - - - - - - - - - - {{item.date}} - - - - - {{child.title}} - {{child.updateTime}} - - +{{child.price}} - - -{{child.price}} - - - - - - - - - - - - - - - - - - - - - diff --git a/app/pages/users/user_spread_user/index.vue b/app/pages/users/user_spread_user/index.vue deleted file mode 100644 index d1adf19..0000000 --- a/app/pages/users/user_spread_user/index.vue +++ /dev/null @@ -1,231 +0,0 @@ - - - - - - 当前佣金 - 提现记录 - - {{spreadInfo.commissionCount}} - - - 昨日收益 - {{spreadInfo.lastDayCount ? Number(spreadInfo.lastDayCount).toFixed(2) : 0}} - - - 累积已提 - {{spreadInfo.extractCount ? Number(spreadInfo.extractCount).toFixed(2) : 0}} - - - - - 立即提现 - - - 立即提现 - - - - - 推广名片 - - - - 推广人统计 - - - - 佣金明细 - - - - 推广人订单 - - - - 推广人排行 - - - - 佣金排行 - - - - - - - - - - - - - diff --git a/app/pages/users/user_vip/index.vue b/app/pages/users/user_vip/index.vue deleted file mode 100644 index 104c36f..0000000 --- a/app/pages/users/user_vip/index.vue +++ /dev/null @@ -1,510 +0,0 @@ - - - - - - - - - - {{userInfo.nickname}} - - {{userInfo.vipName}} - - - - - - 当前经验值 - {{levelInfo}} - - - - - - - - - - - - - - {{item.experience}} - - - - - - - - 会员折扣 - - - - - - 专属徽章 - - - - - - 会员升级 - - - - - - 经验积累 - - - - - - 更多特权 - - - - - - 获取经验 - - - - - - - 签到 - 每日签到可获得经验值 - - - 去获取 - - - - - - 购买商品 - 购买商品可获得对应是经验值 - - - 去获取 - - - - - - - - 经验值明细 - - - - - {{item.title}} - {{item.add_time}} - - +{{item.number}} - -{{item.number}} - - - - - {{loadTitle}} - - - - - - - - diff --git a/app/pages/users/web_page/index.vue b/app/pages/users/web_page/index.vue deleted file mode 100644 index 9a593e8..0000000 --- a/app/pages/users/web_page/index.vue +++ /dev/null @@ -1,37 +0,0 @@ - - - - - diff --git a/app/pages/users/wechat_login/index.vue b/app/pages/users/wechat_login/index.vue deleted file mode 100644 index 1e68531..0000000 --- a/app/pages/users/wechat_login/index.vue +++ /dev/null @@ -1,410 +0,0 @@ - - - - - - - - - - - - 账户登录 - - - - - - - - - 微信登录 - - - 微信登录 - - - - - - - - - - - - - - - - - diff --git a/app/plugin/animate/animate.min.css b/app/plugin/animate/animate.min.css deleted file mode 100644 index f3f1068..0000000 --- a/app/plugin/animate/animate.min.css +++ /dev/null @@ -1,11 +0,0 @@ -@charset "UTF-8"; - -/*! - * animate.css -https://daneden.github.io/animate.css/ - * Version - 3.7.2 - * Licensed under the MIT license - http://opensource.org/licenses/MIT - * - * Copyright (c) 2019 Daniel Eden - */ - -@-webkit-keyframes bounce{0%,20%,53%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translateZ(0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0);transform:translate3d(0,-30px,0)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.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{0%,20%,53%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1);-webkit-transform:translateZ(0);transform:translateZ(0)}40%,43%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.06);-webkit-transform:translate3d(0,-30px,0);transform:translate3d(0,-30px,0)}70%{-webkit-animation-timing-function:cubic-bezier(.755,.05,.855,.06);animation-timing-function:cubic-bezier(.755,.05,.855,.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{0%,50%,to{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,50%,to{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes pulse{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}50%{-webkit-transform:scale3d(1.05,1.05,1.05);transform:scale3d(1.05,1.05,1.05)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.pulse{-webkit-animation-name:pulse;animation-name:pulse}@-webkit-keyframes rubberBand{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes rubberBand{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}30%{-webkit-transform:scale3d(1.25,.75,1);transform:scale3d(1.25,.75,1)}40%{-webkit-transform:scale3d(.75,1.25,1);transform:scale3d(.75,1.25,1)}50%{-webkit-transform:scale3d(1.15,.85,1);transform:scale3d(1.15,.85,1)}65%{-webkit-transform:scale3d(.95,1.05,1);transform:scale3d(.95,1.05,1)}75%{-webkit-transform:scale3d(1.05,.95,1);transform:scale3d(1.05,.95,1)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shake{0%,to{-webkit-transform:translateZ(0);transform:translateZ(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{0%,to{-webkit-transform:translateZ(0);transform:translateZ(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:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}to{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate(-3deg);transform:scale3d(.9,.9,.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate(3deg);transform:scale3d(1.1,1.1,1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate(-3deg);transform:scale3d(1.1,1.1,1.1) rotate(-3deg)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes tada{0%{-webkit-transform:scaleX(1);transform:scaleX(1)}10%,20%{-webkit-transform:scale3d(.9,.9,.9) rotate(-3deg);transform:scale3d(.9,.9,.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate(3deg);transform:scale3d(1.1,1.1,1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale3d(1.1,1.1,1.1) rotate(-3deg);transform:scale3d(1.1,1.1,1.1) rotate(-3deg)}to{-webkit-transform:scaleX(1);transform:scaleX(1)}}.tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate(-5deg);transform:translate3d(-25%,0,0) rotate(-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate(3deg);transform:translate3d(20%,0,0) rotate(3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate(-3deg);transform:translate3d(-15%,0,0) rotate(-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate(2deg);transform:translate3d(10%,0,0) rotate(2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate(-1deg);transform:translate3d(-5%,0,0) rotate(-1deg)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes wobble{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}15%{-webkit-transform:translate3d(-25%,0,0) rotate(-5deg);transform:translate3d(-25%,0,0) rotate(-5deg)}30%{-webkit-transform:translate3d(20%,0,0) rotate(3deg);transform:translate3d(20%,0,0) rotate(3deg)}45%{-webkit-transform:translate3d(-15%,0,0) rotate(-3deg);transform:translate3d(-15%,0,0) rotate(-3deg)}60%{-webkit-transform:translate3d(10%,0,0) rotate(2deg);transform:translate3d(10%,0,0) rotate(2deg)}75%{-webkit-transform:translate3d(-5%,0,0) rotate(-1deg);transform:translate3d(-5%,0,0) rotate(-1deg)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes jello{0%,11.1%,to{-webkit-transform:translateZ(0);transform:translateZ(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(-.78125deg) skewY(-.78125deg);transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skewX(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skewX(-.1953125deg) skewY(-.1953125deg)}}@keyframes jello{0%,11.1%,to{-webkit-transform:translateZ(0);transform:translateZ(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(-.78125deg) skewY(-.78125deg);transform:skewX(-.78125deg) skewY(-.78125deg)}77.7%{-webkit-transform:skewX(.390625deg) skewY(.390625deg);transform:skewX(.390625deg) skewY(.390625deg)}88.8%{-webkit-transform:skewX(-.1953125deg) skewY(-.1953125deg);transform:skewX(-.1953125deg) skewY(-.1953125deg)}}.jello{-webkit-animation-name:jello;animation-name:jello;-webkit-transform-origin:center;transform-origin:center}@-webkit-keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes heartBeat{0%{-webkit-transform:scale(1);transform:scale(1)}14%{-webkit-transform:scale(1.3);transform:scale(1.3)}28%{-webkit-transform:scale(1);transform:scale(1)}42%{-webkit-transform:scale(1.3);transform:scale(1.3)}70%{-webkit-transform:scale(1);transform:scale(1)}}.heartBeat{-webkit-animation-name:heartBeat;animation-name:heartBeat;-webkit-animation-duration:1.3s;animation-duration:1.3s;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}@-webkit-keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.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(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}@keyframes bounceIn{0%,20%,40%,60%,80%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}20%{-webkit-transform:scale3d(1.1,1.1,1.1);transform:scale3d(1.1,1.1,1.1)}40%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.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(.97,.97,.97);transform:scale3d(.97,.97,.97)}to{opacity:1;-webkit-transform:scaleX(1);transform:scaleX(1)}}.bounceIn{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}@keyframes bounceInDown{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}@keyframes bounceInLeft{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}@keyframes bounceInRight{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.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:translateZ(0);transform:translateZ(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{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:translateZ(0);transform:translateZ(0)}}@keyframes bounceInUp{0%,60%,75%,90%,to{-webkit-animation-timing-function:cubic-bezier(.215,.61,.355,1);animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{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:translateZ(0);transform:translateZ(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.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(.3,.3,.3);transform:scale3d(.3,.3,.3)}}@keyframes bounceOut{20%{-webkit-transform:scale3d(.9,.9,.9);transform:scale3d(.9,.9,.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(.3,.3,.3);transform:scale3d(.3,.3,.3)}}.bounceOut{-webkit-animation-duration:.75s;animation-duration:.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{0%{opacity:0}to{opacity:1}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes fadeOutDown{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,2000px,0);transform:translate3d(0,2000px,0)}}@keyframes fadeOutDownBig{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes fadeOutLeft{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(-2000px,0,0);transform:translate3d(-2000px,0,0)}}@keyframes fadeOutLeftBig{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes fadeOutRight{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(2000px,0,0);transform:translate3d(2000px,0,0)}}@keyframes fadeOutRightBig{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes fadeOutUp{0%{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{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-2000px,0);transform:translate3d(0,-2000px,0)}}@keyframes fadeOutUpBig{0%{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{0%{-webkit-transform:perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);transform:perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);transform:perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);transform:perspective(400px) scaleX(1) translateZ(0) rotateY(-1turn);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-190deg);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);transform:perspective(400px) scaleX(1) translateZ(150px) rotateY(-170deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0deg);transform:perspective(400px) scale3d(.95,.95,.95) translateZ(0) rotateY(0deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}to{-webkit-transform:perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);transform:perspective(400px) scaleX(1) translateZ(0) rotateY(0deg);-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{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateX(-5deg);transform:perspective(400px) rotateX(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateX(-5deg);transform:perspective(400px) rotateX(-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{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateY(-5deg);transform:perspective(400px) rotateY(-5deg)}to{-webkit-transform:perspective(400px);transform:perspective(400px)}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in;opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-20deg);transform:perspective(400px) rotateY(-20deg);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}60%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg);opacity:1}80%{-webkit-transform:perspective(400px) rotateY(-5deg);transform:perspective(400px) rotateY(-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{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotateX(-20deg);transform:perspective(400px) rotateX(-20deg);opacity:1}to{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotateY(-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px);transform:perspective(400px)}30%{-webkit-transform:perspective(400px) rotateY(-15deg);transform:perspective(400px) rotateY(-15deg);opacity:1}to{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-animation-duration:.75s;animation-duration:.75s;-webkit-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedIn{0%{-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)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes lightSpeedIn{0%{-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)}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOut{0%{opacity:1}to{-webkit-transform:translate3d(100%,0,0) skewX(30deg);transform:translate3d(100%,0,0) skewX(30deg);opacity:0}}@keyframes lightSpeedOut{0%{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{0%{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}to{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}to{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:translateZ(0);transform:translateZ(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center;transform-origin:center;opacity:1}to{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{-webkit-transform-origin:center;transform-origin:center;opacity:1}to{-webkit-transform-origin:center;transform-origin:center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;opacity:1}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}@keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;opacity:1}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(45deg);transform:rotate(45deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;opacity:1}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}}@keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;opacity:1}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;opacity:1}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}}@keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;opacity:1}to{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;opacity:1}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;opacity:1}to{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(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:rotate(80deg);transform:rotate(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:rotate(60deg);transform:rotate(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:rotate(80deg);transform:rotate(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:rotate(60deg);transform:rotate(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{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.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{0%{opacity:0;-webkit-transform:scale(.1) rotate(30deg);transform:scale(.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}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate(-120deg);transform:translate3d(-100%,0,0) rotate(-120deg)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translate3d(-100%,0,0) rotate(-120deg);transform:translate3d(-100%,0,0) rotate(-120deg)}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}.rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate(120deg);transform:translate3d(100%,0,0) rotate(120deg)}}@keyframes rollOut{0%{opacity:1}to{opacity:0;-webkit-transform:translate3d(100%,0,0) rotate(120deg);transform:translate3d(100%,0,0) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(-1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(10px,0,0);transform:scale3d(.475,.475,.475) translate3d(10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);transform:scale3d(.1,.1,.1) translate3d(1000px,0,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);transform:scale3d(.475,.475,.475) translate3d(-10px,0,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);transform:scale3d(.1,.1,.1) translate3d(0,1000px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}60%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}@keyframes zoomOut{0%{opacity:1}50%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}to{opacity:0}}.zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);transform:scale3d(.475,.475,.475) translate3d(0,-60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,2000px,0);-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.1) translate3d(-2000px,0,0);-webkit-transform-origin:left center;transform-origin:left center}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(42px,0,0);transform:scale3d(.475,.475,.475) translate3d(42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(-2000px,0,0);transform:scale(.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(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.1) translate3d(2000px,0,0);-webkit-transform-origin:right center;transform-origin:right center}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(-42px,0,0);transform:scale3d(.475,.475,.475) translate3d(-42px,0,0)}to{opacity:0;-webkit-transform:scale(.1) translate3d(2000px,0,0);transform:scale(.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(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale3d(.475,.475,.475) translate3d(0,60px,0);transform:scale3d(.475,.475,.475) translate3d(0,60px,0);-webkit-animation-timing-function:cubic-bezier(.55,.055,.675,.19);animation-timing-function:cubic-bezier(.55,.055,.675,.19)}to{opacity:0;-webkit-transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);transform:scale3d(.1,.1,.1) translate3d(0,-2000px,0);-webkit-transform-origin:center bottom;transform-origin:center bottom;-webkit-animation-timing-function:cubic-bezier(.175,.885,.32,1);animation-timing-function:cubic-bezier(.175,.885,.32,1)}}.zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp}@-webkit-keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInDown{0%{-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInLeft{0%{-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInRight{0%{-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes slideInUp{0%{-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0);visibility:visible}to{-webkit-transform:translateZ(0);transform:translateZ(0)}}.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,100%,0);transform:translate3d(0,100%,0)}}@keyframes slideOutDown{0%{-webkit-transform:translateZ(0);transform:translateZ(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{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(-100%,0,0);transform:translate3d(-100%,0,0)}}@keyframes slideOutLeft{0%{-webkit-transform:translateZ(0);transform:translateZ(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{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(100%,0,0);transform:translate3d(100%,0,0)}}@keyframes slideOutRight{0%{-webkit-transform:translateZ(0);transform:translateZ(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{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}@keyframes slideOutUp{0%{-webkit-transform:translateZ(0);transform:translateZ(0)}to{visibility:hidden;-webkit-transform:translate3d(0,-100%,0);transform:translate3d(0,-100%,0)}}.slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}.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}.animated.delay-1s{-webkit-animation-delay:1s;animation-delay:1s}.animated.delay-2s{-webkit-animation-delay:2s;animation-delay:2s}.animated.delay-3s{-webkit-animation-delay:3s;animation-delay:3s}.animated.delay-4s{-webkit-animation-delay:4s;animation-delay:4s}.animated.delay-5s{-webkit-animation-delay:5s;animation-delay:5s}.animated.fast{-webkit-animation-duration:.8s;animation-duration:.8s}.animated.faster{-webkit-animation-duration:.5s;animation-duration:.5s}.animated.slow{-webkit-animation-duration:2s;animation-duration:2s}.animated.slower{-webkit-animation-duration:3s;animation-duration:3s}@media (prefers-reduced-motion:reduce),(print){.animated{-webkit-animation-duration:1ms!important;animation-duration:1ms!important;-webkit-transition-duration:1ms!important;transition-duration:1ms!important;-webkit-animation-iteration-count:1!important;animation-iteration-count:1!important}} \ No newline at end of file diff --git a/app/plugin/chat/yzf_chat.js b/app/plugin/chat/yzf_chat.js deleted file mode 100644 index 1defb44..0000000 --- a/app/plugin/chat/yzf_chat.js +++ /dev/null @@ -1 +0,0 @@ -!function(e){var t={};function n(i){if(t[i])return t[i].exports;var o=t[i]={i:i,l:!1,exports:{}};return e[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,i){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:i})},n.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(i,o,function(t){return e[t]}.bind(null,o));return i},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="./",n(n.s=3)}([function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0});var i=+new Date,o="yzfh5-data-"+i,a="yzfh5-main-chat-"+i,r="yzfh5-main-iframe-"+i,c="yzfh5-main-contact-"+i,d="yzfh5-chat-btn-"+i,s="yzfh5-dot-"+i,l="yzfh5-state-"+i,u="yzfh5-icon-"+i;t.default={scope:o,mainChatId:a,mainIframeId:r,mainContactId:c,chatBtnId:d,dotId:s,stateId:l,iconId:u}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.default={isMobile:function(){var e=!1;return/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)&&(e=!0),e}()}},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.getElem=function(e){return document.getElementById(e)},t.hideElem=function(e){e.style.display="none"},t.showElem=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"block";e.style.display=t}},function(e,t,n){e.exports=n(4)},function(e,t,n){"use strict";var i=n(5),o=Object({NODE_ENV:"development",YZF_CHAT_WEB_CHAT:"https://yzf.qq.com/xv/web/static/chat/index.html",YZF_CHAT_WEB_PREFIX:"https://yzf.qq.com/xv/web"})||!1,a=o.YZF_CHAT_WEB_CHAT,r=void 0===a?"https://yzf.qq.com/xv/web/static/chat/index.html":a,c=o.YZF_CHAT_WEB_PREFIX,d=void 0===c?"https://yzf.qq.com/xv/web":c,s=!1,l={init:function(e){if(!s){var t=e.sign||"",n=e.data||{},o=e.uid||"",a=e.selector||"",c=e.callback,l=!("rmb"in e)||e.rmb,u="goodImg"in e?e.goodImg:"contain",f=!0===e.nofixed,p=r+"?inner=1&sign="+t+"&uid="+o+"&rmb="+l+"&goodImg="+u;if(n&&Object.keys(n).length)p+="&c1="+(n.c1||""),p+="&c2="+(n.c2||""),p+="&c3="+(n.c3||""),p+="&c4="+(n.c4||""),p+="&c5="+(n.c5||"");f&&(p+="&nofixed=1"),(0,i.render)(p,d,a,c,t),s=!0}},close:function(){(0,i.close)()}};window.yzf=l},function(e,t,n){"use strict";Object.defineProperty(t,"__esModule",{value:!0}),t.render=function(e,t,n,c,s){var h=(0,i.default)({id:o.default,isMobile:f});h=(h=h.replace(new RegExp(u,"g"),o.default.scope)).replace(new RegExp("https://kf.qq.com/xv-dev/web","g"),t);var x=document.createElement("div");x.innerHTML=h,x.style.display="none",document.body.appendChild(x);var b=function(){x.style.display="block"},g=setTimeout(b,3e3),y=(0,r.getElem)(o.default.mainChatId);!f&&(y.style.zIndex=2147483647);var _=(0,r.getElem)(o.default.dotId),v=(0,r.getElem)(o.default.stateId),E=(0,r.getElem)(o.default.mainIframeId),w=(0,r.getElem)(o.default.mainContactId),I=w;if(n)try{var F=document.querySelector(n);F&&(p=!1,I=F,w.remove(),clearTimeout(g),g=null,b())}catch(Y){console.error(Y)}p&&(0,d.loadTheme)(t,s,function(e,t){var n=!1;if(e&&t&&0==t.status){var i=null;try{i=JSON.parse(t.data)}catch(Y){}if(i&&i.custom_color){var a=i.custom_color,c=(0,r.getElem)(o.default.chatBtnId);console.log(2222,e,t,i,c),c&&(c.style.backgroundColor=a,c.parentNode&&c.parentNode.parentNode&&(c.parentNode.parentNode.style.display="block"))}else n=!0}else n=!0;clearTimeout(g),g=null,n&&b(),(0,r.showElem)(w)});I.addEventListener("click",function(){l||(l=!0,E.src=e,E.onload=function(){E.contentWindow.postMessage({type:"init"},"*")}),(0,r.showElem)(y),p&&((0,r.hideElem)(I),(0,r.hideElem)(_),(0,r.hideElem)(v))}),a.default.listen(I,c,p),p&&(window.onresize=m,m())},t.close=function(){var e=(0,r.getElem)(o.default.mainChatId),t=(0,r.getElem)(o.default.mainContactId);(0,r.hideElem)(e),p&&(0,r.showElem)(t)};var i=s(n(6)),o=s(n(0)),a=s(n(10)),r=n(2),c=s(n(1)),d=n(11);function s(e){return e&&e.__esModule?e:{default:e}}var l=!1,u="YZF_STYLE_PREFIX",f=c.default.isMobile,p=!0;function m(){var e=(0,r.getElem)(o.default.chatBtnId).getElementsByClassName("txt")[0],t=window.innerWidth;e.textContent=t>=1e3?"\u8054\u7cfb\u5ba2\u670d":"\u5ba2\u670d"}},function(e,t,n){var i=n(7);e.exports=function(e){"use strict";e=e||{};var t="",n=i.$escape,o=e.id,a=e.isMobile;return t+='\n\n \n \n ',a||(t+="\u8054\u7cfb"),t+='\u5ba2\u670d\n \n \u5ba2\u670d\u5df2\u56de\u590d\n \n\n\n \n'}},function(e,t,n){"use strict";e.exports=n(8)},function(e,t,n){"use strict";(function(t){var n="undefined"!==typeof self?self:"undefined"!==typeof window?window:"undefined"!==typeof t?t:{},i=Object.create(n),o=/["&'<>]/;i.$escape=function(e){return function(e){var t=""+e,n=o.exec(t);if(!n)return e;var i="",a=void 0,r=void 0,c=void 0;for(a=n.index,r=0;a=200&&this.status<300||304===this.status){var e=this.responseText;try{var n=JSON.parse(e);n?t(!0,n):t(!1)}catch(i){t(!1)}}},n.ontimeout=function(){t(!1)},n.onerror=function(){t(!1)},n.open("GET",e),n.send(null)}}]); \ No newline at end of file diff --git a/app/plugin/clipboard/clipboard.js b/app/plugin/clipboard/clipboard.js deleted file mode 100644 index 0240e3f..0000000 --- a/app/plugin/clipboard/clipboard.js +++ /dev/null @@ -1,973 +0,0 @@ -/*! - * clipboard.js v2.0.6 - * https://clipboardjs.com/ - * - * Licensed MIT © Zeno Rocha - */ -(function webpackUniversalModuleDefinition(root, factory) { - if(typeof exports === 'object' && typeof module === 'object') - module.exports = factory(); - else if(typeof define === 'function' && define.amd) - define([], factory); - else if(typeof exports === 'object') - exports["ClipboardJS"] = factory(); - else - root["ClipboardJS"] = factory(); -})(this, function() { -return /******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __webpack_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = 6); -/******/ }) -/************************************************************************/ -/******/ ([ -/* 0 */ -/***/ (function(module, exports) { - -function select(element) { - var selectedText; - - if (element.nodeName === 'SELECT') { - element.focus(); - - selectedText = element.value; - } - else if (element.nodeName === 'INPUT' || element.nodeName === 'TEXTAREA') { - var isReadOnly = element.hasAttribute('readonly'); - - if (!isReadOnly) { - element.setAttribute('readonly', ''); - } - - element.select(); - element.setSelectionRange(0, element.value.length); - - if (!isReadOnly) { - element.removeAttribute('readonly'); - } - - selectedText = element.value; - } - else { - if (element.hasAttribute('contenteditable')) { - element.focus(); - } - - var selection = window.getSelection(); - var range = document.createRange(); - - range.selectNodeContents(element); - selection.removeAllRanges(); - selection.addRange(range); - - selectedText = selection.toString(); - } - - return selectedText; -} - -module.exports = select; - - -/***/ }), -/* 1 */ -/***/ (function(module, exports) { - -function E () { - // Keep this empty so it's easier to inherit from - // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3) -} - -E.prototype = { - on: function (name, callback, ctx) { - var e = this.e || (this.e = {}); - - (e[name] || (e[name] = [])).push({ - fn: callback, - ctx: ctx - }); - - return this; - }, - - once: function (name, callback, ctx) { - var self = this; - function listener () { - self.off(name, listener); - callback.apply(ctx, arguments); - }; - - listener._ = callback - return this.on(name, listener, ctx); - }, - - emit: function (name) { - var data = [].slice.call(arguments, 1); - var evtArr = ((this.e || (this.e = {}))[name] || []).slice(); - var i = 0; - var len = evtArr.length; - - for (i; i < len; i++) { - evtArr[i].fn.apply(evtArr[i].ctx, data); - } - - return this; - }, - - off: function (name, callback) { - var e = this.e || (this.e = {}); - var evts = e[name]; - var liveEvents = []; - - if (evts && callback) { - for (var i = 0, len = evts.length; i < len; i++) { - if (evts[i].fn !== callback && evts[i].fn._ !== callback) - liveEvents.push(evts[i]); - } - } - - // Remove event from queue to prevent memory leak - // Suggested by https://github.com/lazd - // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910 - - (liveEvents.length) - ? e[name] = liveEvents - : delete e[name]; - - return this; - } -}; - -module.exports = E; -module.exports.TinyEmitter = E; - - -/***/ }), -/* 2 */ -/***/ (function(module, exports, __webpack_require__) { - -var is = __webpack_require__(3); -var delegate = __webpack_require__(4); - -/** - * Validates all params and calls the right - * listener function based on its target type. - * - * @param {String|HTMLElement|HTMLCollection|NodeList} target - * @param {String} type - * @param {Function} callback - * @return {Object} - */ -function listen(target, type, callback) { - if (!target && !type && !callback) { - throw new Error('Missing required arguments'); - } - - if (!is.string(type)) { - throw new TypeError('Second argument must be a String'); - } - - if (!is.fn(callback)) { - throw new TypeError('Third argument must be a Function'); - } - - if (is.node(target)) { - return listenNode(target, type, callback); - } - else if (is.nodeList(target)) { - return listenNodeList(target, type, callback); - } - else if (is.string(target)) { - return listenSelector(target, type, callback); - } - else { - throw new TypeError('First argument must be a String, HTMLElement, HTMLCollection, or NodeList'); - } -} - -/** - * Adds an event listener to a HTML element - * and returns a remove listener function. - * - * @param {HTMLElement} node - * @param {String} type - * @param {Function} callback - * @return {Object} - */ -function listenNode(node, type, callback) { - node.addEventListener(type, callback); - - return { - destroy: function() { - node.removeEventListener(type, callback); - } - } -} - -/** - * Add an event listener to a list of HTML elements - * and returns a remove listener function. - * - * @param {NodeList|HTMLCollection} nodeList - * @param {String} type - * @param {Function} callback - * @return {Object} - */ -function listenNodeList(nodeList, type, callback) { - Array.prototype.forEach.call(nodeList, function(node) { - node.addEventListener(type, callback); - }); - - return { - destroy: function() { - Array.prototype.forEach.call(nodeList, function(node) { - node.removeEventListener(type, callback); - }); - } - } -} - -/** - * Add an event listener to a selector - * and returns a remove listener function. - * - * @param {String} selector - * @param {String} type - * @param {Function} callback - * @return {Object} - */ -function listenSelector(selector, type, callback) { - return delegate(document.body, selector, type, callback); -} - -module.exports = listen; - - -/***/ }), -/* 3 */ -/***/ (function(module, exports) { - -/** - * Check if argument is a HTML element. - * - * @param {Object} value - * @return {Boolean} - */ -exports.node = function(value) { - return value !== undefined - && value instanceof HTMLElement - && value.nodeType === 1; -}; - -/** - * Check if argument is a list of HTML elements. - * - * @param {Object} value - * @return {Boolean} - */ -exports.nodeList = function(value) { - var type = Object.prototype.toString.call(value); - - return value !== undefined - && (type === '[object NodeList]' || type === '[object HTMLCollection]') - && ('length' in value) - && (value.length === 0 || exports.node(value[0])); -}; - -/** - * Check if argument is a string. - * - * @param {Object} value - * @return {Boolean} - */ -exports.string = function(value) { - return typeof value === 'string' - || value instanceof String; -}; - -/** - * Check if argument is a function. - * - * @param {Object} value - * @return {Boolean} - */ -exports.fn = function(value) { - var type = Object.prototype.toString.call(value); - - return type === '[object Function]'; -}; - - -/***/ }), -/* 4 */ -/***/ (function(module, exports, __webpack_require__) { - -var closest = __webpack_require__(5); - -/** - * Delegates event to a selector. - * - * @param {Element} element - * @param {String} selector - * @param {String} type - * @param {Function} callback - * @param {Boolean} useCapture - * @return {Object} - */ -function _delegate(element, selector, type, callback, useCapture) { - var listenerFn = listener.apply(this, arguments); - - element.addEventListener(type, listenerFn, useCapture); - - return { - destroy: function() { - element.removeEventListener(type, listenerFn, useCapture); - } - } -} - -/** - * Delegates event to a selector. - * - * @param {Element|String|Array} [elements] - * @param {String} selector - * @param {String} type - * @param {Function} callback - * @param {Boolean} useCapture - * @return {Object} - */ -function delegate(elements, selector, type, callback, useCapture) { - // Handle the regular Element usage - if (typeof elements.addEventListener === 'function') { - return _delegate.apply(null, arguments); - } - - // Handle Element-less usage, it defaults to global delegation - if (typeof type === 'function') { - // Use `document` as the first parameter, then apply arguments - // This is a short way to .unshift `arguments` without running into deoptimizations - return _delegate.bind(null, document).apply(null, arguments); - } - - // Handle Selector-based usage - if (typeof elements === 'string') { - elements = document.querySelectorAll(elements); - } - - // Handle Array-like based usage - return Array.prototype.map.call(elements, function (element) { - return _delegate(element, selector, type, callback, useCapture); - }); -} - -/** - * Finds closest match and invokes callback. - * - * @param {Element} element - * @param {String} selector - * @param {String} type - * @param {Function} callback - * @return {Function} - */ -function listener(element, selector, type, callback) { - return function(e) { - e.delegateTarget = closest(e.target, selector); - - if (e.delegateTarget) { - callback.call(element, e); - } - } -} - -module.exports = delegate; - - -/***/ }), -/* 5 */ -/***/ (function(module, exports) { - -var DOCUMENT_NODE_TYPE = 9; - -/** - * A polyfill for Element.matches() - */ -if (typeof Element !== 'undefined' && !Element.prototype.matches) { - var proto = Element.prototype; - - proto.matches = proto.matchesSelector || - proto.mozMatchesSelector || - proto.msMatchesSelector || - proto.oMatchesSelector || - proto.webkitMatchesSelector; -} - -/** - * Finds the closest parent that matches a selector. - * - * @param {Element} element - * @param {String} selector - * @return {Function} - */ -function closest (element, selector) { - while (element && element.nodeType !== DOCUMENT_NODE_TYPE) { - if (typeof element.matches === 'function' && - element.matches(selector)) { - return element; - } - element = element.parentNode; - } -} - -module.exports = closest; - - -/***/ }), -/* 6 */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); - -// EXTERNAL MODULE: ./node_modules/select/src/select.js -var src_select = __webpack_require__(0); -var select_default = /*#__PURE__*/__webpack_require__.n(src_select); - -// CONCATENATED MODULE: ./src/clipboard-action.js -var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - -var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - - - -/** - * Inner class which performs selection from either `text` or `target` - * properties and then executes copy or cut operations. - */ - -var clipboard_action_ClipboardAction = function () { - /** - * @param {Object} options - */ - function ClipboardAction(options) { - _classCallCheck(this, ClipboardAction); - - this.resolveOptions(options); - this.initSelection(); - } - - /** - * Defines base properties passed from constructor. - * @param {Object} options - */ - - - _createClass(ClipboardAction, [{ - key: 'resolveOptions', - value: function resolveOptions() { - var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - - this.action = options.action; - this.container = options.container; - this.emitter = options.emitter; - this.target = options.target; - this.text = options.text; - this.trigger = options.trigger; - - this.selectedText = ''; - } - - /** - * Decides which selection strategy is going to be applied based - * on the existence of `text` and `target` properties. - */ - - }, { - key: 'initSelection', - value: function initSelection() { - if (this.text) { - this.selectFake(); - } else if (this.target) { - this.selectTarget(); - } - } - - /** - * Creates a fake textarea element, sets its value from `text` property, - * and makes a selection on it. - */ - - }, { - key: 'selectFake', - value: function selectFake() { - var _this = this; - - var isRTL = document.documentElement.getAttribute('dir') == 'rtl'; - - this.removeFake(); - - this.fakeHandlerCallback = function () { - return _this.removeFake(); - }; - this.fakeHandler = this.container.addEventListener('click', this.fakeHandlerCallback) || true; - - this.fakeElem = document.createElement('textarea'); - // Prevent zooming on iOS - this.fakeElem.style.fontSize = '12pt'; - // Reset box model - this.fakeElem.style.border = '0'; - this.fakeElem.style.padding = '0'; - this.fakeElem.style.margin = '0'; - // Move element out of screen horizontally - this.fakeElem.style.position = 'absolute'; - this.fakeElem.style[isRTL ? 'right' : 'left'] = '-9999px'; - // Move element to the same position vertically - var yPosition = window.pageYOffset || document.documentElement.scrollTop; - this.fakeElem.style.top = yPosition + 'px'; - - this.fakeElem.setAttribute('readonly', ''); - this.fakeElem.value = this.text; - - this.container.appendChild(this.fakeElem); - - this.selectedText = select_default()(this.fakeElem); - this.copyText(); - } - - /** - * Only removes the fake element after another click event, that way - * a user can hit `Ctrl+C` to copy because selection still exists. - */ - - }, { - key: 'removeFake', - value: function removeFake() { - if (this.fakeHandler) { - this.container.removeEventListener('click', this.fakeHandlerCallback); - this.fakeHandler = null; - this.fakeHandlerCallback = null; - } - - if (this.fakeElem) { - this.container.removeChild(this.fakeElem); - this.fakeElem = null; - } - } - - /** - * Selects the content from element passed on `target` property. - */ - - }, { - key: 'selectTarget', - value: function selectTarget() { - this.selectedText = select_default()(this.target); - this.copyText(); - } - - /** - * Executes the copy operation based on the current selection. - */ - - }, { - key: 'copyText', - value: function copyText() { - var succeeded = void 0; - - try { - succeeded = document.execCommand(this.action); - } catch (err) { - succeeded = false; - } - - this.handleResult(succeeded); - } - - /** - * Fires an event based on the copy operation result. - * @param {Boolean} succeeded - */ - - }, { - key: 'handleResult', - value: function handleResult(succeeded) { - this.emitter.emit(succeeded ? 'success' : 'error', { - action: this.action, - text: this.selectedText, - trigger: this.trigger, - clearSelection: this.clearSelection.bind(this) - }); - } - - /** - * Moves focus away from `target` and back to the trigger, removes current selection. - */ - - }, { - key: 'clearSelection', - value: function clearSelection() { - if (this.trigger) { - this.trigger.focus(); - } - document.activeElement.blur(); - window.getSelection().removeAllRanges(); - } - - /** - * Sets the `action` to be performed which can be either 'copy' or 'cut'. - * @param {String} action - */ - - }, { - key: 'destroy', - - - /** - * Destroy lifecycle. - */ - value: function destroy() { - this.removeFake(); - } - }, { - key: 'action', - set: function set() { - var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'copy'; - - this._action = action; - - if (this._action !== 'copy' && this._action !== 'cut') { - throw new Error('Invalid "action" value, use either "copy" or "cut"'); - } - } - - /** - * Gets the `action` property. - * @return {String} - */ - , - get: function get() { - return this._action; - } - - /** - * Sets the `target` property using an element - * that will be have its content copied. - * @param {Element} target - */ - - }, { - key: 'target', - set: function set(target) { - if (target !== undefined) { - if (target && (typeof target === 'undefined' ? 'undefined' : _typeof(target)) === 'object' && target.nodeType === 1) { - if (this.action === 'copy' && target.hasAttribute('disabled')) { - throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute'); - } - - if (this.action === 'cut' && (target.hasAttribute('readonly') || target.hasAttribute('disabled'))) { - throw new Error('Invalid "target" attribute. You can\'t cut text from elements with "readonly" or "disabled" attributes'); - } - - this._target = target; - } else { - throw new Error('Invalid "target" value, use a valid Element'); - } - } - } - - /** - * Gets the `target` property. - * @return {String|HTMLElement} - */ - , - get: function get() { - return this._target; - } - }]); - - return ClipboardAction; -}(); - -/* harmony default export */ var clipboard_action = (clipboard_action_ClipboardAction); -// EXTERNAL MODULE: ./node_modules/tiny-emitter/index.js -var tiny_emitter = __webpack_require__(1); -var tiny_emitter_default = /*#__PURE__*/__webpack_require__.n(tiny_emitter); - -// EXTERNAL MODULE: ./node_modules/good-listener/src/listen.js -var listen = __webpack_require__(2); -var listen_default = /*#__PURE__*/__webpack_require__.n(listen); - -// CONCATENATED MODULE: ./src/clipboard.js -var clipboard_typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; - -var clipboard_createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }(); - -function clipboard_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } - -function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } - -function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } - - - - - -/** - * Base class which takes one or more elements, adds event listeners to them, - * and instantiates a new `ClipboardAction` on each click. - */ - -var clipboard_Clipboard = function (_Emitter) { - _inherits(Clipboard, _Emitter); - - /** - * @param {String|HTMLElement|HTMLCollection|NodeList} trigger - * @param {Object} options - */ - function Clipboard(trigger, options) { - clipboard_classCallCheck(this, Clipboard); - - var _this = _possibleConstructorReturn(this, (Clipboard.__proto__ || Object.getPrototypeOf(Clipboard)).call(this)); - - _this.resolveOptions(options); - _this.listenClick(trigger); - return _this; - } - - /** - * Defines if attributes would be resolved using internal setter functions - * or custom functions that were passed in the constructor. - * @param {Object} options - */ - - - clipboard_createClass(Clipboard, [{ - key: 'resolveOptions', - value: function resolveOptions() { - var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; - - this.action = typeof options.action === 'function' ? options.action : this.defaultAction; - this.target = typeof options.target === 'function' ? options.target : this.defaultTarget; - this.text = typeof options.text === 'function' ? options.text : this.defaultText; - this.container = clipboard_typeof(options.container) === 'object' ? options.container : document.body; - } - - /** - * Adds a click event listener to the passed trigger. - * @param {String|HTMLElement|HTMLCollection|NodeList} trigger - */ - - }, { - key: 'listenClick', - value: function listenClick(trigger) { - var _this2 = this; - - this.listener = listen_default()(trigger, 'click', function (e) { - return _this2.onClick(e); - }); - } - - /** - * Defines a new `ClipboardAction` on each click event. - * @param {Event} e - */ - - }, { - key: 'onClick', - value: function onClick(e) { - var trigger = e.delegateTarget || e.currentTarget; - - if (this.clipboardAction) { - this.clipboardAction = null; - } - - this.clipboardAction = new clipboard_action({ - action: this.action(trigger), - target: this.target(trigger), - text: this.text(trigger), - container: this.container, - trigger: trigger, - emitter: this - }); - } - - /** - * Default `action` lookup function. - * @param {Element} trigger - */ - - }, { - key: 'defaultAction', - value: function defaultAction(trigger) { - return getAttributeValue('action', trigger); - } - - /** - * Default `target` lookup function. - * @param {Element} trigger - */ - - }, { - key: 'defaultTarget', - value: function defaultTarget(trigger) { - var selector = getAttributeValue('target', trigger); - - if (selector) { - return document.querySelector(selector); - } - } - - /** - * Returns the support of the given action, or all actions if no action is - * given. - * @param {String} [action] - */ - - }, { - key: 'defaultText', - - - /** - * Default `text` lookup function. - * @param {Element} trigger - */ - value: function defaultText(trigger) { - return getAttributeValue('text', trigger); - } - - /** - * Destroy lifecycle. - */ - - }, { - key: 'destroy', - value: function destroy() { - this.listener.destroy(); - - if (this.clipboardAction) { - this.clipboardAction.destroy(); - this.clipboardAction = null; - } - } - }], [{ - key: 'isSupported', - value: function isSupported() { - var action = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : ['copy', 'cut']; - - var actions = typeof action === 'string' ? [action] : action; - var support = !!document.queryCommandSupported; - - actions.forEach(function (action) { - support = support && !!document.queryCommandSupported(action); - }); - - return support; - } - }]); - - return Clipboard; -}(tiny_emitter_default.a); - -/** - * Helper function to retrieve attribute value. - * @param {String} suffix - * @param {Element} element - */ - - -function getAttributeValue(suffix, element) { - var attribute = 'data-clipboard-' + suffix; - - if (!element.hasAttribute(attribute)) { - return; - } - - return element.getAttribute(attribute); -} - -/* harmony default export */ var clipboard = __webpack_exports__["default"] = (clipboard_Clipboard); - -/***/ }) -/******/ ])["default"]; -}); \ No newline at end of file diff --git a/app/plugin/dayjs/dayjs.min.js b/app/plugin/dayjs/dayjs.min.js deleted file mode 100644 index 47ebdde..0000000 --- a/app/plugin/dayjs/dayjs.min.js +++ /dev/null @@ -1 +0,0 @@ -!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):t.dayjs=e()}(this,function(){"use strict";var t="millisecond",e="second",n="minute",r="hour",i="day",s="week",u="month",o="quarter",a="year",h=/^(\d{4})-?(\d{1,2})-?(\d{0,2})[^0-9]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?.?(\d{1,3})?$/,f=/\[([^\]]+)]|Y{2,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,c=function(t,e,n){var r=String(t);return!r||r.length>=e?t:""+Array(e+1-r.length).join(n)+t},d={s:c,z:function(t){var e=-t.utcOffset(),n=Math.abs(e),r=Math.floor(n/60),i=n%60;return(e<=0?"+":"-")+c(r,2,"0")+":"+c(i,2,"0")},m:function(t,e){var n=12*(e.year()-t.year())+(e.month()-t.month()),r=t.clone().add(n,u),i=e-r<0,s=t.clone().add(n+(i?-1:1),u);return Number(-(n+(e-r)/(i?r-s:s-r))||0)},a:function(t){return t<0?Math.ceil(t)||0:Math.floor(t)},p:function(h){return{M:u,y:a,w:s,d:i,D:"date",h:r,m:n,s:e,ms:t,Q:o}[h]||String(h||"").toLowerCase().replace(/s$/,"")},u:function(t){return void 0===t}},$={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_")},l="en",m={};m[l]=$;var y=function(t){return t instanceof v},M=function(t,e,n){var r;if(!t)return l;if("string"==typeof t)m[t]&&(r=t),e&&(m[t]=e,r=t);else{var i=t.name;m[i]=t,r=i}return!n&&r&&(l=r),r||!n&&l},g=function(t,e){if(y(t))return t.clone();var n="object"==typeof e?e:{};return n.date=t,n.args=arguments,new v(n)},D=d;D.l=M,D.i=y,D.w=function(t,e){return g(t,{locale:e.$L,utc:e.$u,$offset:e.$offset})};var v=function(){function c(t){this.$L=this.$L||M(t.locale,null,!0),this.parse(t)}var d=c.prototype;return d.parse=function(t){this.$d=function(t){var e=t.date,n=t.utc;if(null===e)return new Date(NaN);if(D.u(e))return new Date;if(e instanceof Date)return new Date(e);if("string"==typeof e&&!/Z$/i.test(e)){var r=e.match(h);if(r)return n?new Date(Date.UTC(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)):new Date(r[1],r[2]-1,r[3]||1,r[4]||0,r[5]||0,r[6]||0,r[7]||0)}return new Date(e)}(t),this.init()},d.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},d.$utils=function(){return D},d.isValid=function(){return!("Invalid Date"===this.$d.toString())},d.isSame=function(t,e){var n=g(t);return this.startOf(e)<=n&&n<=this.endOf(e)},d.isAfter=function(t,e){return g(t)11.2 */ - height: calc(100rpx + env(safe-area-inset-bottom)); -} \ No newline at end of file diff --git a/app/static/css/guildford.css b/app/static/css/guildford.css deleted file mode 100644 index 56bc03b..0000000 --- a/app/static/css/guildford.css +++ /dev/null @@ -1,6 +0,0 @@ -@font-face { - font-family:'Guildford Pro'; - src: url('data:application/x-font-woff2;charset=utf-8;base64,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AAAAAAAAAAMABAAFAAYABwAIAAkACgALAAwADQAOAA8AEAARABIAEwAUABUAFgAXABgAGQAaABsAHAAdAB4AHwAgACEAIgAjACQAJQAmACcAKAApACoAKwAsAC0ALgAvADAAMQAyADMANAA1ADYANwA4ADkAOgA7ADwAPQA+AD8AQABBAEIAQwBEAEUARgBHAEgASQBKAEsATABNAE4ATwBQAFEAUgBTAFQAVQBWAFcAWABZAFoAWwBcAF0AXgBfAGAAYQAAAGIAAABjAGQAZQBmAGcAaABpAGoAawBsAG0AAABuAAAAAABvAHAAcQByAHMAdAB1AHYAdwB4AHkAegAAAHsAfAADAH0AfgB/AIAAgQCCAIMAhACFAIYAhwCIABAAiQCKAIsAjACNAI4AjwCQAJEAkgCTAJQAlQCWAJcAmACZAJoAmwCcAJ0AngCfAKAAoQCiAKMApAClAKYApwCoAKkAqgCrAKwArQCuAK8AsACxALIAswC0ALUAtgC3ALgAuQC6ALsAvAC9AL4AvwDAAMEAwgDDAMQAxQDGAMcAyADJAMoAywDMAM0AzgDPANAA0QDSANMA1ADVANYA1wDYANkA2gAAANsA3ADdAN4A3wDgAOEA4gDjAOQA5QDmAOcA6ADpAOoA6wDsAO0A7gDvAPAA8QDyAPMA9AD1APYA9wD4APkA+gD7APwA/QD+AP8BAAEBAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAENAQ4BDwEQAREBEgETARQBFQEWARcBGAEZARoBGwEcAR0BHgEfASABIQEiASMBJAElASYBJwEoASkBKgErASwBLQEuAS8BMAExATIBMwE0ATUBNgE3ATgBOQE6ATsBPAE9AT4BPwFAAUEBQgFDAUQBRQFGAUcBSAFJAUoBSwFMAU0BTgFPAVABUQFSAVMBVAFVAVYBVwFYAVkBWgFbAVwBXQFeAV8BYAFhAWIBYwFkAWUBZgFnAWgBaQFqAWsBbAFtAW4BbwFwAXEBcgFzAJABdAF1AXYBdwF4AXkBegF7AXwBfQF+AX8BgAGBAYIBgwGEAYUBhgGHAYgBiQGKAXMBiwGMAXIBjQGOAY8BkAGRAZIBkwGUAZUBlgGXAZgBmQGaAZsBnAAEAggAAABuAEAABQAuAAAADQB+AKAArACtAP8BUQFTAV8BYQF3AX8BkgIbAscCyQLbAt0DlAOpA7wDwCAVIBogHiAiICYgMCA6IEQgcCB5IIkgrCEXISAhIiEmIS4iAiIGIg8iEiIVIhoiHiIrIkgiYCJlJcrxAvsC//8AAAAAAA0AIACgAKEArQCuAQABUgFUAWABYgF4AZICGALGAskC2ALcA5QDqQO8A8AgEyAYIBwgICAmIDAgOSBEIHAgdCCAIKwhFiEgISIhJiEuIgIiBiIPIhEiFSIZIh4iKyJIImAiZCXK8QL7Af//AAH/9f/jAAD/3AAA/9v/7gAA/+wAAP/qAAD+0v9PAAD+o/6VAAD93v3K/NT9tAAAAAAAAAAA4EDgOgAA4TLhB+EE4P7ftuBy4GrfVeBN4F3fit9s337ffd9733jfdd9p303fNt8z288QmAaaAAEAAAAAAAAAaAAAAGYAAAAAAGIAAABiAAAAYgAAAAAAbAAAAAAAagAAAAAAAAAAAGQAaABsAHAAAAAAAHAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAADABAAbQB6AGsAeAB8AWIBYwFkAWUAbgB7AWYAaQFrAHYBcQB0AHUBdQBvAHAAYwBxAHIAZQBnAGgAcwBsAHkABAIIAAAAbgBAAAUALgAAAA0AfgCgAKwArQD/AVEBUwFfAWEBdwF/AZICGwLHAskC2wLdA5QDqQO8A8AgFSAaIB4gIiAmIDAgOiBEIHAgeSCJIKwhFyEgISIhJiEuIgIiBiIPIhIiFSIaIh4iKyJIImAiZSXK8QL7Av//AAAAAAANACAAoAChAK0ArgEAAVIBVAFgAWIBeAGSAhgCxgLJAtgC3AOUA6kDvAPAIBMgGCAcICAgJiAwIDkgRCBwIHQggCCsIRYhICEiISYhLiICIgYiDyIRIhUiGSIeIisiSCJgImQlyvEC+wH//wAB//X/4wAA/9wAAP/b/+4AAP/sAAD/6gAA/tL/TwAA/qP+lQAA/d79yvzU/bQAAAAAAAAAAOBA4DoAAOEy4QfhBOD+37bgcuBq31XgTeBd34rfbN9+333fe99433Xfad9N3zbfM9vPEJgGmgABAAAAAAAAAGgAAABmAAAAAABiAAAAYgAAAGIAAAAAAGwAAAAAAGoAAAAAAAAAAABkAGgAbABwAAAAAABwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAwAQAG0AegBrAHgAfAFiAWMBZAFlAG4AewFmAGkBawB2AXEAdAB1AXUAbwBwAGMAcQByAGUAZwBoAHMAbAB5AAABxAAZAAAAAAFUAAABVAAAANgARgEqACMCJQAjAesAHgKnADIChwAyAIwAIwEVAEEBFQAKAYsAIwGlADIA1gA6AVMAMgDWAEsBoP/7AjgAPAD7/9gCBwAkAfsAHgGy//YB5QAPAfUALQFnABQB/AAjAfUAKADWAEsA1gA6AYcAIwGlADIBhwAjAggAFANWADcCJgAKAfYAWgK8AEEChABaAeMAWgHPAFoDbgBBApQAWgD6AFoBfQAjAi8AWgHUAFoDLABaApYAWgN6AEECCgBaA3oAQQIZAFoCDAAjAbwAFAKKAFUB/gAPAxQAFAIcABQB5AAFAcwAGQEVAEYBoP/7ARUAGQF9ACMBfAAAAOQAMQJOADICTgBQAdEAMgJOADICJAAyASYAIwJOADICBgBQAOEAUADh/9QBsgBQAOEAUALwAFACBgBQAjAAMgJOAFACTgAyAT8AUAFyABQBJgAjAgYASwGIAAUCkgAFAY4ADwGjAAUBnAAZARAACgDVAEsBEAAUAZsAIwIZAAUA1gA6AWAACgF1ADoCggBLAbMAMgGzADIBWAAoA8YAMgIMACMAvwAFBHwAQQHMABkA1gA6ANYAOgF1ADoBdQA6AP4AMgIQADwDFAA8AU0AKAJzABQBcgAUAL8ADwOvADIBlwAUAeQABQDYAEYB0QAyAd8ABQH5ADEB6wAKANUASwGLACMBPgAoA24AQQGIACgBZwAFAkkAMQKwADcBPQAoAVoAMgGlADIBKAAaARYAFADkACgCMwAxAkcALQDWAEsBAwAoAI7/8QFqACgBZwAPAcUAAAIsAAACLgAZAggAMgImAAoCJgAKAiYACgImAAoCJgAKAiYACgMFAAoCvABBAeMAWgHjAFoB4wBaAeMAWgD6ABAA+gBaAPr/+QD6AAYChAAUApYAWgN6AEEDegBBA3oAQQN6AEEDegBBAYUAMgN6AEECigBVAooAVQKKAFUCigBVAeQABQIKAFoCDABLAk4AMgJOADICTgAyAk4AMgJOADICTgAyAzwAKAHRADICJAAyAiQAMgIkADICJAAyAOEAAwDhAFAA4f/sAOH/+QI0ADICBgBQAjAAMgIwADICMAAyAjAAMgIwADIBpQAyAjAAMgIGAEsCBgBLAgYASwIGAEsBowAFAk4AUAGjAAUDLABaAdsAKAHbACgB2wAoAdsAKAHbACgB2wAoAdsAKAHbACgB2wAoAdsAKACrACUBnv/2ANH/7ADR/+wBywAAApYAFAI0ABkCcwAUAiYACgJOADICJgAKAk4AMgImAAoCTgAyArwAQQHRADICvABBAdEAMgK8AEEB0QAyArwAQQHRADIChABaAyQAMgKEABQCTgAyAeMAWgIkADIB4wBaAiQAMgHjAFoCJAAyAeMAWgIkADIB4wBaAiQAMgNuAEECTgAyA24AQQJOADIDbgBBAk4AMgNuAEECTgAyApQAWgIGAFAClAAUAgYAFAD6//8A4f/yAPoABwDh//oA+v/5AOH/7AD6ABkA4QAPAPoAWgDhAFACdwBaAcIAUAF9ACMA4f/UAi8AWgGyAFABsgBQAdQAWgDhAFAB1ABaAOEANwHUAFoBtwBQAdQAWgG3AFAB1AAFAOH/5gKWAFoCBgBQApYAWgIGAFAClgBaAgYAUAJqADoClgBaAgYAUAN6AEECMAAyA3oAQQIwADIDegBBAjAAMgIZAFoBPwBQAhkAWgE/ADYCGQBaAT8AOgIMACMBcgAUAgwAIwFyABQCDAAjAXIAFAG8ABQBJv/4AbwAFAH8ACMBvAAUASYAIwKKAFUCBgBLAooAVQIGAEsCigBVAgYASwKKAFUCBgBLAooAVQIGAEsCigBVAgYASwMUABQCkgAFAeQABQGjAAUBzAAZAZcAFAHMABkBlwAUASYAIwIMACMBcgAUAbwAFAEmACMBWAAoAT0AKAFYACgAlAAoATgAKAEDACgBVwAoAvwAMQL+ADECpgAxAxQAPAFb//sBTgAyAN7/9gEGAAUBGwAjALgACgEWABkBGwAeAU4AMgCO//EBKAAaARYAFADe//YBBgAFARsAIwC4AAoBFgAZARsAHgRRAFoDbgBBApYAFAN+ADcB/AAxA1wAMQL/ADEBpQAyAVv/+wDWAEsCCwAxA3QAMQG4ADEB6wAxAfcAMQGHACMBhwAjAgkAMQJlAC0CBwAjACMAAAADAAAAAAAA/7UAMgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAIewAAQWlGAAACgneAAYAFABVAAYAFQAKAAYAFgAFAAYAF//EAAYAGP/iAAYAGf/EAAYAGgAKAAYAG//7AAYAHAAFAAcAFAAKAAcAFf/sAAcAFgAUAAcAFwAoAAcAGAAPAAcAGQAFAAcAGwAKAAcAHP/OABAAEwAPABAAFAAKABAAFf/EABAAFgAUABAAFwAtABAAGAAKABAAGQAPABAAGv/YABAAGwAPABAAHP/dABAAJP/dABAAJgAKABAAKgAKABAALf+6ABAAMgAKABAANv+6ABAAN/+mABAAOf+6ABAAOv/EABAAO/+wABAAPP+cABAAPf/JABAARAAKABAARgAKABAARwAKABAASAAKABAASgAKABAAUgAKABAAVAAKABAAVgAKABAAWQAKABAAWgAKABAAW//iABAAXAAPABAAXf/2ABEAE//2ABEAFP/2ABEAFQAPABEAFwAeABEAGAAKABEAGf/2ABEAGgAZABEAHP+6ABEAJAAoABEAJv+/ABEAKv+6ABEALQAZABEAMv+/ABEANgAPABEAN/+mABEAOP/dABEAOf9+ABEAOv+SABEAOwAUABEAPP+IABEAPQAZABEARP/sABEARv/nABEAR//nABEASP/nABEASf/2ABEASv/nABEAUv/sABEAVP/nABEAVgAKABEAV//2ABEAWP/xABEAWf+wABEAWv+wABEAWwAUABEAXP/EABEAXQAKABIAFAAyABIAFgAKABIAF/+/ABIAGP/dABIAGf+1ABIAGgAoABIAG//xABIAJP+6ABIAJv/iABIAKv/iABIALQAjABIAMv/iABIANgAUABIANwA3ABIAOQAyABIAOgAtABIAOwAeABIAPAAoABIAPQAUABIARP+IABIARv+IABIAR/+IABIASP+IABIASv+IABIATP/2ABIATf/2ABIAUP+hABIAUf+hABIAUv+IABIAU/+hABIAVP+IABIAVf+hABIAVv+rABIAV//YABIAWP+mABIAWf/TABIAWv/TABIAW/+wABIAXP/JABIAXf/EABMAEAAPABMAEf/2ABMAFAAUABMAFf/7ABMAGv/sABMAHP/7ABQAFAAPABQAGf/2ABQAGv/2ABUACP/7ABUAEP/OABUAEQAPABUAEgAUABUAE//2ABUAFAAUABUAFv/7ABUAF//sABUAGP/xABUAGf/TABUAG//sABUAHP/7ABYACP/nABYAEAAFABYAEgAKABYAFAAFABYAFf/sABYAFgAKABYAFwAeABYAGAAKABYAGwAKABYAHP/iABYAi//2ABcACP/xABcAEgAKABcAFP/2ABcAFf/2ABcAFgAPABcAFwAoABcAGAAKABcAGv/sABcAHP/2ABcAi//xABgACP/TABgAEAAKABgAEf/2ABgAEgAKABgAFP/2ABgAFf/YABgAFwAUABgAGP/7ABgAGv/2ABgAHP+6ABgAi//iABkACP+1ABkAEAAPABkAEgAKABkAFP/2ABkAFf/TABkAFwAUABkAGAAFABkAGv/2ABkAHP+6ABkAi/+mABoACAAeABoAEP+/ABoAEf+IABoAEv+/ABoAE//7ABoAFAAeABoAFQAKABoAFgAKABoAF/+1ABoAGP/OABoAGf+wABoAGgAeABoAG//2ABoAHAAKABoAiwAjABsACP/sABsAEAAPABsAEgAKABsAFAAFABsAFf/nABsAFgAKABsAFwAeABsAGAAKABsAGv/2ABsAHP/sABsAi//7ABwACAAFABwAEP/nABwAEf+rABwAEv/JABwAFAAjABwAFf/2ABwAFv/2ABwAF//TABwAGP/iABwAGf/OABwAGv/iABwAG//nACIAcAAUACQABAAoACQADf+mACQAEP/dACQAEQAoACQAEgAyACQAHQAoACQAIv+wACQAJAAeACQAJv/sACQAKv/sACQALQAUACQAMv/sACQANgAZACQAN/+wACQAOP/7ACQAOf+6ACQAOv/JACQAOwAUACQAPP+wACQAPQAeACQARAAKACQARgAKACQARwAKACQASAAKACQASgAKACQAUgAKACQAVAAKACQAVgAeACQAWP/7ACQAWf/2ACQAWv/xACQAWwAZACQAXP/2ACQAXQAUACQAcP+DACQAd/+IACQAif/EACQBiv+wACUAEf/2ACUAHf/2ACUAIv/2ACUAJAAKACUAJv/sACUAKv/sACUALf/iACUAMv/sACUANv/sACUAN//iACUAOP/7ACUAOQAPACUAOgAUACUAO//sACUAPAAFACUAPf/xACUAWP/7ACUAd//sACUAif/2ACUAyQAKACUAygAPACUBFwAUACUBGQAKACUBGwAPACUBiv/2ACYABAAKACYADQAUACYAEP+wACYAEQAKACYAEgAeACYAHQAKACYAIgAFACYAJAAKACYAJv+wACYAKv+wACYALQAUACYAMv+wACYANgAKACYANwAUACYAOP/2ACYAOQAZACYAOgAPACYAOwAFACYAPAAZACYAPQAKACYARP/sACYASP/sACYAUv/sACYAWP/sACYAXP/nACYAXQAFACYAcAAKACYAdwAjACYAif/sACYAxwAyACYAygAUACYBFwAKACYBGQAKACYBGwAoACYBigAZACcABP/2ACcAEAAKACcAEf+6ACcAEv/iACcAHf/2ACcAIv/JACcAJP/sACcALf+mACcANv/iACcAN/+/ACcAOf/xACcAOv/xACcAO//EACcAPP/dACcAPf/OACcARP/sACcASP/sACcAS//2ACcATP/2ACcAUv/sACcAVf/2ACcAWP/7ACcAWgAUACcAXAAUACcAcP/xACcAd//sACgAEP/7ACgAEQAFACgAEgAUACgAHQAFACgAIv/7ACgAJAAFACgAJv/sACgAKv/sACgAMv/sACgANwAUACgAOQAPACgAOgAUACgAOwAPACgAPAAPACgAPQAUACgARP/sACgARv/sACgAR//sACgASP/sACgASv/sACgAUv/sACgAVP/sACgAWP/xACgAWQAFACgAWgAFACgAWwAFACgAdwAUACgAxwAPACgBGwAPACkABAAPACkADQAZACkAEf9vACkAEv/EACkAIgAKACkAJP/OACkAJv/sACkAKv/sACkALQAUACkAMv/sACkANv/xACkANwAPACkAOP/6ACkAOQAUACkAOgAUACkAOwAKACkAPAAeACkAPQAKACkARP/dACkARv/nACkAR//nACkASP/dACkATP/2ACkAUf/2ACkAUv/dACkAVf/2ACkAVv/2ACkAV//7ACkAWP/xACkAWgAKACkAXAAPACkAcAAKACkAdwAjACkAiQAKACkAxwAoACkAyQAKACkAygAeACkBFwAPACkBGQAUACkBGwAoACkBigAUACoADf/sACoAEAAPACoAEf+/ACoAEv/iACoAIv+XACoAJP/sACoAJv/7ACoAKv/7ACoALf/OACoAMv/7ACoANv/YACoAN/+rACoAOP/7ACoAOf/TACoAOv/TACoAO//TACoAPP+1ACoAPf/TACoARP/2ACoASP/2ACoAS//2ACoATP/2ACoAT//2ACoAUf/2ACoAUv/2ACoAVf/2ACoAWP/2ACoAWgAPACoAXAAUACoAcP+wACoAd//OACoBiv/iACsARP/2ACsASP/2ACsATP/2ACsAUv/2ACsAV//2ACsAWP/xACsAWf/2ACsAXP/xACwARP/2ACwARf/2ACwARv/2ACwAR//2ACwASP/2ACwASf/2ACwASv/2ACwAS//2ACwATP/2ACwATf/2ACwATv/2ACwAT//2ACwAUP/2ACwAUf/2ACwAUv/2ACwAU//2ACwAVP/2ACwAVf/2ACwAVv/7ACwAV//2ACwAWP/xACwAWf/xACwAWv/sACwAW//xACwAXP/xACwAXf/xAC0AEf/YAC0AEv/sAC0AHf/2AC0AJP/xAC0ALf/2AC0ANv/7AC0AO//xAC0APf/nAC0ARP/2AC0ASP/2AC0ATP/2AC0AUv/2AC0AVf/2AC0AWP/2AC4ABAAUAC4ADf/sAC4AEP+IAC4AEQAUAC4AEgAtAC4AHQAUAC4AIv/sAC4AJAAoAC4AJv+mAC4AKv+mAC4ALQAeAC4AMv+mAC4ANv/2AC4AN//xAC4AOP/dAC4AOwAyAC4APP/7AC4APQAoAC4ARP/iAC4ASP/iAC4AUv/iAC4AWP/iAC4AWf/OAC4AWv/JAC4AXP/OAC4AcP/nAC4Aif+/AC4Biv/2AC8ABAAZAC8ADf+SAC8AEP+mAC8AEQAjAC8AEgAjAC8AHQAjAC8AIv+hAC8AJAAjAC8AJv+mAC8AKv+mAC8ALQAKAC8AMv+mAC8ANv/2AC8AN/+wAC8AOP/iAC8AOf+SAC8AOv+rAC8AOwAZAC8APP+mAC8APQAZAC8ARP/sAC8ASP/sAC8AUv/sAC8AWP/sAC8AWv/OAC8AXP/YAC8AcP+SAC8Ad/+NAC8Aif9qAC8Biv+NADAARP/2ADAASP/2ADAASv/2ADAATP/2ADAAUv/2ADAAVf/2ADAAVv/2ADAAV//2ADAAWP/xADAAXP/2ADEARP/2ADEASP/2ADEATP/2ADEAUv/2ADEAWP/xADEAXP/2ADIAEAAKADIAEf+/ADIAEv/iADIAIv/JADIAJP/sADIALf+1ADIANv/nADIAN//EADIAOf/sADIAOv/2ADIAO//JADIAPP/YADIAPf/JADIARP/xADIARf/7ADIARv/xADIAR//xADIASP/xADIASv/xADIAS//7ADIATP/7ADIATf/7ADIATv/7ADIAT//7ADIAUP/7ADIAUf/7ADIAUv/xADIAU//7ADIAVP/xADIAVf/7ADIAVv/2ADIAV//7ADIAWP/7ADIAWQAUADIAWgAUADIAW//2ADIAXAAUADIAXf/sADIAcP/sADIAd//nADMADQAUADMAEP/nADMAEf9lADMAEv+1ADMAJP+1ADMAJv/xADMAKv/xADMALf/iADMAMv/xADMANv/2ADMAN//YADMAOQAKADMAOgAKADMAO//sADMAPAAKADMAPf/YADMARP/EADMARv/YADMAR//EADMASP/EADMASv/EADMATP/2ADMATf/2ADMAUf/sADMAUv/EADMAVf/sADMAVv/iADMAV//2ADMAWP/sADMAWgAeADMAXAAZADMAXf/2ADMAyQAZADMAygAZADMBFwAeADMBGQAUADMBGwAKADQAEf/iADQAEgAFADQAHf/2ADQALf/TADQAPf/dADUAEP/dADUAEgAeADUAIv/7ADUAJAAUADUAJv/2ADUAKv/2ADUAMv/2ADUANv/2ADUAN//iADUAOP/7ADUAOQAKADUAOgAUADUAOwAKADUAPAAKADUAPQAFADUARP/TADUASP/TADUAUv/TADUAWP/nADUAWgAKADUAXAAKADUAcP/7ADUAd//7ADUAyQAUADUAygAUADUBFwAUADUBGQAUADYABP/7ADYADf/2ADYAEAAKADYAEgAUADYAIv/xADYAJAAZADYAJv/sADYAKv/sADYAMv/2ADYANv/7ADYAN//xADYAPP/7ADYAWP/7ADYAXf/2ADYAcP/nADYAif/nADYAxwAKADYBGwAKADYBiv/xADcABAAUADcADQAjADcAEP+mADcAEf+mADcAEv+rADcAHf+mADcAIgAUADcAJP+wADcAJv/EADcAKv/EADcALQAPADcAMv/EADcANv/xADcANwAZADcAOQAUADcAOgAeADcAOwAPADcAPAAeADcAPQAFADcARP+hADcARv+mADcAR/+hADcASP+hADcATP/7ADcAUf+wADcAUv+hADcAVf+rADcAVv+mADcAV//YADcAWP+mADcAWv+1ADcAXP+1ADcAXf+rADcAcAAUADcAdwAyADcAeP/iADcAe//7ADcAif/xADcAxwA3ADcAyP/JADcAyQAZADcAygAjADcA1P+6ADcA1/+wADcA2v/JADcBFwAeADcBGQAeADcBGwAyADcBH/+rADcBNv/EADcBSf/iADcBV/+6ADcBigAeADgAEf/dADgAEv/sADgAHf/7ADgAIv/7ADgAJP/7ADgANv/7ADgAO//xADgAPf/xADgARP/2ADgARf/2ADgAR//2ADgASP/2ADgASf/2ADgASv/2ADgAS//2ADgATP/2ADgATv/2ADgAT//2ADgAUP/2ADgAUf/2ADgAUv/2ADgAU//2ADgAVP/2ADgAVf/2ADgAVv/2ADgAV//2ADgAWP/xADgAWf/2ADgAWv/2ADgAW//iADgAXP/7ADgAXf/iADkABAAPADkADQAeADkAEP+6ADkAEf9+ADkAEv+wADkAHf+6ADkAIgAZADkAJP+6ADkAJv/sADkAKv/sADkAMv/sADkANgAPADkANwAUADkAOQAoADkAOgAeADkAOwAeADkAPAAoADkAPQAUADkARP+6ADkARv+6ADkAR/+6ADkASP+6ADkATP/2ADkAUf+wADkAUv+6ADkAVf+6ADkAVv/OADkAV//YADkAWP+6ADkAWv/YADkAXP/nADkAXf/EADkAcAAPADkAdwAtADkAeP/7ADkAe//xADkAif/7ADkAxwAjADkAyP/OADkAyQAeADkAygAeADkBFwAZADkBGQAPADkBGwAyADkBH/+6ADkBSf/JADkBigAeADoABAAPADoADQAjADoAEP/EADoAEf+SADoAEv+rADoAEwABADoAHf/EADoAIgAZADoAJP/JADoAJv/2ADoAKv/2ADoALQAeADoAMv/2ADoANgAPADoANwAeADoAOQAeADoAOgAoADoAOwAeADoAPAAjADoAPQAUADoARP/OADoARv/JADoAR//JADoASP/JADoAS//2ADoATP/sADoAUP+/ADoAUf+6ADoAUv/JADoAVf+/ADoAVv/YADoAV//sADoAWP+/ADoAWv/YADoAXP/xADoAXf/JADoAcAAKADoAdwAyADoAe//7ADoAu/+rADoAw/+rADoAxwAeADoAyP/EADoAyQAUADoAygAeADoBFwAeADoBGQAUADoBGwAtADoBH/+/ADoBNv+wADoBT//YADoBigAeADsADQAKADsAEP+wADsAEQAUADsAEgAeADsAHQAUADsAJAAUADsAJv/JADsAKv/JADsALQAUADsAMv/JADsANwAKADsAOP/xADsAOQAeADsAOgAeADsAOwAUADsAPAAPADsAPQAZADsARP/sADsASP/sADsATP/7ADsAUv/sADsAWP/sADsAXP/dADsAcP/2ADsAdwAjADsAif/iADsAxwAjADsBGwAZADsBigAFADwABAAKADwADQAUADwAEP+cADwAEf+IADwAEv+hADwAHf+IADwAIgAKADwAJP+wADwAJv/YADwAKv/YADwALQAUADwAMv/YADwANgAKADwANwAeADwAOQAoADwAOgAjADwAOwAPADwAPAAoADwAPQAUADwARP+NADwARv95ADwAR/+NADwASP+NADwATP/sADwAUf+cADwAUv+NADwAU/+XADwAVf+XADwAVv+mADwAV//EADwAWP+hADwAWf+/ADwAWv+1ADwAXP+wADwAXf+mADwAdwAtADwAeP/2ADwAe//nADwAif/sADwAu/+cADwAw/+hADwAxwAoADwAyP+6ADwAyQAKADwAygAKADwAzf+mADwA1P+wADwA1/+XADwA2v+6ADwA+/+hADwBA/+IADwBCf+hADwBGwAoADwBH/+XADwBNv+/ADwBPf+IADwBSf/EADwBU/+XADwBVf+EADwBWf+cADwBigAZAD0ABAAKAD0ADf/7AD0AEP+cAD0AEQAZAD0AEgAZAD0AHQAZAD0AIv/7AD0AJAAZAD0AJv/JAD0AKv/JAD0AMv/JAD0ANv/7AD0AOP/xAD0AOQAUAD0AOgAUAD0AOwAUAD0APAAKAD0APQAKAD0ARP/iAD0ASP/iAD0AS//7AD0ATP/7AD0AUv/iAD0AWP/xAD0AXP/TAD0AcP/sAD0AdwAZAD0Aif/dAD0AxwAjAD0BGwAPAD0BigAFAEQADf/sAEQAIv+SAEQAWP/7AEQAcP/YAEQAd//dAEUADf+6AEUAEAAKAEUAEf/sAEUAHf/2AEUAIv+IAEUAVv/2AEUAWQAFAEUAWgAFAEUAW//iAEUAXAAFAEUAXf/iAEUAcP+wAEUAd/+6AEUAif/sAEUBiv/OAEYABAAFAEYADf/sAEYAEP/2AEYAEQAFAEYAHQAFAEYAIv+NAEYARP/nAEYARv/nAEYAR//nAEYASP/nAEYASv/nAEYAUv/nAEYAVP/iAEYAWP/7AEYAWQAeAEYAWgAZAEYAWwAKAEYAXAAZAEYAXQAKAEYAcP/iAEYAd//xAEgADf+6AEgAEAAPAEgAEf/sAEgAIv+SAEgAWQAKAEgAWgAKAEgAW//sAEgAXAAPAEgAXf/sAEgAcP+wAEgAd//EAEgAif/nAEgBiv/YAEkABAAKAEkADQAjAEkAEf/EAEkAEv/sAEkAHQAUAEkAIgAUAEkARP/sAEkARv/sAEkAR//sAEkASP/sAEkASQAeAEkASv/sAEkAUv/sAEkAVP/sAEkAVgAFAEkAVwAKAEkAWQAoAEkAWgAoAEkAWwAUAEkAXAAjAEkAXQAZAEkAcAAUAEkAdwAoAEkAiQAjAEkAxwAjAEkAygAZAEkBigAtAEoADf/xAEoAIv+XAEoAWP/7AEoAcP/YAEoAd//YAEsADf+6AEsAIv+NAEsAVv/2AEsAWP/2AEsAXf/2AEsAcP+wAEsAd//EAEsAif/nAEsBiv/TAE4ABAAKAE4AEP/TAE4AEQAUAE4AEgAyAE4AHQAUAE4AIv+wAE4ARP/dAE4ARv/dAE4AR//dAE4ASP/dAE4ASf/2AE4ASv/dAE4AUv/dAE4AVP/dAE4AWP/nAE4AWQAUAE4AWwAeAE4AXAAUAE4AcP/sAE4Ad//2AFAADf+6AFAAIv+NAFAAVv/2AFAAWP/2AFAAXf/2AFAAcP+wAFAAd//EAFAAif/nAFABiv/TAFEADf+6AFEAIv+NAFEAVv/2AFEAWP/2AFEAXf/2AFEAcP+wAFEAd//EAFEAif/nAFEBiv/TAFIABP/2AFIADf+mAFIAD//nAFIAEAAKAFIAEf/sAFIAHf/2AFIAHv/xAFIAIv+IAFIAVv/7AFIAWQAFAFIAWgAFAFIAW//sAFIAXAAFAFIAXf/nAFIAcP+6AFIAd//EAFIAif/nAFIBiv/TAFMABP/2AFMADf+wAFMAD//nAFMAEAAKAFMAEf/sAFMAHf/2AFMAHv/xAFMAIv+IAFMAVv/7AFMAWQAFAFMAXAAFAFMAXf/nAFMAcP+wAFMAd//EAFMAif/sAFMBiv/TAFQADf/sAFQAIv+NAFQAWP/7AFQAcP/YAFQAd//sAFUABAAUAFUADQAUAFUAEAAPAFUAEf/EAFUAEv/iAFUAHQAZAFUAIv+hAFUARP/sAFUARv/sAFUAR//sAFUASP/sAFUASQAZAFUASv/sAFUAUv/sAFUAVP/sAFUAVgAKAFUAVwAKAFUAWQAtAFUAWgAtAFUAWwAeAFUAXAA8AFUAXQAPAFUAdwAUAFUAiQAeAFUBigAjAFYADf/nAFYAEP/xAFYAEgAoAFYAIv+NAFYAVgAFAFYAWQAKAFYAWgAFAFYAWwAPAFYAXAAKAFYAXQAUAFYAcP/OAFYAd//2AFcABAAZAFcADQAeAFcAEf/OAFcAHQAZAFcAIv/dAFcARP/sAFcARv/sAFcAR//sAFcASP/sAFcASQAKAFcASv/sAFcAUv/sAFcAVP/sAFcAVgAKAFcAVwAKAFcAWQAoAFcAWgAoAFcAWwAKAFcAXAAtAFcAXQAUAFcAdwAUAFcAiQAyAFcBigAjAFgAIv+NAFgAcP/YAFgAd//iAFkABAAPAFkADQAeAFkAEAAKAFkAEf+wAFkAEv/iAFkAIv+rAFkARAAFAFkARgAFAFkARwAFAFkASAAFAFkASgAFAFkAUgAFAFkAVAAFAFkAVgAeAFkAWQAoAFkAWgAoAFkAWwAUAFkAXAAoAFkAXQAZAFkAcAAKAFkAdwAUAFkAiQAyAFkBigA3AFoABAAUAFoADQAeAFoAEAAKAFoAEf+wAFoAEv/nAFoAHQAKAFoAIv+mAFoARAAFAFoARgAFAFoASAAFAFoASgAFAFoAUgAFAFoAVAAFAFoAVgAZAFoAWQAoAFoAWgAtAFoAWwAeAFoAXAAtAFoAXQAUAFoAdwAPAFoAiQAtAFoBigAyAFsABAAKAFsAEP/iAFsAEQAUAFsAEgAeAFsAHQAUAFsAIv+hAFsARP/sAFsARv/sAFsAR//iAFsASP/sAFsASv/sAFsAUv/sAFsAVP/sAFsAVgAKAFsAWP/sAFsAWQAUAFsAWgAeAFsAWwAZAFsAXAAZAFsAXQAZAFsAcP/sAFsAiQAUAFsBigAZAFwABAAKAFwADQAeAFwAEAAPAFwAEf/EAFwAEv/nAFwAIv+mAFwARAAFAFwARgAFAFwARwAFAFwASAAFAFwASgAFAFwAUgAFAFwAVAAFAFwAVgAeAFwAVwAKAFwAWQAoAFwAWgAsAFwAWwAZAFwAXAAoAFwAXQAUAFwAdwAZAFwAiQAtAFwBigAtAF0ABAAPAF0ADQAUAF0AEP/2AF0AEQAUAF0AEgAjAF0AHQAUAF0AIv+mAF0ARP/nAF0ARv/nAF0AR//nAF0ASP/nAF0ASv/nAF0AUv/nAF0AVP/nAF0AVgAFAF0AWP/7AF0AWQAZAF0AWgAjAF0AWwAUAF0AXAAZAF0AXQAUAF0AcP/2AF0Ad//7AF0AiQAZAF0BigAeAGIAFAAjAGIAFwAUAGIAGAAKAGIAGf/2AGIAGv/7AGIAHP/7AGQAFAAeAGQAFv/7AGQAF//YAGQAGP/nAGQAGf/dAGQAGgAZAGQAG//sAG8AIgAUAG8AJP+NAG8AJv/iAG8AKv/iAG8ALQAZAG8AMv/iAG8ANwAeAG8AOQAZAG8AOgAUAG8APAAPAG8ARP+mAG8ARv+mAG8AR/+mAG8ASP+mAG8ASf/2AG8ASv+mAG8AUP/OAG8AUf/OAG8AUv+mAG8AU//OAG8AVP+mAG8AVf/OAG8AVv+wAG8AV//sAG8AWP/OAG8AW//iAG8AXf/sAHAAJ//sAHAAL//sAHAAMP/sAHAAMv/OAHAANf/sAHAANv/sAHAANwAeAHAAOQAUAHAAR/+IAHAAT//sAHAAUP+wAHAAUv+IAHAAVf+wAHAAVv+DAHAAV//TAHAAWf/iAH8AE//2AH8AFAA3AH8AF//xAH8AGP/sAH8AGf/dAH8AGgAKAH8AG//xAH8AHP/7AIEAFAA3AIEAF//TAIEAGP/iAIEAGf/iAIEAGgAtAIEAG//2ALEAPf/OANwAIv+IANwAVv/7ANwAWP/7ANwAWf/7ANwAWv/7ANwAW//7ANwAXP/7ANwAXf/wANwAcP+6ANwAd//EANwAif/2AAEAAAAKAB4ALAABbGF0bgAIAAQAAAAA//8AAQAAAAFrZXJuAAgAAAABAAAAAQAEAAIAAAADAAwkkjcQAAFB+AAEAAAA+AH6AiACQgJ4ArYC7AMuA0ADTgN0A5oDwAPiBAQENgRcBIIErATSBQQFIgVIBYIFpAWqBdgF5gYEBiIGKAZmBpQG0gb0BxIHdAeqB/gIVgh0CPoJJAkuCUQJXgl0CZ4JqAm2CdAJ3gnsCg4KLAo2ClgKbgqMCpIKtArWCvQLFgs4C1ILiAumC9wMEgwwDFYMgAyeDMAM3g0ADT4NfA2SDagNyg5QDnIOjA62DuAPCg80D14PiA+uD+AQBhAsEFIQeBCmENQRAhEwEU4RjBHKEggSRhKEEsIS+BMuE2QTmhQgFE4UWBRiFGwUdhSAFIoUoBS6FNAU5hT8FRIVIBVCFWQVhhWoFcoV7BXyFfgV/hYEFiYWRBZmFmwWfhaQFqIWtBbGFtgW6hb8Fw4XIBdKF1QXfheIF7IXvBfuGAgYOhhUGIYYoBjSGOwZChkoGU4ZZBmKGaAZxhncGgIaGBo+GlQadhqAGqIarBrOGtga+hsEGwobGBseGywbWhuIG7Yb5BvyHBAcLhxMHGociByWHKQcshzAHP4dIB1eHYAdvh3gHgIeJB5GHmgeih6sHsoe4B7+HxQfMh9IH6ofyCAqIIwgqiDgIOYhHCEiIVghXiGUIZoh0CHWIgwiEiJwIpIjGCM6I2QjhiOwI9Ij8CQGJGgACQAUAFUAFQAKABYABQAX/8QAGP/iABn/xAAaAAoAG//7ABwABQAIABQACgAV/+wAFgAUABcAKAAYAA8AGQAFABsACgAc/84ADQAT//YAFP/2ABUADwAXAB4AGAAKABn/9gAaABkAHP+6ADn/fgA7ABQAVP/nAFn/sABbABQADwATAA8AFAAKABX/xAAWABQAFwAtABgACgAZAA8AGv/YABsADwAc/90AOf+6ADv/sABUAAoAWQAKAFv/4gANABP/9gAU//YAFQAPABcAHgAYAAoAGf/2ABoAGQAc/7oAOf9+ADsAFABU/+cAWf+wAFsAFAAQABQAMgAWAAoAF/+/ABj/3QAZ/7UAGgAoABv/8QA5ADIAOwAeAE3/9gBQ/6EAU/+hAFT/iABV/6EAWf/TAFv/sAAEABQAFAAV//sAGv/sABz/+wADABQADwAZ//YAGv/2AAkAEgAUABP/9gAUABQAFv/7ABf/7AAY//EAGf/TABv/7AAc//sACQASAAoAFAAFABX/7AAWAAoAFwAeABgACgAbAAoAHP/iAIv/9gAJABIACgAU//YAFf/2ABYADwAXACgAGAAKABr/7AAc//YAi//xAAgAEgAKABT/9gAV/9gAFwAUABj/+wAa//YAHP+6AIv/4gAIABIACgAU//YAFf/TABcAFAAYAAUAGv/2ABz/ugCL/6YADAAS/78AE//7ABQAHgAVAAoAFgAKABf/tQAY/84AGf+wABoAHgAb//YAHAAKAIsAIwAJABIACgAUAAUAFf/nABYACgAXAB4AGAAKABr/9gAc/+wAi//7AAkAEv/JABQAIwAV//YAFv/2ABf/0wAY/+IAGf/OABr/4gAb/+cACgAEACgADf+mABIAMgAi/7AAOf+6ADsAFABUAAoAWf/2AFsAGQCJ/8QACQAi//YAOQAPADv/7ACJ//YAyQAKAMoADwEXABQBGQAKARsADwAMAAQACgANABQAEgAeACIABQA5ABkAOwAFAIn/7ADHADIAygAUARcACgEZAAoBGwAoAAcABP/2ABL/4gAi/8kAOf/xADv/xABL//YAVf/2AAkAEgAUACL/+wA5AA8AOwAPAFT/7ABZAAUAWwAFAMcADwEbAA8ADgAEAA8ADQAZABL/xAAiAAoAOQAUADsACgBV//YAiQAKAMcAKADJAAoAygAeARcADwEZABQBGwAoAAgADf/sABL/4gAi/5cAOf/TADv/0wBL//YAT//2AFX/9gABAFn/9gALAEX/9gBL//YATf/2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/8QBb//EAAwAS/+wAO//xAFX/9gAHAAQAFAAN/+wAEgAtACL/7AA7ADIAWf/OAIn/vwAHAAQAGQAN/5IAEgAjACL/oQA5/5IAOwAZAIn/agABAFX/9gAPABL/4gAi/8kAOf/sADv/yQBF//sAS//7AE3/+wBO//sAT//7AFD/+wBT//sAVP/xAFX/+wBZABQAW//2AAsADQAUABL/tQA5AAoAO//sAE3/9gBV/+wAyQAZAMoAGQEXAB4BGQAUARsACgAPABIABQAi/8kAOf/sADv/yQBF//sAS//7AE3/+wBO//sAT//7AFD/+wBT//sAVP/xAFX/+wBZABQAW//2AAgAEgAeACL/+wA5AAoAOwAKAMkAFADKABQBFwAUARkAFAAHAAT/+wAN//YAEgAUACL/8QCJ/+cAxwAKARsACgAYAAQAFAANACMAEv+rACIAFAA5ABQAOwAPAFX/qwB4/+IAe//7AIn/8QDHADcAyP/JAMkAGQDKACMA1P+6ANf/sADa/8kBFwAeARkAHgEbADIBH/+rATb/xAFJ/+IBV/+6AA0AEv/sACL/+wA7//EARf/2AEv/9gBO//YAT//2AFD/9gBT//YAVP/2AFX/9gBZ//YAW//iABMABAAPAA0AHgAS/7AAIgAZADkAKAA7AB4AVf+6AHj/+wB7//EAif/7AMcAIwDI/84AyQAeAMoAHgEXABkBGQAPARsAMgEf/7oBSf/JABcABAAPAA0AIwAS/6sAEwABACIAGQA5AB4AOwAeAEv/9gBQ/78AVf+/AHv/+wC7/6sAw/+rAMcAHgDI/8QAyQAUAMoAHgEXAB4BGQAUARsALQEf/78BNv+wAU//2AAHAA0ACgASAB4AOQAeADsAFACJ/+IAxwAjARsAGQAhAAQACgANABQAEv+hACIACgA5ACgAOwAPAFP/lwBV/5cAWf+/AHj/9gB7/+cAif/sALv/nADD/6EAxwAoAMj/ugDJAAoAygAKAM3/pgDU/7AA1/+XANr/ugD7/6EBA/+IAQn/oQEbACgBH/+XATb/vwE9/4gBSf/EAVP/lwFV/4QBWf+cAAoABAAKAA3/+wASABkAIv/7ADkAFAA7ABQAS//7AIn/3QDHACMBGwAPAAIADf/sACL/kgAFAA3/ugAi/4gAWQAFAFv/4gCJ/+wABgAEAAUADf/sACL/jQBU/+IAWQAeAFsACgAFAA3/ugAi/5IAWQAKAFv/7ACJ/+cACgAEAAoADQAjABL/7AAiABQAVP/sAFkAKABbABQAiQAjAMcAIwDKABkAAgAN//EAIv+XAAMADf+6ACL/jQCJ/+cABgAEAAoAEgAyACL/sABU/90AWQAUAFsAHgADAA3/ugAi/40Aif/nAAMADf+6ACL/jQCJ/+cACAAE//YADf+mAA//5wAe//EAIv+IAFkABQBb/+wAif/nAAcABP/2AA3/sAAP/+cAHv/xACL/iABZAAUAif/sAAIADf/sACL/jQAIAAQAFAANABQAEv/iACL/oQBU/+wAWQAtAFsAHgCJAB4ABQAN/+cAEgAoACL/jQBZAAoAWwAPAAcABAAZAA0AHgAi/90AVP/sAFkAKABbAAoAiQAyAAEAIv+NAAgABAAPAA0AHgAS/+IAIv+rAFQABQBZACgAWwAUAIkAMgAIAAQAFAANAB4AEv/nACL/pgBUAAUAWQAoAFsAHgCJAC0ABwAEAAoAEgAeACL/oQBU/+wAWQAUAFsAGQCJABQACAAEAAoADQAeABL/5wAi/6YAVAAFAFkAKABbABkAiQAtAAgABAAPAA0AFAASACMAIv+mAFT/5wBZABkAWwAUAIkAGQAGABQAIwAXABQAGAAKABn/9gAa//sAHP/7AA0AE//2ABT/9gAVAA8AFwAeABgACgAZ//YAGgAZABz/ugA5/34AOwAUAFT/5wBZ/7AAWwAUAAcAFAAeABb/+wAX/9gAGP/nABn/3QAaABkAG//sAA0AE//2ABT/9gAVAA8AFwAeABgACgAZ//YAGgAZABz/ugA5/34AOwAUAFT/5wBZ/7AAWwAUAA0AE//2ABT/9gAVAA8AFwAeABgACgAZ//YAGgAZABz/ugA5/34AOwAUAFT/5wBZ/7AAWwAUAAcABP/7AA3/9gASABQAIv/xAIn/5wDHAAoBGwAKAAkAEgAUACL/+wA5AA8AOwAPAFT/7ABZAAUAWwAFAMcADwEbAA8ACgAEAAoADf/7ABIAGQAi//sAOQAUADsAFABL//sAif/dAMcAIwEbAA8ABwAiABQAOQAZAFD/zgBT/84AVP+mAFX/zgBb/+IACAAn/+wAL//sADX/7AA5ABQAT//sAFD/sABV/7AAWf/iAAcAIgAUADkAGQBQ/84AU//OAFT/pgBV/84AW//iAAgAJ//sAC//7AA1/+wAOQAUAE//7ABQ/7AAVf+wAFn/4gAPABMADwAUAAoAFf/EABYAFAAXAC0AGAAKABkADwAa/9gAGwAPABz/3QA5/7oAO/+wAFQACgBZAAoAW//iAA8AEwAPABQACgAV/8QAFgAUABcALQAYAAoAGQAPABr/2AAbAA8AHP/dADn/ugA7/7AAVAAKAFkACgBb/+IABQAN/+cAEgAoACL/jQBZAAoAWwAPAAUADf+6ACL/kgBZAAoAW//sAIn/5wAIAAQADwANABQAEgAjACL/pgBU/+cAWQAZAFsAFACJABkAIQAEAAoADQAUABL/oQAiAAoAOQAoADsADwBT/5cAVf+XAFn/vwB4//YAe//nAIn/7AC7/5wAw/+hAMcAKADI/7oAyQAKAMoACgDN/6YA1P+wANf/lwDa/7oA+/+hAQP/iAEJ/6EBGwAoAR//lwE2/78BPf+IAUn/xAFT/5cBVf+EAVn/nAAIABP/9gAUADcAF//xABj/7AAZ/90AGgAKABv/8QAc//sABgAUADcAF//TABj/4gAZ/+IAGgAtABv/9gAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAAJABIAFAAi//sAOQAPADsADwBU/+wAWQAFAFsABQDHAA8BGwAPAAwABAAKAA0AFAASAB4AIgAFADkAGQA7AAUAif/sAMcAMgDKABQBFwAKARkACgEbACgACQASABQAIv/7ADkADwA7AA8AVP/sAFkABQBbAAUAxwAPARsADwAJABIAFAAi//sAOQAPADsADwBU/+wAWQAFAFsABQDHAA8BGwAPAAkAEgAUACL/+wA5AA8AOwAPAFT/7ABZAAUAWwAFAMcADwEbAA8ACQASABQAIv/7ADkADwA7AA8AVP/sAFkABQBbAAUAxwAPARsADwALAEX/9gBL//YATf/2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/8QBb//EACwBF//YAS//2AE3/9gBO//YAT//2AFD/9gBT//YAVP/2AFX/9gBZ//EAW//xAAsARf/2AEv/9gBN//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/xAFv/8QALAEX/9gBL//YATf/2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/8QBb//EABwAE//YAEv/iACL/yQA5//EAO//EAEv/9gBV//YADwAS/+IAIv/JADn/7AA7/8kARf/7AEv/+wBN//sATv/7AE//+wBQ//sAU//7AFT/8QBV//sAWQAUAFv/9gAPABL/4gAi/8kAOf/sADv/yQBF//sAS//7AE3/+wBO//sAT//7AFD/+wBT//sAVP/xAFX/+wBZABQAW//2AA8AEv/iACL/yQA5/+wAO//JAEX/+wBL//sATf/7AE7/+wBP//sAUP/7AFP/+wBU//EAVf/7AFkAFABb//YADwAS/+IAIv/JADn/7AA7/8kARf/7AEv/+wBN//sATv/7AE//+wBQ//sAU//7AFT/8QBV//sAWQAUAFv/9gAPABL/4gAi/8kAOf/sADv/yQBF//sAS//7AE3/+wBO//sAT//7AFD/+wBT//sAVP/xAFX/+wBZABQAW//2AA8AEv/iACL/yQA5/+wAO//JAEX/+wBL//sATf/7AE7/+wBP//sAUP/7AFP/+wBU//EAVf/7AFkAFABb//YADQAS/+wAIv/7ADv/8QBF//YAS//2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/9gBb/+IADQAS/+wAIv/7ADv/8QBF//YAS//2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/9gBb/+IADQAS/+wAIv/7ADv/8QBF//YAS//2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/9gBb/+IADQAS/+wAIv/7ADv/8QBF//YAS//2AE7/9gBP//YAUP/2AFP/9gBU//YAVf/2AFn/9gBb/+IAIQAEAAoADQAUABL/oQAiAAoAOQAoADsADwBT/5cAVf+XAFn/vwB4//YAe//nAIn/7AC7/5wAw/+hAMcAKADI/7oAyQAKAMoACgDN/6YA1P+wANf/lwDa/7oA+/+hAQP/iAEJ/6EBGwAoAR//lwE2/78BPf+IAUn/xAFT/5cBVf+EAVn/nAALAA0AFAAS/7UAOQAKADv/7ABN//YAVf/sAMkAGQDKABkBFwAeARkAFAEbAAoAAgAN/+wAIv+SAAIADf/sACL/kgACAA3/7AAi/5IAAgAN/+wAIv+SAAIADf/sACL/kgACAA3/7AAi/5IABQAN/7oAIv+SAFkACgBb/+wAif/nAAYABAAFAA3/7AAi/40AVP/iAFkAHgBbAAoABQAN/7oAIv+SAFkACgBb/+wAif/nAAUADf+6ACL/kgBZAAoAW//sAIn/5wAFAA3/ugAi/5IAWQAKAFv/7ACJ/+cABQAN/7oAIv+SAFkACgBb/+wAif/nAAMADf+6ACL/jQCJ/+cACAAE//YADf+mAA//5wAe//EAIv+IAFkABQBb/+wAif/nAAgABP/2AA3/pgAP/+cAHv/xACL/iABZAAUAW//sAIn/5wAIAAT/9gAN/6YAD//nAB7/8QAi/4gAWQAFAFv/7ACJ/+cACAAE//YADf+mAA//5wAe//EAIv+IAFkABQBb/+wAif/nAAgABP/2AA3/pgAP/+cAHv/xACL/iABZAAUAW//sAIn/5wAIAAT/9gAN/6YAD//nAB7/8QAi/4gAWQAFAFv/7ACJ/+cAAQAi/40AAQAi/40AAQAi/40AAQAi/40ACAAEAAoADQAeABL/5wAi/6YAVAAFAFkAKABbABkAiQAtAAcABP/2AA3/sAAP/+cAHv/xACL/iABZAAUAif/sAAgABAAKAA0AHgAS/+cAIv+mAFQABQBZACgAWwAZAIkALQABAFX/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAEACL/iABZ//sAW//7AIn/9gAKAAQAKAAN/6YAEgAyACL/sAA5/7oAOwAUAFQACgBZ//YAWwAZAIn/xAACAA3/7AAi/5IACgAEACgADf+mABIAMgAi/7AAOf+6ADsAFABUAAoAWf/2AFsAGQCJ/8QAAgAN/+wAIv+SAAoABAAoAA3/pgASADIAIv+wADn/ugA7ABQAVAAKAFn/9gBbABkAif/EAAIADf/sACL/kgAMAAQACgANABQAEgAeACIABQA5ABkAOwAFAIn/7ADHADIAygAUARcACgEZAAoBGwAoAAYABAAFAA3/7AAi/40AVP/iAFkAHgBbAAoADAAEAAoADQAUABIAHgAiAAUAOQAZADsABQCJ/+wAxwAyAMoAFAEXAAoBGQAKARsAKAAGAAQABQAN/+wAIv+NAFT/4gBZAB4AWwAKAAwABAAKAA0AFAASAB4AIgAFADkAGQA7AAUAif/sAMcAMgDKABQBFwAKARkACgEbACgABgAEAAUADf/sACL/jQBU/+IAWQAeAFsACgAMAAQACgANABQAEgAeACIABQA5ABkAOwAFAIn/7ADHADIAygAUARcACgEZAAoBGwAoAAYABAAFAA3/7AAi/40AVP/iAFkAHgBbAAoABwAE//YAEv/iACL/yQA5//EAO//EAEv/9gBV//YABwAE//YAEv/iACL/yQA5//EAO//EAEv/9gBV//YACQASABQAIv/7ADkADwA7AA8AVP/sAFkABQBbAAUAxwAPARsADwAFAA3/ugAi/5IAWQAKAFv/7ACJ/+cACQASABQAIv/7ADkADwA7AA8AVP/sAFkABQBbAAUAxwAPARsADwAFAA3/ugAi/5IAWQAKAFv/7ACJ/+cACQASABQAIv/7ADkADwA7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AEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQANABL/7AAi//sAO//xAEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQANABL/7AAi//sAO//xAEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQANABL/7AAi//sAO//xAEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQANABL/7AAi//sAO//xAEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQANABL/7AAi//sAO//xAEX/9gBL//YATv/2AE//9gBQ//YAU//2AFT/9gBV//YAWf/2AFv/4gABACL/jQAXAAQADwANACMAEv+rABMAAQAiABkAOQAeADsAHgBL//YAUP+/AFX/vwB7//sAu/+rAMP/qwDHAB4AyP/EAMkAFADKAB4BFwAeARkAFAEbAC0BH/+/ATb/sAFP/9gACAAEABQADQAeABL/5wAi/6YAVAAFAFkAKABbAB4AiQAtACEABAAKAA0AFAAS/6EAIgAKADkAKAA7AA8AU/+XAFX/lwBZ/78AeP/2AHv/5wCJ/+wAu/+cAMP/oQDHACgAyP+6AMkACgDKAAoAzf+mANT/sADX/5cA2v+6APv/oQED/4gBCf+hARsAKAEf/5cBNv+/AT3/iAFJ/8QBU/+XAVX/hAFZ/5wACAAEAAoADQAeABL/5wAi/6YAVAAFAFkAKABbABkAiQAtAAoABAAKAA3/+wASABkAIv/7ADkAFAA7ABQAS//7AIn/3QDHACMBGwAPAAgABAAPAA0AFAASACMAIv+mAFT/5wBZABkAWwAUAIkAGQAKAAQACgAN//sAEgAZACL/+wA5ABQAOwAUAEv/+wCJ/90AxwAjARsADwAIAAQADwANABQAEgAjACL/pgBU/+cAWQAZAFsAFACJABkABwAE//sADf/2ABIAFAAi//EAif/nAMcACgEbAAoABQAN/+cAEgAoACL/jQBZAAoAWwAPABgABAAUAA0AIwAS/6sAIgAUADkAFAA7AA8AVf+rAHj/4gB7//sAif/xAMcANwDI/8kAyQAZAMoAIwDU/7oA1/+wANr/yQEXAB4BGQAeARsAMgEf/6sBNv/EAUn/4gFX/7oABwAEABkADQAeACL/3QBU/+wAWQAoAFsACgCJADIAAR5sAAQAAAAYADoClAK2AuAC9gMAAyoDQANqA4ADqgO0BRoHkAfGChgMKgysDfYPMA+eD9wRDhJsAJYAJP+6ACb/4gAq/+IALQAjADL/4gA0/+IANgAUADcANwA6AC0APAAoAD0AFABE/4gARv+IAEf/iABI/4gASv+IAEz/9gBR/6EAUv+IAFb/qwBX/9gAWP+mAFr/0wBc/8kAXf/EAGsAFABt/+IAbgAUAHj/qwB6/4gAe//EAHwAKACb/7oAnP+6AJ3/ugCe/7oAn/+6AKD/ugCi/+IArf/iAK7/4gCv/+IAsP/iALH/4gCz/+IAuAAoALv/iAC8/4gAvf+IAL7/iAC//4gAwP+IAML/iADD/4gAxP+IAMX/iADG/4gAx//2AMj/9gDJ//YAyv/2AMv/iADM/6EAzf+IAM7/iADP/4gA0P+IANH/iADT/4gA1P+mANX/pgDW/6YA1/+mANj/yQDa/8kA7v+6AO//iADw/7oA8f+IAPL/ugDz/4gA9P/iAPX/iAD2/+IA9/+IAPj/4gD5/4gA+v/iAPv/iAD9/4gA//+IAQH/iAED/4gBBf+IAQf/iAEJ/4gBCv/iAQv/iAEM/+IBDf+IAQ7/4gEP/4gBEP/iARH/iAEX//YBGf/2ARv/9gEd//YBH//2ASIAIwEq//YBMv+hATT/oQE2/6EBOf+hATr/4gE7/4gBPP/iAT3/iAE+/+IBP/+IAUYAFAFH/6sBSAAUAUn/qwFKABQBS/+rAUwANwFN/9gBTgA3AVAANwFR/9gBU/+mAVX/pgFX/6YBWf+mAVv/pgFd/6YBXgAtAV//0wFgACgBYf/JAWIAFAFj/8QBZAAUAWX/xAFnABQBaP+rAWkANwFq/9gACAAP//YAEAAPABH/9gBj//YAZf/2AGb/9gB0AA8AdQAPAAoACP/7AA8ADwAQ/84AEQAPAGMADwBlAA8AZgAPAGr/+wB0/84Adf/OAAUACP/nABAABQBq/+cAdAAFAHUABQACAAj/8QBq//EACgAI/9MAD//2ABAACgAR//YAY//2AGX/9gBm//YAav/TAHQACgB1AAoABQAI/7UAEAAPAGr/tQB0AA8AdQAPAAoACAAeAA//iAAQ/78AEf+IAGP/iABl/4gAZv+IAGoAHgB0/78Adf+/AAUACP/sABAADwBq/+wAdAAPAHUADwAKAAgABQAP/6sAEP/nABH/qwBj/6sAZf+rAGb/qwBqAAUAdP/nAHX/5wACAHAAFAByABQAWQAP//YAEf/2AB3/9gAe//YAJAAKACb/7AAq/+wALf/iADL/7AA0/+wANv/sADf/4gA4//sAOgAUADwABQA9//EAWP/7AGP/9gBl//YAZv/2AGv/7ABt/+wAbv/xAHf/7AB8AAUAmwAKAJwACgCdAAoAngAKAJ8ACgCgAAoAov/sAK3/7ACu/+wAr//sALD/7ACx/+wAs//sALT/+wC1//sAtv/7ALf/+wC4AAUA1P/7ANX/+wDW//sA1//7AOv/9gDt/+wA7gAKAPAACgDyAAoA9P/sAPb/7AD4/+wA+v/sAQr/7AEM/+wBDv/sARD/7AEi/+IBOv/sATz/7AE+/+wBRv/sAUj/7AFK/+wBTP/iAU7/4gFQ/+IBUv/7AVP/+wFU//sBVf/7AVb/+wFX//sBWP/7AVn/+wFa//sBW//7AVz/+wFd//sBXgAUAWAABQFi//EBZP/xAWf/7AFp/+IBiv/2AJ0AD/9vABH/bwAk/84AJv/sACr/7AAtABQAMv/sADT/7AA2//EANwAPADj/+gA6ABQAPAAeAD0ACgBE/90ARv/nAEf/5wBI/90ATP/2AFH/9gBS/90AVv/2AFf/+wBY//EAWgAKAFwADwBj/28AZf9vAGb/bwBr//EAbf/sAG4ACgBwAAoAcgAKAHcAIwB4//YAev/dAHwAHgCb/84AnP/OAJ3/zgCe/84An//OAKD/zgCi/+wArf/sAK7/7ACv/+wAsP/sALH/7ACz/+wAtP/6ALX/+gC2//oAt//6ALgAHgC7/90AvP/dAL3/3QC+/90Av//dAMD/3QDC/+cAw//dAMT/3QDF/90Axv/dAMj/9gDL/+cAzP/2AM3/3QDO/90Az//dAND/3QDR/90A0//dANT/8QDV//EA1v/xANf/8QDYAA8A2gAPAOsAFADtACMA7v/OAO//3QDw/84A8f/dAPL/zgDz/90A9P/sAPX/5wD2/+wA9//nAPj/7AD5/+cA+v/sAPv/5wD9/+cA///nAQH/3QED/90BBf/dAQf/3QEJ/90BCv/sAQz/7AEO/+wBEP/sAR3/9gEf//YBIgAUASr/9gEy//YBNP/2ATb/9gE5//YBOv/sATv/3QE8/+wBPf/dAT7/7AE//90BRv/xAUf/9gFI//EBSf/2AUr/8QFL//YBTAAPAU3/+wFOAA8BUAAPAVH/+wFS//oBU//xAVT/+gFV//EBVv/6AVf/8QFY//oBWf/xAVr/+gFb//EBXP/6AV3/8QFeABQBXwAKAWAAHgFhAA8BYgAKAWQACgFn//EBaP/2AWkADwFq//sBigAUAA0AD//iABH/4gAd//YAHv/2AC3/0wA9/90AY//iAGX/4gBm/+IAbv/dASL/0wFi/90BZP/dAJQAD/9+ABD/ugAR/34AHf+6AB7/ugAk/7oAJv/sACr/7AAy/+wANP/sADYADwA3ABQAOgAeADwAKAA9ABQARP+6AEb/ugBH/7oASP+6AEz/9gBR/7AAUv+6AFb/zgBX/9gAWP+6AFr/2ABc/+cAXf/EAGP/fgBl/34AZv9+AGsADwBt/+wAbgAUAHAADwByAA8AdP+6AHX/ugB3AC0Aev+6AHwAKACb/7oAnP+6AJ3/ugCe/7oAn/+6AKD/ugCi/+wArf/sAK7/7ACv/+wAsP/sALH/7ACz/+wAuAAoALv/ugC8/7oAvf+6AL7/ugC//7oAwP+6AML/ugDD/7oAxP+6AMX/ugDG/7oAy/+6AMz/sADN/7oAzv+6AM//ugDQ/7oA0f+6ANP/ugDU/7oA1f+6ANb/ugDX/7oA2P/nANr/5wDrAB4A7QAtAO7/ugDv/7oA8P+6APH/ugDy/7oA8/+6APT/7AD1/7oA9v/sAPf/ugD4/+wA+f+6APr/7AD7/7oA/f+6AP//ugEB/7oBA/+6AQX/ugEH/7oBCf+6AQr/7AEM/+wBDv/sARD/7AEd//YBKv/2ATL/sAE0/7ABNv+wATn/sAE6/+wBO/+6ATz/7AE9/7oBPv/sAT//ugFGAA8BR//OAUgADwFKAA8BS//OAUwAFAFN/9gBTgAUAVAAFAFR/9gBU/+6AVX/ugFX/7oBWf+6AVv/ugFd/7oBXgAeAV//2AFgACgBYf/nAWIAFAFj/8QBZAAUAWX/xAFnAA8BaP/OAWkAFAFq/9gBigAeAIQADwAUABD/sAARABQAHQAUAB4AFAAkABQAJv/JACr/yQAtABQAMv/JADT/yQA3AAoAOP/xADoAHgA8AA8APQAZAET/7ABI/+wATP/7AFL/7ABY/+wAXP/dAGMAFABlABQAZgAUAG3/yQBuABkAcP/2AHL/9gB0/7AAdf+wAHcAIwB6/+wAfAAPAJsAFACcABQAnQAUAJ4AFACfABQAoAAUAKL/yQCt/8kArv/JAK//yQCw/8kAsf/JALP/yQC0//EAtf/xALb/8QC3//EAuAAPALv/7AC8/+wAvf/sAL7/7AC//+wAwP/sAMP/7ADE/+wAxf/sAMb/7ADI//sAyf/7AMr/+wDN/+wAzv/sAM//7ADQ/+wA0f/sANP/7ADU/+wA1f/sANb/7ADX/+wA2P/dANr/3QDrAAUA7QAjAO4AFADv/+wA8AAUAPH/7ADyABQA8//sAPT/yQD2/8kA+P/JAPr/yQEB/+wBA//sAQX/7AEH/+wBCf/sAQr/yQEM/8kBDv/JARD/yQEX//sBGf/7AR3/+wEf//sBIgAUASr/+wE6/8kBO//sATz/yQE9/+wBPv/JAT//7AFMAAoBTgAKAVAACgFS//EBU//sAVT/8QFV/+wBVv/xAVf/7AFY//EBWf/sAVr/8QFb/+wBXP/xAV3/7AFeAB4BYAAPAWH/3QFiABkBZAAZAWkACgGKAAUAIAAP/+wAEAAKABH/7AAd//YAHv/2AFb/9gBaAAUAXAAFAF3/4gBj/+wAZf/sAGb/7ABw/7AAcv+wAHQACgB1AAoAd/+6AHj/9gB7/+IA2AAFANoABQDr/84A7f+6AUf/9gFJ//YBS//2AV8ABQFhAAUBY//iAWX/4gFo//YBiv/OAFIAD//EABH/xAAdABQAHgAUAET/7ABG/+wAR//sAEj/7ABJAB4ASv/sAFL/7ABWAAUAVwAKAFoAKABcACMAXQAZAGP/xABl/8QAZv/EAHAAFAByABQAdwAoAHgABQB6/+wAewAZALv/7AC8/+wAvf/sAL7/7AC//+wAwP/sAML/7ADD/+wAxP/sAMX/7ADG/+wAy//sAM3/7ADO/+wAz//sAND/7ADR/+wA0//sANgAIwDaACMA6wAtAO0AKADv/+wA8f/sAPP/7AD1/+wA9//sAPn/7AD7/+wA/f/sAP//7AEB/+wBA//sAQX/7AEH/+wBCf/sAQv/7AEN/+wBD//sARH/7AE7/+wBPf/sAT//7AFHAAUBSQAF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2ADpAPwBCwESARkBHwElASwBMwE5AT8BSgFVAV8BaQFvAXUBewGBAYcBjQGUAZsBoQGnAbEBuwHCAckBzwHVAeAB6wHxAfcCAQILAhcCIwIuAjkCPQJBAkcCTQJUAlsCYQJnAm4CdQJ/AoECgwKOApkCpQKxAr0CwwLJAtUC4QLnAu0C8QL1AvsDAQMNAxkDHwMlAzADMwM2Az0DRANKA1ADXQNqA3ADdgOCA44DlAOaA6ADpgOxA7wDxAPMA9gD5APqA/AD9AP4A/4EBAQLBBIEGAQeBCMEKAQ1BEIESQRQBFsEZgRxBHwEggSIBJIEnAShBK0EuQTABMcEzgTTBNgE2gTjBOwE8wT+BQcFEgUZBSIFKQUwBTcFPwVHBVIFWgVjBW8FdgV9BcgF1S5udWxsQ1JFdXJvTS5hbHQwMWEuYWx0MDFhYWN1dGUuYWx0MDFhYnJldmUuYWx0MDFhY2lyY3VtZmxleC5hbHQwMWFkaWVyZXNpcy5hbHQwMWFncmF2ZS5hbHQwMWFtYWNyb24uYWx0MDFhb2dvbmVrLmFsdDAxYXJpbmcuYWx0MDFhdGlsZGUuYWx0MDFjb21tYWFjY2VudGZvdXIuYWx0MDFmb3VyaW5mZXJpb3IuYWx0MDFmb3Vyc3VwZXJpb3IuYWx0MDFvbmVxdWFydGVyLmFsdDAxc2VydmljZW1hcmsuYWx0MDF0aHJlZXF1YXJ0ZXJzLmFsdDAxdHJhZGVtYXJrLmFsdDAxQW1hY3JvbmFtYWNyb25BYnJldmVhYnJldmVBb2dvbmVrYW9nb25la0NhY3V0ZWNhY3V0ZUNjaXJjdW1mbGV4Y2NpcmN1bWZsZXhDZG90YWNjZW50Y2RvdGFjY2VudENjYXJvbmNjYXJvbkRjYXJvbmRjYXJvbkRjcm9hdGRjcm9hdEVtYWNyb25lbWFjcm9uRWJyZXZlZWJyZXZlRWRvdGFjY2VudGVkb3RhY2NlbnRFb2dvbmVrZW9nb25la0VjYXJvbmVjYXJvbkdjaXJjdW1mbGV4Z2NpcmN1bWZsZXhHYnJldmVnYnJldmVHZG90YWNjZW50Z2RvdGFjY2VudEdjb21tYWFjY2VudGdjb21tYWFjY2VudEhjaXJjdW1mbGV4aGNpcmN1bWZsZXhIYmFyaGJhckl0aWxkZWl0aWxkZUltYWNyb25pbWFjcm9uSWJyZXZlaWJyZXZlSW9nb25la2lvZ29uZWtJZG90YWNjZW50SUppakpjaXJjdW1mbGV4amNpcmN1bWZsZXhLY29tbWFhY2NlbnRrY29tbWFhY2NlbnRrZ3JlZW5sYW5kaWNMYWN1dGVsYWN1dGVMY29tbWFhY2NlbnRsY29tbWFhY2NlbnRMY2Fyb25sY2Fyb25MZG90bGRvdE5hY3V0ZW5hY3V0ZU5jb21tYWFjY2VudG5jb21tYWFjY2VudE5jYXJvbm5jYXJvbm5hcG9zdHJvcGhlRW5nZW5nT21hY3Jvbm9tYWNyb25PYnJldmVvYnJldmVPaHVuZ2FydW1sYXV0b2h1bmdhcnVtbGF1dFJhY3V0ZXJhY3V0ZVJjb21tYWFjY2VudHJjb21tYWFjY2VudFJjYXJvbnJjYXJvblNhY3V0ZXNhY3V0ZVNjaXJjdW1mbGV4c2NpcmN1bWZsZXhTY2VkaWxsYXNjZWRpbGxhVGNvbW1hYWNjZW50dGNvbW1hYWNjZW50VGNhcm9udGNhcm9uVGJhcnRiYXJVdGlsZGV1dGlsZGVVbWFjcm9udW1hY3JvblVicmV2ZXVicmV2ZVVyaW5ndXJpbmdVaHVuZ2FydW1sYXV0dWh1bmdhcnVtbGF1dFVvZ29uZWt1b2dvbmVrV2NpcmN1bWZsZXh3Y2lyY3VtZmxleFljaXJjdW1mbGV4eWNpcmN1bWZsZXhaYWN1dGV6YWN1dGVaZG90YWNjZW50emRvdGFjY2VudGxvbmdzU2NvbW1hYWNjZW50c2NvbW1hYWNjZW50dW5pMDIxQXVuaTAyMUJ1bmkwMkM5RGVsdGFPbWVnYXBpYWZpaTAwMjA4YWZpaTYxMzUydW5pMjExN3NlcnZpY2VtYXJrZXN0aW1hdGVkcGFydGlhbGRpZmZwcm9kdWN0c3VtbWF0aW9udW5pMjIxNXVuaTIyMTlyYWRpY2FsaW5maW5pdHlpbnRlZ3JhbGFwcHJveGVxdWFsbm90ZXF1YWxsZXNzZXF1YWxncmVhdGVyZXF1YWxsb3plbmdldW5pRjEwMkNvcHlyaWdodCAoYykgMjAxMSBieSBJbnRlcm5hdGlvbmFsIFR5cGVGb3VuZGVycywgSW5jLiBBbGwgcmlnaHRzIHJlc2VydmVkLkd1aWxkZm9yZCBQcm8AsgIAAQAR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'); -} - - diff --git a/app/static/css/style.scss b/app/static/css/style.scss deleted file mode 100644 index c041651..0000000 --- a/app/static/css/style.scss +++ /dev/null @@ -1,692 +0,0 @@ -.product-con .conter img { - width: 750rpx!important; - height: unset!important -} - -.product-con .wrapper { - background-color: #fff; - padding: 30rpx 24rpx; - margin-top: 30rpx; -} - -.product-con .wrapper .share { - // margin: 0 30rpx; - // padding-top: 25rpx -} - -.product-con .wrapper .share .money { - font-size: 28rpx; - font-weight: 700 -} - -.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: #999; - font-size: 36rpx; - margin-bottom: 10rpx -} - -.product-con .wrapper .introduce { - font-size: 32rpx; - font-weight: 700; - margin: 16rpx 0 26rpx 0; -} - -.product-con .wrapper .label { - // margin-bottom: 40rpx; - font-size: 24rpx; - color: #82848f; -} - -.product-con .wrapper .coupon { - // height: 80rpx; - margin-top: 40rpx; - 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 #E93323; - color: #E93323; - font-size: 24rpx; - // line-height: 40rpx; - position: relative; - margin-left: 4rpx; -} - -.product-con .wrapper .coupon .activityBox { - margin-left: 4rpx; -} - -.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: -3rpx; - margin-bottom: -6rpx; - 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: -3rpx; - bottom: 50%; - margin-bottom: -6rpx; - border-right-color: #fff -} - -.product-con .wrapper .coupon .iconfont { - color: #7a7a7a; - font-size: 24rpx -} - -.product-con .attribute { - background-color: #fff; - padding: 0 24rpx; - font-size: 26rpx; - color: #82848f; - height: 80rpx -} - -.product-con .attribute .atterTxt { - font-size: 28rpx; - color: #282828; - margin-left: 4rpx; -} - -.product-con .attribute .iconfont { - font-size: 24rpx; - color: #7a7a7a -} - -.product-con .userEvaluation { - // padding: 0 30rpx; -} - -.product-con .userEvaluation i{ - font-style: normal; - margin-left: 8rpx; - font-size: 24rpx; - color: #999999; -} - -.product-con .userEvaluation .title { - height: 86rpx; - background-color: #fff; - font-size: 28rpx; - color: #282828; - padding: 0 24rpx; - border-top-left-radius: 14rpx; - border-top-right-radius: 14rpx; -} - -.product-con .userEvaluation .title .praise { - font-size: 28rpx; - color: grey -} - -.product-con .userEvaluation .title .praise .iconfont { - color: #7a7a7a; - font-size: 24rpx; - vertical-align: 1rpx; - margin-left: 8rpx -} - -.product-con .product-intro { - position: relative; - // margin-top: 20rpx; - width: 100%; - overflow: hidden; -} -.product-con .product-intro image { - width: 20rpx; - height: 20rpx; -} -.product-con .product-intro .title { - font-size: 30rpx; - color: #282828; - height: 102rpx; - width: 100%; - text-align: center; - line-height: 102rpx -} -.product-con .product-intro .title .sp{ - margin: 0 14rpx; -} - -.product-con .product-intro .conter { - width: 100%; - word-wrap: break-word; -} - -.product-con .product-intro .conter image { - width: 100%!important; - display: block!important -} - -.goodsStyle { - margin-top: 20rpx; - background-color: #fff; - padding: 25rpx 24rpx; -} - -.goodsStyle .pictrue { - width: 120rpx; - height: 120rpx -} - -.goodsStyle .pictrue image { - width: 100%; - height: 100%; - border-radius: 6rpx -} - -.goodsStyle .text { - width: 500rpx; - font-size: 28rpx; - color: #333333 -} - -.goodsStyle .text .name, .attr { - width: 360rpx; - color: #282828; - height: 2; -} - -.goodsStyle .text .money { - text-align: right; - color: #999999; - font-size: 28rpx; -} - -.goodsStyle .text .money .num { - margin-top: 7rpx -} - -.goodWrapper .item { - // padding: 0 24rpx; - border-bottom: 2rpx solid #f0f0f0; - height: 180rpx -} - -.goodWrapper .item .pictrue { - width: 130rpx; - height: 130rpx -} - -.goodWrapper .item .pictrue image { - width: 100%; - height: 100%; - border-radius: 14rpx -} - -.goodWrapper .item .text { - width: 490rpx; - position: relative -} - -.goodWrapper .item .text .name { - font-size: 28rpx; - color: #282828; - width: 445rpx; -} - -.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:58rpx 60rpx 0 60rpx;box-sizing:border-box;font-size:28rpx;color:#fff;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAtYAAADECAYAAAC7kWZ/AAANEklEQVR4nO3dC3PbxhUGUDxISnJa1/n/f9J10ri2JaGDZpHABCmBIB672HNmMMpADimBAvjx4u5u2TRNAQAA/KUMWxW+Fr195dm+7uvrwfEDACAT/bBcXQjQ/dB8M8EaAIA96YJyfzuvPi9CsAYAIEVtSK6vhOhNCNYAAMSuOgvR9ZYB+hrBGgCAmHSV6DrmEH2JYA0AwJaqXpDuwnSSBGsAANZUhQxap1SNHkOwBgBgSWUvSB/2FKTPCdYAAMytC9GHlFs7biVYAwBwr64qfdhbe8ctBGsAAKaozsJ09gRrAADGEqbfIFgDAPCWtq3jKEy/T7AGAOBc1zN9FKbHE6wBAOgceluWAxDvIVgDAOStCpXpozB9H8EaACBPh17vNDNwIAEA8tFWpE+q08sQrAEA9q8OgVr2W5CDCwCwX8cQqLNZVnxLgjUAwL6UvUCt3WNFgjUAwD5UvXYPgXoDgjUAQNraQP0g123PCwAAkCYDEiPjhQAASEsdKtSWGo+MYA0AkAYV6sh5YQAA4iZQJ8ILBAAQJ4MSE+OFAgCISxkC9dHrkhbBGgAgDmVo+TiahzpNgjUAwPaOoUotUCdMsAYA2E47MPEx9FOTOMEaAGB9+qh3SLAGAFjXKWzaPnZGsAYAWIe2j50TrAEAllWGQC137ZwXGABgOWb7yIhgDQAwvypUqWvHNh+CNQDAvE6hSk1mBGsAgHmoUmdOsAYAuJ8qNYI1AMAdVKn5i2ANADCNKjU/EawBAG5jXmou8gcBADDeIYRq81IzIFgDAIzzGBZ8gYsEawCAt7UDFJ/CV7hKsAYAuM6S5IwmWAMAXKb1g5sI1gAAP9P6wSSCNQDA38z6wWSCNQDAnx7Coi8wiWANAOTOgi/Mwh8QAJAz/dTMRrAGAHI1pZ+6DFvV+//Ks+383xdXnuPSvmaw5+99599rzrZu32tvPysSrAGAHJ1CT3WnH5arC2G5vBKE53bpOS7tG+s8fDdn4ftVAJ+PYA0A5KILzR9CqO7aP6odzwIy5gNBF7CL8LW/Cd03KJvG8QIAdqUNknUIzOfbY/ge45xXt9vtReC+6FXFGgBIWXUWousrFdouVBukeJvyygeR5qyy3Ybt18G/yoyKNQCQii7k1e+E6HPdzB8WfVnWeVU7t8r2q2ANAMSq6gXpemK1ubaS4qbOg/aeq9qCNQAQjSpMrFDfUI1+SzedHvFoekH7eWdBW7AGADZT9oL0Yeaq8sny5EloetXs58RbRwRrAGBVXYg+LDiQUKhOV7+a/ZLYbyFYAwCLKntBeo72jve081Mf3/k3pKFrG3lOpJotWAMAs6vOwvRaHi1+t2svkfdmC9YAwCy2CtOdJwu/ZCXGkC1YAwCTlaHtYqsw3RGq89aF7B8bt4sI1gDATbqe6WMkYVaopu9lw55swRoAGOXQ22JZbEWo5prmLGSvQbAGAK6qQmX6GOHKhUI1YzUhXP9YuB9bsAYABg693ukYCdVM1fViL1HFFqwBgP8rw6IqMVan+4Rq5tBVsb/P2IstWANA5uoQqFOY/9k81SzhJQTse1d6FKwBIFPHEKiXWlZ8bkI1S3sNbSI/Jj6PYA0AGSl7gTrmdo9zlilnTU0vYN8SlAVrAMhA1Wv3SClQF+HnPg32wvKaXpvImNlEBGsA2LEqVHtTbaE4hp8fttYG7G/vBGzBGgB2KKUBidccQl81xOStgY6CNQDsSB0qvKlPR1eHUJ1a2wr5uBSwBWsA2IE9VKg7VZirWqgmBf2ALVgDQML2FKiLEKafEpoCEDptsP4qWANAelIflHhJGdo/rKpIqp5NtA4A6Sh3PKezUE3yBGsAiF8ZWj6OO+093sOASxCsASBy3VzOex3Md7SqInshWANAnLop5/Y8kK+2qiJ7IlgDQFz23EfdV5qrmr0RrAEgHqew5RA2hWp2R7AGgO3l0PbRZwYQdkmwBoDtdO0QOb0fH+UP9sofNgBsY++zfVxSh98ZdkmwBoB1VZm2QpRCNXsnWAPAek4Zh8ucesjJlGANAMvLtUrdORmsSA4EawBYVs5V6sIiMOREsAaAZeRepS56s55AFgRrAJhf7lXqjkVgyIpgDQDzyXFe6muO+qrJjRMfAOZxUKH9S6WvmhwJ1gBwv8dQoeVPPmCQJcEaAKZrK7NP5mf+yYPjQa4EawCYJsclyd9Tq9yTM8EaAG6n9WPIkuVkT7AGgPG0flynBYTsCdYAMI5ZP66rZQpwEgDAGA+mj7tKCwgEgjUAXGfBl/edtIDAn1woAOAy/dTvMwsI9AjWADCkn3ocLSDQI1gDwM9OAuMoWkDgjGANAH8zP/U4lcGcMCRYA4BBirdS0YcLXEAAyJ1Birc5hEGLwBnBGoCctWH6g0GKo5mzGt4gWAOQqzpUqoXq8U6OF1wnWAOQo0MI1YxXGdgJbxOsAciN6fSmcczgHQZqAJAToXoaAxZhBBVrAHLxYO7lyRw3GGEPwbobfPIQfp+uCv8Stm9FUXwN/w1Aniz8Mp0VFmGksmmaVI9VG6g/3jD4pA3XXwRsgOw8uUM7WWk6QhjtOdVg3VYefp1wore/7OcQsgHYP6H6Pg8q/TDac4oXm1+KovjXYO84ZQjkbbX797V/cABWJVTfp3T84Dap9Uw93RGq+25pIQEgPUL1/R60gMBtUgrWbZX502DvdJ9MHQSwS0L1/SrHEG6XUrD+OPMn5zI8JgD7IVTPw/R6MEEqwbpeqHXjSdUaYDeE6nmoVsNEqQTrJfuh9VoDpO9RGJyNlSlholSC9ZInuQsIQNos/jKf2p1cmC6VYL1kFUKFAyBd5lmel95quEMqwXrJn9MyrQBpOgmCs6pUq+E+QiUAKTpq5Zud4wl3SiVYvw72pPHYAMzvEPqqmY9qNcwglWD9PNiTxmMDMK9aqF6ElhqYQSrB+ttgTxqPDcB8qjBFqmW252XeaphJKsH662BPGo8NwDxKoXoxZlWBmaQSrF8WCtdfw2MDEK8uVBtwP79StRrmk9JF6ktRFM1g73RNeEwA4vZoYN1iju4CwHxSCtZtZfnzYO90n1WrAaL3oKK6KG0gMKPUbqu1rRv/Huy93ZeF+7YBuN/RbBWLUq2GmaVYBfhPqDT/OuGC0IRKtVANELfagiWLcycAZlY2zZxty6tqL7ofw4CWMb6GSrX2D4C4tUWTX1RTF1Xf8P4JjPOccrDudBeHrg+va295DQvLfDP7B0BSPhisuLhHFWuY3S6CNQD78WhA3eK6OwLAvJ7NCQpALI5C9SocY1iIYA1ADOpQrWZ5WkBgIYI1AFsrherV1N77YTlOLgC29uj9aDXaQGBBLmQAbOmkNWE1pWMNyxKsAdiKRWDWpVoNCxOsAdhCaYGS1ZkbHBYmWAOwhUcrK66qEqxheYI1AGs76vVdnTYQWIFgDcCaKn3Vm/BBBlYgWAOwpictIKurHXNYh2ANwFoevO9sQhsIrMQFDoA11GHOatZn0CKsRLAGYGmWLN/OQRsIrOeWwQxdteEUbit1PVttOH8tiqIpiuKlKIofRVF8D9vL4FEAyI0WkO0YtAgrKpumeevZuirDh4mjuL8VRfFHURT/DcEbgLzU4T2EbfyiYg2reX7rk2x7Ifznnb1ZD2FrK9e/hZANQB60gGxLGwis7FLFuj0RPy00yKRtD/ncJvrBdwDYmwcDFjf1qBUEVvV8HqyfQqhe8hNuE8L118F3ANgLLSDb0wYC63ruDyZpT8BfVzgJy/A8/xh8B4C90AKyLYvCwAa6W0RtyP248tN3z/f74DsApOxkFpDNaQGBDVSh/WPtUN35GJ4fgH2oJs4ixbwsCgMbqEJP9ZY++WQNsBtC9fYqdwxgG1UEPVhlBOEegPsdFEqioFoNG4nlE+3J6HGApJmzOh4+3MBGYrpV9E8jmAGSdXINj4Y2ENhITCdfrdoBkKTKQjDRMM0ebCi2T7XaQQDSY8BiPLSBwIZiC9YPBl0AJMWAxbhoA4ENxXgCup0IkA7V6niUilOwrRiDtYs0QBqssBgXoRo2FuMF0S1FgPiV7jBGR7CGjcUYrF0YAOJner34uHsAG4vxJHRhAIhbG6iPXqOo6K+GCMQYYlVAAOL24FodHUUpiECMJ2Iz2ANALCrV6iipVkMEYgzWr4M9AMTCgMU4CdYQgRiD9ctgDwAxUK2Ol1YQiECMJ+LzYA8AMbDOQJwqPe8QhxiD9bfBHgC2VltnIFqq1RCJGE/G74M9AGxNb3W89FdDJGIL1t/1WANEp1KtjpqKNUQitpPxj8EeALamtzpugjVEIqaTsa1Ufx3sBWBLqtVxM3ARIhJTsP7N4jAA0dFbHTfVaohILCfkd20gANExb3X8BGuISBVBlbh9/s+DvQBsTaiOnxlBICJVBKH2s0VhAKJTCtZJ0F8NEanCgMEvG/1IXwxYBIjSUWhLglYQiEh3Qv6+Qbj+Ep4XgPgYtBg/oRpiUhTF/wCwanlvn543fwAAAABJRU5ErkJggg==');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;font-size:24rpx;color:#666;} -.sign-record .list .item .listn{ font-size:24rpx;color:#999;background-color: #fff;} -.sign-record .list .item .listn .itemn{height: 120rpx; - border-bottom: 1rpx solid #eee; - padding: 0 24rpx;} -.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,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');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:26rpx;color:#282828;height:93rpx;padding-top: 18rpx;} -.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: 30rpx auto 30rpx auto -} - -.noCommodity .pictrue image { - width: 100%; - height: 100% -}// 登录、注册、忘记密码 -.register { - background-image: linear-gradient(to bottom,#eb5447 0,#ff8e3b 100%); - width: 100%; - height: 100vh -} - -.register .shading { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAu4AAAEeCAYAAADVZ5BOAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAA4RpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQyIDc5LjE2MDkyNCwgMjAxNy8wNy8xMy0wMTowNjozOSAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozZDUwNjlmMy05NjI1LTRhZTItYjMwNC0yZDQ0ZTM3ZDFjNjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6MkQ4NDRBMEE3NzgzMTFFOTlDMEJDQjlDOUY3MzNFNTgiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6MkQ4NDRBMDk3NzgzMTFFOTlDMEJDQjlDOUY3MzNFNTgiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKFdpbmRvd3MpIj4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MGIwNDc3MTAtZDZhYS00MzkzLWFhYTAtYzY5MTFmMmQ1ZmViIiBzdFJlZjpkb2N1bWVudElEPSJhZG9iZTpkb2NpZDpwaG90b3Nob3A6MTE1Yjg3ZjYtMjVmOS0xNjRkLWI1Mzgt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"); - background-repeat: no-repeat; - background-size: 100% 100%; - width: 100%; - height: 286rpx; - padding-top: 70rpx; - } - -.register .shading .pictrue { - width: 172rpx; - height: 172rpx; - border-radius: 50%; - background-color: rgba(255,255,255,.8); - margin: 0 auto -} - -.register .shading .pictrue image { - width: 164rpx; - height: 164rpx; - border-radius: 50%; - display: block -} - -.register .whiteBg { - width: 620rpx; - border-radius: 16rpx; - background-color: #fff; - margin: 30rpx auto 0 auto; - padding: 45rpx 30rpx 0 30rpx -} - -.register .whiteBg .title { - font-size: 36rpx; - color: #282828; - text-align: center; - font-weight: 700 -} - -.register .whiteBg .title .item~.item { - margin-left: 85rpx -} - -.register .whiteBg .title .item { - color: #999; - border-bottom: 5rpx solid #fff; - padding-bottom: 10rpx -} - -.register .whiteBg .title .item.on { - color: #282828; - border-bottom-color: #f35749 -} - -.register .whiteBg .list .item { - - border-bottom: 1rpx solid #ededed; - padding: 47rpx 0 13rpx 0; - position: relative; - width:100%; - box-sizing: border-box; -} - -.register .whiteBg .list .item .name { - font-size: 26rpx; - color: #2d3342; - margin-bottom: 27rpx; - text-align: left -} - -.register .whiteBg .list .item image { - width: 40rpx; - height: 40rpx; - display: block -} - -.register .whiteBg .list .item input { - font-size: 32rpx; - flex: 1; - margin-left: 20rpx -} - -.register .whiteBg .list .item .placeholder { - color: #ccc -} - -.register .whiteBg .list .item .codeIput { - width: 250rpx; - margin-left: 20rpx -} - -.register .whiteBg .list .item .code { - position: absolute; - width: 150rpx; - height: 50rpx; - background-color: #f35446; - border-radius: 30rpx; - color: #fff; - line-height: 50rpx; - text-align: center; - bottom: 17rpx; - right: 0; - font-size: 25rpx -} - -.register .whiteBg .list .item .code.on { - background-color: #bbb -} - -.register .whiteBg .list .forgetPwd { - text-align: right; - font-size: 28rpx; - color: #666; - margin-top: 20rpx -} - -.register .whiteBg .list .forgetPwd .iconfont { - font-size: 30rpx; - margin-right: 10rpx; - vertical-align: middle -} - -.register .whiteBg .logon { - font-size: 34rpx; - color: #fff; - font-weight: 700; - height: 86rpx; - border-radius: 43rpx; - background: linear-gradient(to right,#f35447 0,#ff8e3c 100%); - text-align: center; - line-height: 86rpx; - margin-top: 47rpx -} - -.register .whiteBg .tip { - height: 110rpx; - text-align: center; - line-height: 105rpx; - font-size: 30rpx; - color: #ccc -} - -.register .bottom { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAApQAAAAkCAYAAAA3mqpgAAAACXBIWXMAAAsTAAALEwEAmpwYAAAHDmlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNS42LWMxNDUgNzkuMTYzNDk5LCAyMDE4LzA4LzEzLTE2OjQwOjIyICAgICAgICAiPiA8cmRmOlJERiB4bWxuczpyZGY9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkvMDIvMjItcmRmLXN5bnRheC1ucyMiPiA8cmRmOkRlc2NyaXB0aW9uIHJkZjphYm91dD0iIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDozZDUwNjlmMy05NjI1LTRhZTItYjMwNC0yZDQ0ZTM3ZDFjNjgiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6REE5RjQyRjk3NzgzMTFFOTg0Q0Q5ODE4RDgwOTI2MTQiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6Nzc0OWQzMmItNmYzYS00Yzg3LWJhMDUtN2VjNWZhNTUxMzUzIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCBDQyAyMDE5IChNYWNpbnRvc2gpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAxOS0wOS0yNlQxNjo0MjowNCswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMTktMDktMjZUMTY6NTE6MzArMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMTktMDktMjZUMTY6NTE6MzArMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDowYjA0NzcxMC1kNmFhLTQzOTMtYWFhMC1jNjkxMWYyZDVmZWIiIHN0UmVmOmRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxMTViODdmNi0yNWY5LTE2NGQtYjUzOC02YzViOTc2NzVjOTkiLz4gPHhtcE1NOkhpc3Rvcnk+IDxyZGY6U2VxPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0ic2F2ZWQiIHN0RXZ0Omluc3RhbmNlSUQ9InhtcC5paWQ6Nzc0OWQzMmItNmYzYS00Yzg3LWJhMDUtN2VjNWZhNTUxMzUzIiBzdEV2dDp3aGVuPSIyMDE5LTA5LTI2VDE2OjUxOjMwKzA4OjAwIiBzdEV2dDpzb2Z0d2FyZUFnZW50PSJBZG9iZSBQaG90b3Nob3AgQ0MgMjAxOSAoTWFjaW50b3NoKSIgc3RFdnQ6Y2hhbmdlZD0iLyIvPiA8L3JkZjpTZXE+IDwveG1wTU06SGlzdG9yeT4gPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHJkZjpCYWc+IDxyZGY6bGk+MDc2MjMyOThCRjE4MjVGODcxNjcyODg4Mzk2M0VGQkM8L3JkZjpsaT4gPHJkZjpsaT5FMzYyMjRBRjBFMDAyNzI2RThGQzJFRDUxQzZGRDdBRjwvcmRmOmxpPiA8cmRmOmxpPmFkb2JlOmRvY2lkOnBob3Rvc2hvcDoxMTViODdmNi0yNWY5LTE2NGQtYjUzOC02YzViOTc2NzVjOTk8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz47UTtEAAADMklEQVR4nO3dv2+NURzH8Xf9ih+V0NFAIhKLxCIsJpPZSCLCYrHyN/gPMBF0EZ0xlgja0dCm2kGjE60o2quXx3DcBE3p7XPOc25P368/4Hu+yR3OJ/c853z7qqoistvAkdhFJUmSFMVr4ELMgptiFvtlIkFNSZIkxRE9q6UIlCMJakqSJCmO6FktRaB8BiwkqCtJkqR6FglZLaoUgfIr8CRBXUmSJNXzmJDVokoRKCFczGknqi1JkqTutYE7KQqnCpTTwGCi2pIkSereIPA2ReFUgRLgJt74liRJ6gUTwK1UxVMGyhZwFZhLuIYkSZL+bY6QyRZTLZAyUEI4+r4CzCZeR5IkScvNErLYdMpFUgdKgDHgEh5/S5IkNWmCkMHGUi/Ul2D04kq2AZeBs8CWphaVJEnaYNqECzg3gG9NLNhkoOzYD5wHTgPbm15ckiSpUC3gEeFpoCS3uVeSI1B27AROAseAw8A+YDf+eylJkvQ/bWAemAHGgVHCBJzoj5avRs5AGdt1YE/uJiRJklbpI3AtdxMxNHEppykzuRuQJEnqwrvcDcRSUqBMfoNJkiQpovHcDcRSUqAcBYo5v5ckSUWrCNmlCCUFyg8U9MNIkqSijRKySxFKCpQAQ4Qr85IkSb2qRcgsxSgtUM4Cd/HoW5Ik9aaKkFWKGktdWqAEGAEeYKiUJEm9pQIeErJKUUp6h/JvR4GLOI1HkiTl1wLuAa9yN5JCyYESYAA4Q5jG05e5F0mStPF0bnMPUdgx9+9KD5QdA8Bx/hzxuDlrR5IkqUTfWT4S8X3WjhqwUQJlSueAXbmbkCRJa/YFuJ+7ifWsxEs5TZvL3YAkSarFvbwmA2V9zhCXJGl9cy+vyUBZ3yQ+USRJ0npVEfZy1WCgrG8emMrdhCRJWpMpwl6uGgyUcbwElnI3IUmSurJE2MNVk4Eyjs/AcO4mJElSV4YJe7hqMlDGMwk8x+8pJUlaD17gt5PR+A5lfAeAU8DW3I1IkqRlloCnwJvcjZTEQJlGP3ACOIgjHyVJ6gUV4QLOSzzmjs5AmVY/cIgw7nEvsAM/M5AkqQk/gAXCo+UzhDD5KWtHBfsJqQ6h7m5gtScAAAAASUVORK5CYII="); - background-repeat: no-repeat; - background-size: 100% 100%; - width: 620rpx; - height: 36rpx; - margin: 0 auto; - }// 首页修改轮播内部样式; -.index-bg .uni-swiper-dot { - width: 20rpx!important; - height: 5rpx!important; - border-radius: 3rpx -} - -.boutique .uni-swiper-dot { - width: 7rpx!important; - height: 7rpx!important; - border-radius: 50% -} - -.boutique .uni-swiper-dot-active { - width: 20rpx!important; - border-radius: 5rpx!important -} - - -.statistical-page .mc-body { - padding-bottom: 0 -} - -.statistical-page .mpvue-calendar { - min-width: 100% -} - -.statistical-page .mpvue-calendar table { - margin: 0 -} - -.statistical-page .mpvue-calendar td { - border-right: 1px solid #fff; - padding: 0; - width: 14%!important -} - -.statistical-page .calendar-tools { - box-shadow: unset; - -webkit-box-shadow: unset; - -o-box-shadow: unset; - -moz-box-shadow: unset -} - -.statistical-page .mc-head-box div { - font-size: 14px -} - -.statistical-page .mpvue-calendar td:not(.disabled) span.mc-date-red { - color: unset -} - -.statistical-page .mpvue-calendar .mc-range-mode .mc-range-begin span.calendar-date,.statistical-page .mpvue-calendar .mc-range-mode .mc-range-end span.calendar-date { - border-radius: 0; - background-color: #2291f8!important -} - -.statistical-page .mpvue-calendar td.selected span.mc-date-red { - color: #fff -} - -.statistical-page .mc-range-mode .selected .mc-range-bg { - background-color: #a0dcf9 -} - -.statistical-page .mpvue-calendar .mc-range-mode .mc-range-row-first .calendar-date,.statistical-page .mpvue-calendar .mc-range-mode .mc-range-row-last .calendar-date { - background-color: #a0dcf9 -} - -.statistical-page .mpvue-calendar .mc-range-mode .selected.mc-range-second-to-last span { - background-color: #a0dcf9 -} - -.statistical-page .mpvue-calendar .mc-range-mode .mc-range-month-first.selected .calendar-date,.statistical-page .mpvue-calendar .mc-range-mode .mc-range-month-last.selected .calendar-date { - background-color: #a0dcf9 -} - -.statistical-page .mc-today-element .calendar-date { - border-radius: 0; - background-color: unset -} - -.new-users .uni-swiper-dot { - width: 8px; - height: 4px; - background: rgba(0,0,0,.15); - border-radius: 2px -} - -.new-users .uni-swiper-dot-active { - width: 16px; - height: 4px; - background: rgba(233,51,35,1)!important; - border-radius: 2px -} - -.pictrue_log { - width: 80rpx; - height: 40rpx; - border-radius: 10rpx 0 10rpx 0; - line-height: 40rpx; - font-size: 24rpx -} - -.pictrue_log_class { - background: -webkit-gradient(linear,left top,right top,from(rgba(246,122,56,1)),to(rgba(241,27,9,1))); - 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; - z-index: 3 -} - -.pictrue_log_medium { - width: 80rpx; - height: 44rpx; - border-radius: 20rpx 0 20rpx 0; - line-height: 44rpx; - text-align: center; - font-size: 26rpx -} - -.pictrue_log_big { - width: 100rpx; - height: 46rpx; - line-height: 46rpx; - border-radius: 20rpx 0 20rpx 0; - font-size: 28rpx -} - -.spike-box .styleAll { - background-color: #ffdfdd; - color: #E93323; - padding: 0 5rpx -} - -.product-con .nav .time .timeTxt { - color: #fff -} - -.bg-color-hui { - background: #bbb!important -} - -.page_content .swiper .uni-swiper-dot { - width: 20rpx!important; - height: 5rpx!important; - border-radius: 3rpx; - background: rgba(0,0,0,.4)!important -} - -.page_content .swiper .uni-swiper-dot-active { - width: 20rpx!important; - border-radius: 5rpx!important; - background: #fff!important -} - -.pictrue_log_xl { - background: linear-gradient(90deg,rgba(246,122,56,1) 0,rgba(241,27,9,1) 100%) -} - -.pictrue_log_xl_gray { - background: linear-gradient(90deg,rgba(102,102,102,1) 0,rgba(153,153,153,1) 100%) -} - -.pictrue_log_xl_blue { - background: linear-gradient(90deg,rgba(26,163,246,1) 0,rgba(24,192,244,1) 100%) -} - -.flex-aj-center { - display: flex; - align-items: center; - justify-content: center -} -.page-index.bgf .noCommodity{ - border-top: 0; -} - -.product-con .red{ - color: #82848f!important; - } -uni-checkbox:not([disabled]) .uni-checkbox-input:hover{ - border-color: #d1d1d1; -} -.bg-green{ - background-color: #3CBB45; -} \ No newline at end of file diff --git a/app/static/html/pc.html b/app/static/html/pc.html deleted file mode 100644 index c272993..0000000 --- a/app/static/html/pc.html +++ /dev/null @@ -1,59 +0,0 @@ - - - - - - - CRMEB - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/app/static/iconfont/iconfont-app.css b/app/static/iconfont/iconfont-app.css deleted file mode 100644 index 19fefec..0000000 --- a/app/static/iconfont/iconfont-app.css +++ /dev/null @@ -1,1540 +0,0 @@ -@font-face {font-family: "iconfont"; - src: url('//at.alicdn.com/t/font_993865_1ytjet2daic.eot?t=1611564722576'); /* IE9 */ - src: url('//at.alicdn.com/t/font_993865_1ytjet2daic.eot?t=1611564722576#iefix') format('embedded-opentype'), /* IE6-IE8 */ - url('data:application/x-font-woff2;charset=utf-8;base64,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') format('woff2'), - url('//at.alicdn.com/t/font_993865_1ytjet2daic.woff?t=1611564722576') format('woff'), - url('//at.alicdn.com/t/font_993865_1ytjet2daic.ttf?t=1611564722576') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ - url('//at.alicdn.com/t/font_993865_1ytjet2daic.svg?t=1611564722576#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-s-pingguo:before { - content: "\e722"; -} - -.icon-s-weixindenglu1:before { - content: "\e729"; -} - -.icon-s-yanzhengmadenglu1:before { - content: "\e72a"; -} - -.icon-s-mimadenglu1:before { - content: "\e72b"; -} - -.icon-s-yanzhengma:before { - content: "\e728"; -} - -.icon-pengyouquan:before { - content: "\e76e"; -} - -.icon-jifenzhongxin:before { - content: "\e71f"; -} - -.icon-s-chongzhijilu:before { - content: "\e71c"; -} - -.icon-s-xiaofeijilu:before { - content: "\e71e"; -} - -.icon-s-zhangdanjilu:before { - content: "\e720"; -} - -.icon-s-kefu:before { - content: "\e721"; -} - -.icon-s-bianji:before { - content: "\e71d"; -} - -.icon-s-pintuan:before { - content: "\e719"; -} - -.icon-s-kanjia:before { - content: "\e71a"; -} - -.icon-s-miaosha:before { - content: "\e71b"; -} - -.icon-fanhui1:before { - content: "\e718"; -} - -.icon-kefu3:before { - content: "\e716"; -} - -.icon-shouye6:before { - content: "\e717"; -} - -.icon-chakanditu:before { - content: "\e715"; -} - -.icon-haowuquan1:before { - content: "\e713"; -} - -.icon-haowuquan:before { - content: "\e712"; -} - -.icon-gengduozhankai1:before { - content: "\e70e"; -} - -.icon-biaoqing2:before { - content: "\e70f"; -} - -.icon-huashu1:before { - content: "\e710"; -} - -.icon-tupian2:before { - content: "\e711"; -} - -.icon-huifang:before { - content: "\e76c"; -} - -.icon-zhibozhong:before { - content: "\e76b"; -} - -.icon-huangguan3:before { - content: "\e769"; -} - -.icon-huiyuan2:before { - content: "\e70c"; -} - -.icon-fapiao1:before { - content: "\e70b"; -} - -.icon-cha3:before { - content: "\e709"; -} - -.icon-shezhi1:before { - content: "\e70a"; -} - -.icon-tianjia1:before { - content: "\e705"; -} - -.icon-bianji3:before { - content: "\e706"; -} - -.icon-jiahao2:before { - content: "\e707"; -} - -.icon-shanchu3:before { - content: "\e708"; -} - -.icon-fuzhikouling:before { - content: "\e704"; -} - -.icon-kefujiedai:before { - content: "\e703"; -} - -.icon-miaosha1:before { - content: "\e702"; -} - -.icon-bianji2:before { - content: "\e700"; -} - -.icon-qingkonghuancun:before { - content: "\e701"; -} - -.icon-shijian1:before { - content: "\e66b"; -} - -.icon-wenhao1:before { - content: "\e6ee"; -} - -.icon-zhanghaomima:before { - content: "\e763"; -} - -.icon-erweima2:before { - content: "\e765"; -} - -.icon-guanji:before { - content: "\e6ed"; -} - -.icon-tupian1:before { - content: "\e762"; -} - -.icon-biaoqing1:before { - content: "\e764"; -} - -.icon-guanbi5:before { - content: "\e761"; -} - -.icon-shengyinjingyinxianxing:before { - content: "\e94f"; -} - -.icon-shengyinyinliang:before { - content: "\e66a"; -} - -.icon-pingjia1:before { - content: "\e6ec"; -} - -.icon-xialazhankai:before { - content: "\e6dd"; -} - -.icon-cha2:before { - content: "\e6e6"; -} - -.icon-fanhuishouye:before { - content: "\e6df"; -} - -.icon-gengduo3:before { - content: "\e6e0"; -} - -.icon-fenxiang1:before { - content: "\e6e2"; -} - -.icon-sousuo5:before { - content: "\e6e3"; -} - -.icon-huiyuan1:before { - content: "\e6e5"; -} - -.icon-gou:before { - content: "\e6e7"; -} - -.icon-gouwuche6:before { - content: "\e6e8"; -} - -.icon-you1:before { - content: "\e6e9"; -} - -.icon-zuo1:before { - content: "\e6ea"; -} - -.icon-vip12:before { - content: "\e6eb"; -} - -.icon-youhuiquan1:before { - content: "\e6db"; -} - -.icon-kefu21:before { - content: "\e6da"; -} - -.icon-yue1:before { - content: "\e6dc"; -} - -.icon-huiyuanzhongxin:before { - content: "\e6d5"; -} - -.icon-kanjiajilu:before { - content: "\e6d6"; -} - -.icon-dizhixinxi:before { - content: "\e6d7"; -} - -.icon-wodetuiguang:before { - content: "\e6d8"; -} - -.icon-wodeshoucang:before { - content: "\e6d9"; -} - -.icon-huidaodingbu1:before { - content: "\e6d4"; -} - -.icon-saoyisao:before { - content: "\e6d3"; -} - -.icon-jiageshaixuanshang:before { - content: "\e6d0"; -} - -.icon-jiageshaixuanxia:before { - content: "\e6d1"; -} - -.icon-shouji1:before { - content: "\e6cf"; -} - -.icon-gengduo2:before { - content: "\e6cd"; -} - -.icon-cha1:before { - content: "\e6cb"; -} - -.icon-fasong:before { - content: "\e6be"; -} - -.icon-gengduozhankai:before { - content: "\e6c7"; -} - -.icon-biaoqing:before { - content: "\e6c8"; -} - -.icon-huashu:before { - content: "\e6c9"; -} - -.icon-tupian:before { - content: "\e6ca"; -} - -.icon-mima:before { - content: "\e6ba"; -} - -.icon-zhanghao:before { - content: "\e6bc"; -} - -.icon-fanhui:before { - content: "\e6b9"; -} - -.icon-jinru2:before { - content: "\e6bd"; -} - -.icon-shangpinxinxi:before { - content: "\e6bf"; -} - -.icon-tuichu:before { - content: "\e6c0"; -} - -.icon-jiaoyidingdan:before { - content: "\e6c1"; -} - -.icon-sousuo4:before { - content: "\e6c4"; -} - -.icon-xuanzhong5:before { - content: "\e6c6"; -} - -.icon-VIP2:before { - content: "\e6b8"; -} - -.icon-pinzhong:before { - content: "\e6a2"; -} - -.icon-hanghuo:before { - content: "\e6a3"; -} - -.icon-zhifa:before { - content: "\e6b6"; -} - -.icon-dijia:before { - content: "\e6b7"; -} - -.icon-gerenzhongxin-xuanzhong:before { - content: "\e6ae"; -} - -.icon-xuanzhong4:before { - content: "\e6af"; -} - -.icon-zanwumiaosha:before { - content: "\e6b0"; -} - -.icon-shangchuantupian:before { - content: "\e6b3"; -} - -.icon-fuwu:before { - content: "\e6b4"; -} - -.icon-tuikuantishi:before { - content: "\e6b5"; -} - -.icon-erweima-youxia:before { - content: "\e6ad"; -} - -.icon-erweimabianjiao:before { - content: "\e6ac"; -} - -.icon-weixindenglu1:before { - content: "\e6aa"; -} - -.icon-zhanghaodenglu1:before { - content: "\e6ab"; -} - -.icon-shangjiashijian:before { - content: "\e6a9"; -} - -.icon-jiageshaixuan:before { - content: "\e6a7"; -} - -.icon-gengduofenlei:before { - content: "\e6a8"; -} - -.icon-weixuan:before { - content: "\e6a6"; -} - -.icon-xuanzhong11:before { - content: "\e6a5"; -} - -.icon-pingjia:before { - content: "\e6a4"; -} - -.icon-guanbi4:before { - content: "\e6a0"; -} - -.icon-pinzhongqiquan:before { - content: "\e69d"; -} - -.icon-dijiachangxuan:before { - content: "\e69e"; -} - -.icon-zhengpinhanghuo:before { - content: "\e69f"; -} - -.icon-dizhi-tianjia:before { - content: "\e696"; -} - -.icon-shanchu2:before { - content: "\e69c"; -} - -.icon-yue:before { - content: "\e699"; -} - -.icon-weixinzhifu1:before { - content: "\e69a"; -} - -.icon-shangpinshuliang-jian:before { - content: "\e698"; -} - -.icon-shangpinshuliang-jia:before { - content: "\e697"; -} - -.icon-xuanzhong3:before { - content: "\e693"; -} - -.icon-dizhixiala:before { - content: "\e694"; -} - -.icon-jinru1:before { - content: "\e695"; -} - -.icon-shenqingtuikuan:before { - content: "\e692"; -} - -.icon-peihuo:before { - content: "\e68d"; -} - -.icon-xiadan:before { - content: "\e68e"; -} - -.icon-wancheng:before { - content: "\e68f"; -} - -.icon-fukuan:before { - content: "\e690"; -} - -.icon-fahuo:before { - content: "\e691"; -} - -.icon-saoma:before { - content: "\e68c"; -} - -.icon-tishi:before { - content: "\e68b"; -} - -.icon-xiala2:before { - content: "\e682"; -} - -.icon-VIP1:before { - content: "\e68a"; -} - -.icon-yishoucang:before { - content: "\e683"; -} - -.icon-shoucang2:before { - content: "\e686"; -} - -.icon-kefu2:before { - content: "\e689"; -} - -.icon-fapiao:before { - content: "\e680"; -} - -.icon-fapiaoguanli:before { - content: "\e681"; -} - -.icon-jinru:before { - content: "\e67e"; -} - -.icon-sousuo3:before { - content: "\e67b"; -} - -.icon-dingbu-gouwuche:before { - content: "\e67a"; -} - -.icon-huidaodingbu:before { - content: "\e678"; -} - -.icon-cedaohang-gouwuche:before { - content: "\e676"; -} - -.icon-weixin4:before { - content: "\e675"; -} - -.icon-lianxikefu:before { - content: "\e672"; -} - -.icon-zuo-miaosha:before { - content: "\e670"; -} - -.icon-you-miaosha:before { - content: "\e671"; -} - -.icon-zuo:before { - content: "\e66d"; -} - -.icon-you:before { - content: "\e66f"; -} - -.icon-shoucangbenzhan:before { - content: "\e66c"; -} - -.icon-lianxishangjia:before { - content: "\e668"; -} - -.icon-dingwei:before { - content: "\e667"; -} - -.icon-fenlei2:before { - content: "\e663"; -} - -.icon-wode:before { - content: "\e664"; -} - -.icon-shouye5:before { - content: "\e665"; -} - -.icon-gouwuche5:before { - content: "\e666"; -} - -.icon-jianhao1:before { - content: "\e661"; -} - -.icon-jiahao1:before { - content: "\e662"; -} - -.icon-yanzhengma1:before { - content: "\e65f"; -} - -.icon-shouji:before { - content: "\e660"; -} - -.icon-cha:before { - content: "\e658"; -} - -.icon-shoujihao:before { - content: "\e659"; -} - -.icon-qiye:before { - content: "\e65b"; -} - -.icon-yonghu3:before { - content: "\e65c"; -} - -.icon-yanzhengma:before { - content: "\e65d"; -} - -.icon-shangpin:before { - content: "\e653"; -} - -.icon-qiandao2:before { - content: "\e65a"; -} - -.icon-yaoqing:before { - content: "\ea39"; -} - -.icon-tuihuozhong:before { - content: "\e64f"; -} - -.icon-shenhezhong1:before { - content: "\e650"; -} - -.icon-daituihuo:before { - content: "\e652"; -} - -.icon-yihexiao:before { - content: "\e75f"; -} - -.icon-yijujue1:before { - content: "\e6a1"; -} - -.icon-gengduo1:before { - content: "\e674"; -} - -.icon-tuikuan:before { - content: "\e657"; -} - -.icon-xiaoxi:before { - content: "\e64b"; -} - -.icon-erweima1:before { - content: "\e647"; -} - -.icon-kefu1:before { - content: "\e648"; -} - -.icon-guanzhu:before { - content: "\e645"; -} - -.icon-xiangji:before { - content: "\e6bb"; -} - -.icon-zhuyi-copy:before { - content: "\e688"; -} - -.icon-pingfen:before { - content: "\e649"; -} - -.icon-yingyongAPP_o:before { - content: "\eb88"; -} - -.icon-yizhan_o:before { - content: "\ebc6"; -} - -.icon-shaixuan:before { - content: "\e651"; -} - -.icon-shangjiadingdan:before { - content: "\e64a"; -} - -.icon-shouye4:before { - content: "\e64d"; -} - -.icon-jinbi2:before { - content: "\e63f"; -} - -.icon-jinbi:before { - content: "\e63c"; -} - -.icon-zuobiao:before { - content: "\e6de"; -} - -.icon-jianhao:before { - content: "\e753"; -} - -.icon-jiahao:before { - content: "\e754"; -} - -.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-shoucang1:before { - content: "\e714"; -} - -.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-shitixing:before { - content: "\e6fb"; -} - -.icon-kongxinxing:before { - content: "\e6fc"; -} - -.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-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/app/static/iconfont/iconfont.css b/app/static/iconfont/iconfont.css deleted file mode 100644 index f53cc3e..0000000 --- a/app/static/iconfont/iconfont.css +++ /dev/null @@ -1,1633 +0,0 @@ -/* @font-face { - font-family: "iconfont"; - src: url('iconfont.woff2?t=1620706240621') format('woff2'), - url('iconfont.woff?t=1620706240621') format('woff'), - url('iconfont.ttf?t=1620706240621') format('truetype'); -} */ -@font-face {font-family: "iconfont"; - src: url('//at.alicdn.com/t/font_993865_1ytjet2daic.eot?t=1611564722576'); /* IE9 */ - src: url('//at.alicdn.com/t/font_993865_1ytjet2daic.eot?t=1611564722576#iefix') format('embedded-opentype'), /* IE6-IE8 */ - url('//at.alicdn.com/t/font_993865_1ytjet2daic.woff?t=1611564722576') format('woff'), - url('//at.alicdn.com/t/font_993865_1ytjet2daic.ttf?t=1611564722576') format('truetype'), /* chrome, firefox, opera, Safari, Android, iOS 4.2+ */ - url('//at.alicdn.com/t/font_993865_1ytjet2daic.svg?t=1611564722576#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-yijujue:before { - content: "\e741"; -} - -.icon-tuikuanzhong1:before { - content: "\e803"; -} - -.icon-tuikuanshibai:before { - content: "\e804"; -} - -.icon-tuikuanchenggong:before { - content: "\e805"; -} - -.icon-tuikuanzhong11:before { - content: "\e744"; -} - -.icon-yiwancheng:before { - content: "\e745"; -} - -.icon-yituikuan1:before { - content: "\e747"; -} - -.icon-tuikuan1:before { - content: "\e73a"; -} - -.icon-tuihuo:before { - content: "\e73c"; -} - -.icon-shenhe:before { - content: "\e73d"; -} - -.icon-shangchuantupian1:before { - content: "\e755"; -} - -.icon-shouye7:before { - content: "\e863"; -} - -.icon-shengqian:before { - content: "\e738"; -} - -.icon-xiaolian1:before { - content: "\e737"; -} - -.icon-fangda:before { - content: "\e736"; -} - -.icon-dianjichoujiang:before { - content: "\e730"; -} - -.icon-7jinianban:before { - content: "\e76f"; -} - -.icon-lingquyouhuiquananniu:before { - content: "\e72e"; -} - -.icon-qiandaochenggonganniu:before { - content: "\e72f"; -} - -.icon-s-xianshimiaosha:before { - content: "\e727"; -} - -.icon-s-pintuan1:before { - content: "\e726"; -} - -.icon-s-kanjia1:before { - content: "\e72d"; -} - -.icon-s-pingguo:before { - content: "\e722"; -} - -.icon-s-weixindenglu1:before { - content: "\e729"; -} - -.icon-s-yanzhengmadenglu1:before { - content: "\e72a"; -} - -.icon-s-mimadenglu1:before { - content: "\e72b"; -} - -.icon-s-yanzhengma:before { - content: "\e728"; -} - -.icon-pengyouquan:before { - content: "\e76e"; -} - -.icon-jifenzhongxin:before { - content: "\e71f"; -} - -.icon-s-chongzhijilu:before { - content: "\e71c"; -} - -.icon-s-xiaofeijilu:before { - content: "\e71e"; -} - -.icon-s-zhangdanjilu:before { - content: "\e720"; -} - -.icon-s-kefu:before { - content: "\e721"; -} - -.icon-s-bianji:before { - content: "\e71d"; -} - -.icon-s-pintuan:before { - content: "\e719"; -} - -.icon-s-kanjia:before { - content: "\e71a"; -} - -.icon-s-miaosha:before { - content: "\e71b"; -} - -.icon-fanhui1:before { - content: "\e718"; -} - -.icon-kefu3:before { - content: "\e716"; -} - -.icon-shouye6:before { - content: "\e717"; -} - -.icon-chakanditu:before { - content: "\e715"; -} - -.icon-haowuquan1:before { - content: "\e713"; -} - -.icon-haowuquan:before { - content: "\e712"; -} - -.icon-gengduozhankai1:before { - content: "\e70e"; -} - -.icon-biaoqing2:before { - content: "\e70f"; -} - -.icon-huashu1:before { - content: "\e710"; -} - -.icon-tupian2:before { - content: "\e711"; -} - -.icon-huifang:before { - content: "\e76c"; -} - -.icon-zhibozhong:before { - content: "\e76b"; -} - -.icon-huangguan3:before { - content: "\e769"; -} - -.icon-huiyuan2:before { - content: "\e70c"; -} - -.icon-fapiao1:before { - content: "\e70b"; -} - -.icon-cha3:before { - content: "\e709"; -} - -.icon-shezhi1:before { - content: "\e70a"; -} - -.icon-tianjia1:before { - content: "\e705"; -} - -.icon-bianji3:before { - content: "\e706"; -} - -.icon-jiahao2:before { - content: "\e707"; -} - -.icon-shanchu3:before { - content: "\e708"; -} - -.icon-fuzhikouling:before { - content: "\e704"; -} - -.icon-kefujiedai:before { - content: "\e703"; -} - -.icon-miaosha1:before { - content: "\e702"; -} - -.icon-bianji2:before { - content: "\e700"; -} - -.icon-qingkonghuancun:before { - content: "\e701"; -} - -.icon-shijian1:before { - content: "\e66b"; -} - -.icon-wenhao1:before { - content: "\e6ee"; -} - -.icon-zhanghaomima:before { - content: "\e763"; -} - -.icon-erweima2:before { - content: "\e765"; -} - -.icon-guanji:before { - content: "\e6ed"; -} - -.icon-tupian1:before { - content: "\e762"; -} - -.icon-biaoqing1:before { - content: "\e764"; -} - -.icon-guanbi5:before { - content: "\e761"; -} - -.icon-shengyinjingyinxianxing:before { - content: "\e94f"; -} - -.icon-shengyinyinliang:before { - content: "\e66a"; -} - -.icon-pingjia1:before { - content: "\e6ec"; -} - -.icon-xialazhankai:before { - content: "\e6dd"; -} - -.icon-cha2:before { - content: "\e6e6"; -} - -.icon-fanhuishouye:before { - content: "\e6df"; -} - -.icon-gengduo3:before { - content: "\e6e0"; -} - -.icon-fenxiang1:before { - content: "\e6e2"; -} - -.icon-sousuo5:before { - content: "\e6e3"; -} - -.icon-huiyuan1:before { - content: "\e6e5"; -} - -.icon-gou:before { - content: "\e6e7"; -} - -.icon-gouwuche6:before { - content: "\e6e8"; -} - -.icon-you1:before { - content: "\e6e9"; -} - -.icon-zuo1:before { - content: "\e6ea"; -} - -.icon-vip12:before { - content: "\e6eb"; -} - -.icon-youhuiquan1:before { - content: "\e6db"; -} - -.icon-kefu21:before { - content: "\e6da"; -} - -.icon-yue1:before { - content: "\e6dc"; -} - -.icon-huiyuanzhongxin:before { - content: "\e6d5"; -} - -.icon-kanjiajilu:before { - content: "\e6d6"; -} - -.icon-dizhixinxi:before { - content: "\e6d7"; -} - -.icon-wodetuiguang:before { - content: "\e6d8"; -} - -.icon-wodeshoucang:before { - content: "\e6d9"; -} - -.icon-huidaodingbu1:before { - content: "\e6d4"; -} - -.icon-saoyisao:before { - content: "\e6d3"; -} - -.icon-jiageshaixuanshang:before { - content: "\e6d0"; -} - -.icon-jiageshaixuanxia:before { - content: "\e6d1"; -} - -.icon-shouji1:before { - content: "\e6cf"; -} - -.icon-gengduo2:before { - content: "\e6cd"; -} - -.icon-cha1:before { - content: "\e6cb"; -} - -.icon-fasong:before { - content: "\e6be"; -} - -.icon-gengduozhankai:before { - content: "\e6c7"; -} - -.icon-biaoqing:before { - content: "\e6c8"; -} - -.icon-huashu:before { - content: "\e6c9"; -} - -.icon-tupian:before { - content: "\e6ca"; -} - -.icon-mima:before { - content: "\e6ba"; -} - -.icon-zhanghao:before { - content: "\e6bc"; -} - -.icon-fanhui:before { - content: "\e6b9"; -} - -.icon-jinru2:before { - content: "\e6bd"; -} - -.icon-shangpinxinxi:before { - content: "\e6bf"; -} - -.icon-tuichu:before { - content: "\e6c0"; -} - -.icon-jiaoyidingdan:before { - content: "\e6c1"; -} - -.icon-sousuo4:before { - content: "\e6c4"; -} - -.icon-xuanzhong5:before { - content: "\e6c6"; -} - -.icon-VIP2:before { - content: "\e6b8"; -} - -.icon-pinzhong:before { - content: "\e6a2"; -} - -.icon-hanghuo:before { - content: "\e6a3"; -} - -.icon-zhifa:before { - content: "\e6b6"; -} - -.icon-dijia:before { - content: "\e6b7"; -} - -.icon-gerenzhongxin-xuanzhong:before { - content: "\e6ae"; -} - -.icon-xuanzhong4:before { - content: "\e6af"; -} - -.icon-zanwumiaosha:before { - content: "\e6b0"; -} - -.icon-shangchuantupian:before { - content: "\e6b3"; -} - -.icon-fuwu:before { - content: "\e6b4"; -} - -.icon-tuikuantishi:before { - content: "\e6b5"; -} - -.icon-erweima-youxia:before { - content: "\e6ad"; -} - -.icon-erweimabianjiao:before { - content: "\e6ac"; -} - -.icon-weixindenglu1:before { - content: "\e6aa"; -} - -.icon-zhanghaodenglu1:before { - content: "\e6ab"; -} - -.icon-shangjiashijian:before { - content: "\e6a9"; -} - -.icon-jiageshaixuan:before { - content: "\e6a7"; -} - -.icon-gengduofenlei:before { - content: "\e6a8"; -} - -.icon-weixuan:before { - content: "\e6a6"; -} - -.icon-xuanzhong11:before { - content: "\e6a5"; -} - -.icon-pingjia:before { - content: "\e6a4"; -} - -.icon-guanbi4:before { - content: "\e6a0"; -} - -.icon-pinzhongqiquan:before { - content: "\e69d"; -} - -.icon-dijiachangxuan:before { - content: "\e69e"; -} - -.icon-zhengpinhanghuo:before { - content: "\e69f"; -} - -.icon-dizhi-tianjia:before { - content: "\e696"; -} - -.icon-shanchu2:before { - content: "\e69c"; -} - -.icon-yue:before { - content: "\e699"; -} - -.icon-weixinzhifu1:before { - content: "\e69a"; -} - -.icon-shangpinshuliang-jian:before { - content: "\e698"; -} - -.icon-shangpinshuliang-jia:before { - content: "\e697"; -} - -.icon-xuanzhong3:before { - content: "\e693"; -} - -.icon-dizhixiala:before { - content: "\e694"; -} - -.icon-jinru1:before { - content: "\e695"; -} - -.icon-shenqingtuikuan:before { - content: "\e692"; -} - -.icon-peihuo:before { - content: "\e68d"; -} - -.icon-xiadan:before { - content: "\e68e"; -} - -.icon-wancheng:before { - content: "\e68f"; -} - -.icon-fukuan:before { - content: "\e690"; -} - -.icon-fahuo:before { - content: "\e691"; -} - -.icon-saoma:before { - content: "\e68c"; -} - -.icon-tishi:before { - content: "\e68b"; -} - -.icon-xiala2:before { - content: "\e682"; -} - -.icon-VIP1:before { - content: "\e68a"; -} - -.icon-yishoucang:before { - content: "\e683"; -} - -.icon-shoucang2:before { - content: "\e686"; -} - -.icon-kefu2:before { - content: "\e689"; -} - -.icon-fapiao:before { - content: "\e680"; -} - -.icon-fapiaoguanli:before { - content: "\e681"; -} - -.icon-jinru:before { - content: "\e67e"; -} - -.icon-sousuo3:before { - content: "\e67b"; -} - -.icon-dingbu-gouwuche:before { - content: "\e67a"; -} - -.icon-huidaodingbu:before { - content: "\e678"; -} - -.icon-cedaohang-gouwuche:before { - content: "\e676"; -} - -.icon-weixin4:before { - content: "\e675"; -} - -.icon-lianxikefu:before { - content: "\e672"; -} - -.icon-zuo-miaosha:before { - content: "\e670"; -} - -.icon-you-miaosha:before { - content: "\e671"; -} - -.icon-zuo:before { - content: "\e66d"; -} - -.icon-you:before { - content: "\e66f"; -} - -.icon-shoucangbenzhan:before { - content: "\e66c"; -} - -.icon-lianxishangjia:before { - content: "\e668"; -} - -.icon-dingwei:before { - content: "\e667"; -} - -.icon-fenlei2:before { - content: "\e663"; -} - -.icon-wode:before { - content: "\e664"; -} - -.icon-shouye5:before { - content: "\e665"; -} - -.icon-gouwuche5:before { - content: "\e666"; -} - -.icon-jianhao1:before { - content: "\e661"; -} - -.icon-jiahao1:before { - content: "\e662"; -} - -.icon-yanzhengma1:before { - content: "\e65f"; -} - -.icon-shouji:before { - content: "\e660"; -} - -.icon-cha:before { - content: "\e658"; -} - -.icon-shoujihao:before { - content: "\e659"; -} - -.icon-qiye:before { - content: "\e65b"; -} - -.icon-yonghu3:before { - content: "\e65c"; -} - -.icon-yanzhengma:before { - content: "\e65d"; -} - -.icon-shangpin:before { - content: "\e653"; -} - -.icon-qiandao2:before { - content: "\e65a"; -} - -.icon-yaoqing:before { - content: "\ea39"; -} - -.icon-tuihuozhong:before { - content: "\e64f"; -} - -.icon-shenhezhong1:before { - content: "\e650"; -} - -.icon-daituihuo:before { - content: "\e652"; -} - -.icon-yihexiao:before { - content: "\e75f"; -} - -.icon-yijujue1:before { - content: "\e6a1"; -} - -.icon-gengduo1:before { - content: "\e674"; -} - -.icon-tuikuan:before { - content: "\e657"; -} - -.icon-xiaoxi:before { - content: "\e64b"; -} - -.icon-erweima1:before { - content: "\e647"; -} - -.icon-kefu1:before { - content: "\e648"; -} - -.icon-guanzhu:before { - content: "\e645"; -} - -.icon-xiangji:before { - content: "\e6bb"; -} - -.icon-zhuyi-copy:before { - content: "\e688"; -} - -.icon-pingfen:before { - content: "\e649"; -} - -.icon-yingyongAPP_o:before { - content: "\eb88"; -} - -.icon-yizhan_o:before { - content: "\ebc6"; -} - -.icon-shaixuan:before { - content: "\e651"; -} - -.icon-shangjiadingdan:before { - content: "\e64a"; -} - -.icon-shouye4:before { - content: "\e64d"; -} - -.icon-jinbi2:before { - content: "\e63f"; -} - -.icon-jinbi:before { - content: "\e63c"; -} - -.icon-zuobiao:before { - content: "\e6de"; -} - -.icon-jianhao:before { - content: "\e753"; -} - -.icon-jiahao:before { - content: "\e754"; -} - -.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-shoucang1:before { - content: "\e714"; -} - -.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-shitixing:before { - content: "\e6fb"; -} - -.icon-kongxinxing:before { - content: "\e6fc"; -} - -.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-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/app/static/images/1-001.png b/app/static/images/1-001.png deleted file mode 100644 index c2d7fae..0000000 Binary files a/app/static/images/1-001.png and /dev/null differ diff --git a/app/static/images/1-002.png b/app/static/images/1-002.png deleted file mode 100644 index c6bd228..0000000 Binary files a/app/static/images/1-002.png and /dev/null differ diff --git a/app/static/images/2-001.png b/app/static/images/2-001.png deleted file mode 100644 index a25cf93..0000000 Binary files a/app/static/images/2-001.png and /dev/null differ diff --git a/app/static/images/2-002.png b/app/static/images/2-002.png deleted file mode 100644 index 76aa0d2..0000000 Binary files a/app/static/images/2-002.png and /dev/null differ diff --git a/app/static/images/3-001.png b/app/static/images/3-001.png deleted file mode 100644 index b55ee31..0000000 Binary files a/app/static/images/3-001.png and /dev/null differ diff --git a/app/static/images/3-002.png b/app/static/images/3-002.png deleted file mode 100644 index 4a0ca41..0000000 Binary files a/app/static/images/3-002.png and /dev/null differ diff --git a/app/static/images/4-001.png b/app/static/images/4-001.png deleted file mode 100644 index 26d7fbe..0000000 Binary files a/app/static/images/4-001.png and /dev/null differ diff --git a/app/static/images/4-002.png b/app/static/images/4-002.png deleted file mode 100644 index f3304d7..0000000 Binary files a/app/static/images/4-002.png and /dev/null differ diff --git a/app/static/images/accountBg.png b/app/static/images/accountBg.png deleted file mode 100644 index 5040fd4..0000000 Binary files a/app/static/images/accountBg.png and /dev/null differ diff --git a/app/static/images/address.png b/app/static/images/address.png deleted file mode 100644 index a97c7ef..0000000 Binary files a/app/static/images/address.png and /dev/null differ diff --git a/app/static/images/alter.png b/app/static/images/alter.png deleted file mode 100644 index 93cd71f..0000000 Binary files a/app/static/images/alter.png and /dev/null differ diff --git a/app/static/images/angle.png b/app/static/images/angle.png deleted file mode 100644 index c531fab..0000000 Binary files a/app/static/images/angle.png and /dev/null differ diff --git a/app/static/images/balance.png b/app/static/images/balance.png deleted file mode 100644 index ce7e51b..0000000 Binary files a/app/static/images/balance.png and /dev/null differ diff --git a/app/static/images/barg001.png b/app/static/images/barg001.png deleted file mode 100644 index 857235f..0000000 Binary files a/app/static/images/barg001.png and /dev/null differ diff --git a/app/static/images/barg002.png b/app/static/images/barg002.png deleted file mode 100644 index 79f2f61..0000000 Binary files a/app/static/images/barg002.png and /dev/null differ diff --git a/app/static/images/bargain.png b/app/static/images/bargain.png deleted file mode 100644 index 1b45cc3..0000000 Binary files a/app/static/images/bargain.png and /dev/null differ diff --git a/app/static/images/bargainBg.jpg b/app/static/images/bargainBg.jpg deleted file mode 100644 index e47be56..0000000 Binary files a/app/static/images/bargainBg.jpg and /dev/null differ diff --git a/app/static/images/bargainBg.png b/app/static/images/bargainBg.png deleted file mode 100644 index 0de595a..0000000 Binary files a/app/static/images/bargainBg.png and /dev/null differ diff --git a/app/static/images/canbj.png b/app/static/images/canbj.png deleted file mode 100644 index d2a37ce..0000000 Binary files a/app/static/images/canbj.png and /dev/null differ diff --git a/app/static/images/close.gif b/app/static/images/close.gif deleted file mode 100644 index 4de18b4..0000000 Binary files a/app/static/images/close.gif and /dev/null differ diff --git a/app/static/images/code_1.png b/app/static/images/code_1.png deleted file mode 100644 index 048e88b..0000000 Binary files a/app/static/images/code_1.png and /dev/null differ diff --git a/app/static/images/code_2.png b/app/static/images/code_2.png deleted file mode 100644 index 7247758..0000000 Binary files a/app/static/images/code_2.png and /dev/null differ diff --git a/app/static/images/collection.png b/app/static/images/collection.png deleted file mode 100644 index 8ab1a39..0000000 Binary files a/app/static/images/collection.png and /dev/null differ diff --git a/app/static/images/coupon.png b/app/static/images/coupon.png deleted file mode 100644 index 0e83815..0000000 Binary files a/app/static/images/coupon.png and /dev/null differ diff --git a/app/static/images/crmeb.png b/app/static/images/crmeb.png deleted file mode 100644 index 1cbe9e2..0000000 Binary files a/app/static/images/crmeb.png and /dev/null differ diff --git a/app/static/images/customer.png b/app/static/images/customer.png deleted file mode 100644 index c737b51..0000000 Binary files a/app/static/images/customer.png and /dev/null differ diff --git a/app/static/images/del.png b/app/static/images/del.png deleted file mode 100644 index 5204978..0000000 Binary files a/app/static/images/del.png and /dev/null differ diff --git a/app/static/images/dfh.png b/app/static/images/dfh.png deleted file mode 100644 index 808404c..0000000 Binary files a/app/static/images/dfh.png and /dev/null differ diff --git a/app/static/images/dfk.png b/app/static/images/dfk.png deleted file mode 100644 index 8b931cf..0000000 Binary files a/app/static/images/dfk.png and /dev/null differ diff --git a/app/static/images/down.png b/app/static/images/down.png deleted file mode 100644 index 064b4c1..0000000 Binary files a/app/static/images/down.png and /dev/null differ diff --git a/app/static/images/dpj.png b/app/static/images/dpj.png deleted file mode 100644 index 9f2419b..0000000 Binary files a/app/static/images/dpj.png and /dev/null differ diff --git a/app/static/images/dsh.png b/app/static/images/dsh.png deleted file mode 100644 index 0cf464f..0000000 Binary files a/app/static/images/dsh.png and /dev/null differ diff --git a/app/static/images/edit.png b/app/static/images/edit.png deleted file mode 100644 index e969b06..0000000 Binary files a/app/static/images/edit.png and /dev/null differ diff --git a/app/static/images/empty-box.png b/app/static/images/empty-box.png deleted file mode 100644 index 167b83a..0000000 Binary files a/app/static/images/empty-box.png and /dev/null differ diff --git a/app/static/images/examine.png b/app/static/images/examine.png deleted file mode 100644 index ec8a0fc..0000000 Binary files a/app/static/images/examine.png and /dev/null differ diff --git a/app/static/images/explosion-title.png b/app/static/images/explosion-title.png deleted file mode 100644 index 860299a..0000000 Binary files a/app/static/images/explosion-title.png and /dev/null differ diff --git a/app/static/images/explosion.png b/app/static/images/explosion.png deleted file mode 100644 index a9c46b0..0000000 Binary files a/app/static/images/explosion.png and /dev/null differ diff --git a/app/static/images/extension.png b/app/static/images/extension.png deleted file mode 100644 index f21fdc1..0000000 Binary files a/app/static/images/extension.png and /dev/null differ diff --git a/app/static/images/f.png b/app/static/images/f.png deleted file mode 100644 index bc4802a..0000000 Binary files a/app/static/images/f.png and /dev/null differ diff --git a/app/static/images/face.png b/app/static/images/face.png deleted file mode 100644 index 0f132ad..0000000 Binary files a/app/static/images/face.png and /dev/null differ diff --git a/app/static/images/gift.png b/app/static/images/gift.png deleted file mode 100644 index 2df647e..0000000 Binary files a/app/static/images/gift.png and /dev/null differ diff --git a/app/static/images/group01.png b/app/static/images/group01.png deleted file mode 100644 index 8bb615a..0000000 Binary files a/app/static/images/group01.png and /dev/null differ diff --git a/app/static/images/horn.png b/app/static/images/horn.png deleted file mode 100644 index 37cdc04..0000000 Binary files a/app/static/images/horn.png and /dev/null differ diff --git a/app/static/images/kanjia.png b/app/static/images/kanjia.png deleted file mode 100644 index 7ed6f91..0000000 Binary files a/app/static/images/kanjia.png and /dev/null differ diff --git a/app/static/images/keyboard.png b/app/static/images/keyboard.png deleted file mode 100644 index 9e40dc0..0000000 Binary files a/app/static/images/keyboard.png and /dev/null differ diff --git a/app/static/images/kjbj.png b/app/static/images/kjbj.png deleted file mode 100644 index f5e10aa..0000000 Binary files a/app/static/images/kjbj.png and /dev/null differ diff --git a/app/static/images/line.jpg b/app/static/images/line.jpg deleted file mode 100644 index 54097a1..0000000 Binary files a/app/static/images/line.jpg and /dev/null differ diff --git a/app/static/images/ling.png b/app/static/images/ling.png deleted file mode 100644 index cf5c71f..0000000 Binary files a/app/static/images/ling.png and /dev/null differ diff --git a/app/static/images/lingyhj.png b/app/static/images/lingyhj.png deleted file mode 100644 index 2a1b70f..0000000 Binary files a/app/static/images/lingyhj.png and /dev/null differ diff --git a/app/static/images/live-01.png b/app/static/images/live-01.png deleted file mode 100644 index c6fa04e..0000000 Binary files a/app/static/images/live-01.png and /dev/null differ diff --git a/app/static/images/live-02.png b/app/static/images/live-02.png deleted file mode 100644 index fe5d275..0000000 Binary files a/app/static/images/live-02.png and /dev/null differ diff --git a/app/static/images/live-03.png b/app/static/images/live-03.png deleted file mode 100644 index 62b796f..0000000 Binary files a/app/static/images/live-03.png and /dev/null differ diff --git a/app/static/images/lock.png b/app/static/images/lock.png deleted file mode 100644 index de216f0..0000000 Binary files a/app/static/images/lock.png and /dev/null differ diff --git a/app/static/images/lock2.png b/app/static/images/lock2.png deleted file mode 100644 index 8ce74a3..0000000 Binary files a/app/static/images/lock2.png and /dev/null differ diff --git a/app/static/images/logo.png b/app/static/images/logo.png deleted file mode 100644 index 4464251..0000000 Binary files a/app/static/images/logo.png and /dev/null differ diff --git a/app/static/images/logo2.png b/app/static/images/logo2.png deleted file mode 100644 index 36046f7..0000000 Binary files a/app/static/images/logo2.png and /dev/null differ diff --git a/app/static/images/medal01.png b/app/static/images/medal01.png deleted file mode 100644 index 4d5790c..0000000 Binary files a/app/static/images/medal01.png and /dev/null differ diff --git a/app/static/images/medal02.png b/app/static/images/medal02.png deleted file mode 100644 index 643bb39..0000000 Binary files a/app/static/images/medal02.png and /dev/null differ diff --git a/app/static/images/medal03.png b/app/static/images/medal03.png deleted file mode 100644 index 745df65..0000000 Binary files a/app/static/images/medal03.png and /dev/null differ diff --git a/app/static/images/member.png b/app/static/images/member.png deleted file mode 100644 index 3236eae..0000000 Binary files a/app/static/images/member.png and /dev/null differ diff --git a/app/static/images/memberCenter.png b/app/static/images/memberCenter.png deleted file mode 100644 index e63da58..0000000 Binary files a/app/static/images/memberCenter.png and /dev/null differ diff --git a/app/static/images/money.png b/app/static/images/money.png deleted file mode 100644 index 6fa73ee..0000000 Binary files a/app/static/images/money.png and /dev/null differ diff --git a/app/static/images/mores.png b/app/static/images/mores.png deleted file mode 100644 index 57478e3..0000000 Binary files a/app/static/images/mores.png and /dev/null differ diff --git a/app/static/images/news.png b/app/static/images/news.png deleted file mode 100644 index 5ecf788..0000000 Binary files a/app/static/images/news.png and /dev/null differ diff --git a/app/static/images/noAddress.png b/app/static/images/noAddress.png deleted file mode 100644 index edf1191..0000000 Binary files a/app/static/images/noAddress.png and /dev/null differ diff --git a/app/static/images/noCart.png b/app/static/images/noCart.png deleted file mode 100644 index 1a8abde..0000000 Binary files a/app/static/images/noCart.png and /dev/null differ diff --git a/app/static/images/noCoupon.png b/app/static/images/noCoupon.png deleted file mode 100644 index f334e44..0000000 Binary files a/app/static/images/noCoupon.png and /dev/null differ diff --git a/app/static/images/noNews.png b/app/static/images/noNews.png deleted file mode 100644 index 8f83e0e..0000000 Binary files a/app/static/images/noNews.png and /dev/null differ diff --git a/app/static/images/noOrder.png b/app/static/images/noOrder.png deleted file mode 100644 index 2ae122e..0000000 Binary files a/app/static/images/noOrder.png and /dev/null differ diff --git a/app/static/images/noSearch.png b/app/static/images/noSearch.png deleted file mode 100644 index c8e7edb..0000000 Binary files a/app/static/images/noSearch.png and /dev/null differ diff --git a/app/static/images/noShopper.png b/app/static/images/noShopper.png deleted file mode 100644 index 07aa1fc..0000000 Binary files a/app/static/images/noShopper.png and /dev/null differ diff --git a/app/static/images/one.png b/app/static/images/one.png deleted file mode 100644 index 0220014..0000000 Binary files a/app/static/images/one.png and /dev/null differ diff --git a/app/static/images/open.gif b/app/static/images/open.gif deleted file mode 100644 index 4943b52..0000000 Binary files a/app/static/images/open.gif and /dev/null differ diff --git a/app/static/images/order1.png b/app/static/images/order1.png deleted file mode 100644 index 02cd6ed..0000000 Binary files a/app/static/images/order1.png and /dev/null differ diff --git a/app/static/images/order2.png b/app/static/images/order2.png deleted file mode 100644 index 65250a7..0000000 Binary files a/app/static/images/order2.png and /dev/null differ diff --git a/app/static/images/order3.png b/app/static/images/order3.png deleted file mode 100644 index afab282..0000000 Binary files a/app/static/images/order3.png and /dev/null differ diff --git a/app/static/images/order4.png b/app/static/images/order4.png deleted file mode 100644 index fecb92b..0000000 Binary files a/app/static/images/order4.png and /dev/null differ diff --git a/app/static/images/order5.png b/app/static/images/order5.png deleted file mode 100644 index e4feebc..0000000 Binary files a/app/static/images/order5.png and /dev/null differ diff --git a/app/static/images/orderTime.png b/app/static/images/orderTime.png deleted file mode 100644 index 4003be6..0000000 Binary files a/app/static/images/orderTime.png and /dev/null differ diff --git a/app/static/images/phone_1.png b/app/static/images/phone_1.png deleted file mode 100644 index 44950db..0000000 Binary files a/app/static/images/phone_1.png and /dev/null differ diff --git a/app/static/images/plus.png b/app/static/images/plus.png deleted file mode 100644 index 9b57269..0000000 Binary files a/app/static/images/plus.png and /dev/null differ diff --git a/app/static/images/poster-close.png b/app/static/images/poster-close.png deleted file mode 100644 index 42f2857..0000000 Binary files a/app/static/images/poster-close.png and /dev/null differ diff --git a/app/static/images/posterbackgd.png b/app/static/images/posterbackgd.png deleted file mode 100644 index c553fd1..0000000 Binary files a/app/static/images/posterbackgd.png and /dev/null differ diff --git a/app/static/images/priceTag.png b/app/static/images/priceTag.png deleted file mode 100644 index 658455b..0000000 Binary files a/app/static/images/priceTag.png and /dev/null differ diff --git a/app/static/images/pricetitle.jpg b/app/static/images/pricetitle.jpg deleted file mode 100644 index ab055cd..0000000 Binary files a/app/static/images/pricetitle.jpg and /dev/null differ diff --git a/app/static/images/pth.png b/app/static/images/pth.png deleted file mode 100644 index 06f1368..0000000 Binary files a/app/static/images/pth.png and /dev/null differ diff --git a/app/static/images/qh.png b/app/static/images/qh.png deleted file mode 100644 index e435b73..0000000 Binary files a/app/static/images/qh.png and /dev/null differ diff --git a/app/static/images/record1.png b/app/static/images/record1.png deleted file mode 100644 index fd72634..0000000 Binary files a/app/static/images/record1.png and /dev/null differ diff --git a/app/static/images/record2.png b/app/static/images/record2.png deleted file mode 100644 index 2da37c3..0000000 Binary files a/app/static/images/record2.png and /dev/null differ diff --git a/app/static/images/record3.png b/app/static/images/record3.png deleted file mode 100644 index e472612..0000000 Binary files a/app/static/images/record3.png and /dev/null differ diff --git a/app/static/images/record4.png b/app/static/images/record4.png deleted file mode 100644 index db5bcd2..0000000 Binary files a/app/static/images/record4.png and /dev/null differ diff --git a/app/static/images/red-packets.png b/app/static/images/red-packets.png deleted file mode 100644 index 340217d..0000000 Binary files a/app/static/images/red-packets.png and /dev/null differ diff --git a/app/static/images/right-icon.png b/app/static/images/right-icon.png deleted file mode 100644 index 49b82c1..0000000 Binary files a/app/static/images/right-icon.png and /dev/null differ diff --git a/app/static/images/rushBuy.jpg b/app/static/images/rushBuy.jpg deleted file mode 100644 index 0c8906b..0000000 Binary files a/app/static/images/rushBuy.jpg and /dev/null differ diff --git a/app/static/images/score.png b/app/static/images/score.png deleted file mode 100644 index a6d46ec..0000000 Binary files a/app/static/images/score.png and /dev/null differ diff --git a/app/static/images/seckillTitle.png b/app/static/images/seckillTitle.png deleted file mode 100644 index f1e7e7c..0000000 Binary files a/app/static/images/seckillTitle.png and /dev/null differ diff --git a/app/static/images/sh.png b/app/static/images/sh.png deleted file mode 100644 index 5285a3e..0000000 Binary files a/app/static/images/sh.png and /dev/null differ diff --git a/app/static/images/share-info.png b/app/static/images/share-info.png deleted file mode 100644 index c6824d8..0000000 Binary files a/app/static/images/share-info.png and /dev/null differ diff --git a/app/static/images/shuoming.png b/app/static/images/shuoming.png deleted file mode 100644 index 8d3791f..0000000 Binary files a/app/static/images/shuoming.png and /dev/null differ diff --git a/app/static/images/sign03.png b/app/static/images/sign03.png deleted file mode 100644 index bb1c391..0000000 Binary files a/app/static/images/sign03.png and /dev/null differ diff --git a/app/static/images/sort1.png b/app/static/images/sort1.png deleted file mode 100644 index 2a88241..0000000 Binary files a/app/static/images/sort1.png and /dev/null differ diff --git a/app/static/images/sort2.png b/app/static/images/sort2.png deleted file mode 100644 index 74faf73..0000000 Binary files a/app/static/images/sort2.png and /dev/null differ diff --git a/app/static/images/sort3.png b/app/static/images/sort3.png deleted file mode 100644 index c3ce7d4..0000000 Binary files a/app/static/images/sort3.png and /dev/null differ diff --git a/app/static/images/spot.png b/app/static/images/spot.png deleted file mode 100644 index 29fdc33..0000000 Binary files a/app/static/images/spot.png and /dev/null differ diff --git a/app/static/images/stars1.png b/app/static/images/stars1.png deleted file mode 100644 index e99e709..0000000 Binary files a/app/static/images/stars1.png and /dev/null differ diff --git a/app/static/images/stars2.png b/app/static/images/stars2.png deleted file mode 100644 index c26dcb3..0000000 Binary files a/app/static/images/stars2.png and /dev/null differ diff --git a/app/static/images/stars3.png b/app/static/images/stars3.png deleted file mode 100644 index 21921f2..0000000 Binary files a/app/static/images/stars3.png and /dev/null differ diff --git a/app/static/images/stop.png b/app/static/images/stop.png deleted file mode 100644 index a7b944f..0000000 Binary files a/app/static/images/stop.png and /dev/null differ diff --git a/app/static/images/support.png b/app/static/images/support.png deleted file mode 100644 index e309976..0000000 Binary files a/app/static/images/support.png and /dev/null differ diff --git a/app/static/images/three.png b/app/static/images/three.png deleted file mode 100644 index 5dccbe5..0000000 Binary files a/app/static/images/three.png and /dev/null differ diff --git a/app/static/images/time.png b/app/static/images/time.png deleted file mode 100644 index d52fda3..0000000 Binary files a/app/static/images/time.png and /dev/null differ diff --git a/app/static/images/transparent.png b/app/static/images/transparent.png deleted file mode 100644 index 1f5972a..0000000 Binary files a/app/static/images/transparent.png and /dev/null differ diff --git a/app/static/images/two.png b/app/static/images/two.png deleted file mode 100644 index 6979a62..0000000 Binary files a/app/static/images/two.png and /dev/null differ diff --git a/app/static/images/up.png b/app/static/images/up.png deleted file mode 100644 index ef2a765..0000000 Binary files a/app/static/images/up.png and /dev/null differ diff --git a/app/static/images/user_bg.png b/app/static/images/user_bg.png deleted file mode 100644 index 033bc62..0000000 Binary files a/app/static/images/user_bg.png and /dev/null differ diff --git a/app/static/images/user_menu08.png b/app/static/images/user_menu08.png deleted file mode 100644 index d54bc51..0000000 Binary files a/app/static/images/user_menu08.png and /dev/null differ diff --git a/app/static/images/user_menu09.png b/app/static/images/user_menu09.png deleted file mode 100644 index c0a399d..0000000 Binary files a/app/static/images/user_menu09.png and /dev/null differ diff --git a/app/static/images/vacancy.png b/app/static/images/vacancy.png deleted file mode 100644 index fef8aff..0000000 Binary files a/app/static/images/vacancy.png and /dev/null differ diff --git a/app/static/images/value.jpg b/app/static/images/value.jpg deleted file mode 100644 index 32d4ab8..0000000 Binary files a/app/static/images/value.jpg and /dev/null differ diff --git a/app/static/images/vip.png b/app/static/images/vip.png deleted file mode 100644 index d39cccc..0000000 Binary files a/app/static/images/vip.png and /dev/null differ diff --git a/app/static/images/weiling.png b/app/static/images/weiling.png deleted file mode 100644 index 80cfec7..0000000 Binary files a/app/static/images/weiling.png and /dev/null differ diff --git a/app/static/images/writeOff.jpg b/app/static/images/writeOff.jpg deleted file mode 100644 index 867ebf4..0000000 Binary files a/app/static/images/writeOff.jpg and /dev/null differ diff --git a/app/static/images/xinjian.png b/app/static/images/xinjian.png deleted file mode 100644 index 01a0e24..0000000 Binary files a/app/static/images/xinjian.png and /dev/null differ diff --git a/app/static/images/xsms.png b/app/static/images/xsms.png deleted file mode 100644 index f1a7dd9..0000000 Binary files a/app/static/images/xsms.png and /dev/null differ diff --git a/app/static/images/xyou.png b/app/static/images/xyou.png deleted file mode 100644 index c95cfed..0000000 Binary files a/app/static/images/xyou.png and /dev/null differ diff --git a/app/static/images/xzuo.png b/app/static/images/xzuo.png deleted file mode 100644 index 7205a5a..0000000 Binary files a/app/static/images/xzuo.png and /dev/null differ diff --git a/app/static/images/yhjsy.png b/app/static/images/yhjsy.png deleted file mode 100644 index b1b253a..0000000 Binary files a/app/static/images/yhjsy.png and /dev/null differ diff --git a/app/static/img/live-logo.gif b/app/static/img/live-logo.gif deleted file mode 100644 index 1dfef3a..0000000 Binary files a/app/static/img/live-logo.gif and /dev/null differ diff --git a/app/store/getters.js b/app/store/getters.js deleted file mode 100644 index 67418cd..0000000 --- a/app/store/getters.js +++ /dev/null @@ -1,12 +0,0 @@ -export default { - token: state => state.app.token, - isLogin: state => !!state.app.token, - backgroundColor: state => state.app.backgroundColor, - userInfo: state => state.app.userInfo || {}, - uid: state => state.app.uid, - homeActive: state => state.app.homeActive, - home: state => state.app.home, - chatUrl: state => state.app.chatUrl, - systemPlatform: state => state.app.systemPlatform, - productType: state => state.app.productType -}; diff --git a/app/store/index.js b/app/store/index.js deleted file mode 100644 index 73af950..0000000 --- a/app/store/index.js +++ /dev/null @@ -1,13 +0,0 @@ -import Vue from "vue"; -import Vuex from "vuex"; -import modules from "./modules"; -import getters from "./getters"; - -Vue.use(Vuex); -const debug = process.env.NODE_ENV !== "production"; - -export default new Vuex.Store({ - modules, - getters, - strict: debug -}); diff --git a/app/store/modules/app.js b/app/store/modules/app.js deleted file mode 100644 index 5122e15..0000000 --- a/app/store/modules/app.js +++ /dev/null @@ -1,112 +0,0 @@ -import { - getUserInfo -} from "../../api/user.js"; -import { - LOGIN_STATUS, - UID, - PLATFORM -} from '../../config/cache'; -import Cache from '../../utils/cache'; -import { - USER_INFO -} from '../../config/cache'; - -const state = { - token: Cache.get(LOGIN_STATUS) || '', - backgroundColor: "#fff", - userInfo: Cache.get(USER_INFO)?JSON.parse(Cache.get(USER_INFO)):null, - uid: Cache.get(UID) || null, - homeActive: false, - chatUrl: Cache.get('chatUrl') || '', - systemPlatform: Cache.get(PLATFORM)?Cache.get(PLATFORM):'', - productType: Cache.get('productType') || '' -}; - -const mutations = { - LOGIN(state, opt) { - state.token = opt.token; - Cache.set(LOGIN_STATUS, opt.token); - }, - SETUID(state,val){ - state.uid = val; - Cache.set(UID, val); - }, - UPDATE_LOGIN(state, token) { - state.token = token; - }, - LOGOUT(state) { - state.token = undefined; - state.uid = undefined - Cache.clear(LOGIN_STATUS); - Cache.clear(UID); - Cache.clear(USER_INFO); - }, - BACKGROUND_COLOR(state, color) { - state.color = color; - document.body.style.backgroundColor = color; - }, - UPDATE_USERINFO(state, userInfo) { - state.userInfo = userInfo; - Cache.set(USER_INFO, userInfo); - }, - OPEN_HOME(state) { - state.homeActive = true; - }, - CLOSE_HOME(state) { - state.homeActive = false; - }, - SET_CHATURL(state, chatUrl){ - state.chatUrl = chatUrl; - }, - // AuthorizeType(state, authorizeType){ - // state.authorizeType = authorizeType; - // }, - SYSTEM_PLATFORM(state, systemPlatform){ - state.systemPlatform = systemPlatform; - Cache.set(PLATFORM, systemPlatform); - }, - //更新useInfo数据 - changInfo(state, payload) { - state.userInfo[payload.amount1] = payload.amount2; - Cache.set(USER_INFO, state.userInfo); - }, - //商品类型,用于区分视频号商品与一般商品 - PRODUCT_TYPE(state, productType) { - state.productType = productType; - Cache.set('productType', productType); - } -}; - -const actions = { - USERINFO({ - state, - commit - }, force) { - return new Promise(reslove => { - getUserInfo().then(res => { - commit("UPDATE_USERINFO", res.data); - reslove(res.data); - }); - }).catch(() => { - - }); - // debugger - // if (state.userInfo !== null && !force) - // return Promise.resolve(state.userInfo); - // else - // return new Promise(reslove => { - // getUserInfo().then(res => { - // commit("UPDATE_USERINFO", res.data); - // reslove(res.data); - // }); - // }).catch(() => { - - // }); - } -}; - -export default { - state, - mutations, - actions -}; diff --git a/app/store/modules/index.js b/app/store/modules/index.js deleted file mode 100644 index 2f30254..0000000 --- a/app/store/modules/index.js +++ /dev/null @@ -1,5 +0,0 @@ -import app from "./app"; - -export default { - app -}; diff --git a/app/uni.scss b/app/uni.scss deleted file mode 100644 index 0361f54..0000000 --- a/app/uni.scss +++ /dev/null @@ -1,78 +0,0 @@ -/** - * 这里是uni-app内置的常用样式变量 - * - * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 - * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App - * - */ - -/** - * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 - * - * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 - */ - -/* 颜色变量 */ - -/* 行为相关颜色 */ -$uni-color-primary: #007aff; -$uni-color-success: #4cd964; -$uni-color-warning: #f0ad4e; -$uni-color-error: #dd524d; - -/* crmeb颜色变量 */ -$theme-color:#E93323; -$theme-color-opacity:rgba(233,51,35,.6); -$bg-star: #f62c2c; -$bg-end:#f96e29; -$bg-star1: #F73730; // 主题渐变色1-开始 -$bg-end1:#F86429; // 主题渐变色1-结束 - - -/* 背景颜色 */ -$uni-bg-color:#ffffff; -$uni-bg-color-grey:#f8f8f8; -$uni-bg-color-hover:#f1f1f1;//点击状态颜色 -$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色 - -/* 边框颜色 */ -$uni-border-color:#c8c7cc; - -/* 尺寸变量 */ - -/* 文字尺寸 */ -$uni-font-size-sm:24upx; -$uni-font-size-base:28upx; -$uni-font-size-lg:32upx; - -/* 图片尺寸 */ -$uni-img-size-sm:40upx; -$uni-img-size-base:52upx; -$uni-img-size-lg:80upx; - -/* Border Radius */ -$uni-border-radius-sm: 4upx; -$uni-border-radius-base: 6upx; -$uni-border-radius-lg: 12upx; -$uni-border-radius-circle: 50%; - -/* 水平间距 */ -$uni-spacing-row-sm: 10px; -$uni-spacing-row-base: 20upx; -$uni-spacing-row-lg: 30upx; - -/* 垂直间距 */ -$uni-spacing-col-sm: 8upx; -$uni-spacing-col-base: 16upx; -$uni-spacing-col-lg: 24upx; - -/* 透明度 */ -$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 - -/* 文章场景相关 */ -$uni-color-title: #2C405A; // 文章标题颜色 -$uni-font-size-title:40upx; -$uni-color-subtitle: #555555; // 二级标题颜色 -$uni-font-size-subtitle:36upx; -$uni-color-paragraph: #3F536E; // 文章段落颜色 -$uni-font-size-paragraph:30upx; \ No newline at end of file diff --git a/app/utils/SubscribeMessage.js b/app/utils/SubscribeMessage.js deleted file mode 100644 index 233decf..0000000 --- a/app/utils/SubscribeMessage.js +++ /dev/null @@ -1,94 +0,0 @@ -const arrTemp = ["beforePay","afterPay","refundApply", "beforeRecharge", "createBargain","pink"]; - -// export function auth() { -// let tmplIds = {}; -// let messageTmplIds = uni.getStorageSync(SUBSCRIBE_MESSAGE); -// tmplIds = messageTmplIds ? JSON.parse(messageTmplIds) : {}; -// return tmplIds; -// } - -/** - * 支付成功后订阅消息id - * 订阅 确认收货通知 订单支付成功 新订单管理员提醒 - */ -export function openPaySubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[0]); - return subscribe(tmplIds); -} - -/** - * 订单相关订阅消息 - * 送货 发货 取消订单 - */ -export function openOrderSubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[1]); - return subscribe(tmplIds); -} - -/** - * 提现消息订阅 - * 成功 和 失败 消息 - */ -// export function openExtrctSubscribe() { -// let tmplIds = uni.getStorageSync('tempID' + arrTemp[2]); -// return subscribe(tmplIds); -// } - -/** - * 订单退款 - */ -export function openOrderRefundSubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[2]); - return subscribe(tmplIds); -} - -/** - * 充值成功 - */ -export function openRechargeSubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[3]); - return subscribe(tmplIds); -} - -/** - * 砍价成功 - */ -export function openBargainSubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[4]); - return subscribe(tmplIds); -} - - -/** - * 拼团成功 - */ -export function openPinkSubscribe() { - let tmplIds = uni.getStorageSync('tempID' + arrTemp[5]); - return subscribe(tmplIds); -} -// /** -// * 提现 -// */ -// export function openEextractSubscribe() { -// let tmplIds = JSON.parse(uni.getStorageSync('tempID' + paySubscribe)); -// return subscribe(tmplIds); -// } - -/** - * 调起订阅界面 - * array tmplIds 模板id - */ -export function subscribe(tmplIds) { - let wecaht = wx; - return new Promise((reslove, reject) => { - wecaht.requestSubscribeMessage({ - tmplIds: tmplIds, - success(res) { - return reslove(res); - }, - fail(res) { - return reslove(res); - } - }) - }); -} diff --git a/app/utils/base64src.js b/app/utils/base64src.js deleted file mode 100644 index 6fd65ab..0000000 --- a/app/utils/base64src.js +++ /dev/null @@ -1,23 +0,0 @@ -const fsm = wx.getFileSystemManager ? wx.getFileSystemManager() : null; -const FILE_BASE_NAME = 'tmp_base64src'; //自定义文件名 - -export function base64src(base64data, cb) { - const [, format, bodyData] = /data:image\/(\w+);base64,(.*)/.exec(base64data) || []; - if (!format) { - return (new Error('ERROR_BASE64SRC_PARSE')); - } - const filePath = `${wx.env.USER_DATA_PATH}/${FILE_BASE_NAME}.${format}`; - const buffer = wx.base64ToArrayBuffer(bodyData); - fsm.writeFile({ - filePath, - data: buffer, - encoding: 'binary', - success() { - cb(filePath); - }, - fail() { - return (new Error('ERROR_BASE64SRC_WRITE')); - }, - }); -}; -//module.exports = base64src; \ No newline at end of file diff --git a/app/utils/cache.js b/app/utils/cache.js deleted file mode 100644 index 0306389..0000000 --- a/app/utils/cache.js +++ /dev/null @@ -1,247 +0,0 @@ -// +---------------------------------------------------------------------- -// | CRMEB [ CRMEB赋能开发者,助力企业发展 ] -// +---------------------------------------------------------------------- -// | Copyright (c) 2016~2021 https://www.crmeb.com All rights reserved. -// +---------------------------------------------------------------------- -// | Licensed CRMEB并不是自由软件,未经许可不能去掉CRMEB相关版权 -// +---------------------------------------------------------------------- -// | Author: CRMEB Team -// +---------------------------------------------------------------------- - -import { EXPIRE } from '../config/app'; - -class Cache { - - constructor(handler) { - this.cacheSetHandler = uni.setStorageSync; - this.cacheGetHandler = uni.getStorageSync; - this.cacheClearHandler = uni.removeStorageSync; - this.cacheExpire = '_expire_2019_12_17_18_44'; - this.name = 'storage'; - } - - /** - * 获取当前时间戳 - */ - time() - { - return Math.round(new Date() / 1000); - } - - /** - * 日期字符串转时间戳 - * @param {Object} expiresTime - */ - strTotime(expiresTime){ - let expires_time = expiresTime.substring(0, 19); - expires_time = expires_time.replace(/-/g, '/'); - return Math.round(new Date(expires_time).getTime() / 1000); - } - - setExpireCaheTag(key, expire) { - expire = expire !== undefined ? expire : EXPIRE; - if (typeof expire === 'number') { - let tag = this.cacheGetHandler(this.cacheExpire), newTag = [],newKeys = []; - if (typeof tag === 'object' && tag.length) { - newTag = tag.map(item => { - newKeys.push(item.key); - if (item.key === key) { - item.expire = expire === 0 ? 0 : this.time() + expire; - } - return item; - }); - } - if (!newKeys.length || newKeys.indexOf(key) === -1) { - newTag.push({ - key: key, - expire: expire === 0 ? 0 : this.time() + expire - }); - } - this.cacheSetHandler(this.cacheExpire, newTag); - } - } - - /** - * 设置过期时间缓存 - * @param {Object} name key - * @param {Object} value value - * @param {Object} expire 过期时间 - * @param {Object} startTime 记录何时将值存入缓存,毫秒级 - */ - setItem(params){ - let obj = { - name:'', - value:'', - expires:"", - startTime:new Date().getTime() - } - let options = {}; - //将obj和传进来的params合并 - Object.assign(options,obj,params); - if(options.expires){ - //如果options.expires设置了的话 - //以options.name为key,options为值放进去 - // localStorage.setItem(options.name,JSON.stringify(options)); - uni.setStorageSync(options.name,JSON.stringify(options)); - }else{ - //如果options.expires没有设置,就判断一下value的类型 - let type = Object.prototype.toString.call(options.value); - //如果value是对象或者数组对象的类型,就先用JSON.stringify转一下,再存进去 - if(Object.prototype.toString.call(options.value) == '[object Object]'){ - options.value = JSON.stringify(options.value); - } - if(Object.prototype.toString.call(options.value) == '[object Array]'){ - options.value = JSON.stringify(options.value); - } - // localStorage.setItem(options.name,options.value); - uni.setStorageSync(options.name,options.value); - } - } - - /** - * 缓存是否过期,过期自动删除 - * @param {Object} key - * @param {Object} $bool true = 删除,false = 不删除 - */ - getExpireCahe(key,$bool) - { - try{ - let time = this.cacheGetHandler(key + this.cacheExpire); - if (time) { - let newTime = parseInt(time); - if (time && time < this.time() && !Number.isNaN(newTime)) { - if ($bool === undefined || $bool === true) { - this.cacheClearHandler(key); - this.cacheClearHandler(key + this.cacheExpire); - } - return false; - } else - return true; - } else { - return !!this.cacheGetHandler(key); - } - }catch(e){ - return false; - } - } - - /** - * 设置缓存 - * @param {Object} key - * @param {Object} data - */ - set(key,data,expire){ - if(typeof data === 'object') - data = JSON.stringify(data); - try{ - this.setExpireCaheTag(key,expire); - return this.cacheSetHandler(key,data); - }catch(e){ - return false; - } - } - - /** - * 检测缓存是否存在 - * @param {Object} key - */ - has(key) - { - return this.getExpireCahe(key); - } - - /** - * 获取缓存 - * @param {Object} key - * @param {Object} $default - * @param {Object} expire - */ - get(key,$default,expire){ - try{ - let isBe = this.getExpireCahe(key); - let data = this.cacheGetHandler(key); - if (data && isBe) { - if (typeof $default === 'boolean') - return JSON.parse(data); - else - return data; - } else { - if (typeof $default === 'function') { - let value = $default(); - this.set(key,value,expire); - return value; - } else { - this.set(key,$default,expire); - return $default; - } - } - }catch(e){ - return null; - } - } - - /** - * 删除缓存 - * @param {Object} key - */ - clear(key) - { - try{ - let cahceValue = this.cacheGetHandler(key + this.cacheExpire); - if(cahceValue) - this.cacheClearHandler(key + this.cacheExpire); - return this.cacheClearHandler(key); - }catch(e){ - return false; - } - } - - /** - * 清除过期缓存 - */ - clearOverdue() - { - // let cacheList = uni.getStorageInfoSync(),that = this; - // if (typeof cacheList.keys === 'object'){ - // cacheList.keys.forEach(item=>{ - // that.getExpireCahe(item); - // }) - // } - } - - /** - * 获取缓存,调用后无需转换数据类型 - * @param {Object} key - */ - getItem(name){ - // let item = localStorage.getItem(name); - let item = uni.getStorageSync(name); - //先将拿到的试着进行json转为对象的形式 - try{ - item = JSON.parse(item); - }catch(error){ - //如果不行就不是json的字符串,就直接返回 - item = item; - } - //如果有startTime的值,说明设置了失效时间 - if(item.startTime){ - let date = new Date().getTime(); - //何时将值取出减去刚存入的时间,与item.expires比较,如果大于就是过期了,如果小于或等于就还没过期 - if(date - item.startTime > item.expires){ - //缓存过期,清除缓存,返回false - // localStorage.removeItem(name); - uni.removeStorageSync(name); - return false; - }else{ - //缓存未过期,返回值 - return item.value; - } - }else{ - //如果没有设置失效时间,直接返回值 - return item; - } - } -} - - -export default new Cache; \ No newline at end of file diff --git a/app/utils/dialog.js b/app/utils/dialog.js deleted file mode 100644 index 8b13789..0000000 --- a/app/utils/dialog.js +++ /dev/null @@ -1 +0,0 @@ - diff --git a/app/utils/emoji.js b/app/utils/emoji.js deleted file mode 100644 index 117404f..0000000 --- a/app/utils/emoji.js +++ /dev/null @@ -1,62 +0,0 @@ -export default [ - "em-smile", - "em-laughing", - "em-blush", - "em-smiley", - "em-relaxed", - "em-smirk", - "em-heart_eyes", - "em-kissing_heart", - "em-kissing_closed_eyes", - "em-flushed", - "em-relieved", - "em-satisfied", - "em-grin", - "em-wink", - "em-stuck_out_tongue_winking_eye", - "em-stuck_out_tongue_closed_eyes", - "em-grinning", - "em-kissing", - "em-kissing_smiling_eyes", - "em-stuck_out_tongue", - "em-sleeping", - "em-worried", - "em-frowning", - "em-anguished", - "em-open_mouth", - "em-grimacing", - "em-confused", - "em-hushed", - "em-expressionless", - "em-unamused", - "em-sweat_smile", - "em-sweat", - "em-disappointed_relieved", - "em-weary", - "em-pensive", - "em-disappointed", - "em-confounded", - "em-fearful", - "em-cold_sweat", - "em-persevere", - "em-cry", - "em-sob", - "em-joy", - "em-astonished", - "em-scream", - "em-tired_face", - "em-angry", - "em-rage", - "em-triumph", - "em-sleepy", - "em-yum", - "em-mask", - "em-sunglasses", - "em-dizzy_face", - "em-imp", - "em-smiling_imp", - "em-neutral_face", - "em-no_mouth", - "em-innocent", - "em-alien" -]; diff --git a/app/utils/index.js b/app/utils/index.js deleted file mode 100644 index 76edab7..0000000 --- a/app/utils/index.js +++ /dev/null @@ -1,79 +0,0 @@ -import { spread } from "@/api/user"; -import Cache from "@/utils/cache"; - -/** - * 静默授权绑定上下级,使用在已经登录后扫描了别人的推广二维码 - * @param {Object} puid - */ -export function silenceBindingSpread() { - - - //#ifdef H5 || APP - let puid = Cache.get('spread'); - //#endif - - //#ifdef MP - let puid = getApp().globalData.spid; - //#endif - - puid = parseInt(puid); - if (Number.isNaN(puid)) { - puid = 0; - } - if (puid) { - spread(puid).then(res => {}).catch(res => {}); - //#ifdef H5 - Cache.clear('spread'); - //#endif - - //#ifdef MP - getApp().globalData.spid = 0; - getApp().globalData.code = 0; - //#endif - } else { - Cache.set('spread', 0); - } -} - -export function isWeixin() { - return navigator.userAgent.toLowerCase().indexOf("micromessenger") !== -1; -} - -export function parseQuery() { - const res = {}; - - const query = (location.href.split("?")[1] || "") - .trim() - .replace(/^(\?|#|&)/, ""); - - if (!query) { - return res; - } - - query.split("&").forEach(param => { - const parts = param.replace(/\+/g, " ").split("="); - const key = decodeURIComponent(parts.shift()); - const val = parts.length > 0 ? decodeURIComponent(parts.join("=")) : null; - - if (res[key] === undefined) { - res[key] = val; - } else if (Array.isArray(res[key])) { - res[key].push(val); - } else { - res[key] = [res[key], val]; - } - }); - - return res; -} - -// #ifdef H5 -const VUE_APP_WS_URL = process.env.VUE_APP_WS_URL || `ws://${location.hostname}:20001`; -export { - VUE_APP_WS_URL -} -// #endif - - - -export default parseQuery; diff --git a/app/utils/permission.js b/app/utils/permission.js deleted file mode 100644 index 03abce6..0000000 --- a/app/utils/permission.js +++ /dev/null @@ -1,245 +0,0 @@ -/// null = 未请求,1 = 已允许,0 = 拒绝|受限, 2 = 系统未开启 - -var isIOS - -function album() { - var result = 0; - var PHPhotoLibrary = plus.ios.import("PHPhotoLibrary"); - var authStatus = PHPhotoLibrary.authorizationStatus(); - if (authStatus === 0) { - result = null; - } else if (authStatus == 3) { - result = 1; - } else { - result = 0; - } - plus.ios.deleteObject(PHPhotoLibrary); - return result; -} - -function camera() { - var result = 0; - var AVCaptureDevice = plus.ios.import("AVCaptureDevice"); - var authStatus = AVCaptureDevice.authorizationStatusForMediaType('vide'); - if (authStatus === 0) { - result = null; - } else if (authStatus == 3) { - result = 1; - } else { - result = 0; - } - plus.ios.deleteObject(AVCaptureDevice); - return result; -} - -function location() { - var result = 0; - var cllocationManger = plus.ios.import("CLLocationManager"); - var enable = cllocationManger.locationServicesEnabled(); - var status = cllocationManger.authorizationStatus(); - if (!enable) { - result = 2; - } else if (status === 0) { - result = null; - } else if (status === 3 || status === 4) { - result = 1; - } else { - result = 0; - } - plus.ios.deleteObject(cllocationManger); - return result; -} - -function push() { - var result = 0; - var UIApplication = plus.ios.import("UIApplication"); - var app = UIApplication.sharedApplication(); - var enabledTypes = 0; - if (app.currentUserNotificationSettings) { - var settings = app.currentUserNotificationSettings(); - enabledTypes = settings.plusGetAttribute("types"); - if (enabledTypes == 0) { - result = 0; - console.log("推送权限没有开启"); - } else { - result = 1; - console.log("已经开启推送功能!") - } - plus.ios.deleteObject(settings); - } else { - enabledTypes = app.enabledRemoteNotificationTypes(); - if (enabledTypes == 0) { - result = 3; - console.log("推送权限没有开启!"); - } else { - result = 4; - console.log("已经开启推送功能!") - } - } - plus.ios.deleteObject(app); - plus.ios.deleteObject(UIApplication); - return result; -} - -function contact() { - var result = 0; - var CNContactStore = plus.ios.import("CNContactStore"); - var cnAuthStatus = CNContactStore.authorizationStatusForEntityType(0); - if (cnAuthStatus === 0) { - result = null; - } else if (cnAuthStatus == 3) { - result = 1; - } else { - result = 0; - } - plus.ios.deleteObject(CNContactStore); - return result; -} - -function record() { - var result = null; - var avaudiosession = plus.ios.import("AVAudioSession"); - var avaudio = avaudiosession.sharedInstance(); - var status = avaudio.recordPermission(); - console.log("permissionStatus:" + status); - if (status === 1970168948) { - result = null; - } else if (status === 1735552628) { - result = 1; - } else { - result = 0; - } - plus.ios.deleteObject(avaudiosession); - return result; -} - -function calendar() { - var result = null; - var EKEventStore = plus.ios.import("EKEventStore"); - var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(0); - if (ekAuthStatus == 3) { - result = 1; - console.log("日历权限已经开启"); - } else { - console.log("日历权限没有开启"); - } - plus.ios.deleteObject(EKEventStore); - return result; -} - -function memo() { - var result = null; - var EKEventStore = plus.ios.import("EKEventStore"); - var ekAuthStatus = EKEventStore.authorizationStatusForEntityType(1); - if (ekAuthStatus == 3) { - result = 1; - console.log("备忘录权限已经开启"); - } else { - console.log("备忘录权限没有开启"); - } - plus.ios.deleteObject(EKEventStore); - return result; -} - - -function requestIOS(permissionID) { - return new Promise((resolve, reject) => { - switch (permissionID) { - case "push": - resolve(push()); - break; - case "location": - resolve(location()); - break; - case "record": - resolve(record()); - break; - case "camera": - resolve(camera()); - break; - case "album": - resolve(album()); - break; - case "contact": - resolve(contact()); - break; - case "calendar": - resolve(calendar()); - break; - case "memo": - resolve(memo()); - break; - default: - resolve(0); - break; - } - }); -} - -function requestAndroid(permissionID) { - return new Promise((resolve, reject) => { - plus.android.requestPermissions( - [permissionID], - function(resultObj) { - var result = 0; - for (var i = 0; i < resultObj.granted.length; i++) { - var grantedPermission = resultObj.granted[i]; - console.log('已获取的权限:' + grantedPermission); - result = 1 - } - for (var i = 0; i < resultObj.deniedPresent.length; i++) { - var deniedPresentPermission = resultObj.deniedPresent[i]; - console.log('拒绝本次申请的权限:' + deniedPresentPermission); - result = 0 - } - for (var i = 0; i < resultObj.deniedAlways.length; i++) { - var deniedAlwaysPermission = resultObj.deniedAlways[i]; - console.log('永久拒绝申请的权限:' + deniedAlwaysPermission); - result = -1 - } - resolve(result); - }, - function(error) { - console.log('result error: ' + error.message) - resolve({ - code: error.code, - message: error.message - }); - } - ); - }); -} - -function gotoAppPermissionSetting() { - if (permission.isIOS) { - var UIApplication = plus.ios.import("UIApplication"); - var application2 = UIApplication.sharedApplication(); - var NSURL2 = plus.ios.import("NSURL"); - var setting2 = NSURL2.URLWithString("app-settings:"); - application2.openURL(setting2); - plus.ios.deleteObject(setting2); - plus.ios.deleteObject(NSURL2); - plus.ios.deleteObject(application2); - } else { - var Intent = plus.android.importClass("android.content.Intent"); - var Settings = plus.android.importClass("android.provider.Settings"); - var Uri = plus.android.importClass("android.net.Uri"); - var mainActivity = plus.android.runtimeMainActivity(); - var intent = new Intent(); - intent.setAction(Settings.ACTION_APPLICATION_DETAILS_SETTINGS); - var uri = Uri.fromParts("package", mainActivity.getPackageName(), null); - intent.setData(uri); - mainActivity.startActivity(intent); - } -} - -const permission = { - get isIOS(){ - return typeof isIOS === 'boolean' ? isIOS : (isIOS = uni.getSystemInfoSync().platform === 'ios') - }, - requestIOS: requestIOS, - requestAndroid: requestAndroid, - gotoAppSetting: gotoAppPermissionSetting -} - -module.exports = permission diff --git a/app/utils/request.js b/app/utils/request.js deleted file mode 100644 index cb743d7..0000000 --- a/app/utils/request.js +++ /dev/null @@ -1,68 +0,0 @@ -import { - HTTP_REQUEST_URL, - HEADER, - TOKENNAME, - HEADERPARAMS -} from '@/config/app'; -import { - toLogin, - checkLogin -} from '../libs/login'; -import store from '../store'; - - -/** - * 发送请求 - */ -function baseRequest(url, method, data, { - noAuth = false, - noVerify = false -}, params) { - let Url = HTTP_REQUEST_URL,header = HEADER - if (params != undefined) { - header = HEADERPARAMS; - } - if (!noAuth) { - //登录过期自动登录 - if (!store.state.app.token && !checkLogin()) { - toLogin(); - return Promise.reject({ - msg: '未登录' - }); - } - } - if (store.state.app.token) header[TOKENNAME] = store.state.app.token; - return new Promise((reslove, reject) => { - Url=HTTP_REQUEST_URL||'http://api.front.hdq.xbdzz.cn' - uni.request({ - url: Url + '/api/front/' + url, - method: method || 'GET', - header: header, - data: data || {}, - success: (res) => { - if (noVerify) - reslove(res.data, res); - else if (res.data.code == 200) - reslove(res.data, res); - else if ([410000, 410001, 410002, 401].indexOf(res.data.code) !== -1) { - toLogin(); - reject(res.data); - } else - reject(res.data.message || '系统错误'); - }, - fail: (msg) => { - reject('请求失败'); - } - }) - }); -} - -const request = {}; - -['options', 'get', 'post', 'put', 'head', 'delete', 'trace', 'connect'].forEach((method) => { - request[method] = (api, data, opt, params) => baseRequest(api, method, data, opt || {}, params) -}); - - - -export default request; diff --git a/app/utils/util.js b/app/utils/util.js deleted file mode 100644 index 4847c0e..0000000 --- a/app/utils/util.js +++ /dev/null @@ -1,793 +0,0 @@ -import { - TOKENNAME, - HTTP_REQUEST_URL -} from '../config/app.js'; -import {HTTP_ADMIN_URL} from '@/config/app.js'; -import store from '../store'; -import { - pathToBase64 -} from '@/plugin/image-tools/index.js'; -export default { - /** - * opt object | string - * to_url object | string - * 例: - * this.Tips('/pages/test/test'); 跳转不提示 - * this.Tips({title:'提示'},'/pages/test/test'); 提示并跳转 - * this.Tips({title:'提示'},{tab:1,url:'/pages/index/index'}); 提示并跳转值table上 - * tab=1 一定时间后跳转至 table上 - * tab=2 一定时间后跳转至非 table上 - * tab=3 一定时间后返回上页面 - * tab=4 关闭所有页面跳转至非table上 - * tab=5 关闭当前页面跳转至table上 - */ - Tips: function(opt, to_url) { - if (typeof opt == 'string') { - to_url = opt; - opt = {}; - } - let title = opt.title || '', - icon = opt.icon || 'none', - endtime = opt.endtime || 2000, - success = opt.success; - if (title) uni.showToast({ - title: title, - icon: icon, - duration: endtime, - success - }) - if (to_url != undefined) { - if (typeof to_url == 'object') { - let tab = to_url.tab || 1, - url = to_url.url || ''; - switch (tab) { - case 1: - //一定时间后跳转至 table - setTimeout(function() { - uni.switchTab({ - url: url - }) - }, endtime); - break; - case 2: - //跳转至非table页面 - setTimeout(function() { - uni.navigateTo({ - url: url, - }) - }, endtime); - break; - case 3: - //返回上页面 - setTimeout(function() { - // #ifndef H5 - uni.navigateBack({ - delta: parseInt(url), - }) - // #endif - // #ifdef H5 - history.back(); - // #endif - }, endtime); - break; - case 4: - //关闭当前所有页面跳转至非table页面 - setTimeout(function() { - uni.reLaunch({ - url: url, - }) - }, endtime); - break; - case 5: - //关闭当前页面跳转至非table页面 - setTimeout(function() { - uni.redirectTo({ - url: url, - }) - }, endtime); - break; - } - - } else if (typeof to_url == 'function') { - setTimeout(function() { - to_url && to_url(); - }, endtime); - } else { - //没有提示时跳转不延迟 - setTimeout(function() { - uni.navigateTo({ - url: to_url, - }) - }, title ? endtime : 0); - } - } - }, - /** - * 移除数组中的某个数组并组成新的数组返回 - * @param array array 需要移除的数组 - * @param int index 需要移除的数组的键值 - * @param string | int 值 - * @return array - * - */ - ArrayRemove: function(array, index, value) { - const valueArray = []; - if (array instanceof Array) { - for (let i = 0; i < array.length; i++) { - if (typeof index == 'number' && array[index] != i) { - valueArray.push(array[i]); - } else if (typeof index == 'string' && array[i][index] != value) { - valueArray.push(array[i]); - } - } - } - return valueArray; - }, - /** - * 生成海报获取文字 - * @param string text 为传入的文本 - * @param int num 为单行显示的字节长度 - * @return array - */ - textByteLength: function(text, num) { - - let strLength = 0; - let rows = 1; - let str = 0; - let arr = []; - for (let j = 0; j < text.length; j++) { - if (text.charCodeAt(j) > 255) { - strLength += 2; - if (strLength > rows * num) { - strLength++; - arr.push(text.slice(str, j)); - str = j; - rows++; - } - } else { - strLength++; - if (strLength > rows * num) { - arr.push(text.slice(str, j)); - str = j; - rows++; - } - } - } - arr.push(text.slice(str, text.length)); - return [strLength, arr, rows] // [处理文字的总字节长度,每行显示内容的数组,行数] - }, - - /** - * 获取分享海报 - * @param array arr2 海报素材 - * @param string store_name 素材文字 - * @param string price 价格 - * @param string ot_price 原始价格 - * @param function successFn 回调函数 - * - * - */ - PosterCanvas: function(arr2, store_name, price, ot_price, successFn) { - let that = this; - const ctx = uni.createCanvasContext('firstCanvas'); - ctx.clearRect(0, 0, 0, 0); - /** - * 只能获取合法域名下的图片信息,本地调试无法获取 - * - */ - ctx.fillStyle = '#fff'; - ctx.fillRect(0, 0, 750, 1150); - uni.getImageInfo({ - src: arr2[0], - success: function(res) { - const WIDTH = res.width; - const HEIGHT = res.height; - // ctx.drawImage(arr2[0], 0, 0, WIDTH, 1050); - ctx.drawImage(arr2[1], 0, 0, WIDTH, WIDTH); - ctx.save(); - let r = 110; - let d = r * 2; - let cx = 480; - let cy = 790; - ctx.arc(cx + r, cy + r, r, 0, 2 * Math.PI); - // ctx.clip(); - ctx.drawImage(arr2[2], cx, cy, d, d); - ctx.restore(); - const CONTENT_ROW_LENGTH = 20; - let [contentLeng, contentArray, contentRows] = that.textByteLength(store_name, - CONTENT_ROW_LENGTH); - if (contentRows > 2) { - contentRows = 2; - let textArray = contentArray.slice(0, 2); - textArray[textArray.length - 1] += '……'; - contentArray = textArray; - } - ctx.setTextAlign('left'); - ctx.setFontSize(36); - ctx.setFillStyle('#000'); - // let contentHh = 36 * 1.5; - let contentHh = 36; - for (let m = 0; m < contentArray.length; m++) { - // ctx.fillText(contentArray[m], 50, 1000 + contentHh * m,750); - if (m) { - ctx.fillText(contentArray[m], 50, 1000 + contentHh * m + 18, 1100); - } else { - ctx.fillText(contentArray[m], 50, 1000 + contentHh * m, 1100); - } - } - ctx.setTextAlign('left') - ctx.setFontSize(72); - ctx.setFillStyle('#DA4F2A'); - ctx.fillText('¥' + price, 40, 820 + contentHh); - - ctx.setTextAlign('left') - ctx.setFontSize(36); - ctx.setFillStyle('#999'); - ctx.fillText('¥' + ot_price, 50, 876 + contentHh); - - var underline = function(ctx, text, x, y, size, color, thickness, offset) { - var width = ctx.measureText(text).width; - switch (ctx.textAlign) { - case "center": - x -= (width / 2); - break; - case "right": - x -= width; - break; - } - - y += size + offset; - - ctx.beginPath(); - ctx.strokeStyle = color; - ctx.lineWidth = thickness; - ctx.moveTo(x, y); - ctx.lineTo(x + width, y); - ctx.stroke(); - } - underline(ctx, '¥' + ot_price, 55, 865, 36, '#999', 2, 0) - ctx.setTextAlign('left') - ctx.setFontSize(28); - ctx.setFillStyle('#999'); - ctx.fillText('长按或扫描查看', 490, 1030 + contentHh); - ctx.draw(true, function() { - uni.canvasToTempFilePath({ - canvasId: 'firstCanvas', - fileType: 'png', - destWidth: WIDTH, - destHeight: HEIGHT, - success: function(res) { - // uni.hideLoading(); - successFn && successFn(res.tempFilePath); - } - }) - }); - }, - fail: function(err) { - console.log('失败', err) - uni.hideLoading(); - that.Tips({ - title: '无法获取图片信息' - }); - } - }) - }, - /** - * 绘制文字自动换行 - * @param array arr2 海报素材 - * @param Number x , y 绘制的坐标 - * @param Number maxWigth 绘制文字的宽度 - * @param Number lineHeight 行高 - * @param Number maxRowNum 最大行数 - */ - canvasWraptitleText(canvas, text, x, y, maxWidth, lineHeight, maxRowNum) { - if (typeof text != 'string' || typeof x != 'number' || typeof y != 'number') { - return; - } - // canvas.font = '20px Bold PingFang SC'; //绘制文字的字号和大小 - // 字符分隔为数组 - var arrText = text.split(''); - var line = ''; - var rowNum = 1 - for (var n = 0; n < arrText.length; n++) { - var testLine = line + arrText[n]; - var metrics = canvas.measureText(testLine); - var testWidth = metrics.width; - if (testWidth > maxWidth && n > 0) { - if (rowNum >= maxRowNum) { - var arrLine = testLine.split('') - arrLine.splice(-9) - var newTestLine = arrLine.join("") - newTestLine += "..." - canvas.fillText(newTestLine, x, y); - //如果需要在省略号后面添加其他的东西,就在这个位置写(列如添加扫码查看详情字样) - //canvas.fillStyle = '#2259CA'; - //canvas.fillText('扫码查看详情',x + maxWidth-90, y); - return - } - canvas.fillText(line, x, y); - line = arrText[n]; - y += lineHeight; - rowNum += 1 - } else { - line = testLine; - } - } - canvas.fillText(line, x, y); - }, - /** - * 获取活动分享海报 - * @param array arr2 海报素材 - * @param string storeName 素材文字 - * @param string price 价格 - * @param string people 人数 - * @param string count 剩余人数 - * @param function successFn 回调函数 - */ - activityCanvas: function(arrImages, storeName, price, people, count,num,successFn) { - let that = this; - let rain = 2; - const context = uni.createCanvasContext('activityCanvas'); - context.clearRect(0, 0, 0, 0); - /** - * 只能获取合法域名下的图片信息,本地调试无法获取 - * - */ - context.fillStyle = '#fff'; - context.fillRect(0, 0, 594, 850); - uni.getImageInfo({ - src: arrImages[0], - success: function(res) { - context.drawImage(arrImages[0], 0, 0, 594, 850); - context.setFontSize(14*rain); - context.setFillStyle('#333333'); - that.canvasWraptitleText(context, storeName, 110*rain, 110*rain, 230*rain, 30*rain, 1) - context.drawImage(arrImages[2], 68*rain, 194*rain, 160*rain, 160*rain); - context.save(); - - context.setFontSize(14*rain); - context.setFillStyle('#fc4141'); - context.fillText('¥', 157*rain, 145*rain); - - context.setFontSize(24*rain); - context.setFillStyle('#fc4141'); - context.fillText(price, 170*rain, 145*rain); - - context.setFontSize(10*rain); - context.setFillStyle('#fff'); - context.fillText(people, 118*rain, 143*rain); - - - context.setFontSize(12*rain); - context.setFillStyle('#666666'); - context.setTextAlign('center'); - context.fillText( count , (167-num)*rain, 166*rain); - - that.handleBorderRect(context, 27*rain, 94*rain, 75*rain, 75*rain, 6*rain); - context.clip(); - context.drawImage(arrImages[1], 27*rain, 94*rain, 75*rain, 75*rain); - context.draw(true, function() { - uni.canvasToTempFilePath({ - canvasId: 'activityCanvas', - fileType: 'png', - destWidth: 594, - destHeight: 850, - success: function(res) { - // uni.hideLoading(); - successFn && successFn(res.tempFilePath); - } - }) - }); - - }, - fail: function(err) { - console.log('失败', err) - uni.hideLoading(); - that.Tips({ - title: '无法获取图片信息' - }); - } - }) - }, - - /** - * 图片圆角设置 - * @param string x x轴位置 - * @param string y y轴位置 - * @param string w 图片宽 - * @param string y 图片高 - * @param string r 圆角值 - */ - handleBorderRect(ctx, x, y, w, h, r) { - ctx.beginPath(); - // 左上角 - ctx.arc(x + r, y + r, r, Math.PI, 1.5 * Math.PI); - ctx.moveTo(x + r, y); - ctx.lineTo(x + w - r, y); - ctx.lineTo(x + w, y + r); - // 右上角 - ctx.arc(x + w - r, y + r, r, 1.5 * Math.PI, 2 * Math.PI); - ctx.lineTo(x + w, y + h - r); - ctx.lineTo(x + w - r, y + h); - // 右下角 - ctx.arc(x + w - r, y + h - r, r, 0, 0.5 * Math.PI); - ctx.lineTo(x + r, y + h); - ctx.lineTo(x, y + h - r); - // 左下角 - ctx.arc(x + r, y + h - r, r, 0.5 * Math.PI, Math.PI); - ctx.lineTo(x, y + r); - ctx.lineTo(x + r, y); - - ctx.fill(); - ctx.closePath(); - }, - - /* - * 单图上传 - * @param object opt - * @param callable successCallback 成功执行方法 data - * @param callable errorCallback 失败执行方法 - */ - uploadImageOne: function(opt, successCallback, errorCallback) { - let that = this; - if (typeof opt === 'string') { - let url = opt; - opt = {}; - opt.url = url; - } - let count = opt.count || 1, - sizeType = opt.sizeType || ['compressed'], - sourceType = opt.sourceType || ['album', 'camera'], - is_load = opt.is_load || true, - uploadUrl = opt.url || '', - inputName = opt.name || 'pics', - pid = opt.pid, - model = opt.model; - - uni.chooseImage({ - count: count, //最多可以选择的图片总数 - sizeType: sizeType, // 可以指定是原图还是压缩图,默认二者都有 - sourceType: sourceType, // 可以指定来源是相册还是相机,默认二者都有 - success: function(res) { - //启动上传等待中... - uni.showLoading({ - title: '图片上传中', - }); - let urlPath = HTTP_ADMIN_URL + '/api/admin/upload/image' + "?model=" + model + "&pid=" + pid - let localPath = res.tempFilePaths[0]; - uni.uploadFile({ - url: urlPath, - filePath: localPath, - name: inputName, - - header: { - // #ifdef MP - "Content-Type": "multipart/form-data", - // #endif - [TOKENNAME]: store.state.app.token - }, - success: function(res) { - uni.hideLoading(); - if (res.statusCode == 403) { - that.Tips({ - title: res.data - }); - } else { - let data = res.data ? JSON.parse(res.data) : {}; - if (data.code == 200) { - data.data.localPath = localPath; - successCallback && successCallback(data) - } else { - errorCallback && errorCallback(data); - that.Tips({ - title: data.message - }); - } - } - }, - fail: function(res) { - uni.hideLoading(); - that.Tips({ - title: '上传图片失败' - }); - } - }) - // pathToBase64(res.tempFilePaths[0]) - // .then(imgBase64 => { - // console.log(imgBase64); - - // }) - // .catch(error => { - // console.error(error) - // }) - } - }) - }, - /** - * 处理服务器扫码带进来的参数 - * @param string param 扫码携带参数 - * @param string k 整体分割符 默认为:& - * @param string p 单个分隔符 默认为:= - * @return object - * - */ - // #ifdef MP - getUrlParams: function(param, k, p) { - if (typeof param != 'string') return {}; - k = k ? k : '&'; //整体参数分隔符 - p = p ? p : '='; //单个参数分隔符 - var value = {}; - if (param.indexOf(k) !== -1) { - param = param.split(k); - for (var val in param) { - if (param[val].indexOf(p) !== -1) { - var item = param[val].split(p); - value[item[0]] = item[1]; - } - } - } else if (param.indexOf(p) !== -1) { - var item = param.split(p); - value[item[0]] = item[1]; - } else { - return param; - } - return value; - }, - /**根据格式组装公共参数 - * @param {Object} value - */ - formatMpQrCodeData(value){ - let values = value.split(','); - let result = {}; - if(values.length === 2){ - let v1 = values[0].split(":"); - if (v1[0] === 'pid') { - result.spread = v1[1]; - } else{ - result.id = v1[1]; - } - let v2 = values[1].split(":"); - if (v2[0] === 'pid') { - result.spread = v2[1]; - }else{ - result.id = v2[1]; - } - }else{ - result = values[0].split(":")[1]; - } - return result; - }, - // #endif - /* - * 合并数组 - */ - SplitArray(list, sp) { - if (typeof list != 'object') return []; - if (sp === undefined) sp = []; - for (var i = 0; i < list.length; i++) { - sp.push(list[i]); - } - return sp; - }, - trim(str) { - return String.prototype.trim.call(str); - }, - $h: { - //除法函数,用来得到精确的除法结果 - //说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显。这个函数返回较为精确的除法结果。 - //调用:$h.Div(arg1,arg2) - //返回值:arg1除以arg2的精确结果 - Div: function(arg1, arg2) { - arg1 = parseFloat(arg1); - arg2 = parseFloat(arg2); - var t1 = 0, - t2 = 0, - r1, r2; - try { - t1 = arg1.toString().split(".")[1].length; - } catch (e) {} - try { - t2 = arg2.toString().split(".")[1].length; - } catch (e) {} - r1 = Number(arg1.toString().replace(".", "")); - r2 = Number(arg2.toString().replace(".", "")); - return this.Mul(r1 / r2, Math.pow(10, t2 - t1)); - }, - //加法函数,用来得到精确的加法结果 - //说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。 - //调用:$h.Add(arg1,arg2) - //返回值:arg1加上arg2的精确结果 - Add: function(arg1, arg2) { - arg2 = parseFloat(arg2); - var r1, r2, m; - try { - r1 = arg1.toString().split(".")[1].length - } catch (e) { - r1 = 0 - } - try { - r2 = arg2.toString().split(".")[1].length - } catch (e) { - r2 = 0 - } - m = Math.pow(100, Math.max(r1, r2)); - return (this.Mul(arg1, m) + this.Mul(arg2, m)) / m; - }, - //减法函数,用来得到精确的减法结果 - //说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的减法结果。 - //调用:$h.Sub(arg1,arg2) - //返回值:arg1减去arg2的精确结果 - Sub: function(arg1, arg2) { - arg1 = parseFloat(arg1); - arg2 = parseFloat(arg2); - var r1, r2, m, n; - try { - r1 = arg1.toString().split(".")[1].length - } catch (e) { - r1 = 0 - } - try { - r2 = arg2.toString().split(".")[1].length - } catch (e) { - r2 = 0 - } - m = Math.pow(10, Math.max(r1, r2)); - //动态控制精度长度 - n = (r1 >= r2) ? r1 : r2; - return ((this.Mul(arg1, m) - this.Mul(arg2, m)) / m).toFixed(n); - }, - //乘法函数,用来得到精确的乘法结果 - //说明:javascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。 - //调用:$h.Mul(arg1,arg2) - //返回值:arg1乘以arg2的精确结果 - Mul: function(arg1, arg2) { - arg1 = parseFloat(arg1); - arg2 = parseFloat(arg2); - var m = 0, - s1 = arg1.toString(), - s2 = arg2.toString(); - try { - m += s1.split(".")[1].length - } catch (e) {} - try { - m += s2.split(".")[1].length - } catch (e) {} - return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m); - }, - }, - // 获取地理位置; - $L: { - async getLocation() { - // #ifdef MP-WEIXIN || MP-TOUTIAO || MP-QQ - let status = await this.getSetting(); - if (status === 2) { - this.openSetting(); - return; - } - // #endif - - this.doGetLocation(); - }, - doGetLocation() { - uni.getLocation({ - success: (res) => { - uni.removeStorageSync('CACHE_LONGITUDE'); - uni.removeStorageSync('CACHE_LATITUDE'); - uni.setStorageSync('CACHE_LONGITUDE', res.longitude); - uni.setStorageSync('CACHE_LATITUDE', res.latitude); - }, - fail: (err) => { - // #ifdef MP-BAIDU - if (err.errCode === 202 || err.errCode === 10003) { // 202模拟器 10003真机 user deny - this.openSetting(); - } - // #endif - // #ifndef MP-BAIDU - if (err.errMsg.indexOf("auth deny") >= 0) { - uni.showToast({ - title: "访问位置被拒绝" - }) - } else { - uni.showToast({ - title: err.errMsg - }) - } - // #endif - } - }) - }, - getSetting: function() { - return new Promise((resolve, reject) => { - uni.getSetting({ - success: (res) => { - if (res.authSetting['scope.userLocation'] === undefined) { - resolve(0); - return; - } - if (res.authSetting['scope.userLocation']) { - resolve(1); - } else { - resolve(2); - } - } - }); - }); - }, - openSetting: function() { - uni.openSetting({ - success: (res) => { - if (res.authSetting && res.authSetting['scope.userLocation']) { - this.doGetLocation(); - } - }, - fail: (err) => {} - }) - }, - async checkPermission() { - let status = permision.isIOS ? await permision.requestIOS('location') : - await permision.requestAndroid('android.permission.ACCESS_FINE_LOCATION'); - - if (status === null || status === 1) { - status = 1; - } else if (status === 2) { - uni.showModal({ - content: "系统定位已关闭", - confirmText: "确定", - showCancel: false, - success: function(res) {} - }) - } else if (status.code) { - uni.showModal({ - content: status.message - }) - } else { - uni.showModal({ - content: "需要定位权限", - confirmText: "设置", - success: function(res) { - if (res.confirm) { - permision.gotoAppSetting(); - } - } - }) - } - return status; - }, - }, - - toStringValue: function(obj) { - if (obj instanceof Array) { - var arr = []; - for (var i = 0; i < obj.length; i++) { - arr[i] = toStringValue(obj[i]); - } - return arr; - } else if (typeof obj == 'object') { - for (var p in obj) { - obj[p] = toStringValue(obj[p]); - } - } else if (typeof obj == 'number') { - obj = obj + ''; - } - return obj; - }, - - /* - * 替换域名 - */ - setDomain: function(url) { - url = url ? url.toString() : ''; - if (url.indexOf("https://") > -1) return url; - else return url.replace('http://', 'https://'); - }, - - - - /** - * 姓名除了姓显示其他 - */ - formatName: function(str) { - return str.substr(0, 1) + new Array(str.length).join('*'); - } - -} diff --git a/app/utils/validate.js b/app/utils/validate.js deleted file mode 100644 index 8f248bb..0000000 --- a/app/utils/validate.js +++ /dev/null @@ -1,49 +0,0 @@ -/** - * 验证小数点后两位及多个小数 - * money 金额 -*/ -export function isMoney(money) { - var reg = /(^[1-9]([0-9]+)?(\.[0-9]{1,2})?$)|(^(0){1}$)|(^[0-9]\.[0-9]([0-9])?$)/ - if (reg.test(money)) { - return true - } else { - return false - } -} - -/** - * 验证手机号码 - * money 金额 -*/ -export function checkPhone(phone) { - var reg = /^1(3|4|5|6|7|8|9)\d{9}$/ - if (reg.test(phone)) { - return true - } else { - return false - } -} - -/** - * 函数防抖 (只执行最后一次点击) - * @param fn - * @param delay - * @returns {Function} - * @constructor - */ -export const Debounce = (fn, t) => { - const delay = t || 500 - let timer - return function() { - const args = arguments - if (timer) { - clearTimeout(timer) - } - timer = setTimeout(() => { - timer = null - fn.apply(this, args) - }, delay) - } -} - - diff --git a/app/vue.config.js b/app/vue.config.js deleted file mode 100644 index 5d6b780..0000000 --- a/app/vue.config.js +++ /dev/null @@ -1,11 +0,0 @@ -module.exports = { - productionSourceMap: true, // 生产打包时不输出map文件,增加打包速度 - configureWebpack: config => { - // if (process.env.NODE_ENV === 'production') { - // config.optimization.minimizer[0].options.terserOptions.compress.warnings = false - // config.optimization.minimizer[0].options.terserOptions.compress.drop_console = true - // config.optimization.minimizer[0].options.terserOptions.compress.drop_debugger = true - // config.optimization.minimizer[0].options.terserOptions.compress.pure_funcs = ['console.log'] - // } - } -}