From 1311eb03b8e7426163db7985df703ca98982f562 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=E8=B5=B5=E5=BF=A0=E6=9E=97?= <170083662@qq.com>
Date: Wed, 10 Jul 2024 22:44:18 +0800
Subject: [PATCH] =?UTF-8?q?=E5=B7=B2=E6=94=AF=E4=BB=98=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E5=88=97=E8=A1=A8=EF=BC=9Awhere.payStatus=20=3D=201;?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.hbuilderx/launch.json | 16 +
dist/dev/mp-weixin/api/booking/card/index.js | 26 +
.../dev/mp-weixin/api/booking/coupon/index.js | 16 +
.../dev/mp-weixin/api/booking/course/index.js | 26 +
.../mp-weixin/api/booking/emergency/index.js | 37 +
dist/dev/mp-weixin/api/booking/field/index.js | 26 +
.../mp-weixin/api/booking/integral/index.js | 27 +
dist/dev/mp-weixin/api/booking/item/index.js | 16 +
dist/dev/mp-weixin/api/booking/match/index.js | 26 +
.../mp-weixin/api/booking/matchOrder/index.js | 27 +
.../dev/mp-weixin/api/booking/period/index.js | 16 +
.../mp-weixin/api/booking/student/index.js | 16 +
.../mp-weixin/api/booking/userCard/index.js | 39 +
.../api/booking/userCardLog/index.js | 16 +
.../mp-weixin/api/booking/userCoupon/index.js | 51 +
.../api/booking/userInvoice/index.js | 69 +
dist/dev/mp-weixin/api/booking/users/index.js | 27 +
dist/dev/mp-weixin/api/cms/article/index.js | 24 +
dist/dev/mp-weixin/api/cms/mp-menu/index.js | 29 +
dist/dev/mp-weixin/api/layout/index.js | 37 +
dist/dev/mp-weixin/api/oa/project/index.js | 2 +
.../dev/mp-weixin/api/passport/login/index.js | 35 +
dist/dev/mp-weixin/api/shop/goods/index.js | 26 +
.../mp-weixin/api/shop/goodsCategory/index.js | 16 +
dist/dev/mp-weixin/api/shop/merchant/index.js | 31 +
dist/dev/mp-weixin/api/shop/order/index.js | 58 +
.../mp-weixin/api/shop/userAddress/index.js | 48 +
dist/dev/mp-weixin/api/shop/users/index.js | 14 +
.../mp-weixin/api/shop/wechatDeposit/index.js | 16 +
dist/dev/mp-weixin/api/system/cache/index.js | 2 +
.../api/system/dictionary-data/index.js | 2 +
dist/dev/mp-weixin/api/system/file/index.js | 51 +
.../dev/mp-weixin/api/system/payment/index.js | 13 +
dist/dev/mp-weixin/api/system/user/index.js | 13 +
.../mp-weixin/api/user/balance-log/index.js | 11 +
dist/dev/mp-weixin/app.js | 83 +
dist/dev/mp-weixin/app.json | 101 +
dist/dev/mp-weixin/app.wxss | 2695 ++
dist/dev/mp-weixin/common/vendor.js | 21509 ++++++++++++++++
dist/dev/mp-weixin/config/setting.js | 9 +
dist/dev/mp-weixin/package/admin/field.js | 521 +
dist/dev/mp-weixin/package/admin/field.json | 21 +
dist/dev/mp-weixin/package/admin/field.wxml | 1 +
dist/dev/mp-weixin/package/admin/field.wxss | 194 +
dist/dev/mp-weixin/package/admin/index.js | 247 +
dist/dev/mp-weixin/package/admin/index.json | 12 +
dist/dev/mp-weixin/package/admin/index.wxml | 1 +
dist/dev/mp-weixin/package/admin/index.wxss | 51 +
.../dev/mp-weixin/package/admin/order-scan.js | 352 +
.../mp-weixin/package/admin/order-scan.json | 14 +
.../mp-weixin/package/admin/order-scan.wxml | 1 +
.../mp-weixin/package/admin/order-scan.wxss | 120 +
dist/dev/mp-weixin/package/article/detail.js | 63 +
.../dev/mp-weixin/package/article/detail.json | 5 +
.../dev/mp-weixin/package/article/detail.wxml | 1 +
.../dev/mp-weixin/package/article/detail.wxss | 29 +
dist/dev/mp-weixin/package/article/index.js | 89 +
dist/dev/mp-weixin/package/article/index.json | 10 +
dist/dev/mp-weixin/package/article/index.wxml | 1 +
dist/dev/mp-weixin/package/article/index.wxss | 0
dist/dev/mp-weixin/package/booking/cashier.js | 378 +
.../mp-weixin/package/booking/cashier.json | 12 +
.../mp-weixin/package/booking/cashier.wxml | 1 +
.../mp-weixin/package/booking/cashier.wxss | 300 +
.../dev/mp-weixin/package/booking/checkout.js | 519 +
.../mp-weixin/package/booking/checkout.json | 18 +
.../mp-weixin/package/booking/checkout.wxml | 1 +
.../mp-weixin/package/booking/checkout.wxss | 167 +
dist/dev/mp-weixin/package/booking/confirm.js | 747 +
.../mp-weixin/package/booking/confirm.json | 19 +
.../mp-weixin/package/booking/confirm.wxml | 1 +
.../mp-weixin/package/booking/confirm.wxss | 107 +
dist/dev/mp-weixin/package/booking/index.js | 257 +
dist/dev/mp-weixin/package/booking/index.json | 15 +
dist/dev/mp-weixin/package/booking/index.wxml | 1 +
dist/dev/mp-weixin/package/booking/index.wxss | 102 +
.../dev/mp-weixin/package/booking/merchant.js | 222 +
.../mp-weixin/package/booking/merchant.json | 12 +
.../mp-weixin/package/booking/merchant.wxml | 1 +
.../mp-weixin/package/booking/merchant.wxss | 215 +
dist/dev/mp-weixin/package/card/checkout.js | 496 +
dist/dev/mp-weixin/package/card/checkout.json | 20 +
dist/dev/mp-weixin/package/card/checkout.wxml | 1 +
dist/dev/mp-weixin/package/card/checkout.wxss | 216 +
dist/dev/mp-weixin/package/card/index.js | 272 +
dist/dev/mp-weixin/package/card/index.json | 10 +
dist/dev/mp-weixin/package/card/index.wxml | 1 +
dist/dev/mp-weixin/package/card/index.wxss | 158 +
dist/dev/mp-weixin/package/cooperate/index.js | 170 +
.../mp-weixin/package/cooperate/index.json | 11 +
.../mp-weixin/package/cooperate/index.wxml | 1 +
.../mp-weixin/package/cooperate/index.wxss | 96 +
dist/dev/mp-weixin/package/coupon/index.js | 238 +
dist/dev/mp-weixin/package/coupon/index.json | 8 +
dist/dev/mp-weixin/package/coupon/index.wxml | 1 +
dist/dev/mp-weixin/package/coupon/index.wxss | 123 +
dist/dev/mp-weixin/package/course/checkout.js | 545 +
.../mp-weixin/package/course/checkout.json | 21 +
.../mp-weixin/package/course/checkout.wxml | 1 +
.../mp-weixin/package/course/checkout.wxss | 132 +
dist/dev/mp-weixin/package/course/detail.js | 449 +
dist/dev/mp-weixin/package/course/detail.json | 22 +
dist/dev/mp-weixin/package/course/detail.wxml | 1 +
dist/dev/mp-weixin/package/course/detail.wxss | 143 +
dist/dev/mp-weixin/package/course/index.js | 199 +
dist/dev/mp-weixin/package/course/index.json | 14 +
dist/dev/mp-weixin/package/course/index.wxml | 1 +
dist/dev/mp-weixin/package/course/index.wxss | 96 +
dist/dev/mp-weixin/package/course/list.js | 168 +
dist/dev/mp-weixin/package/course/list.json | 11 +
dist/dev/mp-weixin/package/course/list.wxml | 1 +
dist/dev/mp-weixin/package/course/list.wxss | 96 +
dist/dev/mp-weixin/package/course/student.js | 438 +
.../dev/mp-weixin/package/course/student.json | 20 +
.../dev/mp-weixin/package/course/student.wxml | 1 +
.../dev/mp-weixin/package/course/student.wxss | 67 +
dist/dev/mp-weixin/package/goods/checkout.js | 523 +
.../dev/mp-weixin/package/goods/checkout.json | 21 +
.../dev/mp-weixin/package/goods/checkout.wxml | 1 +
.../dev/mp-weixin/package/goods/checkout.wxss | 132 +
dist/dev/mp-weixin/package/goods/detail.js | 289 +
dist/dev/mp-weixin/package/goods/detail.json | 16 +
dist/dev/mp-weixin/package/goods/detail.wxml | 1 +
dist/dev/mp-weixin/package/goods/detail.wxss | 113 +
dist/dev/mp-weixin/package/goods/order.js | 371 +
dist/dev/mp-weixin/package/goods/order.json | 15 +
dist/dev/mp-weixin/package/goods/order.wxml | 1 +
dist/dev/mp-weixin/package/goods/order.wxss | 102 +
dist/dev/mp-weixin/package/match/checkout.js | 266 +
.../dev/mp-weixin/package/match/checkout.json | 15 +
.../dev/mp-weixin/package/match/checkout.wxml | 1 +
.../dev/mp-weixin/package/match/checkout.wxss | 161 +
dist/dev/mp-weixin/package/match/detail.js | 401 +
dist/dev/mp-weixin/package/match/detail.json | 15 +
dist/dev/mp-weixin/package/match/detail.wxml | 1 +
dist/dev/mp-weixin/package/match/detail.wxss | 101 +
dist/dev/mp-weixin/package/match/index.js | 176 +
dist/dev/mp-weixin/package/match/index.json | 11 +
dist/dev/mp-weixin/package/match/index.wxml | 1 +
dist/dev/mp-weixin/package/match/index.wxss | 97 +
dist/dev/mp-weixin/package/order/detail.js | 378 +
dist/dev/mp-weixin/package/order/detail.json | 14 +
dist/dev/mp-weixin/package/order/detail.wxml | 1 +
dist/dev/mp-weixin/package/order/detail.wxss | 126 +
dist/dev/mp-weixin/package/order/index.js | 32 +
dist/dev/mp-weixin/package/order/index.json | 7 +
dist/dev/mp-weixin/package/order/index.wxml | 1 +
dist/dev/mp-weixin/package/order/index.wxss | 42 +
dist/dev/mp-weixin/package/teacher/detail.js | 202 +
.../dev/mp-weixin/package/teacher/detail.json | 11 +
.../dev/mp-weixin/package/teacher/detail.wxml | 1 +
.../dev/mp-weixin/package/teacher/detail.wxss | 45 +
dist/dev/mp-weixin/package/user/address.js | 439 +
dist/dev/mp-weixin/package/user/address.json | 20 +
dist/dev/mp-weixin/package/user/address.wxml | 1 +
dist/dev/mp-weixin/package/user/address.wxss | 67 +
.../dev/mp-weixin/package/user/balance-log.js | 88 +
.../mp-weixin/package/user/balance-log.json | 9 +
.../mp-weixin/package/user/balance-log.wxml | 1 +
.../mp-weixin/package/user/balance-log.wxss | 8 +
.../package/user/card-detail-about.js | 88 +
.../package/user/card-detail-about.json | 8 +
.../package/user/card-detail-about.wxml | 1 +
.../package/user/card-detail-about.wxss | 8 +
.../package/user/card-detail-merchant.js | 241 +
.../package/user/card-detail-merchant.json | 11 +
.../package/user/card-detail-merchant.wxml | 1 +
.../package/user/card-detail-merchant.wxss | 67 +
.../package/user/card-detail-record.js | 89 +
.../package/user/card-detail-record.json | 9 +
.../package/user/card-detail-record.wxml | 1 +
.../package/user/card-detail-record.wxss | 8 +
.../dev/mp-weixin/package/user/card-detail.js | 303 +
.../mp-weixin/package/user/card-detail.json | 14 +
.../mp-weixin/package/user/card-detail.wxml | 1 +
.../mp-weixin/package/user/card-detail.wxss | 226 +
dist/dev/mp-weixin/package/user/card.js | 267 +
dist/dev/mp-weixin/package/user/card.json | 11 +
dist/dev/mp-weixin/package/user/card.wxml | 1 +
dist/dev/mp-weixin/package/user/card.wxss | 158 +
dist/dev/mp-weixin/package/user/coupon.js | 225 +
dist/dev/mp-weixin/package/user/coupon.json | 10 +
dist/dev/mp-weixin/package/user/coupon.wxml | 1 +
dist/dev/mp-weixin/package/user/coupon.wxss | 123 +
dist/dev/mp-weixin/package/user/emergency.js | 260 +
.../dev/mp-weixin/package/user/emergency.json | 16 +
.../dev/mp-weixin/package/user/emergency.wxml | 1 +
.../dev/mp-weixin/package/user/emergency.wxss | 79 +
.../mp-weixin/package/user/ic-card-order.js | 231 +
.../mp-weixin/package/user/ic-card-order.json | 14 +
.../mp-weixin/package/user/ic-card-order.wxml | 1 +
.../mp-weixin/package/user/ic-card-order.wxss | 58 +
dist/dev/mp-weixin/package/user/ic-card.js | 223 +
dist/dev/mp-weixin/package/user/ic-card.json | 13 +
dist/dev/mp-weixin/package/user/ic-card.wxml | 1 +
dist/dev/mp-weixin/package/user/ic-card.wxss | 71 +
dist/dev/mp-weixin/package/user/integral.js | 153 +
dist/dev/mp-weixin/package/user/integral.json | 10 +
dist/dev/mp-weixin/package/user/integral.wxml | 1 +
dist/dev/mp-weixin/package/user/integral.wxss | 51 +
.../mp-weixin/package/user/invoice-edit.js | 352 +
.../mp-weixin/package/user/invoice-edit.json | 13 +
.../mp-weixin/package/user/invoice-edit.wxml | 1 +
.../mp-weixin/package/user/invoice-edit.wxss | 58 +
.../mp-weixin/package/user/invoice-show.js | 112 +
.../mp-weixin/package/user/invoice-show.json | 7 +
.../mp-weixin/package/user/invoice-show.wxml | 1 +
.../mp-weixin/package/user/invoice-show.wxss | 36 +
dist/dev/mp-weixin/package/user/invoice.js | 395 +
dist/dev/mp-weixin/package/user/invoice.json | 15 +
dist/dev/mp-weixin/package/user/invoice.wxml | 1 +
dist/dev/mp-weixin/package/user/invoice.wxss | 58 +
.../mp-weixin/package/user/pay-password.js | 248 +
.../mp-weixin/package/user/pay-password.json | 14 +
.../mp-weixin/package/user/pay-password.wxml | 1 +
.../mp-weixin/package/user/pay-password.wxss | 38 +
dist/dev/mp-weixin/package/user/personal.js | 197 +
dist/dev/mp-weixin/package/user/personal.json | 12 +
dist/dev/mp-weixin/package/user/personal.wxml | 1 +
dist/dev/mp-weixin/package/user/personal.wxss | 62 +
dist/dev/mp-weixin/package/user/qrcode.js | 76 +
dist/dev/mp-weixin/package/user/qrcode.json | 10 +
dist/dev/mp-weixin/package/user/qrcode.wxml | 1 +
dist/dev/mp-weixin/package/user/qrcode.wxss | 68 +
dist/dev/mp-weixin/pages/index/index.js | 457 +
dist/dev/mp-weixin/pages/index/index.json | 15 +
dist/dev/mp-weixin/pages/index/index.wxml | 1 +
dist/dev/mp-weixin/pages/index/index.wxss | 223 +
dist/dev/mp-weixin/pages/order/order.js | 380 +
dist/dev/mp-weixin/pages/order/order.json | 16 +
dist/dev/mp-weixin/pages/order/order.wxml | 1 +
dist/dev/mp-weixin/pages/order/order.wxss | 97 +
dist/dev/mp-weixin/pages/shop/shop.js | 373 +
dist/dev/mp-weixin/pages/shop/shop.json | 10 +
dist/dev/mp-weixin/pages/shop/shop.wxml | 1 +
dist/dev/mp-weixin/pages/shop/shop.wxss | 119 +
dist/dev/mp-weixin/pages/user/user.js | 239 +
dist/dev/mp-weixin/pages/user/user.json | 15 +
dist/dev/mp-weixin/pages/user/user.wxml | 1 +
dist/dev/mp-weixin/pages/user/user.wxss | 9 +
dist/dev/mp-weixin/project.config.json | 29 +
.../dev/mp-weixin/project.private.config.json | 7 +
dist/dev/mp-weixin/regions-data.js | 14314 ++++++++++
dist/dev/mp-weixin/static/css/common.less | 663 +
dist/dev/mp-weixin/static/css/es/dark.less | 449 +
dist/dev/mp-weixin/static/css/es/default.less | 1067 +
.../dev/mp-weixin/static/css/themes/dark.less | 21 +
.../mp-weixin/static/css/themes/default.less | 171 +
.../static/css/themes/dynamic-dark.less | 384 +
.../static/css/themes/dynamic-default.less | 386 +
.../mp-weixin/static/css/themes/dynamic.less | 4 +
dist/dev/mp-weixin/static/logo.svg | 15 +
dist/dev/mp-weixin/static/qrcode.png | Bin 0 -> 2036 bytes
.../static/tabbar/console-active.png | Bin 0 -> 738 bytes
dist/dev/mp-weixin/static/tabbar/console.png | Bin 0 -> 703 bytes
.../mp-weixin/static/tabbar/home-active.png | Bin 0 -> 787 bytes
dist/dev/mp-weixin/static/tabbar/home.png | Bin 0 -> 767 bytes
.../mp-weixin/static/tabbar/notice-active.png | Bin 0 -> 993 bytes
dist/dev/mp-weixin/static/tabbar/notice.png | Bin 0 -> 944 bytes
.../mp-weixin/static/tabbar/order-active.png | Bin 0 -> 1487 bytes
dist/dev/mp-weixin/static/tabbar/order.png | Bin 0 -> 1380 bytes
.../mp-weixin/static/tabbar/shop-active.png | Bin 0 -> 824 bytes
dist/dev/mp-weixin/static/tabbar/shop.png | Bin 0 -> 790 bytes
.../mp-weixin/static/tabbar/user-active.png | Bin 0 -> 964 bytes
dist/dev/mp-weixin/static/tabbar/user.png | Bin 0 -> 927 bytes
dist/dev/mp-weixin/store/index.js | 4 +
dist/dev/mp-weixin/store/modules/car.js | 78 +
dist/dev/mp-weixin/store/modules/tenant.js | 38 +
dist/dev/mp-weixin/store/modules/user.js | 42 +
.../components/uni-badge/uni-badge.js | 137 +
.../components/uni-badge/uni-badge.json | 4 +
.../components/uni-badge/uni-badge.wxml | 1 +
.../components/uni-badge/uni-badge.wxss | 96 +
.../components/uni-calendar/calendar.js | 839 +
.../components/uni-calendar/i18n/index.js | 43 +
.../uni-calendar/uni-calendar-item.js | 97 +
.../uni-calendar/uni-calendar-item.json | 4 +
.../uni-calendar/uni-calendar-item.wxml | 1 +
.../uni-calendar/uni-calendar-item.wxss | 92 +
.../components/uni-calendar/uni-calendar.js | 335 +
.../components/uni-calendar/uni-calendar.json | 6 +
.../components/uni-calendar/uni-calendar.wxml | 1 +
.../components/uni-calendar/uni-calendar.wxss | 169 +
.../components/uni-calendar/util.js | 317 +
.../uni-card/components/uni-card/uni-card.js | 98 +
.../components/uni-card/uni-card.json | 4 +
.../components/uni-card/uni-card.wxml | 1 +
.../components/uni-card/uni-card.wxss | 125 +
.../uni-data-checkbox/uni-data-checkbox.js | 427 +
.../uni-data-checkbox/uni-data-checkbox.json | 6 +
.../uni-data-checkbox/uni-data-checkbox.wxml | 1 +
.../uni-data-checkbox/uni-data-checkbox.wxss | 278 +
.../uni-data-picker/uni-data-picker.js | 295 +
.../uni-data-picker/uni-data-picker.json | 8 +
.../uni-data-picker/uni-data-picker.wxml | 1 +
.../uni-data-picker/uni-data-picker.wxss | 229 +
.../uni-data-pickerview/uni-data-picker.js | 547 +
.../uni-data-pickerview.js | 152 +
.../uni-data-pickerview.json | 6 +
.../uni-data-pickerview.wxml | 1 +
.../uni-data-pickerview.wxss | 134 +
.../uni-data-select/uni-data-select.js | 317 +
.../uni-data-select/uni-data-select.json | 6 +
.../uni-data-select/uni-data-select.wxml | 1 +
.../uni-data-select/uni-data-select.wxss | 200 +
.../components/uni-easyinput/uni-easyinput.js | 447 +
.../uni-easyinput/uni-easyinput.json | 6 +
.../uni-easyinput/uni-easyinput.wxml | 1 +
.../uni-easyinput/uni-easyinput.wxss | 133 +
.../uni-forms-item/uni-forms-item.js | 345 +
.../uni-forms-item/uni-forms-item.json | 4 +
.../uni-forms-item/uni-forms-item.wxml | 1 +
.../uni-forms-item/uni-forms-item.wxss | 114 +
.../components/uni-forms/uni-forms.js | 301 +
.../components/uni-forms/uni-forms.json | 4 +
.../components/uni-forms/uni-forms.wxml | 1 +
.../components/uni-forms/uni-forms.wxss | 25 +
.../uni-forms/components/uni-forms/utils.js | 151 +
.../components/uni-forms/validate.js | 420 +
.../components/uni-goods-nav/i18n/index.js | 25 +
.../components/uni-goods-nav/uni-goods-nav.js | 109 +
.../uni-goods-nav/uni-goods-nav.json | 6 +
.../uni-goods-nav/uni-goods-nav.wxml | 1 +
.../uni-goods-nav/uni-goods-nav.wxss | 109 +
.../components/uni-grid-item/uni-grid-item.js | 68 +
.../uni-grid-item/uni-grid-item.json | 4 +
.../uni-grid-item/uni-grid-item.wxml | 1 +
.../uni-grid-item/uni-grid-item.wxss | 50 +
.../uni-grid/components/uni-grid/uni-grid.js | 81 +
.../components/uni-grid/uni-grid.json | 4 +
.../components/uni-grid/uni-grid.wxml | 1 +
.../components/uni-grid/uni-grid.wxss | 40 +
.../components/uni-icons/uni-icons.js | 72 +
.../components/uni-icons/uni-icons.json | 4 +
.../components/uni-icons/uni-icons.wxml | 1 +
.../components/uni-icons/uni-icons.wxss | 532 +
.../components/uni-icons/uniicons_file_vue.js | 648 +
.../components/uni-list-item/uni-list-item.js | 321 +
.../uni-list-item/uni-list-item.json | 7 +
.../uni-list-item/uni-list-item.wxml | 1 +
.../uni-list-item/uni-list-item.wxss | 154 +
.../uni-list/components/uni-list/uni-list.js | 57 +
.../components/uni-list/uni-list.json | 4 +
.../components/uni-list/uni-list.wxml | 1 +
.../components/uni-list/uni-list.wxss | 54 +
.../components/uni-load-more/i18n/index.js | 22 +
.../components/uni-load-more/uni-load-more.js | 111 +
.../uni-load-more/uni-load-more.json | 4 +
.../uni-load-more/uni-load-more.wxml | 1 +
.../uni-load-more/uni-load-more.wxss | 179 +
.../components/uni-popup/uni-popup.js | 362 +
.../components/uni-popup/uni-popup.json | 6 +
.../components/uni-popup/uni-popup.wxml | 1 +
.../components/uni-popup/uni-popup.wxss | 47 +
.../uni-row/components/uni-col/uni-col.js | 121 +
.../uni-row/components/uni-col/uni-col.json | 4 +
.../uni-row/components/uni-col/uni-col.wxml | 1 +
.../uni-row/components/uni-col/uni-col.wxss | 2158 ++
.../uni-row/components/uni-row/uni-row.js | 59 +
.../uni-row/components/uni-row/uni-row.json | 4 +
.../uni-row/components/uni-row/uni-row.wxml | 1 +
.../uni-row/components/uni-row/uni-row.wxss | 68 +
.../uni-segmented-control.js | 74 +
.../uni-segmented-control.json | 4 +
.../uni-segmented-control.wxml | 1 +
.../uni-segmented-control.wxss | 66 +
.../uni-tag/components/uni-tag/uni-tag.js | 93 +
.../uni-tag/components/uni-tag/uni-tag.json | 4 +
.../uni-tag/components/uni-tag/uni-tag.wxml | 1 +
.../uni-tag/components/uni-tag/uni-tag.wxss | 124 +
.../uni-transition/createAnimation.js | 113 +
.../uni-transition/uni-transition.js | 262 +
.../uni-transition/uni-transition.json | 4 +
.../uni-transition/uni-transition.wxml | 1 +
.../uni-transition/uni-transition.wxss | 0
.../uv-avatar/components/uv-avatar/props.js | 84 +
.../components/uv-avatar/uv-avatar.js | 136 +
.../components/uv-avatar/uv-avatar.json | 7 +
.../components/uv-avatar/uv-avatar.wxml | 1 +
.../components/uv-avatar/uv-avatar.wxss | 52 +
.../uv-badge/components/uv-badge/props.js | 77 +
.../uv-badge/components/uv-badge/uv-badge.js | 66 +
.../components/uv-badge/uv-badge.json | 4 +
.../components/uv-badge/uv-badge.wxml | 1 +
.../components/uv-badge/uv-badge.wxss | 96 +
.../uv-button/components/uv-button/props.js | 167 +
.../components/uv-button/uv-button.js | 195 +
.../components/uv-button/uv-button.json | 7 +
.../components/uv-button/uv-button.wxml | 1 +
.../components/uv-button/uv-button.wxss | 201 +
.../uv-cell/components/uv-cell-group/props.js | 19 +
.../components/uv-cell-group/uv-cell-group.js | 31 +
.../uv-cell-group/uv-cell-group.json | 6 +
.../uv-cell-group/uv-cell-group.wxml | 1 +
.../uv-cell-group/uv-cell-group.wxss | 48 +
.../uv-cell/components/uv-cell/props.js | 121 +
.../uv-cell/components/uv-cell/uv-cell.js | 88 +
.../uv-cell/components/uv-cell/uv-cell.json | 7 +
.../uv-cell/components/uv-cell/uv-cell.wxml | 1 +
.../uv-cell/components/uv-cell/uv-cell.wxss | 110 +
.../components/uv-code-input/props.js | 87 +
.../components/uv-code-input/uv-code-input.js | 149 +
.../uv-code-input/uv-code-input.json | 4 +
.../uv-code-input/uv-code-input.wxml | 1 +
.../uv-code-input/uv-code-input.wxss | 93 +
.../uv-code/components/uv-code/props.js | 39 +
.../uv-code/components/uv-code/uv-code.js | 97 +
.../uv-code/components/uv-code/uv-code.json | 4 +
.../uv-code/components/uv-code/uv-code.wxml | 1 +
.../uv-code/components/uv-code/uv-code.wxss | 0
.../components/uv-count-down/props.js | 29 +
.../components/uv-count-down/utils.js | 62 +
.../components/uv-count-down/uv-count-down.js | 119 +
.../uv-count-down/uv-count-down.json | 4 +
.../uv-count-down/uv-count-down.wxml | 1 +
.../uv-count-down/uv-count-down.wxss | 39 +
.../components/uv-count-to/props.js | 64 +
.../components/uv-count-to/uv-count-to.js | 163 +
.../components/uv-count-to/uv-count-to.json | 4 +
.../components/uv-count-to/uv-count-to.wxml | 1 +
.../components/uv-count-to/uv-count-to.wxss | 38 +
.../uv-empty/components/uv-empty/props.js | 64 +
.../uv-empty/components/uv-empty/uv-empty.js | 82 +
.../components/uv-empty/uv-empty.json | 6 +
.../components/uv-empty/uv-empty.wxml | 1 +
.../components/uv-empty/uv-empty.wxss | 55 +
.../uv-gap/components/uv-gap/props.js | 29 +
.../uv-gap/components/uv-gap/uv-gap.js | 27 +
.../uv-gap/components/uv-gap/uv-gap.json | 4 +
.../uv-gap/components/uv-gap/uv-gap.wxml | 1 +
.../uv-gap/components/uv-gap/uv-gap.wxss | 0
.../uv-icon/components/uv-icon/icons.js | 162 +
.../uv-icon/components/uv-icon/props.js | 94 +
.../uv-icon/components/uv-icon/uv-icon.js | 96 +
.../uv-icon/components/uv-icon/uv-icon.json | 4 +
.../uv-icon/components/uv-icon/uv-icon.wxml | 1 +
.../uv-icon/components/uv-icon/uv-icon.wxss | 87 +
.../uv-image/components/uv-image/props.js | 99 +
.../uv-image/components/uv-image/uv-image.js | 202 +
.../components/uv-image/uv-image.json | 7 +
.../components/uv-image/uv-image.wxml | 1 +
.../components/uv-image/uv-image.wxss | 56 +
.../uv-input/components/uv-input/props.js | 179 +
.../uv-input/components/uv-input/uv-input.js | 213 +
.../components/uv-input/uv-input.json | 6 +
.../components/uv-input/uv-input.wxml | 1 +
.../components/uv-input/uv-input.wxss | 100 +
.../uv-line/components/uv-line/props.js | 38 +
.../uv-line/components/uv-line/uv-line.js | 35 +
.../uv-line/components/uv-line/uv-line.json | 4 +
.../uv-line/components/uv-line/uv-line.wxml | 1 +
.../uv-line/components/uv-line/uv-line.wxss | 28 +
.../uv-link/components/uv-link/props.js | 44 +
.../uv-link/components/uv-link/uv-link.js | 46 +
.../uv-link/components/uv-link/uv-link.json | 4 +
.../uv-link/components/uv-link/uv-link.wxml | 1 +
.../uv-link/components/uv-link/uv-link.wxss | 42 +
.../components/uv-loading-icon/props.js | 71 +
.../uv-loading-icon/uv-loading-icon.js | 105 +
.../uv-loading-icon/uv-loading-icon.json | 4 +
.../uv-loading-icon/uv-loading-icon.wxml | 1 +
.../uv-loading-icon/uv-loading-icon.wxss | 165 +
.../components/uv-number-box/props.js | 117 +
.../components/uv-number-box/uv-number-box.js | 265 +
.../uv-number-box/uv-number-box.json | 6 +
.../uv-number-box/uv-number-box.wxml | 1 +
.../uv-number-box/uv-number-box.wxss | 80 +
.../uv-parse/components/uv-parse/node/node.js | 392 +
.../components/uv-parse/node/node.json | 6 +
.../components/uv-parse/node/node.wxml | 31 +
.../components/uv-parse/node/node.wxss | 143 +
.../uv-parse/components/uv-parse/parser.js | 978 +
.../uv-parse/components/uv-parse/uv-parse.js | 267 +
.../components/uv-parse/uv-parse.json | 6 +
.../components/uv-parse/uv-parse.wxml | 1 +
.../components/uv-parse/uv-parse.wxss | 17 +
.../uv-qrcode/components/uv-qrcode/cache.js | 3 +
.../uv-qrcode/components/uv-qrcode/props.js | 82 +
.../uv-qrcode/components/uv-qrcode/qrcode.js | 581 +
.../uv-qrcode/components/uv-qrcode/queue.js | 37 +
.../components/uv-qrcode/uv-qrcode.js | 680 +
.../components/uv-qrcode/uv-qrcode.json | 4 +
.../components/uv-qrcode/uv-qrcode.wxml | 1 +
.../components/uv-qrcode/uv-qrcode.wxss | 99 +
.../components/uv-scroll-list/props.js | 39 +
.../components/uv-scroll-list/scrollWxs.wxs | 51 +
.../uv-scroll-list/uv-scroll-list.js | 73 +
.../uv-scroll-list/uv-scroll-list.json | 4 +
.../uv-scroll-list/uv-scroll-list.wxml | 2 +
.../uv-scroll-list/uv-scroll-list.wxss | 62 +
.../components/uv-skeleton/props.js | 69 +
.../components/uv-skeleton/uv-skeleton.js | 97 +
.../components/uv-skeleton/uv-skeleton.json | 4 +
.../components/uv-skeleton/uv-skeleton.wxml | 1 +
.../components/uv-skeleton/uv-skeleton.wxss | 71 +
.../components/uv-swiper-indicator/props.js | 34 +
.../uv-swiper-indicator.js | 54 +
.../uv-swiper-indicator.json | 4 +
.../uv-swiper-indicator.wxml | 1 +
.../uv-swiper-indicator.wxss | 58 +
.../uv-swiper/components/uv-swiper/props.js | 140 +
.../components/uv-swiper/uv-swiper.js | 155 +
.../components/uv-swiper/uv-swiper.json | 7 +
.../components/uv-swiper/uv-swiper.wxml | 1 +
.../components/uv-swiper/uv-swiper.wxss | 118 +
.../uv-tabs/components/uv-tabs/props.js | 75 +
.../uv-tabs/components/uv-tabs/uv-tabs.js | 218 +
.../uv-tabs/components/uv-tabs/uv-tabs.json | 6 +
.../uv-tabs/components/uv-tabs/uv-tabs.wxml | 1 +
.../uv-tabs/components/uv-tabs/uv-tabs.wxss | 80 +
.../uv-tags/components/uv-tags/props.js | 99 +
.../uv-tags/components/uv-tags/uv-tags.js | 140 +
.../uv-tags/components/uv-tags/uv-tags.json | 7 +
.../uv-tags/components/uv-tags/uv-tags.wxml | 1 +
.../uv-tags/components/uv-tags/uv-tags.wxss | 206 +
.../uv-text/components/uv-text/props.js | 117 +
.../uv-text/components/uv-text/uv-text.js | 125 +
.../uv-text/components/uv-text/uv-text.json | 7 +
.../uv-text/components/uv-text/uv-text.wxml | 1 +
.../uv-text/components/uv-text/uv-text.wxss | 132 +
.../uv-text/components/uv-text/value.js | 78 +
.../components/uv-textarea/props.js | 144 +
.../components/uv-textarea/uv-textarea.js | 144 +
.../components/uv-textarea/uv-textarea.json | 4 +
.../components/uv-textarea/uv-textarea.wxml | 1 +
.../components/uv-textarea/uv-textarea.wxss | 77 +
.../uv-transition/createAnimation.js | 113 +
.../components/uv-transition/uv-transition.js | 262 +
.../uv-transition/uv-transition.json | 4 +
.../uv-transition/uv-transition.wxml | 1 +
.../uv-transition/uv-transition.wxss | 0
.../uni_modules/uv-ui-tools/index.js | 48 +
.../uv-ui-tools/libs/config/config.js | 35 +
.../libs/function/colorGradient.js | 107 +
.../uv-ui-tools/libs/function/debounce.js | 17 +
.../uv-ui-tools/libs/function/digit.js | 63 +
.../uv-ui-tools/libs/function/index.js | 492 +
.../uv-ui-tools/libs/function/platform.js | 7 +
.../uv-ui-tools/libs/function/test.js | 175 +
.../uv-ui-tools/libs/function/throttle.js | 20 +
.../libs/luch-request/adapters/index.js | 84 +
.../luch-request/core/InterceptorManager.js | 24 +
.../libs/luch-request/core/Request.js | 147 +
.../libs/luch-request/core/buildFullPath.js | 10 +
.../libs/luch-request/core/defaults.js | 17 +
.../libs/luch-request/core/dispatchRequest.js | 6 +
.../libs/luch-request/core/mergeConfig.js | 67 +
.../libs/luch-request/core/settle.js | 11 +
.../libs/luch-request/helpers/buildURL.js | 46 +
.../libs/luch-request/helpers/combineURLs.js | 5 +
.../luch-request/helpers/isAbsoluteURL.js | 5 +
.../uv-ui-tools/libs/luch-request/index.js | 2 +
.../uv-ui-tools/libs/luch-request/utils.js | 63 +
.../libs/luch-request/utils/clone.js | 191 +
.../uv-ui-tools/libs/mixin/button.js | 15 +
.../uv-ui-tools/libs/mixin/mixin.js | 150 +
.../uv-ui-tools/libs/mixin/mpMixin.js | 8 +
.../uv-ui-tools/libs/mixin/mpShare.js | 18 +
.../uv-ui-tools/libs/mixin/openType.js | 49 +
.../uv-ui-tools/libs/util/route.js | 105 +
.../components/uv-waterfall/props.js | 65 +
.../components/uv-waterfall/uv-waterfall.js | 175 +
.../components/uv-waterfall/uv-waterfall.json | 4 +
.../components/uv-waterfall/uv-waterfall.wxml | 1 +
.../components/uv-waterfall/uv-waterfall.wxss | 45 +
.../components/ws-admin-card/ws-admin-card.js | 69 +
.../ws-admin-card/ws-admin-card.json | 4 +
.../ws-admin-card/ws-admin-card.wxml | 1 +
.../ws-admin-card/ws-admin-card.wxss | 94 +
.../uni_modules/ws-common/api/layout/index.js | 11 +
.../ws-common/store/modules/user.js | 42 +
.../uni_modules/ws-common/utils/request.js | 36 +
.../ws-login/components/ws-login/api/index.js | 51 +
.../ws-login/components/ws-login/ws-login.js | 266 +
.../components/ws-login/ws-login.json | 7 +
.../components/ws-login/ws-login.wxml | 1 +
.../components/ws-login/ws-login.wxss | 78 +
.../components/ws-logout/ws-logout.js | 33 +
.../components/ws-logout/ws-logout.json | 4 +
.../components/ws-logout/ws-logout.wxml | 1 +
.../components/ws-logout/ws-logout.wxss | 38 +
.../components/ws-my-asset/ws-my-asset.js | 71 +
.../components/ws-my-asset/ws-my-asset.json | 6 +
.../components/ws-my-asset/ws-my-asset.wxml | 1 +
.../components/ws-my-asset/ws-my-asset.wxss | 57 +
.../ws-select-merchant/ws-select-merchant.js | 90 +
.../ws-select-merchant.json | 8 +
.../ws-select-merchant.wxml | 1 +
.../ws-select-merchant.wxss | 0
.../components/ws-user-card/ws-user-card.js | 74 +
.../components/ws-user-card/ws-user-card.json | 6 +
.../components/ws-user-card/ws-user-card.wxml | 1 +
.../components/ws-user-card/ws-user-card.wxss | 92 +
dist/dev/mp-weixin/utils/common.js | 47 +
dist/dev/mp-weixin/utils/decimal.js | 18 +
dist/dev/mp-weixin/utils/permission.js | 89 +
dist/dev/mp-weixin/utils/request.js | 35 +
dist/dev/mp-weixin/utils/token-util.js | 1 +
dist/dev/mp-weixin/utils/utils.js | 2 +
src/config/setting.ts | 2 +-
src/package/admin/field.vue | 739 +
src/package/admin/index.vue | 450 +-
src/pages.json | 7 +
src/pages/order/order.vue | 15 +-
.../ws-admin-card/ws-admin-card.vue | 6 +-
src/uni_modules/ws-common/utils/app.scss | 6 +-
.../ws-login/components/ws-login/api/index.ts | 310 +-
.../ws-select-merchant/changelog.md | 0
.../ws-select-merchant/ws-select-merchant.vue | 74 +
.../ws-select-merchant/package.json | 83 +
src/uni_modules/ws-select-merchant/readme.md | 1 +
611 files changed, 92828 insertions(+), 400 deletions(-)
create mode 100644 .hbuilderx/launch.json
create mode 100644 dist/dev/mp-weixin/api/booking/card/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/coupon/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/course/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/emergency/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/field/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/integral/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/item/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/match/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/matchOrder/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/period/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/student/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/userCard/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/userCardLog/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/userCoupon/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/userInvoice/index.js
create mode 100644 dist/dev/mp-weixin/api/booking/users/index.js
create mode 100644 dist/dev/mp-weixin/api/cms/article/index.js
create mode 100644 dist/dev/mp-weixin/api/cms/mp-menu/index.js
create mode 100644 dist/dev/mp-weixin/api/layout/index.js
create mode 100644 dist/dev/mp-weixin/api/oa/project/index.js
create mode 100644 dist/dev/mp-weixin/api/passport/login/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/goods/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/goodsCategory/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/merchant/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/order/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/userAddress/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/users/index.js
create mode 100644 dist/dev/mp-weixin/api/shop/wechatDeposit/index.js
create mode 100644 dist/dev/mp-weixin/api/system/cache/index.js
create mode 100644 dist/dev/mp-weixin/api/system/dictionary-data/index.js
create mode 100644 dist/dev/mp-weixin/api/system/file/index.js
create mode 100644 dist/dev/mp-weixin/api/system/payment/index.js
create mode 100644 dist/dev/mp-weixin/api/system/user/index.js
create mode 100644 dist/dev/mp-weixin/api/user/balance-log/index.js
create mode 100644 dist/dev/mp-weixin/app.js
create mode 100644 dist/dev/mp-weixin/app.json
create mode 100644 dist/dev/mp-weixin/app.wxss
create mode 100644 dist/dev/mp-weixin/common/vendor.js
create mode 100644 dist/dev/mp-weixin/config/setting.js
create mode 100644 dist/dev/mp-weixin/package/admin/field.js
create mode 100644 dist/dev/mp-weixin/package/admin/field.json
create mode 100644 dist/dev/mp-weixin/package/admin/field.wxml
create mode 100644 dist/dev/mp-weixin/package/admin/field.wxss
create mode 100644 dist/dev/mp-weixin/package/admin/index.js
create mode 100644 dist/dev/mp-weixin/package/admin/index.json
create mode 100644 dist/dev/mp-weixin/package/admin/index.wxml
create mode 100644 dist/dev/mp-weixin/package/admin/index.wxss
create mode 100644 dist/dev/mp-weixin/package/admin/order-scan.js
create mode 100644 dist/dev/mp-weixin/package/admin/order-scan.json
create mode 100644 dist/dev/mp-weixin/package/admin/order-scan.wxml
create mode 100644 dist/dev/mp-weixin/package/admin/order-scan.wxss
create mode 100644 dist/dev/mp-weixin/package/article/detail.js
create mode 100644 dist/dev/mp-weixin/package/article/detail.json
create mode 100644 dist/dev/mp-weixin/package/article/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/article/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/article/index.js
create mode 100644 dist/dev/mp-weixin/package/article/index.json
create mode 100644 dist/dev/mp-weixin/package/article/index.wxml
create mode 100644 dist/dev/mp-weixin/package/article/index.wxss
create mode 100644 dist/dev/mp-weixin/package/booking/cashier.js
create mode 100644 dist/dev/mp-weixin/package/booking/cashier.json
create mode 100644 dist/dev/mp-weixin/package/booking/cashier.wxml
create mode 100644 dist/dev/mp-weixin/package/booking/cashier.wxss
create mode 100644 dist/dev/mp-weixin/package/booking/checkout.js
create mode 100644 dist/dev/mp-weixin/package/booking/checkout.json
create mode 100644 dist/dev/mp-weixin/package/booking/checkout.wxml
create mode 100644 dist/dev/mp-weixin/package/booking/checkout.wxss
create mode 100644 dist/dev/mp-weixin/package/booking/confirm.js
create mode 100644 dist/dev/mp-weixin/package/booking/confirm.json
create mode 100644 dist/dev/mp-weixin/package/booking/confirm.wxml
create mode 100644 dist/dev/mp-weixin/package/booking/confirm.wxss
create mode 100644 dist/dev/mp-weixin/package/booking/index.js
create mode 100644 dist/dev/mp-weixin/package/booking/index.json
create mode 100644 dist/dev/mp-weixin/package/booking/index.wxml
create mode 100644 dist/dev/mp-weixin/package/booking/index.wxss
create mode 100644 dist/dev/mp-weixin/package/booking/merchant.js
create mode 100644 dist/dev/mp-weixin/package/booking/merchant.json
create mode 100644 dist/dev/mp-weixin/package/booking/merchant.wxml
create mode 100644 dist/dev/mp-weixin/package/booking/merchant.wxss
create mode 100644 dist/dev/mp-weixin/package/card/checkout.js
create mode 100644 dist/dev/mp-weixin/package/card/checkout.json
create mode 100644 dist/dev/mp-weixin/package/card/checkout.wxml
create mode 100644 dist/dev/mp-weixin/package/card/checkout.wxss
create mode 100644 dist/dev/mp-weixin/package/card/index.js
create mode 100644 dist/dev/mp-weixin/package/card/index.json
create mode 100644 dist/dev/mp-weixin/package/card/index.wxml
create mode 100644 dist/dev/mp-weixin/package/card/index.wxss
create mode 100644 dist/dev/mp-weixin/package/cooperate/index.js
create mode 100644 dist/dev/mp-weixin/package/cooperate/index.json
create mode 100644 dist/dev/mp-weixin/package/cooperate/index.wxml
create mode 100644 dist/dev/mp-weixin/package/cooperate/index.wxss
create mode 100644 dist/dev/mp-weixin/package/coupon/index.js
create mode 100644 dist/dev/mp-weixin/package/coupon/index.json
create mode 100644 dist/dev/mp-weixin/package/coupon/index.wxml
create mode 100644 dist/dev/mp-weixin/package/coupon/index.wxss
create mode 100644 dist/dev/mp-weixin/package/course/checkout.js
create mode 100644 dist/dev/mp-weixin/package/course/checkout.json
create mode 100644 dist/dev/mp-weixin/package/course/checkout.wxml
create mode 100644 dist/dev/mp-weixin/package/course/checkout.wxss
create mode 100644 dist/dev/mp-weixin/package/course/detail.js
create mode 100644 dist/dev/mp-weixin/package/course/detail.json
create mode 100644 dist/dev/mp-weixin/package/course/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/course/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/course/index.js
create mode 100644 dist/dev/mp-weixin/package/course/index.json
create mode 100644 dist/dev/mp-weixin/package/course/index.wxml
create mode 100644 dist/dev/mp-weixin/package/course/index.wxss
create mode 100644 dist/dev/mp-weixin/package/course/list.js
create mode 100644 dist/dev/mp-weixin/package/course/list.json
create mode 100644 dist/dev/mp-weixin/package/course/list.wxml
create mode 100644 dist/dev/mp-weixin/package/course/list.wxss
create mode 100644 dist/dev/mp-weixin/package/course/student.js
create mode 100644 dist/dev/mp-weixin/package/course/student.json
create mode 100644 dist/dev/mp-weixin/package/course/student.wxml
create mode 100644 dist/dev/mp-weixin/package/course/student.wxss
create mode 100644 dist/dev/mp-weixin/package/goods/checkout.js
create mode 100644 dist/dev/mp-weixin/package/goods/checkout.json
create mode 100644 dist/dev/mp-weixin/package/goods/checkout.wxml
create mode 100644 dist/dev/mp-weixin/package/goods/checkout.wxss
create mode 100644 dist/dev/mp-weixin/package/goods/detail.js
create mode 100644 dist/dev/mp-weixin/package/goods/detail.json
create mode 100644 dist/dev/mp-weixin/package/goods/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/goods/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/goods/order.js
create mode 100644 dist/dev/mp-weixin/package/goods/order.json
create mode 100644 dist/dev/mp-weixin/package/goods/order.wxml
create mode 100644 dist/dev/mp-weixin/package/goods/order.wxss
create mode 100644 dist/dev/mp-weixin/package/match/checkout.js
create mode 100644 dist/dev/mp-weixin/package/match/checkout.json
create mode 100644 dist/dev/mp-weixin/package/match/checkout.wxml
create mode 100644 dist/dev/mp-weixin/package/match/checkout.wxss
create mode 100644 dist/dev/mp-weixin/package/match/detail.js
create mode 100644 dist/dev/mp-weixin/package/match/detail.json
create mode 100644 dist/dev/mp-weixin/package/match/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/match/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/match/index.js
create mode 100644 dist/dev/mp-weixin/package/match/index.json
create mode 100644 dist/dev/mp-weixin/package/match/index.wxml
create mode 100644 dist/dev/mp-weixin/package/match/index.wxss
create mode 100644 dist/dev/mp-weixin/package/order/detail.js
create mode 100644 dist/dev/mp-weixin/package/order/detail.json
create mode 100644 dist/dev/mp-weixin/package/order/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/order/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/order/index.js
create mode 100644 dist/dev/mp-weixin/package/order/index.json
create mode 100644 dist/dev/mp-weixin/package/order/index.wxml
create mode 100644 dist/dev/mp-weixin/package/order/index.wxss
create mode 100644 dist/dev/mp-weixin/package/teacher/detail.js
create mode 100644 dist/dev/mp-weixin/package/teacher/detail.json
create mode 100644 dist/dev/mp-weixin/package/teacher/detail.wxml
create mode 100644 dist/dev/mp-weixin/package/teacher/detail.wxss
create mode 100644 dist/dev/mp-weixin/package/user/address.js
create mode 100644 dist/dev/mp-weixin/package/user/address.json
create mode 100644 dist/dev/mp-weixin/package/user/address.wxml
create mode 100644 dist/dev/mp-weixin/package/user/address.wxss
create mode 100644 dist/dev/mp-weixin/package/user/balance-log.js
create mode 100644 dist/dev/mp-weixin/package/user/balance-log.json
create mode 100644 dist/dev/mp-weixin/package/user/balance-log.wxml
create mode 100644 dist/dev/mp-weixin/package/user/balance-log.wxss
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-about.js
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-about.json
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-about.wxml
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-about.wxss
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-merchant.js
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-merchant.json
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-merchant.wxml
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-merchant.wxss
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-record.js
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-record.json
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-record.wxml
create mode 100644 dist/dev/mp-weixin/package/user/card-detail-record.wxss
create mode 100644 dist/dev/mp-weixin/package/user/card-detail.js
create mode 100644 dist/dev/mp-weixin/package/user/card-detail.json
create mode 100644 dist/dev/mp-weixin/package/user/card-detail.wxml
create mode 100644 dist/dev/mp-weixin/package/user/card-detail.wxss
create mode 100644 dist/dev/mp-weixin/package/user/card.js
create mode 100644 dist/dev/mp-weixin/package/user/card.json
create mode 100644 dist/dev/mp-weixin/package/user/card.wxml
create mode 100644 dist/dev/mp-weixin/package/user/card.wxss
create mode 100644 dist/dev/mp-weixin/package/user/coupon.js
create mode 100644 dist/dev/mp-weixin/package/user/coupon.json
create mode 100644 dist/dev/mp-weixin/package/user/coupon.wxml
create mode 100644 dist/dev/mp-weixin/package/user/coupon.wxss
create mode 100644 dist/dev/mp-weixin/package/user/emergency.js
create mode 100644 dist/dev/mp-weixin/package/user/emergency.json
create mode 100644 dist/dev/mp-weixin/package/user/emergency.wxml
create mode 100644 dist/dev/mp-weixin/package/user/emergency.wxss
create mode 100644 dist/dev/mp-weixin/package/user/ic-card-order.js
create mode 100644 dist/dev/mp-weixin/package/user/ic-card-order.json
create mode 100644 dist/dev/mp-weixin/package/user/ic-card-order.wxml
create mode 100644 dist/dev/mp-weixin/package/user/ic-card-order.wxss
create mode 100644 dist/dev/mp-weixin/package/user/ic-card.js
create mode 100644 dist/dev/mp-weixin/package/user/ic-card.json
create mode 100644 dist/dev/mp-weixin/package/user/ic-card.wxml
create mode 100644 dist/dev/mp-weixin/package/user/ic-card.wxss
create mode 100644 dist/dev/mp-weixin/package/user/integral.js
create mode 100644 dist/dev/mp-weixin/package/user/integral.json
create mode 100644 dist/dev/mp-weixin/package/user/integral.wxml
create mode 100644 dist/dev/mp-weixin/package/user/integral.wxss
create mode 100644 dist/dev/mp-weixin/package/user/invoice-edit.js
create mode 100644 dist/dev/mp-weixin/package/user/invoice-edit.json
create mode 100644 dist/dev/mp-weixin/package/user/invoice-edit.wxml
create mode 100644 dist/dev/mp-weixin/package/user/invoice-edit.wxss
create mode 100644 dist/dev/mp-weixin/package/user/invoice-show.js
create mode 100644 dist/dev/mp-weixin/package/user/invoice-show.json
create mode 100644 dist/dev/mp-weixin/package/user/invoice-show.wxml
create mode 100644 dist/dev/mp-weixin/package/user/invoice-show.wxss
create mode 100644 dist/dev/mp-weixin/package/user/invoice.js
create mode 100644 dist/dev/mp-weixin/package/user/invoice.json
create mode 100644 dist/dev/mp-weixin/package/user/invoice.wxml
create mode 100644 dist/dev/mp-weixin/package/user/invoice.wxss
create mode 100644 dist/dev/mp-weixin/package/user/pay-password.js
create mode 100644 dist/dev/mp-weixin/package/user/pay-password.json
create mode 100644 dist/dev/mp-weixin/package/user/pay-password.wxml
create mode 100644 dist/dev/mp-weixin/package/user/pay-password.wxss
create mode 100644 dist/dev/mp-weixin/package/user/personal.js
create mode 100644 dist/dev/mp-weixin/package/user/personal.json
create mode 100644 dist/dev/mp-weixin/package/user/personal.wxml
create mode 100644 dist/dev/mp-weixin/package/user/personal.wxss
create mode 100644 dist/dev/mp-weixin/package/user/qrcode.js
create mode 100644 dist/dev/mp-weixin/package/user/qrcode.json
create mode 100644 dist/dev/mp-weixin/package/user/qrcode.wxml
create mode 100644 dist/dev/mp-weixin/package/user/qrcode.wxss
create mode 100644 dist/dev/mp-weixin/pages/index/index.js
create mode 100644 dist/dev/mp-weixin/pages/index/index.json
create mode 100644 dist/dev/mp-weixin/pages/index/index.wxml
create mode 100644 dist/dev/mp-weixin/pages/index/index.wxss
create mode 100644 dist/dev/mp-weixin/pages/order/order.js
create mode 100644 dist/dev/mp-weixin/pages/order/order.json
create mode 100644 dist/dev/mp-weixin/pages/order/order.wxml
create mode 100644 dist/dev/mp-weixin/pages/order/order.wxss
create mode 100644 dist/dev/mp-weixin/pages/shop/shop.js
create mode 100644 dist/dev/mp-weixin/pages/shop/shop.json
create mode 100644 dist/dev/mp-weixin/pages/shop/shop.wxml
create mode 100644 dist/dev/mp-weixin/pages/shop/shop.wxss
create mode 100644 dist/dev/mp-weixin/pages/user/user.js
create mode 100644 dist/dev/mp-weixin/pages/user/user.json
create mode 100644 dist/dev/mp-weixin/pages/user/user.wxml
create mode 100644 dist/dev/mp-weixin/pages/user/user.wxss
create mode 100644 dist/dev/mp-weixin/project.config.json
create mode 100644 dist/dev/mp-weixin/project.private.config.json
create mode 100644 dist/dev/mp-weixin/regions-data.js
create mode 100644 dist/dev/mp-weixin/static/css/common.less
create mode 100644 dist/dev/mp-weixin/static/css/es/dark.less
create mode 100644 dist/dev/mp-weixin/static/css/es/default.less
create mode 100644 dist/dev/mp-weixin/static/css/themes/dark.less
create mode 100644 dist/dev/mp-weixin/static/css/themes/default.less
create mode 100644 dist/dev/mp-weixin/static/css/themes/dynamic-dark.less
create mode 100644 dist/dev/mp-weixin/static/css/themes/dynamic-default.less
create mode 100644 dist/dev/mp-weixin/static/css/themes/dynamic.less
create mode 100644 dist/dev/mp-weixin/static/logo.svg
create mode 100644 dist/dev/mp-weixin/static/qrcode.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/console-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/console.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/home-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/home.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/notice-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/notice.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/order-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/order.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/shop-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/shop.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/user-active.png
create mode 100644 dist/dev/mp-weixin/static/tabbar/user.png
create mode 100644 dist/dev/mp-weixin/store/index.js
create mode 100644 dist/dev/mp-weixin/store/modules/car.js
create mode 100644 dist/dev/mp-weixin/store/modules/tenant.js
create mode 100644 dist/dev/mp-weixin/store/modules/user.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-badge/components/uni-badge/uni-badge.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/calendar.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/i18n/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar-item.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/uni-calendar.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-calendar/components/uni-calendar/util.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-card/components/uni-card/uni-card.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-checkbox/components/uni-data-checkbox/uni-data-checkbox.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-picker/uni-data-picker.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-picker.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-picker/components/uni-data-pickerview/uni-data-pickerview.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-data-select/components/uni-data-select/uni-data-select.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-easyinput/components/uni-easyinput/uni-easyinput.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms-item/uni-forms-item.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/uni-forms.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/utils.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-forms/components/uni-forms/validate.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-goods-nav/components/uni-goods-nav/i18n/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-goods-nav/components/uni-goods-nav/uni-goods-nav.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-goods-nav/components/uni-goods-nav/uni-goods-nav.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-goods-nav/components/uni-goods-nav/uni-goods-nav.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-goods-nav/components/uni-goods-nav/uni-goods-nav.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid-item/uni-grid-item.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid-item/uni-grid-item.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid-item/uni-grid-item.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid-item/uni-grid-item.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid/uni-grid.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid/uni-grid.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid/uni-grid.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-grid/components/uni-grid/uni-grid.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uni-icons.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-icons/components/uni-icons/uniicons_file_vue.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list-item/uni-list-item.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-list/components/uni-list/uni-list.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/i18n/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-load-more/components/uni-load-more/uni-load-more.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-popup/components/uni-popup/uni-popup.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-popup/components/uni-popup/uni-popup.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-popup/components/uni-popup/uni-popup.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-popup/components/uni-popup/uni-popup.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-col/uni-col.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-col/uni-col.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-col/uni-col.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-col/uni-col.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-row/components/uni-row/uni-row.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-segmented-control/components/uni-segmented-control/uni-segmented-control.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-tag/components/uni-tag/uni-tag.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-transition/components/uni-transition/createAnimation.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-transition/components/uni-transition/uni-transition.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-transition/components/uni-transition/uni-transition.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-transition/components/uni-transition/uni-transition.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uni-transition/components/uni-transition/uni-transition.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-avatar/components/uv-avatar/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-avatar/components/uv-avatar/uv-avatar.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-badge/components/uv-badge/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-badge/components/uv-badge/uv-badge.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-button/components/uv-button/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-button/components/uv-button/uv-button.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell-group/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell-group/uv-cell-group.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell-group/uv-cell-group.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell-group/uv-cell-group.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell-group/uv-cell-group.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell/uv-cell.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell/uv-cell.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell/uv-cell.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-cell/components/uv-cell/uv-cell.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code-input/components/uv-code-input/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code-input/components/uv-code-input/uv-code-input.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code-input/components/uv-code-input/uv-code-input.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code-input/components/uv-code-input/uv-code-input.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code-input/components/uv-code-input/uv-code-input.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code/components/uv-code/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code/components/uv-code/uv-code.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code/components/uv-code/uv-code.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code/components/uv-code/uv-code.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-code/components/uv-code/uv-code.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/utils.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/uv-count-down.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/uv-count-down.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/uv-count-down.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-down/components/uv-count-down/uv-count-down.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-to/components/uv-count-to/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-to/components/uv-count-to/uv-count-to.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-to/components/uv-count-to/uv-count-to.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-to/components/uv-count-to/uv-count-to.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-count-to/components/uv-count-to/uv-count-to.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-empty/components/uv-empty/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-empty/components/uv-empty/uv-empty.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-gap/components/uv-gap/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-gap/components/uv-gap/uv-gap.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-gap/components/uv-gap/uv-gap.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-gap/components/uv-gap/uv-gap.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-gap/components/uv-gap/uv-gap.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/icons.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-icon/components/uv-icon/uv-icon.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-image/components/uv-image/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-image/components/uv-image/uv-image.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-image/components/uv-image/uv-image.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-image/components/uv-image/uv-image.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-image/components/uv-image/uv-image.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-input/components/uv-input/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-input/components/uv-input/uv-input.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-line/components/uv-line/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-line/components/uv-line/uv-line.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-link/components/uv-link/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-link/components/uv-link/uv-link.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-link/components/uv-link/uv-link.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-link/components/uv-link/uv-link.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-link/components/uv-link/uv-link.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-loading-icon/components/uv-loading-icon/uv-loading-icon.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-number-box/components/uv-number-box/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-number-box/components/uv-number-box/uv-number-box.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-number-box/components/uv-number-box/uv-number-box.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-number-box/components/uv-number-box/uv-number-box.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-number-box/components/uv-number-box/uv-number-box.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/node/node.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/node/node.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/node/node.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/node/node.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/parser.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/uv-parse.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/uv-parse.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/uv-parse.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-parse/components/uv-parse/uv-parse.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/cache.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/qrcode.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/queue.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-qrcode/components/uv-qrcode/uv-qrcode.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/scrollWxs.wxs
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/uv-scroll-list.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/uv-scroll-list.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/uv-scroll-list.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-scroll-list/components/uv-scroll-list/uv-scroll-list.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-skeleton/components/uv-skeleton/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-skeleton/components/uv-skeleton/uv-skeleton.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-skeleton/components/uv-skeleton/uv-skeleton.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-skeleton/components/uv-skeleton/uv-skeleton.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-skeleton/components/uv-skeleton/uv-skeleton.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper-indicator/uv-swiper-indicator.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-swiper/components/uv-swiper/uv-swiper.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tabs/components/uv-tabs/uv-tabs.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tags/components/uv-tags/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tags/components/uv-tags/uv-tags.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tags/components/uv-tags/uv-tags.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tags/components/uv-tags/uv-tags.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-tags/components/uv-tags/uv-tags.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/uv-text.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/uv-text.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/uv-text.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/uv-text.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-text/components/uv-text/value.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-textarea/components/uv-textarea/uv-textarea.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-transition/components/uv-transition/createAnimation.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-transition/components/uv-transition/uv-transition.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-transition/components/uv-transition/uv-transition.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-transition/components/uv-transition/uv-transition.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-transition/components/uv-transition/uv-transition.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/config/config.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/colorGradient.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/debounce.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/digit.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/platform.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/test.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/function/throttle.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/adapters/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/InterceptorManager.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/Request.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/buildFullPath.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/defaults.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/dispatchRequest.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/mergeConfig.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/core/settle.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/helpers/buildURL.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/helpers/combineURLs.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/helpers/isAbsoluteURL.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/utils.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/luch-request/utils/clone.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/mixin/button.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/mixin/mixin.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/mixin/mpMixin.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/mixin/mpShare.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/mixin/openType.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-ui-tools/libs/util/route.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-waterfall/components/uv-waterfall/props.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-waterfall/components/uv-waterfall/uv-waterfall.js
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-waterfall/components/uv-waterfall/uv-waterfall.json
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-waterfall/components/uv-waterfall/uv-waterfall.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/uv-waterfall/components/uv-waterfall/uv-waterfall.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-common/api/layout/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-common/store/modules/user.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-common/utils/request.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-login/components/ws-login/api/index.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-login/components/ws-login/ws-login.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-login/components/ws-login/ws-login.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-login/components/ws-login/ws-login.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-login/components/ws-login/ws-login.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-logout/components/ws-logout/ws-logout.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-logout/components/ws-logout/ws-logout.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-logout/components/ws-logout/ws-logout.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-logout/components/ws-logout/ws-logout.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-my-asset/components/ws-my-asset/ws-my-asset.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-my-asset/components/ws-my-asset/ws-my-asset.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-my-asset/components/ws-my-asset/ws-my-asset.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-my-asset/components/ws-my-asset/ws-my-asset.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.wxss
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-user-card/components/ws-user-card/ws-user-card.js
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-user-card/components/ws-user-card/ws-user-card.json
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-user-card/components/ws-user-card/ws-user-card.wxml
create mode 100644 dist/dev/mp-weixin/uni_modules/ws-user-card/components/ws-user-card/ws-user-card.wxss
create mode 100644 dist/dev/mp-weixin/utils/common.js
create mode 100644 dist/dev/mp-weixin/utils/decimal.js
create mode 100644 dist/dev/mp-weixin/utils/permission.js
create mode 100644 dist/dev/mp-weixin/utils/request.js
create mode 100644 dist/dev/mp-weixin/utils/token-util.js
create mode 100644 dist/dev/mp-weixin/utils/utils.js
create mode 100644 src/package/admin/field.vue
create mode 100644 src/uni_modules/ws-select-merchant/changelog.md
create mode 100644 src/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.vue
create mode 100644 src/uni_modules/ws-select-merchant/package.json
create mode 100644 src/uni_modules/ws-select-merchant/readme.md
diff --git a/.hbuilderx/launch.json b/.hbuilderx/launch.json
new file mode 100644
index 0000000..81f13f4
--- /dev/null
+++ b/.hbuilderx/launch.json
@@ -0,0 +1,16 @@
+{ // 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": [{
+ "default" :
+ {
+ "launchtype" : "local"
+ },
+ "mp-weixin" :
+ {
+ "launchtype" : "local"
+ },
+ "type" : "uniCloud"
+ }
+ ]
+}
diff --git a/dist/dev/mp-weixin/api/booking/card/index.js b/dist/dev/mp-weixin/api/booking/card/index.js
new file mode 100644
index 0000000..1f72deb
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/card/index.js
@@ -0,0 +1,26 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageCard(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/card/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getCard(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/card/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getCard = getCard;
+exports.pageCard = pageCard;
diff --git a/dist/dev/mp-weixin/api/booking/coupon/index.js b/dist/dev/mp-weixin/api/booking/coupon/index.js
new file mode 100644
index 0000000..00ea366
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/coupon/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageCoupon(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/coupon/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageCoupon = pageCoupon;
diff --git a/dist/dev/mp-weixin/api/booking/course/index.js b/dist/dev/mp-weixin/api/booking/course/index.js
new file mode 100644
index 0000000..8c47a55
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/course/index.js
@@ -0,0 +1,26 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageCourse(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/course/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getCourse(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/course/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getCourse = getCourse;
+exports.pageCourse = pageCourse;
diff --git a/dist/dev/mp-weixin/api/booking/emergency/index.js b/dist/dev/mp-weixin/api/booking/emergency/index.js
new file mode 100644
index 0000000..28686ef
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/emergency/index.js
@@ -0,0 +1,37 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageEmergency(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/emergency/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addEmergency(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/emergency",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function removeEmergency(id) {
+ const res = await utils_request.http.delete(
+ config_setting.MODULES_API_URL + "/booking/emergency/" + id
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addEmergency = addEmergency;
+exports.pageEmergency = pageEmergency;
+exports.removeEmergency = removeEmergency;
diff --git a/dist/dev/mp-weixin/api/booking/field/index.js b/dist/dev/mp-weixin/api/booking/field/index.js
new file mode 100644
index 0000000..489de6b
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/field/index.js
@@ -0,0 +1,26 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function listField(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/field",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function verification(orderNo) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/field/verification/" + orderNo
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.listField = listField;
+exports.verification = verification;
diff --git a/dist/dev/mp-weixin/api/booking/integral/index.js b/dist/dev/mp-weixin/api/booking/integral/index.js
new file mode 100644
index 0000000..1211eb6
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/integral/index.js
@@ -0,0 +1,27 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function addIntegral(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/integral",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getSignData(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/integral/getSignData",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addIntegral = addIntegral;
+exports.getSignData = getSignData;
diff --git a/dist/dev/mp-weixin/api/booking/item/index.js b/dist/dev/mp-weixin/api/booking/item/index.js
new file mode 100644
index 0000000..2b09917
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/item/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function listItem(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/item",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.listItem = listItem;
diff --git a/dist/dev/mp-weixin/api/booking/match/index.js b/dist/dev/mp-weixin/api/booking/match/index.js
new file mode 100644
index 0000000..4cb2959
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/match/index.js
@@ -0,0 +1,26 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageMatch(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/match/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getMatch(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/match/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getMatch = getMatch;
+exports.pageMatch = pageMatch;
diff --git a/dist/dev/mp-weixin/api/booking/matchOrder/index.js b/dist/dev/mp-weixin/api/booking/matchOrder/index.js
new file mode 100644
index 0000000..cf2444d
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/matchOrder/index.js
@@ -0,0 +1,27 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageMatchOrder(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/match-order/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addBatchMatchOrder(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/match-order/batch",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addBatchMatchOrder = addBatchMatchOrder;
+exports.pageMatchOrder = pageMatchOrder;
diff --git a/dist/dev/mp-weixin/api/booking/period/index.js b/dist/dev/mp-weixin/api/booking/period/index.js
new file mode 100644
index 0000000..dbe5209
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/period/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function listPeriod(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/period",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.listPeriod = listPeriod;
diff --git a/dist/dev/mp-weixin/api/booking/student/index.js b/dist/dev/mp-weixin/api/booking/student/index.js
new file mode 100644
index 0000000..1c4395a
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/student/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageStudent(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/student/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageStudent = pageStudent;
diff --git a/dist/dev/mp-weixin/api/booking/userCard/index.js b/dist/dev/mp-weixin/api/booking/userCard/index.js
new file mode 100644
index 0000000..c7d11fc
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/userCard/index.js
@@ -0,0 +1,39 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function findUseCard(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-card/findUseCard",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function pageUserCard(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-card/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getUserCard(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-card/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.findUseCard = findUseCard;
+exports.getUserCard = getUserCard;
+exports.pageUserCard = pageUserCard;
diff --git a/dist/dev/mp-weixin/api/booking/userCardLog/index.js b/dist/dev/mp-weixin/api/booking/userCardLog/index.js
new file mode 100644
index 0000000..d4e5cba
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/userCardLog/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageUserCardLog(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-card-log/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageUserCardLog = pageUserCardLog;
diff --git a/dist/dev/mp-weixin/api/booking/userCoupon/index.js b/dist/dev/mp-weixin/api/booking/userCoupon/index.js
new file mode 100644
index 0000000..34a392f
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/userCoupon/index.js
@@ -0,0 +1,51 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function data() {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-coupon/data",
+ {}
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function pageUserCoupon(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-coupon/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function listUserCoupon(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-coupon",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addUserCoupon(data2) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/user-coupon",
+ data2
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addUserCoupon = addUserCoupon;
+exports.data = data;
+exports.listUserCoupon = listUserCoupon;
+exports.pageUserCoupon = pageUserCoupon;
diff --git a/dist/dev/mp-weixin/api/booking/userInvoice/index.js b/dist/dev/mp-weixin/api/booking/userInvoice/index.js
new file mode 100644
index 0000000..2059ebe
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/userInvoice/index.js
@@ -0,0 +1,69 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageUserInvoice(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-invoice/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addUserInvoice(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/user-invoice",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function updateUserInvoice(data) {
+ const res = await utils_request.http.put(
+ config_setting.MODULES_API_URL + "/booking/user-invoice",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function removeUserInvoice(id) {
+ const res = await utils_request.http.delete(
+ config_setting.MODULES_API_URL + "/booking/user-invoice/" + id
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function doInvoice(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/booking/user-invoice/doInvoice",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function showInvoice(orderNo) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/booking/user-invoice/showInvoice/" + orderNo
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addUserInvoice = addUserInvoice;
+exports.doInvoice = doInvoice;
+exports.pageUserInvoice = pageUserInvoice;
+exports.removeUserInvoice = removeUserInvoice;
+exports.showInvoice = showInvoice;
+exports.updateUserInvoice = updateUserInvoice;
diff --git a/dist/dev/mp-weixin/api/booking/users/index.js b/dist/dev/mp-weixin/api/booking/users/index.js
new file mode 100644
index 0000000..b7b4712
--- /dev/null
+++ b/dist/dev/mp-weixin/api/booking/users/index.js
@@ -0,0 +1,27 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function updateUsers(data) {
+ const res = await utils_request.http.put(
+ config_setting.MODULES_API_URL + "/shop/users",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getByPhone(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/users/getByPhone",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getByPhone = getByPhone;
+exports.updateUsers = updateUsers;
diff --git a/dist/dev/mp-weixin/api/cms/article/index.js b/dist/dev/mp-weixin/api/cms/article/index.js
new file mode 100644
index 0000000..7f4a45d
--- /dev/null
+++ b/dist/dev/mp-weixin/api/cms/article/index.js
@@ -0,0 +1,24 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageArticle(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/cms/article/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getArticle(id) {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/cms/article/" + id);
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getArticle = getArticle;
+exports.pageArticle = pageArticle;
diff --git a/dist/dev/mp-weixin/api/cms/mp-menu/index.js b/dist/dev/mp-weixin/api/cms/mp-menu/index.js
new file mode 100644
index 0000000..f5b1b94
--- /dev/null
+++ b/dist/dev/mp-weixin/api/cms/mp-menu/index.js
@@ -0,0 +1,29 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageMpMenu(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/cms/mp-menu/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function listMpMenu(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/cms/mp-menu",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.listMpMenu = listMpMenu;
+exports.pageMpMenu = pageMpMenu;
diff --git a/dist/dev/mp-weixin/api/layout/index.js b/dist/dev/mp-weixin/api/layout/index.js
new file mode 100644
index 0000000..1aa1826
--- /dev/null
+++ b/dist/dev/mp-weixin/api/layout/index.js
@@ -0,0 +1,37 @@
+"use strict";
+const utils_request = require("../../utils/request.js");
+const config_setting = require("../../config/setting.js");
+async function getSiteInfo() {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/cms/website/getSiteInfo"
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getUserInfo() {
+ const res = await utils_request.http.get(config_setting.SERVER_API_URL + "/auth/user");
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getNext7day() {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/cms/website/getNext7day");
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getServerTime() {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/cms/website/getServerTime");
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getNext7day = getNext7day;
+exports.getServerTime = getServerTime;
+exports.getSiteInfo = getSiteInfo;
+exports.getUserInfo = getUserInfo;
diff --git a/dist/dev/mp-weixin/api/oa/project/index.js b/dist/dev/mp-weixin/api/oa/project/index.js
new file mode 100644
index 0000000..deda6fe
--- /dev/null
+++ b/dist/dev/mp-weixin/api/oa/project/index.js
@@ -0,0 +1,2 @@
+"use strict";
+require("../../../utils/request.js");
diff --git a/dist/dev/mp-weixin/api/passport/login/index.js b/dist/dev/mp-weixin/api/passport/login/index.js
new file mode 100644
index 0000000..23532f1
--- /dev/null
+++ b/dist/dev/mp-weixin/api/passport/login/index.js
@@ -0,0 +1,35 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function sendSmsCaptcha(data) {
+ const res = await utils_request.http.post("/sendSmsCaptcha", data);
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getWxOpenId(data) {
+ const res = await utils_request.http.post(config_setting.SERVER_API_URL + "/wx-login/getWxOpenId", data);
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function updatePayPassword(data) {
+ const res = await utils_request.http.put(config_setting.SERVER_API_URL + "/auth/updatePayPassword", data);
+ if (res.data.code === 0) {
+ return res.data.message ?? "修改成功";
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function checkPayPassword(data) {
+ const res = await utils_request.http.post(config_setting.SERVER_API_URL + "/auth/checkPayPassword", data);
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.checkPayPassword = checkPayPassword;
+exports.getWxOpenId = getWxOpenId;
+exports.sendSmsCaptcha = sendSmsCaptcha;
+exports.updatePayPassword = updatePayPassword;
diff --git a/dist/dev/mp-weixin/api/shop/goods/index.js b/dist/dev/mp-weixin/api/shop/goods/index.js
new file mode 100644
index 0000000..af3c769
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/goods/index.js
@@ -0,0 +1,26 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageGoods(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/goods/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getGoods(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/goods/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getGoods = getGoods;
+exports.pageGoods = pageGoods;
diff --git a/dist/dev/mp-weixin/api/shop/goodsCategory/index.js b/dist/dev/mp-weixin/api/shop/goodsCategory/index.js
new file mode 100644
index 0000000..2b8d0fc
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/goodsCategory/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageGoodsCategory(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/goods-category/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageGoodsCategory = pageGoodsCategory;
diff --git a/dist/dev/mp-weixin/api/shop/merchant/index.js b/dist/dev/mp-weixin/api/shop/merchant/index.js
new file mode 100644
index 0000000..4252d2a
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/merchant/index.js
@@ -0,0 +1,31 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageMerchant(params) {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/shop/merchant/page", {
+ params
+ });
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function listMerchant(params) {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/shop/merchant", {
+ params
+ });
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getMerchant(id) {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/shop/merchant/" + id);
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.getMerchant = getMerchant;
+exports.listMerchant = listMerchant;
+exports.pageMerchant = pageMerchant;
diff --git a/dist/dev/mp-weixin/api/shop/order/index.js b/dist/dev/mp-weixin/api/shop/order/index.js
new file mode 100644
index 0000000..b9bb958
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/order/index.js
@@ -0,0 +1,58 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageOrder(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/order/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addOrder(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/shop/order",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function updateOrder(data) {
+ const res = await utils_request.http.put(
+ config_setting.MODULES_API_URL + "/shop/order",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getOrder(id) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/order/" + id
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function getByOrderNo(orderNo) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/order/getByOrderNo/" + orderNo
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addOrder = addOrder;
+exports.getByOrderNo = getByOrderNo;
+exports.getOrder = getOrder;
+exports.pageOrder = pageOrder;
+exports.updateOrder = updateOrder;
diff --git a/dist/dev/mp-weixin/api/shop/userAddress/index.js b/dist/dev/mp-weixin/api/shop/userAddress/index.js
new file mode 100644
index 0000000..a2e5142
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/userAddress/index.js
@@ -0,0 +1,48 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageUserAddress(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/user-address/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function addUserAddress(data) {
+ const res = await utils_request.http.post(
+ config_setting.MODULES_API_URL + "/shop/user-address",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function updateUserAddress(data) {
+ const res = await utils_request.http.put(
+ config_setting.MODULES_API_URL + "/shop/user-address",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+async function removeUserAddress(id) {
+ const res = await utils_request.http.delete(
+ config_setting.MODULES_API_URL + "/shop/user-address/" + id
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.addUserAddress = addUserAddress;
+exports.pageUserAddress = pageUserAddress;
+exports.removeUserAddress = removeUserAddress;
+exports.updateUserAddress = updateUserAddress;
diff --git a/dist/dev/mp-weixin/api/shop/users/index.js b/dist/dev/mp-weixin/api/shop/users/index.js
new file mode 100644
index 0000000..9976daa
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/users/index.js
@@ -0,0 +1,14 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function updateUsers(data) {
+ const res = await utils_request.http.put(
+ config_setting.MODULES_API_URL + "/shop/users",
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.updateUsers = updateUsers;
diff --git a/dist/dev/mp-weixin/api/shop/wechatDeposit/index.js b/dist/dev/mp-weixin/api/shop/wechatDeposit/index.js
new file mode 100644
index 0000000..b3dfa52
--- /dev/null
+++ b/dist/dev/mp-weixin/api/shop/wechatDeposit/index.js
@@ -0,0 +1,16 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageWechatDeposit(params) {
+ const res = await utils_request.http.get(
+ config_setting.MODULES_API_URL + "/shop/wechat-deposit/page",
+ {
+ params
+ }
+ );
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageWechatDeposit = pageWechatDeposit;
diff --git a/dist/dev/mp-weixin/api/system/cache/index.js b/dist/dev/mp-weixin/api/system/cache/index.js
new file mode 100644
index 0000000..deda6fe
--- /dev/null
+++ b/dist/dev/mp-weixin/api/system/cache/index.js
@@ -0,0 +1,2 @@
+"use strict";
+require("../../../utils/request.js");
diff --git a/dist/dev/mp-weixin/api/system/dictionary-data/index.js b/dist/dev/mp-weixin/api/system/dictionary-data/index.js
new file mode 100644
index 0000000..deda6fe
--- /dev/null
+++ b/dist/dev/mp-weixin/api/system/dictionary-data/index.js
@@ -0,0 +1,2 @@
+"use strict";
+require("../../../utils/request.js");
diff --git a/dist/dev/mp-weixin/api/system/file/index.js b/dist/dev/mp-weixin/api/system/file/index.js
new file mode 100644
index 0000000..d69913a
--- /dev/null
+++ b/dist/dev/mp-weixin/api/system/file/index.js
@@ -0,0 +1,51 @@
+"use strict";
+const common_vendor = require("../../../common/vendor.js");
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+const computeSignature = (accessKeySecret, canonicalString) => {
+ return common_vendor.crypto.enc.Base64.stringify(common_vendor.crypto.HmacSHA1(canonicalString, accessKeySecret));
+};
+async function uploadOssByPath(filePath) {
+ return new Promise(async (resolve, reject) => {
+ const date = /* @__PURE__ */ new Date();
+ date.setMinutes(date.getMinutes() + 1);
+ const policyText = {
+ expiration: date.toISOString(),
+ // 设置policy过期时间。
+ conditions: [
+ // 限制上传大小。
+ ["content-length-range", 0, 1024 * 1024 * 1024]
+ ]
+ };
+ let sts = common_vendor.index.getStorageSync("sts");
+ let stsExpired = common_vendor.index.getStorageSync("stsExpiredAt");
+ if (!sts || stsExpired && common_vendor.dayjs().isBefore(common_vendor.dayjs(stsExpired))) {
+ const { data: { data: { credentials } } } = await utils_request.http.get(`${config_setting.SERVER_API_URL}/oss/getSTSToken`);
+ common_vendor.index.setStorageSync("sts", credentials);
+ common_vendor.index.setStorageSync("stsExpiredAt", credentials.expiration);
+ sts = credentials;
+ }
+ console.log(sts);
+ const [filename, ext] = filePath.split(".");
+ const key = `headers/${common_vendor.md5(filename + Math.random() * 1e5)}.${ext}`;
+ const policy = common_vendor.gBase64.encode(JSON.stringify(policyText));
+ const signature = computeSignature(sts.accessKeySecret, policy);
+ common_vendor.index.uploadFile({
+ url: "https://oss.wsdns.cn",
+ name: "file",
+ filePath,
+ formData: {
+ key,
+ policy,
+ OSSAccessKeyId: sts.accessKeyId,
+ signature,
+ "x-oss-security-token": sts.securityToken
+ },
+ success: () => {
+ resolve(`https://oss.wsdns.cn/${key}`);
+ },
+ error: (err) => reject(err)
+ });
+ });
+}
+exports.uploadOssByPath = uploadOssByPath;
diff --git a/dist/dev/mp-weixin/api/system/payment/index.js b/dist/dev/mp-weixin/api/system/payment/index.js
new file mode 100644
index 0000000..f172a8c
--- /dev/null
+++ b/dist/dev/mp-weixin/api/system/payment/index.js
@@ -0,0 +1,13 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function select(params) {
+ const res = await utils_request.http.get(config_setting.SERVER_API_URL + "/system/payment/select", {
+ params
+ });
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.select = select;
diff --git a/dist/dev/mp-weixin/api/system/user/index.js b/dist/dev/mp-weixin/api/system/user/index.js
new file mode 100644
index 0000000..698c964
--- /dev/null
+++ b/dist/dev/mp-weixin/api/system/user/index.js
@@ -0,0 +1,13 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function updatePointsBySign() {
+ const res = await utils_request.http.post(
+ config_setting.SERVER_API_URL + "/system/user/updatePointsBySign"
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.updatePointsBySign = updatePointsBySign;
diff --git a/dist/dev/mp-weixin/api/user/balance-log/index.js b/dist/dev/mp-weixin/api/user/balance-log/index.js
new file mode 100644
index 0000000..8551431
--- /dev/null
+++ b/dist/dev/mp-weixin/api/user/balance-log/index.js
@@ -0,0 +1,11 @@
+"use strict";
+const utils_request = require("../../../utils/request.js");
+const config_setting = require("../../../config/setting.js");
+async function pageUserBalanceLog(params) {
+ const res = await utils_request.http.get(config_setting.MODULES_API_URL + "/shop/user-balance-log/page", { params });
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
+}
+exports.pageUserBalanceLog = pageUserBalanceLog;
diff --git a/dist/dev/mp-weixin/app.js b/dist/dev/mp-weixin/app.js
new file mode 100644
index 0000000..4b311b5
--- /dev/null
+++ b/dist/dev/mp-weixin/app.js
@@ -0,0 +1,83 @@
+"use strict";
+const common_vendor = require("./common/vendor.js");
+require("./utils/request.js");
+const store_index = require("./store/index.js");
+const utils_permission = require("./utils/permission.js");
+require("./store/modules/user.js");
+const uni_modules_uvUiTools_index = require("./uni_modules/uv-ui-tools/index.js");
+if (!Math) {
+ "./pages/index/index.js";
+ "./pages/shop/shop.js";
+ "./pages/order/order.js";
+ "./pages/user/user.js";
+ "./package/user/personal.js";
+ "./package/user/emergency.js";
+ "./package/user/coupon.js";
+ "./package/user/integral.js";
+ "./package/user/invoice.js";
+ "./package/user/invoice-edit.js";
+ "./package/user/invoice-show.js";
+ "./package/user/balance-log.js";
+ "./package/user/card.js";
+ "./package/user/card-detail.js";
+ "./package/user/card-detail-merchant.js";
+ "./package/user/card-detail-about.js";
+ "./package/user/card-detail-record.js";
+ "./package/user/pay-password.js";
+ "./package/user/address.js";
+ "./package/user/ic-card.js";
+ "./package/user/ic-card-order.js";
+ "./package/order/index.js";
+ "./package/user/qrcode.js";
+ "./package/goods/detail.js";
+ "./package/goods/checkout.js";
+ "./package/goods/order.js";
+ "./package/card/index.js";
+ "./package/card/checkout.js";
+ "./package/article/index.js";
+ "./package/article/detail.js";
+ "./package/booking/merchant.js";
+ "./package/booking/index.js";
+ "./package/booking/checkout.js";
+ "./package/booking/confirm.js";
+ "./package/booking/cashier.js";
+ "./package/order/detail.js";
+ "./package/course/index.js";
+ "./package/course/list.js";
+ "./package/course/detail.js";
+ "./package/course/checkout.js";
+ "./package/course/student.js";
+ "./package/admin/index.js";
+ "./package/admin/order-scan.js";
+ "./package/admin/field.js";
+ "./package/teacher/detail.js";
+ "./package/match/index.js";
+ "./package/match/detail.js";
+ "./package/match/checkout.js";
+ "./package/cooperate/index.js";
+ "./package/coupon/index.js";
+}
+const _sfc_main = {
+ onLaunch: async function() {
+ console.log("App Launch");
+ common_vendor.index.getSystemInfo({
+ success(data) {
+ console.log(data);
+ console.log("data.navigationStyle: ", data.navigationStyle);
+ }
+ });
+ },
+ onShow: async function() {
+ console.log("App Show");
+ },
+ onHide: function() {
+ console.log("App Hide");
+ }
+};
+const App = /* @__PURE__ */ common_vendor._export_sfc(_sfc_main, [["__file", "/Users/gxwebsoft/APP/gxtyzx-uniapp-cli/src/App.vue"]]);
+const app = common_vendor.createApp(App);
+app.use(store_index.store);
+app.use(utils_permission.permission);
+app.use(uni_modules_uvUiTools_index.uvUI);
+app.use(common_vendor.createPinia());
+app.mount("#app");
diff --git a/dist/dev/mp-weixin/app.json b/dist/dev/mp-weixin/app.json
new file mode 100644
index 0000000..02ba1e1
--- /dev/null
+++ b/dist/dev/mp-weixin/app.json
@@ -0,0 +1,101 @@
+{
+ "pages": [
+ "pages/index/index",
+ "pages/shop/shop",
+ "pages/order/order",
+ "pages/user/user"
+ ],
+ "subPackages": [
+ {
+ "root": "package",
+ "pages": [
+ "user/personal",
+ "user/emergency",
+ "user/coupon",
+ "user/integral",
+ "user/invoice",
+ "user/invoice-edit",
+ "user/invoice-show",
+ "user/balance-log",
+ "user/card",
+ "user/card-detail",
+ "user/card-detail-merchant",
+ "user/card-detail-about",
+ "user/card-detail-record",
+ "user/pay-password",
+ "user/address",
+ "user/ic-card",
+ "user/ic-card-order",
+ "order/index",
+ "user/qrcode",
+ "goods/detail",
+ "goods/checkout",
+ "goods/order",
+ "card/index",
+ "card/checkout",
+ "article/index",
+ "article/detail",
+ "booking/merchant",
+ "booking/index",
+ "booking/checkout",
+ "booking/confirm",
+ "booking/cashier",
+ "order/detail",
+ "course/index",
+ "course/list",
+ "course/detail",
+ "course/checkout",
+ "course/student",
+ "admin/index",
+ "admin/order-scan",
+ "admin/field",
+ "teacher/detail",
+ "match/index",
+ "match/detail",
+ "match/checkout",
+ "cooperate/index",
+ "coupon/index"
+ ]
+ }
+ ],
+ "window": {
+ "navigationBarTextStyle": "black",
+ "navigationBarTitleText": "webSoft",
+ "navigationBarBackgroundColor": "#F8F8F8",
+ "backgroundColor": "#F8F8F8"
+ },
+ "tabBar": {
+ "color": "#000000",
+ "selectedColor": "#d81e06",
+ "borderStyle": "black",
+ "backgroundColor": "#ffffff",
+ "list": [
+ {
+ "pagePath": "pages/index/index",
+ "iconPath": "static/tabbar/home.png",
+ "selectedIconPath": "static/tabbar/home-active.png",
+ "text": "首页"
+ },
+ {
+ "pagePath": "pages/shop/shop",
+ "iconPath": "static/tabbar/shop.png",
+ "selectedIconPath": "static/tabbar/shop-active.png",
+ "text": "商城"
+ },
+ {
+ "pagePath": "pages/order/order",
+ "iconPath": "static/tabbar/order.png",
+ "selectedIconPath": "static/tabbar/order-active.png",
+ "text": "订单"
+ },
+ {
+ "pagePath": "pages/user/user",
+ "iconPath": "static/tabbar/user.png",
+ "selectedIconPath": "static/tabbar/user-active.png",
+ "text": "我的"
+ }
+ ]
+ },
+ "lazyCodeLoading": "requiredComponents",
+ "usingComponents": {}
+}
\ No newline at end of file
diff --git a/dist/dev/mp-weixin/app.wxss b/dist/dev/mp-weixin/app.wxss
new file mode 100644
index 0000000..23d7f05
--- /dev/null
+++ b/dist/dev/mp-weixin/app.wxss
@@ -0,0 +1,2695 @@
+
+ .uni-card {
+ border-radius: 8px !important;
+}
+
+/**
+ * 这里是uni-app内置的常用样式变量
+ *
+ * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量
+ * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App
+ *
+ */
+/**
+ * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能
+ *
+ * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件
+ */
+/* 颜色变量 */
+/* 行为相关颜色 */
+/* 文字基本颜色 */
+/* 背景颜色 */
+/* 边框颜色 */
+/* 尺寸变量 */
+/* 文字尺寸 */
+/* 图片尺寸 */
+/* Border Radius */
+/* 水平间距 */
+/* 垂直间距 */
+/* 透明度 */
+/* 文章场景相关 */
+/* 辅助样式 */
+/* 水平间距 */
+@font-face {
+ font-family: "iconfont"; /* Project id 4341985 */
+ src: url('data:font/ttf;base64,AAEAAAALAIAAAwAwR1NVQiCLJXoAAAE4AAAAVE9TLzI8FkpFAAABjAAAAGBjbWFwF6ge+gAAAhgAAAIuZ2x5ZgDcciUAAARgAAALxGhlYWQmMjb1AAAA4AAAADZoaGVhB+YDrgAAALwAAAAkaG10eCwt//wAAAHsAAAALGxvY2EOohGEAAAESAAAABhtYXhwASAAogAAARgAAAAgbmFtZRCjPLAAABAkAAACZ3Bvc3QTU8LBAAASjAAAAKAAAQAAA4D/gABcBCz//f/2BAoAAQAAAAAAAAAAAAAAAAAAAAsAAQAAAAEAAFf5dnJfDzz1AAsEAAAAAADhhfl8AAAAAOGF+Xz//f9/BAoDgQAAAAgAAgAAAAAAAAABAAAACwCWAAsAAAAAAAIAAAAKAAoAAAD/AAAAAAAAAAEAAAAKADAAPgACREZMVAAObGF0bgAaAAQAAAAAAAAAAQAAAAQAAAAAAAAAAQAAAAFsaWdhAAgAAAABAAAAAQAEAAQAAAABAAgAAQAGAAAAAQAAAAQEBAGQAAUAAAKJAswAAACPAokCzAAAAesAMgEIAAACAAUDAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFBmRWQAwOYA53EDgP+AAAAD3ACBAAAAAQAAAAAAAAAAAAAAAAACBAAAAAQAAAAELAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAD//QQA//8AAAAFAAAAAwAAACwAAAAEAAABpgABAAAAAACgAAMAAQAAACwAAwAKAAABpgAEAHQAAAAUABAAAwAE5gDmBOYd5iPmMuY05jnmQ+dx//8AAOYA5gTmHeYj5jLmNOY45kPncf//AAAAAAAAAAAAAAAAAAAAAAAAAAEAFAAUABQAFAAUABQAFAAWABYAAAAFAAcACAAEAAEACQAGAAMACgACAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAACIAAAAAAAAAAoAAOYAAADmAAAAAAUAAOYEAADmBAAAAAcAAOYdAADmHQAAAAgAAOYjAADmIwAAAAQAAOYyAADmMgAAAAEAAOY0AADmNAAAAAkAAOY4AADmOAAAAAYAAOY5AADmOQAAAAMAAOZDAADmQwAAAAoAAOdxAADncQAAAAIAAAAAAAAAUAC2AXoCLgLqA8oEbgT0BYAF4gACAAAAAANoAwEAHwA3AAAlFRQGIyEiJj0BNCYrASIGHQEUFjMhMjY9ATQmKwEiBgMRNzYyFhQPAy8BJjQ2Mh8BETQ2MhYDIggG/dgGCAYEMgQGIxkCWBkjBgQyBAb/rgodFArqChAO8goUHQquFRwV6JIGCAgGkgQGBgSqGSMjGaoEBgYB8f4/rQoUHQrrBgME8AodFAqtAcEOFRUAAAAABAAA/8kDzgM7ABgAIwAtAEAAABM1Nz4BMyEyFh8BFhURFA4BIyEiLgE1ETQXERUUFjMhMjY1ES8BLgEjISIGDwETLgEOAhYfAR4BNyU+AS4BBwVdTQ03IQIJITcNTgMoRSj9tShFKD8yJAJLJDIQPAUYDv33DhcGPL8GEBEMBQQGZAsgDAEYCgERGgn++AI+AbgfJCQfuQcH/i4oRCgoRCgB0ggn/qxfIzMzIwGzPpANEBANkP7IBgUDDBARBmsLAgv1CRkUAgnmAAAACwAA/8cECgMwAAwAEAAfACwAOQBKAFcAYABtAHYAhwAAJScuAj0BMxUUFjMXMzcXBzMnETQmKwE1MzIeARURFyUiLgE0PgEyHgEUDgEDIg4BFB4BMj4BNC4BASc3NScjNTMyHwEWHQEUBgcFIi4BND4BMh4BFA4BJyIGFBYyNjQmBSIuATQ+ATIeARQOASciBhQWMjY0JgEjIiY9ATQ2MhYdATMyFhQGASIqHDAcMiAXLOqUAZTCSCAXm5sdMBwZ/h9Cb0JCb4RwQkJwQjRZNDRZaVk0NFkCmAMZa8nWDAh3BQ0K/acmQicnQk1CJydCJyY3N003NwGKJ0ImJkJOQScnQScnNjZNNzf96WUKDw8VDkwKDw8+AgEcMBzJyRYhAgIyAgQB9xcgMhwwHf44AdlCcINwQkJwhG9CAbU0WWlZNDRZaVk0/UAyAdCPMgqgBwjwCg4BeCZCTUInJ0JNQibsN002Nk037CZCTUInJ0JNQibsN002Nk03AXAOCmYKDw8KTQ4VDgAJAAD/wAOhAx8ADwAfAC8APwBPAF8AbAB5AIYAAAEjIgYdARQWOwEyNj0BNCYDFAYrASImPQE0NjsBMhYVAyMiBh0BFBY7ATI2PQE0JgMUBisBIiY9ATQ2OwEyFhUBIyIGHQEUFjsBMjY9ATQmAxQGKwEiJj0BNDY7ATIWFRMiBhURFBYyNjURNCYFIgYVERQWMjY1ETQmFyIGHQEUFjI2PQE0JgGZ7h4rKx7uHisrFwwI2AgMDAjYCAwH7h4rKx7uHisrFwwI2AgMDAjYCAwBt+4eKyse7h4rKxcMCNgIDAwI2AgMAg0TExoTE/7zDRMTGhMTcw0TExoTEwMeKx7uHisrHu4eK/7WCAwMCNgIDAwI/nQrHu4eKyse7h4r/tYIDAwI2AgMDAgCMCse7h4rKx7uHiv+1ggMDAjYCAwMCP50Ew3+wA0TEw0BQA0TQBMN/wANExMNAQANE0ATDcANExMNwA0TAAACAAD/4APEAyAAQACHAAABMzU+ATQmKwE1NzE2NzQuAQ8BJyYOAhcVFxUjFQ4BFBYXFTMVIxUOARQWFxUzFTMeATI2NzM1MzU+ATQmKwE1JSYiDwEmJyYnJiIHBgcGFBcWFxYzMjc2NzY/ATY1NCYjIgcGBwYjIicmJyY0NzY3NjIXFhcWHQEnJiIGFB8BFjMXMj8BNjQCWAgICQ4LYmsDAQ0WCF1jBxYMAQRvagcKCgdqagcKCgdqAgINEQ0DAWoICQ4LYgHFBxcIGQM6N11g32FeNzk5N15hcV1VUDsFAwEDEQwPCDNHSVJiVFIwMTEwUlTDVFIwMSkIFxAISwgMBgwHTggBdQEDDRMPFWoGBgoQAQdcYQcBDhEHAW0WAgINEQ0DAScBAw0RDQMBaAgKCghoAgINEw8nMAgIGG5eWzU3OTdeYeJhXjc5KCdGAwUCBgYMEA09IiMxMFFUxFRRMDExMFFUYgQpCBAWCEsIAQdNCBYAAAAABQAA/70DxQNCAB0ASQBWAHcAlQAAJSIuATUnNDc2NzY3Nhc2NzYzMhcWFzY3NhcWBw4BASIHMQYHBgcGFxUUFxYXFjMyNjc2JyYnJgYPAScmJyYnJiMiBwYHBg8BJyYTIiY9ATQ2MhYdARQGNyIjLgE3Njc2Nz4BFxYXHgEOASYnIyYnJgcGBwYHDgIhIi4BJyYnJicmBw4CLgE2NzY3NhYXFhcWFxYGBwH9dK1eAQECBwojNmAdJTY8QzIjFzQnNBpEDQvP/ikJBAUCBgIBAR4iQ0tvnacKBQoIEAtTKiQKBAkRFiAmHh4YFxEKDiFI/A4UFBwTE3gCAg4RAgIIEB0oezEjGg0OBhcbBwEIEiU3KhwTCwYDE/7vDRMDBQsUHCk4JRMPGxcFDg0ZJDB7KR0QCAICEg2uT5FgHjccLxojDhQqMR8vMSE0EgYHESyymqQB9wICBhYsGjIfRDg/IyiEg0swJwoEExEPIg0TJBcfGBMfGBYfECT9GREM8AwREQzwDBENAhINERcrICsaCQYSCRMXDQUKCQULDQkfFh8RFg8PGBAfFh4JDQsGEwUNGBMJEgYJGiwfKxcRDBMCAAUAAAAAA8AC9gBGAE8AXgBnAHYAAAEyNj0BNC4BIyEiDgEdASMiBg8BBh0BMx4CMj4BNzMeAjI+ATc+Aj0BNCYiBh0BFAYrAS4BIgYHIxE0NjMhMhYdARQWASImNDYyFhQGNy4BIgYHIzU0PwE2OwERJTIWFAYiJjQ2ASIGHQEjIgYUFjsBNTQmA6ULDyE4If6nIjghehgsD1wgRgIgNj42IAL/AiA2PjUhASE2IA8WDykdBg47SDwNwCodAVkdKQ/9SxwnJzgnJ1EOO0g8DRwUXRAaegFhGygoNycn/noLD2ULDw8LmRABoQ8LwCE4ISE4IQsVE3QoMvofNB4eNB8fNB4eNB8BITchJQsPDwslHSkgKCggAccdKSkdwAsP/qInNycnNydxICgoIMYgGnQU/ngUJzcnJzcnAWYPC2QQFQ+YCw8AAAADAAD/9wO4AwgAVABWAGIAAAE+AT0BNC4BIyEiDgEVERQeATMhMj4BPQE0JiIGHQEUDgEjISImNRE0NjMhMhYdARQHBgchIg4CFB4COwEyPgE1NCYiBhUUBisBIiY0NjMhNjc2JyMFFRQWMjY9ATQmIgYDiBcYHzYf/XwgNR8fNSACKDhgOA4UDitKK/3YHCgoHAKEHCgUDQ3+7RwyKBUVKDIc5iZAJQ4UDjUm5igzMygBFAcKECEB/twOFA4OFA4B6AwpGlwgNR8fNSD92B82HzhfORcKDg4KFytKKygcAigdJycdXBgMBwISIjE3MSMSJkAlCg4OCiU2LUgtAQIEKW4qCQ8PCSoKDg4AAv/9/38EBAOBADcAYQAACQEuASIGBwEGBwYWFxY7AREUHgEXMzI3Njc1NDc+ATsBMhYXFh0BFhcWOwE+AjURMzI3PgEnJgcjERQGKwEuASc1NCcmKwEiBwYdAQ4BKwEiJjURIyIyMTY3AT4BMzIXAQPg/nsSLzQvEv58GwUDDQsTHjkfNiFMMhcUAQECDQ+DDw0CAQEOGDdLIjYfOR0TDA0DBTaEIRpKDwwBFBczgzMXFQEMEkYaIYQBAQQQAYUJFwwYEwGEAcUBlBMUFBP+bBwdFB4KEP7JIj8nASAbN+MRBwoJCQoHEewqGCcBJz8iATcQCh4UHSn+iRwtAQwN7zkdISEdOfANDC0cAXcIEQGUCQoT/mwAAAT///+ABAEDgQAAABkAMAA5AAABIRQXHgEXFjI3PgE3NjQnLgEnJiIHDgEHBh8BFjY3AQcGFh8BFjY3EzYmBwEOAR4BHwEeAQ8BNzQ2AgD+ACgnjlxf0F9cjicoKCeOXF/QX1yOJyjncgYPBQEtzwkIDY0WJwVLAg0H/f8GCAEJ3kQFAQRcAg4BgGhfXI4nKCgnjlxf0F9cjicoKCeOXF+hLwMCBQEE8QobBC0GFxYBcwgKBP70Aw0PDWUyBAwEWJQIBwAAABIA3gABAAAAAAAAABMAAAABAAAAAAABAAgAEwABAAAAAAACAAcAGwABAAAAAAADAAgAIgABAAAAAAAEAAgAKgABAAAAAAAFAAsAMgABAAAAAAAGAAgAPQABAAAAAAAKACsARQABAAAAAAALABMAcAADAAEECQAAACYAgwADAAEECQABABAAqQADAAEECQACAA4AuQADAAEECQADABAAxwADAAEECQAEABAA1wADAAEECQAFABYA5wADAAEECQAGABAA/QADAAEECQAKAFYBDQADAAEECQALACYBY0NyZWF0ZWQgYnkgaWNvbmZvbnRpY29uZm9udFJlZ3VsYXJpY29uZm9udGljb25mb250VmVyc2lvbiAxLjBpY29uZm9udEdlbmVyYXRlZCBieSBzdmcydHRmIGZyb20gRm9udGVsbG8gcHJvamVjdC5odHRwOi8vZm9udGVsbG8uY29tAEMAcgBlAGEAdABlAGQAIABiAHkAIABpAGMAbwBuAGYAbwBuAHQAaQBjAG8AbgBmAG8AbgB0AFIAZQBnAHUAbABhAHIAaQBjAG8AbgBmAG8AbgB0AGkAYwBvAG4AZgBvAG4AdABWAGUAcgBzAGkAbwBuACAAMQAuADAAaQBjAG8AbgBmAG8AbgB0AEcAZQBuAGUAcgBhAHQAZQBkACAAYgB5ACAAcwB2AGcAMgB0AHQAZgAgAGYAcgBvAG0AIABGAG8AbgB0AGUAbABsAG8AIABwAHIAbwBqAGUAYwB0AC4AaAB0AHQAcAA6AC8ALwBmAG8AbgB0AGUAbABsAG8ALgBjAG8AbQAAAgAAAAAAAAAKAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAALAQIBAwEEAQUBBgEHAQgBCQEKAQsBDAAGeGlhemFpC2RhaXNob3VodW8xCGRhaWZhaHVvB2Vyd2VpbWENdHVpa3VhbnR1aWh1bwtkYWlwaW5namlhMQpkYWlzaG91aHVvCmRhaWZ1a3VhbjEGc2hvdXllCWEtYmlhbnp1MwAA') format('truetype');
+}
+.iconfont {
+ font-family: "iconfont" !important;
+ font-size: 16px;
+ font-style: normal;
+ -webkit-font-smoothing: antialiased;
+ -moz-osx-font-smoothing: grayscale;
+}
+.icon-xiazai:before {
+ content: "\e632";
+}
+.icon-daishouhuo1:before {
+ content: "\e771";
+}
+.icon-daifahuo:before {
+ content: "\e639";
+}
+.icon-erweima:before {
+ content: "\e623";
+}
+.icon-tuikuantuihuo:before {
+ content: "\e600";
+}
+.icon-daipingjia1:before {
+ content: "\e638";
+}
+.icon-daishouhuo:before {
+ content: "\e604";
+}
+.icon-daifukuan1:before {
+ content: "\e61d";
+}
+.icon-shouye:before {
+ content: "\e634";
+}
+.icon-a-bianzu3:before {
+ content: "\e643";
+}
+.uni-border {
+ border: 1px #F0F0F0 solid;
+}
+.uni-primary {
+ color: #2979ff;
+}
+.uni-primary-bg {
+ background-color: #2979ff;
+}
+.uni-primary-disable {
+ color: #8fb9ff;
+}
+.uni-primary-disable-bg {
+ background-color: #8fb9ff;
+}
+.uni-primary-light {
+ color: #a9c9ff;
+}
+.uni-primary-light-bg {
+ background-color: #a9c9ff;
+}
+.uni-success {
+ color: #18bc37;
+}
+.uni-success-bg {
+ background-color: #18bc37;
+}
+.uni-success-disable {
+ color: #51e96e;
+}
+.uni-success-disable-bg {
+ background-color: #51e96e;
+}
+.uni-success-light {
+ color: #68ec81;
+}
+.uni-success-light-bg {
+ background-color: #68ec81;
+}
+.uni-warning {
+ color: #f3a73f;
+}
+.uni-warning-bg {
+ background-color: #f3a73f;
+}
+.uni-warning-disable {
+ color: #f9d39f;
+}
+.uni-warning-disable-bg {
+ background-color: #f9d39f;
+}
+.uni-warning-light {
+ color: #fbdeb7;
+}
+.uni-warning-light-bg {
+ background-color: #fbdeb7;
+}
+.uni-error {
+ color: #e43d33;
+}
+.uni-error-bg {
+ background-color: #e43d33;
+}
+.uni-error-disable {
+ color: #f0938d;
+}
+.uni-error-disable-bg {
+ background-color: #f0938d;
+}
+.uni-error-light {
+ color: #f3a8a4;
+}
+.uni-error-light-bg {
+ background-color: #f3a8a4;
+}
+.uni-info {
+ color: #8f939c;
+}
+.uni-info-bg {
+ background-color: #8f939c;
+}
+.uni-info-disable {
+ color: #c5c7cc;
+}
+.uni-info-disable-bg {
+ background-color: #c5c7cc;
+}
+.uni-info-light {
+ color: #d3d4d8;
+}
+.uni-info-light-bg {
+ background-color: #d3d4d8;
+}
+.uni-main-color {
+ color: #3a3a3a;
+}
+.uni-main-color-bg {
+ background-color: #3a3a3a;
+}
+.uni-base-color {
+ color: #6a6a6a;
+}
+.uni-base-color-bg {
+ background-color: #6a6a6a;
+}
+.uni-secondary-color {
+ color: #909399;
+}
+.uni-secondary-color-bg {
+ background-color: #909399;
+}
+.uni-extra-color {
+ color: #c7c7c7;
+}
+.uni-extra-color-bg {
+ background-color: #c7c7c7;
+}
+.uni-bg-color {
+ color: #ffffff;
+}
+.uni-bg-color-bg {
+ background-color: #ffffff;
+}
+.uni-border-1 {
+ color: #F0F0F0;
+}
+.uni-border-1-bg {
+ background-color: #F0F0F0;
+}
+.uni-border-2 {
+ color: #EDEDED;
+}
+.uni-border-2-bg {
+ background-color: #EDEDED;
+}
+.uni-border-3 {
+ color: #DCDCDC;
+}
+.uni-border-3-bg {
+ background-color: #DCDCDC;
+}
+.uni-border-4 {
+ color: #B9B9B9;
+}
+.uni-border-4-bg {
+ background-color: #B9B9B9;
+}
+.uni-black {
+ color: #000000;
+}
+.uni-black-bg {
+ background-color: #000000;
+}
+.uni-white {
+ color: #ffffff;
+}
+.uni-white-bg {
+ background-color: #ffffff;
+}
+.uni-transparent {
+ color: rgba(0, 0, 0, 0);
+}
+.uni-transparent-bg {
+ background-color: rgba(0, 0, 0, 0);
+}
+.uni-shadow-sm {
+ box-shadow: 0 0 5px rgba(216, 216, 216, 0.5);
+}
+.uni-shadow-base {
+ box-shadow: 0 1px 8px 1px rgba(165, 165, 165, 0.2);
+}
+.uni-shadow-lg {
+ box-shadow: 0px 1px 10px 2px rgba(165, 164, 164, 0.5);
+}
+.uni-mask {
+ background-color: rgba(0, 0, 0, 0.4);
+}
+.uni-mt-0 {
+ margin-top: 0px;
+}
+.uni-mt-n0 {
+ margin-top: 0px;
+}
+.uni-mr-0 {
+ margin-right: 0px;
+}
+.uni-mr-n0 {
+ margin-right: 0px;
+}
+.uni-mb-0 {
+ margin-bottom: 0px;
+}
+.uni-mb-n0 {
+ margin-bottom: 0px;
+}
+.uni-ml-0 {
+ margin-left: 0px;
+}
+.uni-ml-n0 {
+ margin-left: 0px;
+}
+.uni-mx-0 {
+ margin-left: 0px;
+ margin-right: 0px;
+}
+.uni-mx-n0 {
+ margin-left: 0px;
+ margin-right: 0px;
+}
+.uni-my-0 {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+.uni-my-n0 {
+ margin-top: 0px;
+ margin-bottom: 0px;
+}
+.uni-ma-0 {
+ margin: 0px;
+}
+.uni-ma-n0 {
+ margin: 0px;
+}
+.uni-mt-1 {
+ margin-top: 2px;
+}
+.uni-mt-n1 {
+ margin-top: -2px;
+}
+.uni-mr-1 {
+ margin-right: 2px;
+}
+.uni-mr-n1 {
+ margin-right: -2px;
+}
+.uni-mb-1 {
+ margin-bottom: 2px;
+}
+.uni-mb-n1 {
+ margin-bottom: -2px;
+}
+.uni-ml-1 {
+ margin-left: 2px;
+}
+.uni-ml-n1 {
+ margin-left: -2px;
+}
+.uni-mx-1 {
+ margin-left: 2px;
+ margin-right: 2px;
+}
+.uni-mx-n1 {
+ margin-left: -2px;
+ margin-right: -2px;
+}
+.uni-my-1 {
+ margin-top: 2px;
+ margin-bottom: 2px;
+}
+.uni-my-n1 {
+ margin-top: -2px;
+ margin-bottom: -2px;
+}
+.uni-ma-1 {
+ margin: 2px;
+}
+.uni-ma-n1 {
+ margin: -2px;
+}
+.uni-mt-2 {
+ margin-top: 4px;
+}
+.uni-mt-n2 {
+ margin-top: -4px;
+}
+.uni-mr-2 {
+ margin-right: 4px;
+}
+.uni-mr-n2 {
+ margin-right: -4px;
+}
+.uni-mb-2 {
+ margin-bottom: 4px;
+}
+.uni-mb-n2 {
+ margin-bottom: -4px;
+}
+.uni-ml-2 {
+ margin-left: 4px;
+}
+.uni-ml-n2 {
+ margin-left: -4px;
+}
+.uni-mx-2 {
+ margin-left: 4px;
+ margin-right: 4px;
+}
+.uni-mx-n2 {
+ margin-left: -4px;
+ margin-right: -4px;
+}
+.uni-my-2 {
+ margin-top: 4px;
+ margin-bottom: 4px;
+}
+.uni-my-n2 {
+ margin-top: -4px;
+ margin-bottom: -4px;
+}
+.uni-ma-2 {
+ margin: 4px;
+}
+.uni-ma-n2 {
+ margin: -4px;
+}
+.uni-mt-3 {
+ margin-top: 6px;
+}
+.uni-mt-n3 {
+ margin-top: -6px;
+}
+.uni-mr-3 {
+ margin-right: 6px;
+}
+.uni-mr-n3 {
+ margin-right: -6px;
+}
+.uni-mb-3 {
+ margin-bottom: 6px;
+}
+.uni-mb-n3 {
+ margin-bottom: -6px;
+}
+.uni-ml-3 {
+ margin-left: 6px;
+}
+.uni-ml-n3 {
+ margin-left: -6px;
+}
+.uni-mx-3 {
+ margin-left: 6px;
+ margin-right: 6px;
+}
+.uni-mx-n3 {
+ margin-left: -6px;
+ margin-right: -6px;
+}
+.uni-my-3 {
+ margin-top: 6px;
+ margin-bottom: 6px;
+}
+.uni-my-n3 {
+ margin-top: -6px;
+ margin-bottom: -6px;
+}
+.uni-ma-3 {
+ margin: 6px;
+}
+.uni-ma-n3 {
+ margin: -6px;
+}
+.uni-mt-4 {
+ margin-top: 8px;
+}
+.uni-mt-n4 {
+ margin-top: -8px;
+}
+.uni-mr-4 {
+ margin-right: 8px;
+}
+.uni-mr-n4 {
+ margin-right: -8px;
+}
+.uni-mb-4 {
+ margin-bottom: 8px;
+}
+.uni-mb-n4 {
+ margin-bottom: -8px;
+}
+.uni-ml-4 {
+ margin-left: 8px;
+}
+.uni-ml-n4 {
+ margin-left: -8px;
+}
+.uni-mx-4 {
+ margin-left: 8px;
+ margin-right: 8px;
+}
+.uni-mx-n4 {
+ margin-left: -8px;
+ margin-right: -8px;
+}
+.uni-my-4 {
+ margin-top: 8px;
+ margin-bottom: 8px;
+}
+.uni-my-n4 {
+ margin-top: -8px;
+ margin-bottom: -8px;
+}
+.uni-ma-4 {
+ margin: 8px;
+}
+.uni-ma-n4 {
+ margin: -8px;
+}
+.uni-mt-5 {
+ margin-top: 10px;
+}
+.uni-mt-n5 {
+ margin-top: -10px;
+}
+.uni-mr-5 {
+ margin-right: 10px;
+}
+.uni-mr-n5 {
+ margin-right: -10px;
+}
+.uni-mb-5 {
+ margin-bottom: 10px;
+}
+.uni-mb-n5 {
+ margin-bottom: -10px;
+}
+.uni-ml-5 {
+ margin-left: 10px;
+}
+.uni-ml-n5 {
+ margin-left: -10px;
+}
+.uni-mx-5 {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+.uni-mx-n5 {
+ margin-left: -10px;
+ margin-right: -10px;
+}
+.uni-my-5 {
+ margin-top: 10px;
+ margin-bottom: 10px;
+}
+.uni-my-n5 {
+ margin-top: -10px;
+ margin-bottom: -10px;
+}
+.uni-ma-5 {
+ margin: 10px;
+}
+.uni-ma-n5 {
+ margin: -10px;
+}
+.uni-mt-6 {
+ margin-top: 12px;
+}
+.uni-mt-n6 {
+ margin-top: -12px;
+}
+.uni-mr-6 {
+ margin-right: 12px;
+}
+.uni-mr-n6 {
+ margin-right: -12px;
+}
+.uni-mb-6 {
+ margin-bottom: 12px;
+}
+.uni-mb-n6 {
+ margin-bottom: -12px;
+}
+.uni-ml-6 {
+ margin-left: 12px;
+}
+.uni-ml-n6 {
+ margin-left: -12px;
+}
+.uni-mx-6 {
+ margin-left: 12px;
+ margin-right: 12px;
+}
+.uni-mx-n6 {
+ margin-left: -12px;
+ margin-right: -12px;
+}
+.uni-my-6 {
+ margin-top: 12px;
+ margin-bottom: 12px;
+}
+.uni-my-n6 {
+ margin-top: -12px;
+ margin-bottom: -12px;
+}
+.uni-ma-6 {
+ margin: 12px;
+}
+.uni-ma-n6 {
+ margin: -12px;
+}
+.uni-mt-7 {
+ margin-top: 14px;
+}
+.uni-mt-n7 {
+ margin-top: -14px;
+}
+.uni-mr-7 {
+ margin-right: 14px;
+}
+.uni-mr-n7 {
+ margin-right: -14px;
+}
+.uni-mb-7 {
+ margin-bottom: 14px;
+}
+.uni-mb-n7 {
+ margin-bottom: -14px;
+}
+.uni-ml-7 {
+ margin-left: 14px;
+}
+.uni-ml-n7 {
+ margin-left: -14px;
+}
+.uni-mx-7 {
+ margin-left: 14px;
+ margin-right: 14px;
+}
+.uni-mx-n7 {
+ margin-left: -14px;
+ margin-right: -14px;
+}
+.uni-my-7 {
+ margin-top: 14px;
+ margin-bottom: 14px;
+}
+.uni-my-n7 {
+ margin-top: -14px;
+ margin-bottom: -14px;
+}
+.uni-ma-7 {
+ margin: 14px;
+}
+.uni-ma-n7 {
+ margin: -14px;
+}
+.uni-mt-8 {
+ margin-top: 16px;
+}
+.uni-mt-n8 {
+ margin-top: -16px;
+}
+.uni-mr-8 {
+ margin-right: 16px;
+}
+.uni-mr-n8 {
+ margin-right: -16px;
+}
+.uni-mb-8 {
+ margin-bottom: 16px;
+}
+.uni-mb-n8 {
+ margin-bottom: -16px;
+}
+.uni-ml-8 {
+ margin-left: 16px;
+}
+.uni-ml-n8 {
+ margin-left: -16px;
+}
+.uni-mx-8 {
+ margin-left: 16px;
+ margin-right: 16px;
+}
+.uni-mx-n8 {
+ margin-left: -16px;
+ margin-right: -16px;
+}
+.uni-my-8 {
+ margin-top: 16px;
+ margin-bottom: 16px;
+}
+.uni-my-n8 {
+ margin-top: -16px;
+ margin-bottom: -16px;
+}
+.uni-ma-8 {
+ margin: 16px;
+}
+.uni-ma-n8 {
+ margin: -16px;
+}
+.uni-mt-9 {
+ margin-top: 18px;
+}
+.uni-mt-n9 {
+ margin-top: -18px;
+}
+.uni-mr-9 {
+ margin-right: 18px;
+}
+.uni-mr-n9 {
+ margin-right: -18px;
+}
+.uni-mb-9 {
+ margin-bottom: 18px;
+}
+.uni-mb-n9 {
+ margin-bottom: -18px;
+}
+.uni-ml-9 {
+ margin-left: 18px;
+}
+.uni-ml-n9 {
+ margin-left: -18px;
+}
+.uni-mx-9 {
+ margin-left: 18px;
+ margin-right: 18px;
+}
+.uni-mx-n9 {
+ margin-left: -18px;
+ margin-right: -18px;
+}
+.uni-my-9 {
+ margin-top: 18px;
+ margin-bottom: 18px;
+}
+.uni-my-n9 {
+ margin-top: -18px;
+ margin-bottom: -18px;
+}
+.uni-ma-9 {
+ margin: 18px;
+}
+.uni-ma-n9 {
+ margin: -18px;
+}
+.uni-mt-10 {
+ margin-top: 20px;
+}
+.uni-mt-n10 {
+ margin-top: -20px;
+}
+.uni-mr-10 {
+ margin-right: 20px;
+}
+.uni-mr-n10 {
+ margin-right: -20px;
+}
+.uni-mb-10 {
+ margin-bottom: 20px;
+}
+.uni-mb-n10 {
+ margin-bottom: -20px;
+}
+.uni-ml-10 {
+ margin-left: 20px;
+}
+.uni-ml-n10 {
+ margin-left: -20px;
+}
+.uni-mx-10 {
+ margin-left: 20px;
+ margin-right: 20px;
+}
+.uni-mx-n10 {
+ margin-left: -20px;
+ margin-right: -20px;
+}
+.uni-my-10 {
+ margin-top: 20px;
+ margin-bottom: 20px;
+}
+.uni-my-n10 {
+ margin-top: -20px;
+ margin-bottom: -20px;
+}
+.uni-ma-10 {
+ margin: 20px;
+}
+.uni-ma-n10 {
+ margin: -20px;
+}
+.uni-mt-11 {
+ margin-top: 22px;
+}
+.uni-mt-n11 {
+ margin-top: -22px;
+}
+.uni-mr-11 {
+ margin-right: 22px;
+}
+.uni-mr-n11 {
+ margin-right: -22px;
+}
+.uni-mb-11 {
+ margin-bottom: 22px;
+}
+.uni-mb-n11 {
+ margin-bottom: -22px;
+}
+.uni-ml-11 {
+ margin-left: 22px;
+}
+.uni-ml-n11 {
+ margin-left: -22px;
+}
+.uni-mx-11 {
+ margin-left: 22px;
+ margin-right: 22px;
+}
+.uni-mx-n11 {
+ margin-left: -22px;
+ margin-right: -22px;
+}
+.uni-my-11 {
+ margin-top: 22px;
+ margin-bottom: 22px;
+}
+.uni-my-n11 {
+ margin-top: -22px;
+ margin-bottom: -22px;
+}
+.uni-ma-11 {
+ margin: 22px;
+}
+.uni-ma-n11 {
+ margin: -22px;
+}
+.uni-mt-12 {
+ margin-top: 24px;
+}
+.uni-mt-n12 {
+ margin-top: -24px;
+}
+.uni-mr-12 {
+ margin-right: 24px;
+}
+.uni-mr-n12 {
+ margin-right: -24px;
+}
+.uni-mb-12 {
+ margin-bottom: 24px;
+}
+.uni-mb-n12 {
+ margin-bottom: -24px;
+}
+.uni-ml-12 {
+ margin-left: 24px;
+}
+.uni-ml-n12 {
+ margin-left: -24px;
+}
+.uni-mx-12 {
+ margin-left: 24px;
+ margin-right: 24px;
+}
+.uni-mx-n12 {
+ margin-left: -24px;
+ margin-right: -24px;
+}
+.uni-my-12 {
+ margin-top: 24px;
+ margin-bottom: 24px;
+}
+.uni-my-n12 {
+ margin-top: -24px;
+ margin-bottom: -24px;
+}
+.uni-ma-12 {
+ margin: 24px;
+}
+.uni-ma-n12 {
+ margin: -24px;
+}
+.uni-mt-13 {
+ margin-top: 26px;
+}
+.uni-mt-n13 {
+ margin-top: -26px;
+}
+.uni-mr-13 {
+ margin-right: 26px;
+}
+.uni-mr-n13 {
+ margin-right: -26px;
+}
+.uni-mb-13 {
+ margin-bottom: 26px;
+}
+.uni-mb-n13 {
+ margin-bottom: -26px;
+}
+.uni-ml-13 {
+ margin-left: 26px;
+}
+.uni-ml-n13 {
+ margin-left: -26px;
+}
+.uni-mx-13 {
+ margin-left: 26px;
+ margin-right: 26px;
+}
+.uni-mx-n13 {
+ margin-left: -26px;
+ margin-right: -26px;
+}
+.uni-my-13 {
+ margin-top: 26px;
+ margin-bottom: 26px;
+}
+.uni-my-n13 {
+ margin-top: -26px;
+ margin-bottom: -26px;
+}
+.uni-ma-13 {
+ margin: 26px;
+}
+.uni-ma-n13 {
+ margin: -26px;
+}
+.uni-mt-14 {
+ margin-top: 28px;
+}
+.uni-mt-n14 {
+ margin-top: -28px;
+}
+.uni-mr-14 {
+ margin-right: 28px;
+}
+.uni-mr-n14 {
+ margin-right: -28px;
+}
+.uni-mb-14 {
+ margin-bottom: 28px;
+}
+.uni-mb-n14 {
+ margin-bottom: -28px;
+}
+.uni-ml-14 {
+ margin-left: 28px;
+}
+.uni-ml-n14 {
+ margin-left: -28px;
+}
+.uni-mx-14 {
+ margin-left: 28px;
+ margin-right: 28px;
+}
+.uni-mx-n14 {
+ margin-left: -28px;
+ margin-right: -28px;
+}
+.uni-my-14 {
+ margin-top: 28px;
+ margin-bottom: 28px;
+}
+.uni-my-n14 {
+ margin-top: -28px;
+ margin-bottom: -28px;
+}
+.uni-ma-14 {
+ margin: 28px;
+}
+.uni-ma-n14 {
+ margin: -28px;
+}
+.uni-mt-15 {
+ margin-top: 30px;
+}
+.uni-mt-n15 {
+ margin-top: -30px;
+}
+.uni-mr-15 {
+ margin-right: 30px;
+}
+.uni-mr-n15 {
+ margin-right: -30px;
+}
+.uni-mb-15 {
+ margin-bottom: 30px;
+}
+.uni-mb-n15 {
+ margin-bottom: -30px;
+}
+.uni-ml-15 {
+ margin-left: 30px;
+}
+.uni-ml-n15 {
+ margin-left: -30px;
+}
+.uni-mx-15 {
+ margin-left: 30px;
+ margin-right: 30px;
+}
+.uni-mx-n15 {
+ margin-left: -30px;
+ margin-right: -30px;
+}
+.uni-my-15 {
+ margin-top: 30px;
+ margin-bottom: 30px;
+}
+.uni-my-n15 {
+ margin-top: -30px;
+ margin-bottom: -30px;
+}
+.uni-ma-15 {
+ margin: 30px;
+}
+.uni-ma-n15 {
+ margin: -30px;
+}
+.uni-mt-16 {
+ margin-top: 32px;
+}
+.uni-mt-n16 {
+ margin-top: -32px;
+}
+.uni-mr-16 {
+ margin-right: 32px;
+}
+.uni-mr-n16 {
+ margin-right: -32px;
+}
+.uni-mb-16 {
+ margin-bottom: 32px;
+}
+.uni-mb-n16 {
+ margin-bottom: -32px;
+}
+.uni-ml-16 {
+ margin-left: 32px;
+}
+.uni-ml-n16 {
+ margin-left: -32px;
+}
+.uni-mx-16 {
+ margin-left: 32px;
+ margin-right: 32px;
+}
+.uni-mx-n16 {
+ margin-left: -32px;
+ margin-right: -32px;
+}
+.uni-my-16 {
+ margin-top: 32px;
+ margin-bottom: 32px;
+}
+.uni-my-n16 {
+ margin-top: -32px;
+ margin-bottom: -32px;
+}
+.uni-ma-16 {
+ margin: 32px;
+}
+.uni-ma-n16 {
+ margin: -32px;
+}
+.uni-pt-0 {
+ padding-top: 0px;
+}
+.uni-pt-n0 {
+ padding-top: 0px;
+}
+.uni-pr-0 {
+ padding-right: 0px;
+}
+.uni-pr-n0 {
+ padding-right: 0px;
+}
+.uni-pb-0 {
+ padding-bottom: 0px;
+}
+.uni-pb-n0 {
+ padding-bottom: 0px;
+}
+.uni-pl-0 {
+ padding-left: 0px;
+}
+.uni-pl-n0 {
+ padding-left: 0px;
+}
+.uni-px-0 {
+ padding-left: 0px;
+ padding-right: 0px;
+}
+.uni-px-n0 {
+ padding-left: 0px;
+ padding-right: 0px;
+}
+.uni-py-0 {
+ padding-top: 0px;
+ padding-bottom: 0px;
+}
+.uni-py-n0 {
+ padding-top: 0px;
+ padding-bottom: 0px;
+}
+.uni-pa-0 {
+ padding: 0px;
+}
+.uni-pa-n0 {
+ padding: 0px;
+}
+.uni-pt-1 {
+ padding-top: 2px;
+}
+.uni-pt-n1 {
+ padding-top: -2px;
+}
+.uni-pr-1 {
+ padding-right: 2px;
+}
+.uni-pr-n1 {
+ padding-right: -2px;
+}
+.uni-pb-1 {
+ padding-bottom: 2px;
+}
+.uni-pb-n1 {
+ padding-bottom: -2px;
+}
+.uni-pl-1 {
+ padding-left: 2px;
+}
+.uni-pl-n1 {
+ padding-left: -2px;
+}
+.uni-px-1 {
+ padding-left: 2px;
+ padding-right: 2px;
+}
+.uni-px-n1 {
+ padding-left: -2px;
+ padding-right: -2px;
+}
+.uni-py-1 {
+ padding-top: 2px;
+ padding-bottom: 2px;
+}
+.uni-py-n1 {
+ padding-top: -2px;
+ padding-bottom: -2px;
+}
+.uni-pa-1 {
+ padding: 2px;
+}
+.uni-pa-n1 {
+ padding: -2px;
+}
+.uni-pt-2 {
+ padding-top: 4px;
+}
+.uni-pt-n2 {
+ padding-top: -4px;
+}
+.uni-pr-2 {
+ padding-right: 4px;
+}
+.uni-pr-n2 {
+ padding-right: -4px;
+}
+.uni-pb-2 {
+ padding-bottom: 4px;
+}
+.uni-pb-n2 {
+ padding-bottom: -4px;
+}
+.uni-pl-2 {
+ padding-left: 4px;
+}
+.uni-pl-n2 {
+ padding-left: -4px;
+}
+.uni-px-2 {
+ padding-left: 4px;
+ padding-right: 4px;
+}
+.uni-px-n2 {
+ padding-left: -4px;
+ padding-right: -4px;
+}
+.uni-py-2 {
+ padding-top: 4px;
+ padding-bottom: 4px;
+}
+.uni-py-n2 {
+ padding-top: -4px;
+ padding-bottom: -4px;
+}
+.uni-pa-2 {
+ padding: 4px;
+}
+.uni-pa-n2 {
+ padding: -4px;
+}
+.uni-pt-3 {
+ padding-top: 6px;
+}
+.uni-pt-n3 {
+ padding-top: -6px;
+}
+.uni-pr-3 {
+ padding-right: 6px;
+}
+.uni-pr-n3 {
+ padding-right: -6px;
+}
+.uni-pb-3 {
+ padding-bottom: 6px;
+}
+.uni-pb-n3 {
+ padding-bottom: -6px;
+}
+.uni-pl-3 {
+ padding-left: 6px;
+}
+.uni-pl-n3 {
+ padding-left: -6px;
+}
+.uni-px-3 {
+ padding-left: 6px;
+ padding-right: 6px;
+}
+.uni-px-n3 {
+ padding-left: -6px;
+ padding-right: -6px;
+}
+.uni-py-3 {
+ padding-top: 6px;
+ padding-bottom: 6px;
+}
+.uni-py-n3 {
+ padding-top: -6px;
+ padding-bottom: -6px;
+}
+.uni-pa-3 {
+ padding: 6px;
+}
+.uni-pa-n3 {
+ padding: -6px;
+}
+.uni-pt-4 {
+ padding-top: 8px;
+}
+.uni-pt-n4 {
+ padding-top: -8px;
+}
+.uni-pr-4 {
+ padding-right: 8px;
+}
+.uni-pr-n4 {
+ padding-right: -8px;
+}
+.uni-pb-4 {
+ padding-bottom: 8px;
+}
+.uni-pb-n4 {
+ padding-bottom: -8px;
+}
+.uni-pl-4 {
+ padding-left: 8px;
+}
+.uni-pl-n4 {
+ padding-left: -8px;
+}
+.uni-px-4 {
+ padding-left: 8px;
+ padding-right: 8px;
+}
+.uni-px-n4 {
+ padding-left: -8px;
+ padding-right: -8px;
+}
+.uni-py-4 {
+ padding-top: 8px;
+ padding-bottom: 8px;
+}
+.uni-py-n4 {
+ padding-top: -8px;
+ padding-bottom: -8px;
+}
+.uni-pa-4 {
+ padding: 8px;
+}
+.uni-pa-n4 {
+ padding: -8px;
+}
+.uni-pt-5 {
+ padding-top: 10px;
+}
+.uni-pt-n5 {
+ padding-top: -10px;
+}
+.uni-pr-5 {
+ padding-right: 10px;
+}
+.uni-pr-n5 {
+ padding-right: -10px;
+}
+.uni-pb-5 {
+ padding-bottom: 10px;
+}
+.uni-pb-n5 {
+ padding-bottom: -10px;
+}
+.uni-pl-5 {
+ padding-left: 10px;
+}
+.uni-pl-n5 {
+ padding-left: -10px;
+}
+.uni-px-5 {
+ padding-left: 10px;
+ padding-right: 10px;
+}
+.uni-px-n5 {
+ padding-left: -10px;
+ padding-right: -10px;
+}
+.uni-py-5 {
+ padding-top: 10px;
+ padding-bottom: 10px;
+}
+.uni-py-n5 {
+ padding-top: -10px;
+ padding-bottom: -10px;
+}
+.uni-pa-5 {
+ padding: 10px;
+}
+.uni-pa-n5 {
+ padding: -10px;
+}
+.uni-pt-6 {
+ padding-top: 12px;
+}
+.uni-pt-n6 {
+ padding-top: -12px;
+}
+.uni-pr-6 {
+ padding-right: 12px;
+}
+.uni-pr-n6 {
+ padding-right: -12px;
+}
+.uni-pb-6 {
+ padding-bottom: 12px;
+}
+.uni-pb-n6 {
+ padding-bottom: -12px;
+}
+.uni-pl-6 {
+ padding-left: 12px;
+}
+.uni-pl-n6 {
+ padding-left: -12px;
+}
+.uni-px-6 {
+ padding-left: 12px;
+ padding-right: 12px;
+}
+.uni-px-n6 {
+ padding-left: -12px;
+ padding-right: -12px;
+}
+.uni-py-6 {
+ padding-top: 12px;
+ padding-bottom: 12px;
+}
+.uni-py-n6 {
+ padding-top: -12px;
+ padding-bottom: -12px;
+}
+.uni-pa-6 {
+ padding: 12px;
+}
+.uni-pa-n6 {
+ padding: -12px;
+}
+.uni-pt-7 {
+ padding-top: 14px;
+}
+.uni-pt-n7 {
+ padding-top: -14px;
+}
+.uni-pr-7 {
+ padding-right: 14px;
+}
+.uni-pr-n7 {
+ padding-right: -14px;
+}
+.uni-pb-7 {
+ padding-bottom: 14px;
+}
+.uni-pb-n7 {
+ padding-bottom: -14px;
+}
+.uni-pl-7 {
+ padding-left: 14px;
+}
+.uni-pl-n7 {
+ padding-left: -14px;
+}
+.uni-px-7 {
+ padding-left: 14px;
+ padding-right: 14px;
+}
+.uni-px-n7 {
+ padding-left: -14px;
+ padding-right: -14px;
+}
+.uni-py-7 {
+ padding-top: 14px;
+ padding-bottom: 14px;
+}
+.uni-py-n7 {
+ padding-top: -14px;
+ padding-bottom: -14px;
+}
+.uni-pa-7 {
+ padding: 14px;
+}
+.uni-pa-n7 {
+ padding: -14px;
+}
+.uni-pt-8 {
+ padding-top: 16px;
+}
+.uni-pt-n8 {
+ padding-top: -16px;
+}
+.uni-pr-8 {
+ padding-right: 16px;
+}
+.uni-pr-n8 {
+ padding-right: -16px;
+}
+.uni-pb-8 {
+ padding-bottom: 16px;
+}
+.uni-pb-n8 {
+ padding-bottom: -16px;
+}
+.uni-pl-8 {
+ padding-left: 16px;
+}
+.uni-pl-n8 {
+ padding-left: -16px;
+}
+.uni-px-8 {
+ padding-left: 16px;
+ padding-right: 16px;
+}
+.uni-px-n8 {
+ padding-left: -16px;
+ padding-right: -16px;
+}
+.uni-py-8 {
+ padding-top: 16px;
+ padding-bottom: 16px;
+}
+.uni-py-n8 {
+ padding-top: -16px;
+ padding-bottom: -16px;
+}
+.uni-pa-8 {
+ padding: 16px;
+}
+.uni-pa-n8 {
+ padding: -16px;
+}
+.uni-pt-9 {
+ padding-top: 18px;
+}
+.uni-pt-n9 {
+ padding-top: -18px;
+}
+.uni-pr-9 {
+ padding-right: 18px;
+}
+.uni-pr-n9 {
+ padding-right: -18px;
+}
+.uni-pb-9 {
+ padding-bottom: 18px;
+}
+.uni-pb-n9 {
+ padding-bottom: -18px;
+}
+.uni-pl-9 {
+ padding-left: 18px;
+}
+.uni-pl-n9 {
+ padding-left: -18px;
+}
+.uni-px-9 {
+ padding-left: 18px;
+ padding-right: 18px;
+}
+.uni-px-n9 {
+ padding-left: -18px;
+ padding-right: -18px;
+}
+.uni-py-9 {
+ padding-top: 18px;
+ padding-bottom: 18px;
+}
+.uni-py-n9 {
+ padding-top: -18px;
+ padding-bottom: -18px;
+}
+.uni-pa-9 {
+ padding: 18px;
+}
+.uni-pa-n9 {
+ padding: -18px;
+}
+.uni-pt-10 {
+ padding-top: 20px;
+}
+.uni-pt-n10 {
+ padding-top: -20px;
+}
+.uni-pr-10 {
+ padding-right: 20px;
+}
+.uni-pr-n10 {
+ padding-right: -20px;
+}
+.uni-pb-10 {
+ padding-bottom: 20px;
+}
+.uni-pb-n10 {
+ padding-bottom: -20px;
+}
+.uni-pl-10 {
+ padding-left: 20px;
+}
+.uni-pl-n10 {
+ padding-left: -20px;
+}
+.uni-px-10 {
+ padding-left: 20px;
+ padding-right: 20px;
+}
+.uni-px-n10 {
+ padding-left: -20px;
+ padding-right: -20px;
+}
+.uni-py-10 {
+ padding-top: 20px;
+ padding-bottom: 20px;
+}
+.uni-py-n10 {
+ padding-top: -20px;
+ padding-bottom: -20px;
+}
+.uni-pa-10 {
+ padding: 20px;
+}
+.uni-pa-n10 {
+ padding: -20px;
+}
+.uni-pt-11 {
+ padding-top: 22px;
+}
+.uni-pt-n11 {
+ padding-top: -22px;
+}
+.uni-pr-11 {
+ padding-right: 22px;
+}
+.uni-pr-n11 {
+ padding-right: -22px;
+}
+.uni-pb-11 {
+ padding-bottom: 22px;
+}
+.uni-pb-n11 {
+ padding-bottom: -22px;
+}
+.uni-pl-11 {
+ padding-left: 22px;
+}
+.uni-pl-n11 {
+ padding-left: -22px;
+}
+.uni-px-11 {
+ padding-left: 22px;
+ padding-right: 22px;
+}
+.uni-px-n11 {
+ padding-left: -22px;
+ padding-right: -22px;
+}
+.uni-py-11 {
+ padding-top: 22px;
+ padding-bottom: 22px;
+}
+.uni-py-n11 {
+ padding-top: -22px;
+ padding-bottom: -22px;
+}
+.uni-pa-11 {
+ padding: 22px;
+}
+.uni-pa-n11 {
+ padding: -22px;
+}
+.uni-pt-12 {
+ padding-top: 24px;
+}
+.uni-pt-n12 {
+ padding-top: -24px;
+}
+.uni-pr-12 {
+ padding-right: 24px;
+}
+.uni-pr-n12 {
+ padding-right: -24px;
+}
+.uni-pb-12 {
+ padding-bottom: 24px;
+}
+.uni-pb-n12 {
+ padding-bottom: -24px;
+}
+.uni-pl-12 {
+ padding-left: 24px;
+}
+.uni-pl-n12 {
+ padding-left: -24px;
+}
+.uni-px-12 {
+ padding-left: 24px;
+ padding-right: 24px;
+}
+.uni-px-n12 {
+ padding-left: -24px;
+ padding-right: -24px;
+}
+.uni-py-12 {
+ padding-top: 24px;
+ padding-bottom: 24px;
+}
+.uni-py-n12 {
+ padding-top: -24px;
+ padding-bottom: -24px;
+}
+.uni-pa-12 {
+ padding: 24px;
+}
+.uni-pa-n12 {
+ padding: -24px;
+}
+.uni-pt-13 {
+ padding-top: 26px;
+}
+.uni-pt-n13 {
+ padding-top: -26px;
+}
+.uni-pr-13 {
+ padding-right: 26px;
+}
+.uni-pr-n13 {
+ padding-right: -26px;
+}
+.uni-pb-13 {
+ padding-bottom: 26px;
+}
+.uni-pb-n13 {
+ padding-bottom: -26px;
+}
+.uni-pl-13 {
+ padding-left: 26px;
+}
+.uni-pl-n13 {
+ padding-left: -26px;
+}
+.uni-px-13 {
+ padding-left: 26px;
+ padding-right: 26px;
+}
+.uni-px-n13 {
+ padding-left: -26px;
+ padding-right: -26px;
+}
+.uni-py-13 {
+ padding-top: 26px;
+ padding-bottom: 26px;
+}
+.uni-py-n13 {
+ padding-top: -26px;
+ padding-bottom: -26px;
+}
+.uni-pa-13 {
+ padding: 26px;
+}
+.uni-pa-n13 {
+ padding: -26px;
+}
+.uni-pt-14 {
+ padding-top: 28px;
+}
+.uni-pt-n14 {
+ padding-top: -28px;
+}
+.uni-pr-14 {
+ padding-right: 28px;
+}
+.uni-pr-n14 {
+ padding-right: -28px;
+}
+.uni-pb-14 {
+ padding-bottom: 28px;
+}
+.uni-pb-n14 {
+ padding-bottom: -28px;
+}
+.uni-pl-14 {
+ padding-left: 28px;
+}
+.uni-pl-n14 {
+ padding-left: -28px;
+}
+.uni-px-14 {
+ padding-left: 28px;
+ padding-right: 28px;
+}
+.uni-px-n14 {
+ padding-left: -28px;
+ padding-right: -28px;
+}
+.uni-py-14 {
+ padding-top: 28px;
+ padding-bottom: 28px;
+}
+.uni-py-n14 {
+ padding-top: -28px;
+ padding-bottom: -28px;
+}
+.uni-pa-14 {
+ padding: 28px;
+}
+.uni-pa-n14 {
+ padding: -28px;
+}
+.uni-pt-15 {
+ padding-top: 30px;
+}
+.uni-pt-n15 {
+ padding-top: -30px;
+}
+.uni-pr-15 {
+ padding-right: 30px;
+}
+.uni-pr-n15 {
+ padding-right: -30px;
+}
+.uni-pb-15 {
+ padding-bottom: 30px;
+}
+.uni-pb-n15 {
+ padding-bottom: -30px;
+}
+.uni-pl-15 {
+ padding-left: 30px;
+}
+.uni-pl-n15 {
+ padding-left: -30px;
+}
+.uni-px-15 {
+ padding-left: 30px;
+ padding-right: 30px;
+}
+.uni-px-n15 {
+ padding-left: -30px;
+ padding-right: -30px;
+}
+.uni-py-15 {
+ padding-top: 30px;
+ padding-bottom: 30px;
+}
+.uni-py-n15 {
+ padding-top: -30px;
+ padding-bottom: -30px;
+}
+.uni-pa-15 {
+ padding: 30px;
+}
+.uni-pa-n15 {
+ padding: -30px;
+}
+.uni-pt-16 {
+ padding-top: 32px;
+}
+.uni-pt-n16 {
+ padding-top: -32px;
+}
+.uni-pr-16 {
+ padding-right: 32px;
+}
+.uni-pr-n16 {
+ padding-right: -32px;
+}
+.uni-pb-16 {
+ padding-bottom: 32px;
+}
+.uni-pb-n16 {
+ padding-bottom: -32px;
+}
+.uni-pl-16 {
+ padding-left: 32px;
+}
+.uni-pl-n16 {
+ padding-left: -32px;
+}
+.uni-px-16 {
+ padding-left: 32px;
+ padding-right: 32px;
+}
+.uni-px-n16 {
+ padding-left: -32px;
+ padding-right: -32px;
+}
+.uni-py-16 {
+ padding-top: 32px;
+ padding-bottom: 32px;
+}
+.uni-py-n16 {
+ padding-top: -32px;
+ padding-bottom: -32px;
+}
+.uni-pa-16 {
+ padding: 32px;
+}
+.uni-pa-n16 {
+ padding: -32px;
+}
+.uni-radius-0 {
+ border-radius: 0;
+}
+.uni-radius {
+ border-radius: 5px;
+}
+.uni-radius-lg {
+ border-radius: 10px;
+}
+.uni-radius-xl {
+ border-radius: 30px;
+}
+.uni-radius-pill {
+ border-radius: 9999px;
+}
+.uni-radius-circle {
+ border-radius: 50%;
+}
+.uni-radius-t-0 {
+ border-top-left-radius: 0;
+ border-top-right-radius: 0;
+}
+.uni-radius-t {
+ border-top-left-radius: 5px;
+ border-top-right-radius: 5px;
+}
+.uni-radius-t-lg {
+ border-top-left-radius: 10px;
+ border-top-right-radius: 10px;
+}
+.uni-radius-t-xl {
+ border-top-left-radius: 30px;
+ border-top-right-radius: 30px;
+}
+.uni-radius-t-pill {
+ border-top-left-radius: 9999px;
+ border-top-right-radius: 9999px;
+}
+.uni-radius-t-circle {
+ border-top-left-radius: 50%;
+ border-top-right-radius: 50%;
+}
+.uni-radius-r-0 {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+}
+.uni-radius-r {
+ border-top-right-radius: 5px;
+ border-bottom-right-radius: 5px;
+}
+.uni-radius-r-lg {
+ border-top-right-radius: 10px;
+ border-bottom-right-radius: 10px;
+}
+.uni-radius-r-xl {
+ border-top-right-radius: 30px;
+ border-bottom-right-radius: 30px;
+}
+.uni-radius-r-pill {
+ border-top-right-radius: 9999px;
+ border-bottom-right-radius: 9999px;
+}
+.uni-radius-r-circle {
+ border-top-right-radius: 50%;
+ border-bottom-right-radius: 50%;
+}
+.uni-radius-b-0 {
+ border-bottom-left-radius: 0;
+ border-bottom-right-radius: 0;
+}
+.uni-radius-b {
+ border-bottom-left-radius: 5px;
+ border-bottom-right-radius: 5px;
+}
+.uni-radius-b-lg {
+ border-bottom-left-radius: 10px;
+ border-bottom-right-radius: 10px;
+}
+.uni-radius-b-xl {
+ border-bottom-left-radius: 30px;
+ border-bottom-right-radius: 30px;
+}
+.uni-radius-b-pill {
+ border-bottom-left-radius: 9999px;
+ border-bottom-right-radius: 9999px;
+}
+.uni-radius-b-circle {
+ border-bottom-left-radius: 50%;
+ border-bottom-right-radius: 50%;
+}
+.uni-radius-l-0 {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+}
+.uni-radius-l {
+ border-top-left-radius: 5px;
+ border-bottom-left-radius: 5px;
+}
+.uni-radius-l-lg {
+ border-top-left-radius: 10px;
+ border-bottom-left-radius: 10px;
+}
+.uni-radius-l-xl {
+ border-top-left-radius: 30px;
+ border-bottom-left-radius: 30px;
+}
+.uni-radius-l-pill {
+ border-top-left-radius: 9999px;
+ border-bottom-left-radius: 9999px;
+}
+.uni-radius-l-circle {
+ border-top-left-radius: 50%;
+ border-bottom-left-radius: 50%;
+}
+.uni-radius-tl-0 {
+ border-top-left-radius: 0;
+}
+.uni-radius-tl {
+ border-top-left-radius: 5px;
+}
+.uni-radius-tl-lg {
+ border-top-left-radius: 10px;
+}
+.uni-radius-tl-xl {
+ border-top-left-radius: 30px;
+}
+.uni-radius-tl-pill {
+ border-top-left-radius: 9999px;
+}
+.uni-radius-tl-circle {
+ border-top-left-radius: 50%;
+}
+.uni-radius-tr-0 {
+ border-top-right-radius: 0;
+}
+.uni-radius-tr {
+ border-top-right-radius: 5px;
+}
+.uni-radius-tr-lg {
+ border-top-right-radius: 10px;
+}
+.uni-radius-tr-xl {
+ border-top-right-radius: 30px;
+}
+.uni-radius-tr-pill {
+ border-top-right-radius: 9999px;
+}
+.uni-radius-tr-circle {
+ border-top-right-radius: 50%;
+}
+.uni-radius-br-0 {
+ border-bottom-right-radius: 0;
+}
+.uni-radius-br {
+ border-bottom-right-radius: 5px;
+}
+.uni-radius-br-lg {
+ border-bottom-right-radius: 10px;
+}
+.uni-radius-br-xl {
+ border-bottom-right-radius: 30px;
+}
+.uni-radius-br-pill {
+ border-bottom-right-radius: 9999px;
+}
+.uni-radius-br-circle {
+ border-bottom-right-radius: 50%;
+}
+.uni-radius-bl-0 {
+ border-bottom-left-radius: 0;
+}
+.uni-radius-bl {
+ border-bottom-left-radius: 5px;
+}
+.uni-radius-bl-lg {
+ border-bottom-left-radius: 10px;
+}
+.uni-radius-bl-xl {
+ border-bottom-left-radius: 30px;
+}
+.uni-radius-bl-pill {
+ border-bottom-left-radius: 9999px;
+}
+.uni-radius-bl-circle {
+ border-bottom-left-radius: 50%;
+}
+.uni-h1 {
+ font-size: 32px;
+ font-weight: 300;
+ line-height: 50px;
+}
+.uni-h2 {
+ font-size: 28px;
+ font-weight: 300;
+ line-height: 40px;
+}
+.uni-h3 {
+ font-size: 24px;
+ font-weight: 400;
+ line-height: 32px;
+}
+.uni-h4 {
+ font-size: 20px;
+ font-weight: 400;
+ line-height: 30px;
+}
+.uni-h5 {
+ font-size: 16px;
+ font-weight: 400;
+ line-height: 24px;
+}
+.uni-h6 {
+ font-size: 14px;
+ font-weight: 500;
+ line-height: 18px;
+}
+.uni-subtitle {
+ font-size: 12px;
+ font-weight: 400;
+ line-height: 20px;
+}
+.uni-body {
+ font-size: 14px;
+ font-weight: 400;
+ line-height: 22px;
+}
+.uni-caption {
+ font-size: 12px;
+ font-weight: 400;
+ line-height: 20px;
+}
+.uni-btn {
+ margin: 5px;
+ color: #393939;
+ border: 1px solid #ccc;
+ font-size: 16px;
+ font-weight: 200;
+ background-color: #F9F9F9;
+ overflow: visible;
+}
+.uni-btn::after {
+ border: none;
+}
+.uni-btn:not([type]), .uni-btn[type=default] {
+ color: #999;
+}
+.uni-btn:not([type])[loading], .uni-btn[type=default][loading] {
+ background: none;
+}
+.uni-btn:not([type])[loading]::before, .uni-btn[type=default][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn:not([type])[disabled], .uni-btn[type=default][disabled] {
+ color: #d6d6d6;
+}
+.uni-btn:not([type])[disabled], .uni-btn:not([type])[disabled][loading], .uni-btn:not([type])[disabled]:active, .uni-btn[type=default][disabled], .uni-btn[type=default][disabled][loading], .uni-btn[type=default][disabled]:active {
+ color: #d6d6d6;
+ background-color: #fafafa;
+ border-color: #f0f0f0;
+}
+.uni-btn:not([type])[plain], .uni-btn[type=default][plain] {
+ color: #999;
+ background: none;
+ border-color: #F0F0F0;
+}
+.uni-btn:not([type])[plain]:not([hover-class]):active, .uni-btn[type=default][plain]:not([hover-class]):active {
+ background: none;
+ color: #cccccc;
+ border-color: #e6e6e6;
+ outline: none;
+}
+.uni-btn:not([type])[plain][disabled], .uni-btn:not([type])[plain][disabled][loading], .uni-btn:not([type])[plain][disabled]:active, .uni-btn[type=default][plain][disabled], .uni-btn[type=default][plain][disabled][loading], .uni-btn[type=default][plain][disabled]:active {
+ background: none;
+ color: #d6d6d6;
+ border-color: #f0f0f0;
+}
+.uni-btn:not([hover-class]):active {
+ color: gray;
+}
+.uni-btn[size=mini] {
+ font-size: 16px;
+ font-weight: 200;
+ border-radius: 8px;
+}
+.uni-btn.uni-btn-small {
+ font-size: 14px;
+}
+.uni-btn.uni-btn-mini {
+ font-size: 12px;
+}
+.uni-btn.uni-btn-radius {
+ border-radius: 999px;
+}
+.uni-btn[type=primary] {
+ color: #fff;
+ background-color: #2979ff;
+ border-color: #266feb;
+}
+.uni-btn[type=primary]:not([hover-class]):active {
+ background: #256de6;
+ border-color: #2161cc;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=primary][loading] {
+ color: #fff;
+ background-color: #2979ff;
+ border-color: #266feb;
+}
+.uni-btn[type=primary][loading]:not([hover-class]):active {
+ background: #256de6;
+ border-color: #2161cc;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=primary][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=primary][disabled], .uni-btn[type=primary][disabled][loading], .uni-btn[type=primary][disabled]:not([hover-class]):active {
+ color: #fff;
+ border-color: #80aefa;
+ background-color: #94bcff;
+}
+.uni-btn[type=primary][plain] {
+ color: #2979ff;
+ background-color: #eaf2ff;
+ border-color: #bfd7ff;
+}
+.uni-btn[type=primary][plain]:not([hover-class]):active {
+ background: #d4e4ff;
+ color: #2979ff;
+ outline: none;
+ border-color: #94bcff;
+}
+.uni-btn[type=primary][plain][loading] {
+ color: #2979ff;
+ background-color: #eaf2ff;
+ border-color: #bfd7ff;
+}
+.uni-btn[type=primary][plain][loading]:not([hover-class]):active {
+ background: #d4e4ff;
+ color: #2979ff;
+ outline: none;
+ border-color: #94bcff;
+}
+.uni-btn[type=primary][plain][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=primary][plain][disabled], .uni-btn[type=primary][plain][disabled]:active {
+ color: #7fafff;
+ background-color: #eaf2ff;
+ border-color: #d4e4ff;
+}
+.uni-btn[type=success] {
+ color: #fff;
+ background-color: #18bc37;
+ border-color: #16ad33;
+}
+.uni-btn[type=success]:not([hover-class]):active {
+ background: #16a932;
+ border-color: #13962c;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=success][loading] {
+ color: #fff;
+ background-color: #18bc37;
+ border-color: #16ad33;
+}
+.uni-btn[type=success][loading]:not([hover-class]):active {
+ background: #16a932;
+ border-color: #13962c;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=success][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=success][disabled], .uni-btn[type=success][disabled][loading], .uni-btn[type=success][disabled]:not([hover-class]):active {
+ color: #fff;
+ border-color: #89c795;
+ background-color: #8cde9b;
+}
+.uni-btn[type=success][plain] {
+ color: #18bc37;
+ background-color: #e8f8eb;
+ border-color: #baebc3;
+}
+.uni-btn[type=success][plain]:not([hover-class]):active {
+ background: #d1f2d7;
+ color: #18bc37;
+ outline: none;
+ border-color: #8cde9b;
+}
+.uni-btn[type=success][plain][loading] {
+ color: #18bc37;
+ background-color: #e8f8eb;
+ border-color: #baebc3;
+}
+.uni-btn[type=success][plain][loading]:not([hover-class]):active {
+ background: #d1f2d7;
+ color: #18bc37;
+ outline: none;
+ border-color: #8cde9b;
+}
+.uni-btn[type=success][plain][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=success][plain][disabled], .uni-btn[type=success][plain][disabled]:active {
+ color: #74d787;
+ background-color: #e8f8eb;
+ border-color: #d1f2d7;
+}
+.uni-btn[type=error] {
+ color: #fff;
+ background-color: #e43d33;
+ border-color: #d2382f;
+}
+.uni-btn[type=error]:not([hover-class]):active {
+ background: #cd372e;
+ border-color: #b63129;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=error][loading] {
+ color: #fff;
+ background-color: #e43d33;
+ border-color: #d2382f;
+}
+.uni-btn[type=error][loading]:not([hover-class]):active {
+ background: #cd372e;
+ border-color: #b63129;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=error][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=error][disabled], .uni-btn[type=error][disabled][loading], .uni-btn[type=error][disabled]:not([hover-class]):active {
+ color: #fff;
+ border-color: #e4928d;
+ background-color: #f29e99;
+}
+.uni-btn[type=error][plain] {
+ color: #e43d33;
+ background-color: #fceceb;
+ border-color: #f7c5c2;
+}
+.uni-btn[type=error][plain]:not([hover-class]):active {
+ background: #fad8d6;
+ color: #e43d33;
+ outline: none;
+ border-color: #f29e99;
+}
+.uni-btn[type=error][plain][loading] {
+ color: #e43d33;
+ background-color: #fceceb;
+ border-color: #f7c5c2;
+}
+.uni-btn[type=error][plain][loading]:not([hover-class]):active {
+ background: #fad8d6;
+ color: #e43d33;
+ outline: none;
+ border-color: #f29e99;
+}
+.uni-btn[type=error][plain][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=error][plain][disabled], .uni-btn[type=error][plain][disabled]:active {
+ color: #ef8b85;
+ background-color: #fceceb;
+ border-color: #fad8d6;
+}
+.uni-btn[type=warning] {
+ color: #fff;
+ background-color: #f3a73f;
+ border-color: #e09a3a;
+}
+.uni-btn[type=warning]:not([hover-class]):active {
+ background: #db9639;
+ border-color: #c28632;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=warning][loading] {
+ color: #fff;
+ background-color: #f3a73f;
+ border-color: #e09a3a;
+}
+.uni-btn[type=warning][loading]:not([hover-class]):active {
+ background: #db9639;
+ border-color: #c28632;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=warning][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=warning][disabled], .uni-btn[type=warning][disabled][loading], .uni-btn[type=warning][disabled]:not([hover-class]):active {
+ color: #fff;
+ border-color: #f8c887;
+ background-color: #f9d39f;
+}
+.uni-btn[type=warning][plain] {
+ color: #f3a73f;
+ background-color: #fef6ec;
+ border-color: #fbe5c5;
+}
+.uni-btn[type=warning][plain]:not([hover-class]):active {
+ background: #fdedd9;
+ color: #f3a73f;
+ outline: none;
+ border-color: #f9d39f;
+}
+.uni-btn[type=warning][plain][loading] {
+ color: #f3a73f;
+ background-color: #fef6ec;
+ border-color: #fbe5c5;
+}
+.uni-btn[type=warning][plain][loading]:not([hover-class]):active {
+ background: #fdedd9;
+ color: #f3a73f;
+ outline: none;
+ border-color: #f9d39f;
+}
+.uni-btn[type=warning][plain][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=warning][plain][disabled], .uni-btn[type=warning][plain][disabled]:active {
+ color: #f8ca8c;
+ background-color: #fef6ec;
+ border-color: #fdedd9;
+}
+.uni-btn[type=info] {
+ color: #fff;
+ background-color: #8f939c;
+ border-color: #848790;
+}
+.uni-btn[type=info]:not([hover-class]):active {
+ background: #81848c;
+ border-color: #72767d;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=info][loading] {
+ color: #fff;
+ background-color: #8f939c;
+ border-color: #848790;
+}
+.uni-btn[type=info][loading]:not([hover-class]):active {
+ background: #81848c;
+ border-color: #72767d;
+ color: #fff;
+ outline: none;
+}
+.uni-btn[type=info][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=info][disabled], .uni-btn[type=info][disabled][loading], .uni-btn[type=info][disabled]:not([hover-class]):active {
+ color: #fff;
+ border-color: #babcc2;
+ background-color: #c7c9ce;
+}
+.uni-btn[type=info][plain] {
+ color: #8f939c;
+ background-color: #f4f4f5;
+ border-color: #dddfe1;
+}
+.uni-btn[type=info][plain]:not([hover-class]):active {
+ background: #e9e9eb;
+ color: #8f939c;
+ outline: none;
+ border-color: #c7c9ce;
+}
+.uni-btn[type=info][plain][loading] {
+ color: #8f939c;
+ background-color: #f4f4f5;
+ border-color: #dddfe1;
+}
+.uni-btn[type=info][plain][loading]:not([hover-class]):active {
+ background: #e9e9eb;
+ color: #8f939c;
+ outline: none;
+ border-color: #c7c9ce;
+}
+.uni-btn[type=info][plain][loading]::before {
+ margin-right: 5px;
+}
+.uni-btn[type=info][plain][disabled], .uni-btn[type=info][plain][disabled]:active {
+ color: #bcbec4;
+ background-color: #f4f4f5;
+ border-color: #e9e9eb;
+}
+/* websoft 样式表 */
+/*每个页面公共css */
+page {
+ background-color: #f0f2f5;
+}
+/* 单元格 */
+.web-cell {
+ display: flex;
+}
+.web-cell:not(.web-cell-align-top) {
+ align-items: center;
+}
+.web-cell.web-cell-align-bottom {
+ align-items: flex-end;
+}
+.web-cell > .web-cell-content {
+ flex: 1;
+ box-sizing: border-box;
+ padding-left: 12rpx;
+}
+.web-cell .web-cell-title {
+ color: #333333;
+ font-size: 15px;
+}
+.web-cell .web-cell-desc {
+ color: #cfcfcf;
+ font-size: 13px;
+ margin-top: 4px;
+}
+.web-text {
+ color: #000000;
+}
+.web-text-heading {
+ color: #333333;
+}
+.web-text-secondary {
+ color: #333333;
+ opacity: 0.45;
+}
+.web-text-placeholder {
+ color: #cfcfcf;
+}
+.web-text-primary {
+ color: #398ade;
+}
+.web-text-success {
+ color: #3C8618;
+}
+.web-text-warning {
+ color: #f9ae3d;
+}
+.web-text-danger {
+ color: #ff0000;
+}
+.web-text-info {
+ color: #909399;
+}
+.web-text-center {
+ text-align: center;
+}
+.web-text-left {
+ text-align: left;
+}
+.web-text-right {
+ text-align: right;
+}
+.web-text-delete {
+ text-decoration: underline;
+}
+.web-text-small {
+ font-size: 12px;
+}
+.web-bg-primary {
+ background-color: #398ade;
+}
+.web-bg-success {
+ background-color: #2ba91c;
+}
+.web-bg-warning {
+ background-color: #f9ae3d !important;
+}
+.web-bg-danger {
+ background-color: #fc0107;
+}
+.web-bg-info {
+ background-color: #909399;
+}
+.web-bg-white {
+ background-color: #ffffff;
+}
+.web-bg-base {
+ background-color: #f0f2f5;
+}
+.web-border-primary {
+ order: 1px solid #398ade;
+}
+.web-border-success {
+ order: 1px solid #2ba91c;
+}
+.web-border-warning {
+ order: 1px solid #f9ae3d;
+}
+.web-border-danger {
+ order: 1px solid #fc0107;
+}
+.web-border-info {
+ order: 1px solid #909399;
+}
+.web-pull-left {
+ float: left;
+}
+.web-pull-right {
+ float: right;
+}
+.web-clear {
+ clear: both;
+}
+@media only screen and (max-width: 576px) {
+.hidden-xs-only {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 576px) {
+.hidden-sm-and-up {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 576px) and (max-width: 575px) {
+.hidden-sm-only {
+ display: none !important;
+}
+}
+@media only screen and (max-width: 575px) {
+.hidden-sm-and-down {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 768px) {
+.hidden-md-and-up {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 768px) and (max-width: 991px) {
+.hidden-md-only {
+ display: none !important;
+}
+}
+@media only screen and (max-width: 991px) {
+.hidden-md-and-down {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 992px) {
+.hidden-lg-and-up {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 992px) and (max-width: 1199px) {
+.hidden-lg-only {
+ display: none !important;
+}
+}
+@media only screen and (max-width: 1199px) {
+.hidden-lg-and-down {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 1200px) {
+.hidden-xl-and-up {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 1200px) and (max-width: 1599px) {
+.hidden-xl-only {
+ display: none !important;
+}
+}
+@media only screen and (max-width: 1599px) {
+.hidden-xl-and-down {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 1600px) {
+.hidden-xxl-and-up {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 1600px) and (max-width: 1999px) {
+.hidden-xxl-only {
+ display: none !important;
+}
+}
+@media only screen and (max-width: 1999px) {
+.hidden-xxl-and-down {
+ display: none !important;
+}
+}
+@media only screen and (min-width: 2000px) {
+.hidden-xxxl-only {
+ display: none !important;
+}
+}
+.flex {
+ display: flex;
+}
+.flex-row {
+ flex-direction: row;
+}
+.flex-col {
+ flex-direction: column;
+}
+.items-center {
+ align-items: center;
+}
+.ml-2 {
+ margin-left: 0.5rem;
+}
+.pl-2 {
+ padding-left: 0.5rem;
+}
+.text-red-500 {
+ color: rgb(239, 68, 68);
+}
+.justify-between {
+ justify-content: space-between;
+}
+.text-gray-800 {
+ color: rgb(31, 41, 55);
+}
+.text-gray-100 {
+ color: rgb(243, 244, 246);
+}
+.relative {
+ position: relative;
+}
+.absolute {
+ position: absolute;
+}
+.bg-red-50 {
+ background-color: rgb(254, 242, 242);
+}
+.bg-gray-50 {
+ background-color: rgb(249, 250, 251);
+}
+.bg-black {
+ background-color: rgb(0, 0, 0);
+}
+.bg-white {
+ background-color: rgb(255, 255, 255);
+}
+.w-full {
+ width: 100%;
+}
+.justify-end {
+ justify-content: flex-end;
+}
+.fixed {
+ position: fixed;
+}
+.bottom-0 {
+ bottom: 0;
+}
+.right-4 {
+ right: 1rem;
+}
+.top-25 {
+ top: 0.625rem;
+}
+.px-2 {
+ padding-left: 0.5rem; /* 8px */
+ padding-right: 0.5rem; /* 8px */
+}
+.p-5 {
+ padding: 0.25rem; /* 8px */
+}
+.text-blue-500 {
+ color: rgb(59, 130, 246);
+}
+.justify-center {
+ justify-content: center;
+}
+.px-10 {
+ padding: 0 40rpx;
+}
+.mx-10 {
+ margin: 0 40rpx;
+}
+/* iconfont图标库 */page{--status-bar-height:25px;--top-window-height:0px;--window-top:0px;--window-bottom:0px;--window-left:0px;--window-right:0px;--window-magin:0px}[data-c-h="true"]{display: none !important;}
\ No newline at end of file
diff --git a/dist/dev/mp-weixin/common/vendor.js b/dist/dev/mp-weixin/common/vendor.js
new file mode 100644
index 0000000..643e2e4
--- /dev/null
+++ b/dist/dev/mp-weixin/common/vendor.js
@@ -0,0 +1,21509 @@
+"use strict";
+const _export_sfc = (sfc, props) => {
+ const target = sfc.__vccOpts || sfc;
+ for (const [key, val] of props) {
+ target[key] = val;
+ }
+ return target;
+};
+/**
+* @vue/shared v3.4.21
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/
+function makeMap(str, expectsLowerCase) {
+ const set2 = new Set(str.split(","));
+ return (val) => set2.has(val);
+}
+const EMPTY_OBJ = Object.freeze({});
+const EMPTY_ARR = Object.freeze([]);
+const NOOP = () => {
+};
+const NO = () => false;
+const isOn = (key) => key.charCodeAt(0) === 111 && key.charCodeAt(1) === 110 && // uppercase letter
+(key.charCodeAt(2) > 122 || key.charCodeAt(2) < 97);
+const isModelListener = (key) => key.startsWith("onUpdate:");
+const extend = Object.assign;
+const remove = (arr, el) => {
+ const i2 = arr.indexOf(el);
+ if (i2 > -1) {
+ arr.splice(i2, 1);
+ }
+};
+const hasOwnProperty$2 = Object.prototype.hasOwnProperty;
+const hasOwn$1 = (val, key) => hasOwnProperty$2.call(val, key);
+const isArray$1 = Array.isArray;
+const isMap = (val) => toTypeString(val) === "[object Map]";
+const isSet = (val) => toTypeString(val) === "[object Set]";
+const isFunction = (val) => typeof val === "function";
+const isString = (val) => typeof val === "string";
+const isSymbol = (val) => typeof val === "symbol";
+const isObject$2 = (val) => val !== null && typeof val === "object";
+const isPromise = (val) => {
+ return (isObject$2(val) || isFunction(val)) && isFunction(val.then) && isFunction(val.catch);
+};
+const objectToString = Object.prototype.toString;
+const toTypeString = (value) => objectToString.call(value);
+const toRawType = (value) => {
+ return toTypeString(value).slice(8, -1);
+};
+const isPlainObject$2 = (val) => toTypeString(val) === "[object Object]";
+const isIntegerKey = (key) => isString(key) && key !== "NaN" && key[0] !== "-" && "" + parseInt(key, 10) === key;
+const isReservedProp = /* @__PURE__ */ makeMap(
+ // the leading comma is intentional so empty string "" is also included
+ ",key,ref,ref_for,ref_key,onVnodeBeforeMount,onVnodeMounted,onVnodeBeforeUpdate,onVnodeUpdated,onVnodeBeforeUnmount,onVnodeUnmounted"
+);
+const isBuiltInDirective = /* @__PURE__ */ makeMap(
+ "bind,cloak,else-if,else,for,html,if,model,on,once,pre,show,slot,text,memo"
+);
+const cacheStringFunction = (fn) => {
+ const cache = /* @__PURE__ */ Object.create(null);
+ return (str) => {
+ const hit = cache[str];
+ return hit || (cache[str] = fn(str));
+ };
+};
+const camelizeRE = /-(\w)/g;
+const camelize = cacheStringFunction((str) => {
+ return str.replace(camelizeRE, (_2, c2) => c2 ? c2.toUpperCase() : "");
+});
+const hyphenateRE = /\B([A-Z])/g;
+const hyphenate = cacheStringFunction(
+ (str) => str.replace(hyphenateRE, "-$1").toLowerCase()
+);
+const capitalize = cacheStringFunction((str) => {
+ return str.charAt(0).toUpperCase() + str.slice(1);
+});
+const toHandlerKey = cacheStringFunction((str) => {
+ const s2 = str ? `on${capitalize(str)}` : ``;
+ return s2;
+});
+const hasChanged = (value, oldValue) => !Object.is(value, oldValue);
+const invokeArrayFns$1 = (fns, arg) => {
+ for (let i2 = 0; i2 < fns.length; i2++) {
+ fns[i2](arg);
+ }
+};
+const def = (obj, key, value) => {
+ Object.defineProperty(obj, key, {
+ configurable: true,
+ enumerable: false,
+ value
+ });
+};
+const looseToNumber = (val) => {
+ const n2 = parseFloat(val);
+ return isNaN(n2) ? val : n2;
+};
+let _globalThis;
+const getGlobalThis = () => {
+ return _globalThis || (_globalThis = typeof globalThis !== "undefined" ? globalThis : typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : {});
+};
+function normalizeStyle(value) {
+ if (isArray$1(value)) {
+ const res = {};
+ for (let i2 = 0; i2 < value.length; i2++) {
+ const item = value[i2];
+ const normalized = isString(item) ? parseStringStyle(item) : normalizeStyle(item);
+ if (normalized) {
+ for (const key in normalized) {
+ res[key] = normalized[key];
+ }
+ }
+ }
+ return res;
+ } else if (isString(value) || isObject$2(value)) {
+ return value;
+ }
+}
+const listDelimiterRE = /;(?![^(]*\))/g;
+const propertyDelimiterRE = /:([^]+)/;
+const styleCommentRE = /\/\*[^]*?\*\//g;
+function parseStringStyle(cssText) {
+ const ret = {};
+ cssText.replace(styleCommentRE, "").split(listDelimiterRE).forEach((item) => {
+ if (item) {
+ const tmp = item.split(propertyDelimiterRE);
+ tmp.length > 1 && (ret[tmp[0].trim()] = tmp[1].trim());
+ }
+ });
+ return ret;
+}
+function normalizeClass(value) {
+ let res = "";
+ if (isString(value)) {
+ res = value;
+ } else if (isArray$1(value)) {
+ for (let i2 = 0; i2 < value.length; i2++) {
+ const normalized = normalizeClass(value[i2]);
+ if (normalized) {
+ res += normalized + " ";
+ }
+ }
+ } else if (isObject$2(value)) {
+ for (const name in value) {
+ if (value[name]) {
+ res += name + " ";
+ }
+ }
+ }
+ return res.trim();
+}
+const toDisplayString = (val) => {
+ return isString(val) ? val : val == null ? "" : isArray$1(val) || isObject$2(val) && (val.toString === objectToString || !isFunction(val.toString)) ? JSON.stringify(val, replacer, 2) : String(val);
+};
+const replacer = (_key, val) => {
+ if (val && val.__v_isRef) {
+ return replacer(_key, val.value);
+ } else if (isMap(val)) {
+ return {
+ [`Map(${val.size})`]: [...val.entries()].reduce(
+ (entries, [key, val2], i2) => {
+ entries[stringifySymbol(key, i2) + " =>"] = val2;
+ return entries;
+ },
+ {}
+ )
+ };
+ } else if (isSet(val)) {
+ return {
+ [`Set(${val.size})`]: [...val.values()].map((v2) => stringifySymbol(v2))
+ };
+ } else if (isSymbol(val)) {
+ return stringifySymbol(val);
+ } else if (isObject$2(val) && !isArray$1(val) && !isPlainObject$2(val)) {
+ return String(val);
+ }
+ return val;
+};
+const stringifySymbol = (v2, i2 = "") => {
+ var _a;
+ return isSymbol(v2) ? `Symbol(${(_a = v2.description) != null ? _a : i2})` : v2;
+};
+const LINEFEED = "\n";
+const SLOT_DEFAULT_NAME = "d";
+const ON_SHOW = "onShow";
+const ON_HIDE = "onHide";
+const ON_LAUNCH = "onLaunch";
+const ON_ERROR = "onError";
+const ON_THEME_CHANGE = "onThemeChange";
+const ON_PAGE_NOT_FOUND = "onPageNotFound";
+const ON_UNHANDLE_REJECTION = "onUnhandledRejection";
+const ON_EXIT = "onExit";
+const ON_LOAD = "onLoad";
+const ON_READY = "onReady";
+const ON_UNLOAD = "onUnload";
+const ON_INIT = "onInit";
+const ON_SAVE_EXIT_STATE = "onSaveExitState";
+const ON_RESIZE = "onResize";
+const ON_BACK_PRESS = "onBackPress";
+const ON_PAGE_SCROLL = "onPageScroll";
+const ON_TAB_ITEM_TAP = "onTabItemTap";
+const ON_REACH_BOTTOM = "onReachBottom";
+const ON_PULL_DOWN_REFRESH = "onPullDownRefresh";
+const ON_SHARE_TIMELINE = "onShareTimeline";
+const ON_ADD_TO_FAVORITES = "onAddToFavorites";
+const ON_SHARE_APP_MESSAGE = "onShareAppMessage";
+const ON_NAVIGATION_BAR_BUTTON_TAP = "onNavigationBarButtonTap";
+const ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED = "onNavigationBarSearchInputClicked";
+const ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED = "onNavigationBarSearchInputChanged";
+const ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED = "onNavigationBarSearchInputConfirmed";
+const ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED = "onNavigationBarSearchInputFocusChanged";
+const customizeRE = /:/g;
+function customizeEvent(str) {
+ return camelize(str.replace(customizeRE, "-"));
+}
+function hasLeadingSlash(str) {
+ return str.indexOf("/") === 0;
+}
+function addLeadingSlash(str) {
+ return hasLeadingSlash(str) ? str : "/" + str;
+}
+const invokeArrayFns = (fns, arg) => {
+ let ret;
+ for (let i2 = 0; i2 < fns.length; i2++) {
+ ret = fns[i2](arg);
+ }
+ return ret;
+};
+function once(fn, ctx = null) {
+ let res;
+ return (...args) => {
+ if (fn) {
+ res = fn.apply(ctx, args);
+ fn = null;
+ }
+ return res;
+ };
+}
+function getValueByDataPath(obj, path) {
+ if (!isString(path)) {
+ return;
+ }
+ path = path.replace(/\[(\d+)\]/g, ".$1");
+ const parts = path.split(".");
+ let key = parts[0];
+ if (!obj) {
+ obj = {};
+ }
+ if (parts.length === 1) {
+ return obj[key];
+ }
+ return getValueByDataPath(obj[key], parts.slice(1).join("."));
+}
+function sortObject(obj) {
+ let sortObj = {};
+ if (isPlainObject$2(obj)) {
+ Object.keys(obj).sort().forEach((key) => {
+ const _key = key;
+ sortObj[_key] = obj[_key];
+ });
+ }
+ return !Object.keys(sortObj) ? obj : sortObj;
+}
+const encode$2 = encodeURIComponent;
+function stringifyQuery(obj, encodeStr = encode$2) {
+ const res = obj ? Object.keys(obj).map((key) => {
+ let val = obj[key];
+ if (typeof val === void 0 || val === null) {
+ val = "";
+ } else if (isPlainObject$2(val)) {
+ val = JSON.stringify(val);
+ }
+ return encodeStr(key) + "=" + encodeStr(val);
+ }).filter((x) => x.length > 0).join("&") : null;
+ return res ? `?${res}` : "";
+}
+const PAGE_HOOKS = [
+ ON_INIT,
+ ON_LOAD,
+ ON_SHOW,
+ ON_HIDE,
+ ON_UNLOAD,
+ ON_BACK_PRESS,
+ ON_PAGE_SCROLL,
+ ON_TAB_ITEM_TAP,
+ ON_REACH_BOTTOM,
+ ON_PULL_DOWN_REFRESH,
+ ON_SHARE_TIMELINE,
+ ON_SHARE_APP_MESSAGE,
+ ON_ADD_TO_FAVORITES,
+ ON_SAVE_EXIT_STATE,
+ ON_NAVIGATION_BAR_BUTTON_TAP,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED
+];
+function isRootHook(name) {
+ return PAGE_HOOKS.indexOf(name) > -1;
+}
+const UniLifecycleHooks = [
+ ON_SHOW,
+ ON_HIDE,
+ ON_LAUNCH,
+ ON_ERROR,
+ ON_THEME_CHANGE,
+ ON_PAGE_NOT_FOUND,
+ ON_UNHANDLE_REJECTION,
+ ON_EXIT,
+ ON_INIT,
+ ON_LOAD,
+ ON_READY,
+ ON_UNLOAD,
+ ON_RESIZE,
+ ON_BACK_PRESS,
+ ON_PAGE_SCROLL,
+ ON_TAB_ITEM_TAP,
+ ON_REACH_BOTTOM,
+ ON_PULL_DOWN_REFRESH,
+ ON_SHARE_TIMELINE,
+ ON_ADD_TO_FAVORITES,
+ ON_SHARE_APP_MESSAGE,
+ ON_SAVE_EXIT_STATE,
+ ON_NAVIGATION_BAR_BUTTON_TAP,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CLICKED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CHANGED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_CONFIRMED,
+ ON_NAVIGATION_BAR_SEARCH_INPUT_FOCUS_CHANGED
+];
+const MINI_PROGRAM_PAGE_RUNTIME_HOOKS = /* @__PURE__ */ (() => {
+ return {
+ onPageScroll: 1,
+ onShareAppMessage: 1 << 1,
+ onShareTimeline: 1 << 2
+ };
+})();
+function isUniLifecycleHook(name, value, checkType = true) {
+ if (checkType && !isFunction(value)) {
+ return false;
+ }
+ if (UniLifecycleHooks.indexOf(name) > -1) {
+ return true;
+ } else if (name.indexOf("on") === 0) {
+ return true;
+ }
+ return false;
+}
+let vueApp;
+const createVueAppHooks = [];
+function onCreateVueApp(hook) {
+ if (vueApp) {
+ return hook(vueApp);
+ }
+ createVueAppHooks.push(hook);
+}
+function invokeCreateVueAppHook(app) {
+ vueApp = app;
+ createVueAppHooks.forEach((hook) => hook(app));
+}
+const invokeCreateErrorHandler = once((app, createErrorHandler2) => {
+ if (isFunction(app._component.onError)) {
+ return createErrorHandler2(app);
+ }
+});
+const E$1 = function() {
+};
+E$1.prototype = {
+ on: function(name, callback, ctx) {
+ var e2 = this.e || (this.e = {});
+ (e2[name] || (e2[name] = [])).push({
+ fn: callback,
+ ctx
+ });
+ return this;
+ },
+ once: function(name, callback, ctx) {
+ var self2 = this;
+ function listener() {
+ self2.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 i2 = 0;
+ var len = evtArr.length;
+ for (i2; i2 < len; i2++) {
+ evtArr[i2].fn.apply(evtArr[i2].ctx, data);
+ }
+ return this;
+ },
+ off: function(name, callback) {
+ var e2 = this.e || (this.e = {});
+ var evts = e2[name];
+ var liveEvents = [];
+ if (evts && callback) {
+ for (var i2 = evts.length - 1; i2 >= 0; i2--) {
+ if (evts[i2].fn === callback || evts[i2].fn._ === callback) {
+ evts.splice(i2, 1);
+ break;
+ }
+ }
+ liveEvents = evts;
+ }
+ liveEvents.length ? e2[name] = liveEvents : delete e2[name];
+ return this;
+ }
+};
+var E$1$1 = E$1;
+const isObject$1 = (val) => val !== null && typeof val === "object";
+const defaultDelimiters = ["{", "}"];
+class BaseFormatter {
+ constructor() {
+ this._caches = /* @__PURE__ */ Object.create(null);
+ }
+ interpolate(message, values, delimiters = defaultDelimiters) {
+ if (!values) {
+ return [message];
+ }
+ let tokens = this._caches[message];
+ if (!tokens) {
+ tokens = parse(message, delimiters);
+ this._caches[message] = tokens;
+ }
+ return compile$1(tokens, values);
+ }
+}
+const RE_TOKEN_LIST_VALUE = /^(?:\d)+/;
+const RE_TOKEN_NAMED_VALUE = /^(?:\w)+/;
+function parse(format, [startDelimiter, endDelimiter]) {
+ const tokens = [];
+ let position = 0;
+ let text = "";
+ while (position < format.length) {
+ let char = format[position++];
+ if (char === startDelimiter) {
+ if (text) {
+ tokens.push({ type: "text", value: text });
+ }
+ text = "";
+ let sub2 = "";
+ char = format[position++];
+ while (char !== void 0 && char !== endDelimiter) {
+ sub2 += char;
+ char = format[position++];
+ }
+ const isClosed = char === endDelimiter;
+ const type = RE_TOKEN_LIST_VALUE.test(sub2) ? "list" : isClosed && RE_TOKEN_NAMED_VALUE.test(sub2) ? "named" : "unknown";
+ tokens.push({ value: sub2, type });
+ } else {
+ text += char;
+ }
+ }
+ text && tokens.push({ type: "text", value: text });
+ return tokens;
+}
+function compile$1(tokens, values) {
+ const compiled = [];
+ let index2 = 0;
+ const mode = Array.isArray(values) ? "list" : isObject$1(values) ? "named" : "unknown";
+ if (mode === "unknown") {
+ return compiled;
+ }
+ while (index2 < tokens.length) {
+ const token = tokens[index2];
+ switch (token.type) {
+ case "text":
+ compiled.push(token.value);
+ break;
+ case "list":
+ compiled.push(values[parseInt(token.value, 10)]);
+ break;
+ case "named":
+ if (mode === "named") {
+ compiled.push(values[token.value]);
+ } else {
+ {
+ console.warn(`Type of token '${token.type}' and format of value '${mode}' don't match!`);
+ }
+ }
+ break;
+ case "unknown":
+ {
+ console.warn(`Detect 'unknown' type of token!`);
+ }
+ break;
+ }
+ index2++;
+ }
+ return compiled;
+}
+const LOCALE_ZH_HANS = "zh-Hans";
+const LOCALE_ZH_HANT = "zh-Hant";
+const LOCALE_EN = "en";
+const LOCALE_FR = "fr";
+const LOCALE_ES = "es";
+const hasOwnProperty$1 = Object.prototype.hasOwnProperty;
+const hasOwn = (val, key) => hasOwnProperty$1.call(val, key);
+const defaultFormatter = new BaseFormatter();
+function include(str, parts) {
+ return !!parts.find((part) => str.indexOf(part) !== -1);
+}
+function startsWith(str, parts) {
+ return parts.find((part) => str.indexOf(part) === 0);
+}
+function normalizeLocale(locale, messages) {
+ if (!locale) {
+ return;
+ }
+ locale = locale.trim().replace(/_/g, "-");
+ if (messages && messages[locale]) {
+ return locale;
+ }
+ locale = locale.toLowerCase();
+ if (locale === "chinese") {
+ return LOCALE_ZH_HANS;
+ }
+ if (locale.indexOf("zh") === 0) {
+ if (locale.indexOf("-hans") > -1) {
+ return LOCALE_ZH_HANS;
+ }
+ if (locale.indexOf("-hant") > -1) {
+ return LOCALE_ZH_HANT;
+ }
+ if (include(locale, ["-tw", "-hk", "-mo", "-cht"])) {
+ return LOCALE_ZH_HANT;
+ }
+ return LOCALE_ZH_HANS;
+ }
+ let locales = [LOCALE_EN, LOCALE_FR, LOCALE_ES];
+ if (messages && Object.keys(messages).length > 0) {
+ locales = Object.keys(messages);
+ }
+ const lang = startsWith(locale, locales);
+ if (lang) {
+ return lang;
+ }
+}
+class I18n {
+ constructor({ locale, fallbackLocale, messages, watcher, formater: formater2 }) {
+ this.locale = LOCALE_EN;
+ this.fallbackLocale = LOCALE_EN;
+ this.message = {};
+ this.messages = {};
+ this.watchers = [];
+ if (fallbackLocale) {
+ this.fallbackLocale = fallbackLocale;
+ }
+ this.formater = formater2 || defaultFormatter;
+ this.messages = messages || {};
+ this.setLocale(locale || LOCALE_EN);
+ if (watcher) {
+ this.watchLocale(watcher);
+ }
+ }
+ setLocale(locale) {
+ const oldLocale = this.locale;
+ this.locale = normalizeLocale(locale, this.messages) || this.fallbackLocale;
+ if (!this.messages[this.locale]) {
+ this.messages[this.locale] = {};
+ }
+ this.message = this.messages[this.locale];
+ if (oldLocale !== this.locale) {
+ this.watchers.forEach((watcher) => {
+ watcher(this.locale, oldLocale);
+ });
+ }
+ }
+ getLocale() {
+ return this.locale;
+ }
+ watchLocale(fn) {
+ const index2 = this.watchers.push(fn) - 1;
+ return () => {
+ this.watchers.splice(index2, 1);
+ };
+ }
+ add(locale, message, override = true) {
+ const curMessages = this.messages[locale];
+ if (curMessages) {
+ if (override) {
+ Object.assign(curMessages, message);
+ } else {
+ Object.keys(message).forEach((key) => {
+ if (!hasOwn(curMessages, key)) {
+ curMessages[key] = message[key];
+ }
+ });
+ }
+ } else {
+ this.messages[locale] = message;
+ }
+ }
+ f(message, values, delimiters) {
+ return this.formater.interpolate(message, values, delimiters).join("");
+ }
+ t(key, locale, values) {
+ let message = this.message;
+ if (typeof locale === "string") {
+ locale = normalizeLocale(locale, this.messages);
+ locale && (message = this.messages[locale]);
+ } else {
+ values = locale;
+ }
+ if (!hasOwn(message, key)) {
+ console.warn(`Cannot translate the value of keypath ${key}. Use the value of keypath as default.`);
+ return key;
+ }
+ return this.formater.interpolate(message[key], values).join("");
+ }
+}
+function watchAppLocale(appVm, i18n) {
+ if (appVm.$watchLocale) {
+ appVm.$watchLocale((newLocale) => {
+ i18n.setLocale(newLocale);
+ });
+ } else {
+ appVm.$watch(() => appVm.$locale, (newLocale) => {
+ i18n.setLocale(newLocale);
+ });
+ }
+}
+function getDefaultLocale() {
+ if (typeof index !== "undefined" && index.getLocale) {
+ return index.getLocale();
+ }
+ if (typeof global !== "undefined" && global.getLocale) {
+ return global.getLocale();
+ }
+ return LOCALE_EN;
+}
+function initVueI18n(locale, messages = {}, fallbackLocale, watcher) {
+ if (typeof locale !== "string") {
+ [locale, messages] = [
+ messages,
+ locale
+ ];
+ }
+ if (typeof locale !== "string") {
+ locale = getDefaultLocale();
+ }
+ if (typeof fallbackLocale !== "string") {
+ fallbackLocale = typeof __uniConfig !== "undefined" && __uniConfig.fallbackLocale || LOCALE_EN;
+ }
+ const i18n = new I18n({
+ locale,
+ fallbackLocale,
+ messages,
+ watcher
+ });
+ let t2 = (key, values) => {
+ if (typeof getApp !== "function") {
+ t2 = function(key2, values2) {
+ return i18n.t(key2, values2);
+ };
+ } else {
+ let isWatchedAppLocale = false;
+ t2 = function(key2, values2) {
+ const appVm = getApp().$vm;
+ if (appVm) {
+ appVm.$locale;
+ if (!isWatchedAppLocale) {
+ isWatchedAppLocale = true;
+ watchAppLocale(appVm, i18n);
+ }
+ }
+ return i18n.t(key2, values2);
+ };
+ }
+ return t2(key, values);
+ };
+ return {
+ i18n,
+ f(message, values, delimiters) {
+ return i18n.f(message, values, delimiters);
+ },
+ t(key, values) {
+ return t2(key, values);
+ },
+ add(locale2, message, override = true) {
+ return i18n.add(locale2, message, override);
+ },
+ watch(fn) {
+ return i18n.watchLocale(fn);
+ },
+ getLocale() {
+ return i18n.getLocale();
+ },
+ setLocale(newLocale) {
+ return i18n.setLocale(newLocale);
+ }
+ };
+}
+function getBaseSystemInfo() {
+ return wx.getSystemInfoSync();
+}
+function validateProtocolFail(name, msg) {
+ console.warn(`${name}: ${msg}`);
+}
+function validateProtocol(name, data, protocol, onFail) {
+ if (!onFail) {
+ onFail = validateProtocolFail;
+ }
+ for (const key in protocol) {
+ const errMsg = validateProp$1(key, data[key], protocol[key], !hasOwn$1(data, key));
+ if (isString(errMsg)) {
+ onFail(name, errMsg);
+ }
+ }
+}
+function validateProtocols(name, args, protocol, onFail) {
+ if (!protocol) {
+ return;
+ }
+ if (!isArray$1(protocol)) {
+ return validateProtocol(name, args[0] || /* @__PURE__ */ Object.create(null), protocol, onFail);
+ }
+ const len = protocol.length;
+ const argsLen = args.length;
+ for (let i2 = 0; i2 < len; i2++) {
+ const opts = protocol[i2];
+ const data = /* @__PURE__ */ Object.create(null);
+ if (argsLen > i2) {
+ data[opts.name] = args[i2];
+ }
+ validateProtocol(name, data, { [opts.name]: opts }, onFail);
+ }
+}
+function validateProp$1(name, value, prop, isAbsent) {
+ if (!isPlainObject$2(prop)) {
+ prop = { type: prop };
+ }
+ const { type, required, validator } = prop;
+ if (required && isAbsent) {
+ return 'Missing required args: "' + name + '"';
+ }
+ if (value == null && !required) {
+ return;
+ }
+ if (type != null) {
+ let isValid2 = false;
+ const types = isArray$1(type) ? type : [type];
+ const expectedTypes = [];
+ for (let i2 = 0; i2 < types.length && !isValid2; i2++) {
+ const { valid, expectedType } = assertType$1(value, types[i2]);
+ expectedTypes.push(expectedType || "");
+ isValid2 = valid;
+ }
+ if (!isValid2) {
+ return getInvalidTypeMessage$1(name, value, expectedTypes);
+ }
+ }
+ if (validator) {
+ return validator(value);
+ }
+}
+const isSimpleType$1 = /* @__PURE__ */ makeMap("String,Number,Boolean,Function,Symbol");
+function assertType$1(value, type) {
+ let valid;
+ const expectedType = getType$1(type);
+ if (isSimpleType$1(expectedType)) {
+ const t2 = typeof value;
+ valid = t2 === expectedType.toLowerCase();
+ if (!valid && t2 === "object") {
+ valid = value instanceof type;
+ }
+ } else if (expectedType === "Object") {
+ valid = isObject$2(value);
+ } else if (expectedType === "Array") {
+ valid = isArray$1(value);
+ } else {
+ {
+ valid = value instanceof type;
+ }
+ }
+ return {
+ valid,
+ expectedType
+ };
+}
+function getInvalidTypeMessage$1(name, value, expectedTypes) {
+ let message = `Invalid args: type check failed for args "${name}". Expected ${expectedTypes.map(capitalize).join(", ")}`;
+ const expectedType = expectedTypes[0];
+ const receivedType = toRawType(value);
+ const expectedValue = styleValue$1(value, expectedType);
+ const receivedValue = styleValue$1(value, receivedType);
+ if (expectedTypes.length === 1 && isExplicable$1(expectedType) && !isBoolean$1(expectedType, receivedType)) {
+ message += ` with value ${expectedValue}`;
+ }
+ message += `, got ${receivedType} `;
+ if (isExplicable$1(receivedType)) {
+ message += `with value ${receivedValue}.`;
+ }
+ return message;
+}
+function getType$1(ctor) {
+ const match = ctor && ctor.toString().match(/^\s*function (\w+)/);
+ return match ? match[1] : "";
+}
+function styleValue$1(value, type) {
+ if (type === "String") {
+ return `"${value}"`;
+ } else if (type === "Number") {
+ return `${Number(value)}`;
+ } else {
+ return `${value}`;
+ }
+}
+function isExplicable$1(type) {
+ const explicitTypes = ["string", "number", "boolean"];
+ return explicitTypes.some((elem) => type.toLowerCase() === elem);
+}
+function isBoolean$1(...args) {
+ return args.some((elem) => elem.toLowerCase() === "boolean");
+}
+function tryCatch(fn) {
+ return function() {
+ try {
+ return fn.apply(fn, arguments);
+ } catch (e2) {
+ console.error(e2);
+ }
+ };
+}
+let invokeCallbackId = 1;
+const invokeCallbacks = {};
+function addInvokeCallback(id, name, callback, keepAlive = false) {
+ invokeCallbacks[id] = {
+ name,
+ keepAlive,
+ callback
+ };
+ return id;
+}
+function invokeCallback(id, res, extras) {
+ if (typeof id === "number") {
+ const opts = invokeCallbacks[id];
+ if (opts) {
+ if (!opts.keepAlive) {
+ delete invokeCallbacks[id];
+ }
+ return opts.callback(res, extras);
+ }
+ }
+ return res;
+}
+const API_SUCCESS = "success";
+const API_FAIL = "fail";
+const API_COMPLETE = "complete";
+function getApiCallbacks(args) {
+ const apiCallbacks = {};
+ for (const name in args) {
+ const fn = args[name];
+ if (isFunction(fn)) {
+ apiCallbacks[name] = tryCatch(fn);
+ delete args[name];
+ }
+ }
+ return apiCallbacks;
+}
+function normalizeErrMsg$1(errMsg, name) {
+ if (!errMsg || errMsg.indexOf(":fail") === -1) {
+ return name + ":ok";
+ }
+ return name + errMsg.substring(errMsg.indexOf(":fail"));
+}
+function createAsyncApiCallback(name, args = {}, { beforeAll, beforeSuccess } = {}) {
+ if (!isPlainObject$2(args)) {
+ args = {};
+ }
+ const { success, fail, complete } = getApiCallbacks(args);
+ const hasSuccess = isFunction(success);
+ const hasFail = isFunction(fail);
+ const hasComplete = isFunction(complete);
+ const callbackId = invokeCallbackId++;
+ addInvokeCallback(callbackId, name, (res) => {
+ res = res || {};
+ res.errMsg = normalizeErrMsg$1(res.errMsg, name);
+ isFunction(beforeAll) && beforeAll(res);
+ if (res.errMsg === name + ":ok") {
+ isFunction(beforeSuccess) && beforeSuccess(res, args);
+ hasSuccess && success(res);
+ } else {
+ hasFail && fail(res);
+ }
+ hasComplete && complete(res);
+ });
+ return callbackId;
+}
+const HOOK_SUCCESS = "success";
+const HOOK_FAIL = "fail";
+const HOOK_COMPLETE = "complete";
+const globalInterceptors = {};
+const scopedInterceptors = {};
+function wrapperHook(hook, params) {
+ return function(data) {
+ return hook(data, params) || data;
+ };
+}
+function queue$2(hooks, data, params) {
+ let promise = false;
+ for (let i2 = 0; i2 < hooks.length; i2++) {
+ const hook = hooks[i2];
+ if (promise) {
+ promise = Promise.resolve(wrapperHook(hook, params));
+ } else {
+ const res = hook(data, params);
+ if (isPromise(res)) {
+ promise = Promise.resolve(res);
+ }
+ if (res === false) {
+ return {
+ then() {
+ },
+ catch() {
+ }
+ };
+ }
+ }
+ }
+ return promise || {
+ then(callback) {
+ return callback(data);
+ },
+ catch() {
+ }
+ };
+}
+function wrapperOptions(interceptors2, options = {}) {
+ [HOOK_SUCCESS, HOOK_FAIL, HOOK_COMPLETE].forEach((name) => {
+ const hooks = interceptors2[name];
+ if (!isArray$1(hooks)) {
+ return;
+ }
+ const oldCallback = options[name];
+ options[name] = function callbackInterceptor(res) {
+ queue$2(hooks, res, options).then((res2) => {
+ return isFunction(oldCallback) && oldCallback(res2) || res2;
+ });
+ };
+ });
+ return options;
+}
+function wrapperReturnValue(method, returnValue) {
+ const returnValueHooks = [];
+ if (isArray$1(globalInterceptors.returnValue)) {
+ returnValueHooks.push(...globalInterceptors.returnValue);
+ }
+ const interceptor = scopedInterceptors[method];
+ if (interceptor && isArray$1(interceptor.returnValue)) {
+ returnValueHooks.push(...interceptor.returnValue);
+ }
+ returnValueHooks.forEach((hook) => {
+ returnValue = hook(returnValue) || returnValue;
+ });
+ return returnValue;
+}
+function getApiInterceptorHooks(method) {
+ const interceptor = /* @__PURE__ */ Object.create(null);
+ Object.keys(globalInterceptors).forEach((hook) => {
+ if (hook !== "returnValue") {
+ interceptor[hook] = globalInterceptors[hook].slice();
+ }
+ });
+ const scopedInterceptor = scopedInterceptors[method];
+ if (scopedInterceptor) {
+ Object.keys(scopedInterceptor).forEach((hook) => {
+ if (hook !== "returnValue") {
+ interceptor[hook] = (interceptor[hook] || []).concat(scopedInterceptor[hook]);
+ }
+ });
+ }
+ return interceptor;
+}
+function invokeApi(method, api, options, params) {
+ const interceptor = getApiInterceptorHooks(method);
+ if (interceptor && Object.keys(interceptor).length) {
+ if (isArray$1(interceptor.invoke)) {
+ const res = queue$2(interceptor.invoke, options);
+ return res.then((options2) => {
+ return api(wrapperOptions(getApiInterceptorHooks(method), options2), ...params);
+ });
+ } else {
+ return api(wrapperOptions(interceptor, options), ...params);
+ }
+ }
+ return api(options, ...params);
+}
+function hasCallback(args) {
+ if (isPlainObject$2(args) && [API_SUCCESS, API_FAIL, API_COMPLETE].find((cb) => isFunction(args[cb]))) {
+ return true;
+ }
+ return false;
+}
+function handlePromise(promise) {
+ return promise;
+}
+function promisify$1(name, fn) {
+ return (args = {}, ...rest) => {
+ if (hasCallback(args)) {
+ return wrapperReturnValue(name, invokeApi(name, fn, args, rest));
+ }
+ return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
+ invokeApi(name, fn, extend(args, { success: resolve2, fail: reject }), rest);
+ })));
+ };
+}
+function formatApiArgs(args, options) {
+ args[0];
+ {
+ return;
+ }
+}
+function invokeSuccess(id, name, res) {
+ const result = {
+ errMsg: name + ":ok"
+ };
+ return invokeCallback(id, extend(res || {}, result));
+}
+function invokeFail(id, name, errMsg, errRes = {}) {
+ const apiErrMsg = name + ":fail" + (errMsg ? " " + errMsg : "");
+ delete errRes.errCode;
+ let res = extend({ errMsg: apiErrMsg }, errRes);
+ return invokeCallback(id, res);
+}
+function beforeInvokeApi(name, args, protocol, options) {
+ {
+ validateProtocols(name, args, protocol);
+ }
+ const errMsg = formatApiArgs(args);
+ if (errMsg) {
+ return errMsg;
+ }
+}
+function normalizeErrMsg(errMsg) {
+ if (!errMsg || isString(errMsg)) {
+ return errMsg;
+ }
+ if (errMsg.stack) {
+ console.error(errMsg.message + LINEFEED + errMsg.stack);
+ return errMsg.message;
+ }
+ return errMsg;
+}
+function wrapperTaskApi(name, fn, protocol, options) {
+ return (args) => {
+ const id = createAsyncApiCallback(name, args, options);
+ const errMsg = beforeInvokeApi(name, [args], protocol);
+ if (errMsg) {
+ return invokeFail(id, name, errMsg);
+ }
+ return fn(args, {
+ resolve: (res) => invokeSuccess(id, name, res),
+ reject: (errMsg2, errRes) => invokeFail(id, name, normalizeErrMsg(errMsg2), errRes)
+ });
+ };
+}
+function wrapperSyncApi(name, fn, protocol, options) {
+ return (...args) => {
+ const errMsg = beforeInvokeApi(name, args, protocol);
+ if (errMsg) {
+ throw new Error(errMsg);
+ }
+ return fn.apply(null, args);
+ };
+}
+function wrapperAsyncApi(name, fn, protocol, options) {
+ return wrapperTaskApi(name, fn, protocol, options);
+}
+function defineSyncApi(name, fn, protocol, options) {
+ return wrapperSyncApi(name, fn, protocol);
+}
+function defineAsyncApi(name, fn, protocol, options) {
+ return promisify$1(name, wrapperAsyncApi(name, fn, protocol, options));
+}
+const API_UPX2PX = "upx2px";
+const Upx2pxProtocol = [
+ {
+ name: "upx",
+ type: [Number, String],
+ required: true
+ }
+];
+const EPS = 1e-4;
+const BASE_DEVICE_WIDTH = 750;
+let isIOS = false;
+let deviceWidth = 0;
+let deviceDPR = 0;
+function checkDeviceWidth() {
+ const { platform, pixelRatio, windowWidth } = getBaseSystemInfo();
+ deviceWidth = windowWidth;
+ deviceDPR = pixelRatio;
+ isIOS = platform === "ios";
+}
+const upx2px = defineSyncApi(API_UPX2PX, (number, newDeviceWidth) => {
+ if (deviceWidth === 0) {
+ checkDeviceWidth();
+ }
+ number = Number(number);
+ if (number === 0) {
+ return 0;
+ }
+ let width = newDeviceWidth || deviceWidth;
+ let result = number / BASE_DEVICE_WIDTH * width;
+ if (result < 0) {
+ result = -result;
+ }
+ result = Math.floor(result + EPS);
+ if (result === 0) {
+ if (deviceDPR === 1 || !isIOS) {
+ result = 1;
+ } else {
+ result = 0.5;
+ }
+ }
+ return number < 0 ? -result : result;
+}, Upx2pxProtocol);
+const API_ADD_INTERCEPTOR = "addInterceptor";
+const API_REMOVE_INTERCEPTOR = "removeInterceptor";
+const AddInterceptorProtocol = [
+ {
+ name: "method",
+ type: [String, Object],
+ required: true
+ }
+];
+const RemoveInterceptorProtocol = AddInterceptorProtocol;
+function mergeInterceptorHook(interceptors2, interceptor) {
+ Object.keys(interceptor).forEach((hook) => {
+ if (isFunction(interceptor[hook])) {
+ interceptors2[hook] = mergeHook(interceptors2[hook], interceptor[hook]);
+ }
+ });
+}
+function removeInterceptorHook(interceptors2, interceptor) {
+ if (!interceptors2 || !interceptor) {
+ return;
+ }
+ Object.keys(interceptor).forEach((name) => {
+ const hooks = interceptors2[name];
+ const hook = interceptor[name];
+ if (isArray$1(hooks) && isFunction(hook)) {
+ remove(hooks, hook);
+ }
+ });
+}
+function mergeHook(parentVal, childVal) {
+ const res = childVal ? parentVal ? parentVal.concat(childVal) : isArray$1(childVal) ? childVal : [childVal] : parentVal;
+ return res ? dedupeHooks(res) : res;
+}
+function dedupeHooks(hooks) {
+ const res = [];
+ for (let i2 = 0; i2 < hooks.length; i2++) {
+ if (res.indexOf(hooks[i2]) === -1) {
+ res.push(hooks[i2]);
+ }
+ }
+ return res;
+}
+const addInterceptor = defineSyncApi(API_ADD_INTERCEPTOR, (method, interceptor) => {
+ if (isString(method) && isPlainObject$2(interceptor)) {
+ mergeInterceptorHook(scopedInterceptors[method] || (scopedInterceptors[method] = {}), interceptor);
+ } else if (isPlainObject$2(method)) {
+ mergeInterceptorHook(globalInterceptors, method);
+ }
+}, AddInterceptorProtocol);
+const removeInterceptor = defineSyncApi(API_REMOVE_INTERCEPTOR, (method, interceptor) => {
+ if (isString(method)) {
+ if (isPlainObject$2(interceptor)) {
+ removeInterceptorHook(scopedInterceptors[method], interceptor);
+ } else {
+ delete scopedInterceptors[method];
+ }
+ } else if (isPlainObject$2(method)) {
+ removeInterceptorHook(globalInterceptors, method);
+ }
+}, RemoveInterceptorProtocol);
+const interceptors = {};
+const API_ON = "$on";
+const OnProtocol = [
+ {
+ name: "event",
+ type: String,
+ required: true
+ },
+ {
+ name: "callback",
+ type: Function,
+ required: true
+ }
+];
+const API_ONCE = "$once";
+const OnceProtocol = OnProtocol;
+const API_OFF = "$off";
+const OffProtocol = [
+ {
+ name: "event",
+ type: [String, Array]
+ },
+ {
+ name: "callback",
+ type: Function
+ }
+];
+const API_EMIT = "$emit";
+const EmitProtocol = [
+ {
+ name: "event",
+ type: String,
+ required: true
+ }
+];
+const emitter = new E$1$1();
+const $on = defineSyncApi(API_ON, (name, callback) => {
+ emitter.on(name, callback);
+ return () => emitter.off(name, callback);
+}, OnProtocol);
+const $once = defineSyncApi(API_ONCE, (name, callback) => {
+ emitter.once(name, callback);
+ return () => emitter.off(name, callback);
+}, OnceProtocol);
+const $off = defineSyncApi(API_OFF, (name, callback) => {
+ if (!name) {
+ emitter.e = {};
+ return;
+ }
+ if (!isArray$1(name))
+ name = [name];
+ name.forEach((n2) => emitter.off(n2, callback));
+}, OffProtocol);
+const $emit = defineSyncApi(API_EMIT, (name, ...args) => {
+ emitter.emit(name, ...args);
+}, EmitProtocol);
+let cid;
+let cidErrMsg;
+let enabled;
+function normalizePushMessage(message) {
+ try {
+ return JSON.parse(message);
+ } catch (e2) {
+ }
+ return message;
+}
+function invokePushCallback(args) {
+ if (args.type === "enabled") {
+ enabled = true;
+ } else if (args.type === "clientId") {
+ cid = args.cid;
+ cidErrMsg = args.errMsg;
+ invokeGetPushCidCallbacks(cid, args.errMsg);
+ } else if (args.type === "pushMsg") {
+ const message = {
+ type: "receive",
+ data: normalizePushMessage(args.message)
+ };
+ for (let i2 = 0; i2 < onPushMessageCallbacks.length; i2++) {
+ const callback = onPushMessageCallbacks[i2];
+ callback(message);
+ if (message.stopped) {
+ break;
+ }
+ }
+ } else if (args.type === "click") {
+ onPushMessageCallbacks.forEach((callback) => {
+ callback({
+ type: "click",
+ data: normalizePushMessage(args.message)
+ });
+ });
+ }
+}
+const getPushCidCallbacks = [];
+function invokeGetPushCidCallbacks(cid2, errMsg) {
+ getPushCidCallbacks.forEach((callback) => {
+ callback(cid2, errMsg);
+ });
+ getPushCidCallbacks.length = 0;
+}
+const API_GET_PUSH_CLIENT_ID = "getPushClientId";
+const getPushClientId = defineAsyncApi(API_GET_PUSH_CLIENT_ID, (_2, { resolve: resolve2, reject }) => {
+ Promise.resolve().then(() => {
+ if (typeof enabled === "undefined") {
+ enabled = false;
+ cid = "";
+ cidErrMsg = "uniPush is not enabled";
+ }
+ getPushCidCallbacks.push((cid2, errMsg) => {
+ if (cid2) {
+ resolve2({ cid: cid2 });
+ } else {
+ reject(errMsg);
+ }
+ });
+ if (typeof cid !== "undefined") {
+ invokeGetPushCidCallbacks(cid, cidErrMsg);
+ }
+ });
+});
+const onPushMessageCallbacks = [];
+const onPushMessage = (fn) => {
+ if (onPushMessageCallbacks.indexOf(fn) === -1) {
+ onPushMessageCallbacks.push(fn);
+ }
+};
+const offPushMessage = (fn) => {
+ if (!fn) {
+ onPushMessageCallbacks.length = 0;
+ } else {
+ const index2 = onPushMessageCallbacks.indexOf(fn);
+ if (index2 > -1) {
+ onPushMessageCallbacks.splice(index2, 1);
+ }
+ }
+};
+const SYNC_API_RE = /^\$|getLocale|setLocale|sendNativeEvent|restoreGlobal|requireGlobal|getCurrentSubNVue|getMenuButtonBoundingClientRect|^report|interceptors|Interceptor$|getSubNVueById|requireNativePlugin|upx2px|hideKeyboard|canIUse|^create|Sync$|Manager$|base64ToArrayBuffer|arrayBufferToBase64|getDeviceInfo|getAppBaseInfo|getWindowInfo|getSystemSetting|getAppAuthorizeSetting/;
+const CONTEXT_API_RE = /^create|Manager$/;
+const CONTEXT_API_RE_EXC = ["createBLEConnection"];
+const ASYNC_API = ["createBLEConnection"];
+const CALLBACK_API_RE = /^on|^off/;
+function isContextApi(name) {
+ return CONTEXT_API_RE.test(name) && CONTEXT_API_RE_EXC.indexOf(name) === -1;
+}
+function isSyncApi(name) {
+ return SYNC_API_RE.test(name) && ASYNC_API.indexOf(name) === -1;
+}
+function isCallbackApi(name) {
+ return CALLBACK_API_RE.test(name) && name !== "onPush";
+}
+function shouldPromise(name) {
+ if (isContextApi(name) || isSyncApi(name) || isCallbackApi(name)) {
+ return false;
+ }
+ return true;
+}
+if (!Promise.prototype.finally) {
+ Promise.prototype.finally = function(onfinally) {
+ const promise = this.constructor;
+ return this.then((value) => promise.resolve(onfinally && onfinally()).then(() => value), (reason) => promise.resolve(onfinally && onfinally()).then(() => {
+ throw reason;
+ }));
+ };
+}
+function promisify(name, api) {
+ if (!shouldPromise(name)) {
+ return api;
+ }
+ if (!isFunction(api)) {
+ return api;
+ }
+ return function promiseApi(options = {}, ...rest) {
+ if (isFunction(options.success) || isFunction(options.fail) || isFunction(options.complete)) {
+ return wrapperReturnValue(name, invokeApi(name, api, options, rest));
+ }
+ return wrapperReturnValue(name, handlePromise(new Promise((resolve2, reject) => {
+ invokeApi(name, api, extend({}, options, {
+ success: resolve2,
+ fail: reject
+ }), rest);
+ })));
+ };
+}
+const CALLBACKS = ["success", "fail", "cancel", "complete"];
+function initWrapper(protocols2) {
+ function processCallback(methodName, method, returnValue) {
+ return function(res) {
+ return method(processReturnValue(methodName, res, returnValue));
+ };
+ }
+ function processArgs(methodName, fromArgs, argsOption = {}, returnValue = {}, keepFromArgs = false) {
+ if (isPlainObject$2(fromArgs)) {
+ const toArgs = keepFromArgs === true ? fromArgs : {};
+ if (isFunction(argsOption)) {
+ argsOption = argsOption(fromArgs, toArgs) || {};
+ }
+ for (const key in fromArgs) {
+ if (hasOwn$1(argsOption, key)) {
+ let keyOption = argsOption[key];
+ if (isFunction(keyOption)) {
+ keyOption = keyOption(fromArgs[key], fromArgs, toArgs);
+ }
+ if (!keyOption) {
+ console.warn(`微信小程序 ${methodName} 暂不支持 ${key}`);
+ } else if (isString(keyOption)) {
+ toArgs[keyOption] = fromArgs[key];
+ } else if (isPlainObject$2(keyOption)) {
+ toArgs[keyOption.name ? keyOption.name : key] = keyOption.value;
+ }
+ } else if (CALLBACKS.indexOf(key) !== -1) {
+ const callback = fromArgs[key];
+ if (isFunction(callback)) {
+ toArgs[key] = processCallback(methodName, callback, returnValue);
+ }
+ } else {
+ if (!keepFromArgs && !hasOwn$1(toArgs, key)) {
+ toArgs[key] = fromArgs[key];
+ }
+ }
+ }
+ return toArgs;
+ } else if (isFunction(fromArgs)) {
+ fromArgs = processCallback(methodName, fromArgs, returnValue);
+ }
+ return fromArgs;
+ }
+ function processReturnValue(methodName, res, returnValue, keepReturnValue = false) {
+ if (isFunction(protocols2.returnValue)) {
+ res = protocols2.returnValue(methodName, res);
+ }
+ return processArgs(methodName, res, returnValue, {}, keepReturnValue);
+ }
+ return function wrapper(methodName, method) {
+ if (!hasOwn$1(protocols2, methodName)) {
+ return method;
+ }
+ const protocol = protocols2[methodName];
+ if (!protocol) {
+ return function() {
+ console.error(`微信小程序 暂不支持${methodName}`);
+ };
+ }
+ return function(arg1, arg2) {
+ let options = protocol;
+ if (isFunction(protocol)) {
+ options = protocol(arg1);
+ }
+ arg1 = processArgs(methodName, arg1, options.args, options.returnValue);
+ const args = [arg1];
+ if (typeof arg2 !== "undefined") {
+ args.push(arg2);
+ }
+ const returnValue = wx[options.name || methodName].apply(wx, args);
+ if (isSyncApi(methodName)) {
+ return processReturnValue(methodName, returnValue, options.returnValue, isContextApi(methodName));
+ }
+ return returnValue;
+ };
+ };
+}
+const getLocale = () => {
+ const app = isFunction(getApp) && getApp({ allowDefault: true });
+ if (app && app.$vm) {
+ return app.$vm.$locale;
+ }
+ return normalizeLocale(wx.getSystemInfoSync().language) || LOCALE_EN;
+};
+const setLocale = (locale) => {
+ const app = isFunction(getApp) && getApp();
+ if (!app) {
+ return false;
+ }
+ const oldLocale = app.$vm.$locale;
+ if (oldLocale !== locale) {
+ app.$vm.$locale = locale;
+ onLocaleChangeCallbacks.forEach((fn) => fn({ locale }));
+ return true;
+ }
+ return false;
+};
+const onLocaleChangeCallbacks = [];
+const onLocaleChange = (fn) => {
+ if (onLocaleChangeCallbacks.indexOf(fn) === -1) {
+ onLocaleChangeCallbacks.push(fn);
+ }
+};
+if (typeof global !== "undefined") {
+ global.getLocale = getLocale;
+}
+const UUID_KEY = "__DC_STAT_UUID";
+let deviceId;
+function useDeviceId(global2 = wx) {
+ return function addDeviceId(_2, toRes) {
+ deviceId = deviceId || global2.getStorageSync(UUID_KEY);
+ if (!deviceId) {
+ deviceId = Date.now() + "" + Math.floor(Math.random() * 1e7);
+ wx.setStorage({
+ key: UUID_KEY,
+ data: deviceId
+ });
+ }
+ toRes.deviceId = deviceId;
+ };
+}
+function addSafeAreaInsets(fromRes, toRes) {
+ if (fromRes.safeArea) {
+ const safeArea = fromRes.safeArea;
+ toRes.safeAreaInsets = {
+ top: safeArea.top,
+ left: safeArea.left,
+ right: fromRes.windowWidth - safeArea.right,
+ bottom: fromRes.screenHeight - safeArea.bottom
+ };
+ }
+}
+function populateParameters(fromRes, toRes) {
+ const { brand = "", model = "", system = "", language = "", theme, version: version2, platform, fontSizeSetting, SDKVersion, pixelRatio, deviceOrientation } = fromRes;
+ let osName = "";
+ let osVersion = "";
+ {
+ osName = system.split(" ")[0] || "";
+ osVersion = system.split(" ")[1] || "";
+ }
+ let hostVersion = version2;
+ let deviceType = getGetDeviceType(fromRes, model);
+ let deviceBrand = getDeviceBrand(brand);
+ let _hostName = getHostName(fromRes);
+ let _deviceOrientation = deviceOrientation;
+ let _devicePixelRatio = pixelRatio;
+ let _SDKVersion = SDKVersion;
+ const hostLanguage = language.replace(/_/g, "-");
+ const parameters = {
+ appId: "__UNI__4E11CD0",
+ appName: "广西体育中心",
+ appVersion: "1.0.2",
+ appVersionCode: "100",
+ appLanguage: getAppLanguage(hostLanguage),
+ uniCompileVersion: "4.15",
+ uniRuntimeVersion: "4.15",
+ uniPlatform: "mp-weixin",
+ deviceBrand,
+ deviceModel: model,
+ deviceType,
+ devicePixelRatio: _devicePixelRatio,
+ deviceOrientation: _deviceOrientation,
+ osName: osName.toLocaleLowerCase(),
+ osVersion,
+ hostTheme: theme,
+ hostVersion,
+ hostLanguage,
+ hostName: _hostName,
+ hostSDKVersion: _SDKVersion,
+ hostFontSizeSetting: fontSizeSetting,
+ windowTop: 0,
+ windowBottom: 0,
+ // TODO
+ osLanguage: void 0,
+ osTheme: void 0,
+ ua: void 0,
+ hostPackageName: void 0,
+ browserName: void 0,
+ browserVersion: void 0
+ };
+ extend(toRes, parameters);
+}
+function getGetDeviceType(fromRes, model) {
+ let deviceType = fromRes.deviceType || "phone";
+ {
+ const deviceTypeMaps = {
+ ipad: "pad",
+ windows: "pc",
+ mac: "pc"
+ };
+ const deviceTypeMapsKeys = Object.keys(deviceTypeMaps);
+ const _model = model.toLocaleLowerCase();
+ for (let index2 = 0; index2 < deviceTypeMapsKeys.length; index2++) {
+ const _m = deviceTypeMapsKeys[index2];
+ if (_model.indexOf(_m) !== -1) {
+ deviceType = deviceTypeMaps[_m];
+ break;
+ }
+ }
+ }
+ return deviceType;
+}
+function getDeviceBrand(brand) {
+ let deviceBrand = brand;
+ if (deviceBrand) {
+ deviceBrand = deviceBrand.toLocaleLowerCase();
+ }
+ return deviceBrand;
+}
+function getAppLanguage(defaultLanguage) {
+ return getLocale ? getLocale() : defaultLanguage;
+}
+function getHostName(fromRes) {
+ const _platform = "WeChat";
+ let _hostName = fromRes.hostName || _platform;
+ {
+ if (fromRes.environment) {
+ _hostName = fromRes.environment;
+ } else if (fromRes.host && fromRes.host.env) {
+ _hostName = fromRes.host.env;
+ }
+ }
+ return _hostName;
+}
+const getSystemInfo = {
+ returnValue: (fromRes, toRes) => {
+ addSafeAreaInsets(fromRes, toRes);
+ useDeviceId()(fromRes, toRes);
+ populateParameters(fromRes, toRes);
+ }
+};
+const getSystemInfoSync = getSystemInfo;
+const redirectTo = {};
+const previewImage = {
+ args(fromArgs, toArgs) {
+ let currentIndex = parseInt(fromArgs.current);
+ if (isNaN(currentIndex)) {
+ return;
+ }
+ const urls = fromArgs.urls;
+ if (!isArray$1(urls)) {
+ return;
+ }
+ const len = urls.length;
+ if (!len) {
+ return;
+ }
+ if (currentIndex < 0) {
+ currentIndex = 0;
+ } else if (currentIndex >= len) {
+ currentIndex = len - 1;
+ }
+ if (currentIndex > 0) {
+ toArgs.current = urls[currentIndex];
+ toArgs.urls = urls.filter((item, index2) => index2 < currentIndex ? item !== urls[currentIndex] : true);
+ } else {
+ toArgs.current = urls[0];
+ }
+ return {
+ indicator: false,
+ loop: false
+ };
+ }
+};
+const showActionSheet = {
+ args(fromArgs, toArgs) {
+ toArgs.alertText = fromArgs.title;
+ }
+};
+const getDeviceInfo = {
+ returnValue: (fromRes, toRes) => {
+ const { brand, model } = fromRes;
+ let deviceType = getGetDeviceType(fromRes, model);
+ let deviceBrand = getDeviceBrand(brand);
+ useDeviceId()(fromRes, toRes);
+ toRes = sortObject(extend(toRes, {
+ deviceType,
+ deviceBrand,
+ deviceModel: model
+ }));
+ }
+};
+const getAppBaseInfo = {
+ returnValue: (fromRes, toRes) => {
+ const { version: version2, language, SDKVersion, theme } = fromRes;
+ let _hostName = getHostName(fromRes);
+ let hostLanguage = language.replace(/_/g, "-");
+ toRes = sortObject(extend(toRes, {
+ hostVersion: version2,
+ hostLanguage,
+ hostName: _hostName,
+ hostSDKVersion: SDKVersion,
+ hostTheme: theme,
+ appId: "__UNI__4E11CD0",
+ appName: "广西体育中心",
+ appVersion: "1.0.2",
+ appVersionCode: "100",
+ appLanguage: getAppLanguage(hostLanguage)
+ }));
+ }
+};
+const getWindowInfo = {
+ returnValue: (fromRes, toRes) => {
+ addSafeAreaInsets(fromRes, toRes);
+ toRes = sortObject(extend(toRes, {
+ windowTop: 0,
+ windowBottom: 0
+ }));
+ }
+};
+const getAppAuthorizeSetting = {
+ returnValue: function(fromRes, toRes) {
+ const { locationReducedAccuracy } = fromRes;
+ toRes.locationAccuracy = "unsupported";
+ if (locationReducedAccuracy === true) {
+ toRes.locationAccuracy = "reduced";
+ } else if (locationReducedAccuracy === false) {
+ toRes.locationAccuracy = "full";
+ }
+ }
+};
+const baseApis = {
+ $on,
+ $off,
+ $once,
+ $emit,
+ upx2px,
+ interceptors,
+ addInterceptor,
+ removeInterceptor,
+ onCreateVueApp,
+ invokeCreateVueAppHook,
+ getLocale,
+ setLocale,
+ onLocaleChange,
+ getPushClientId,
+ onPushMessage,
+ offPushMessage,
+ invokePushCallback
+};
+function initUni(api, protocols2, platform = wx) {
+ const wrapper = initWrapper(protocols2);
+ const UniProxyHandlers = {
+ get(target, key) {
+ if (hasOwn$1(target, key)) {
+ return target[key];
+ }
+ if (hasOwn$1(api, key)) {
+ return promisify(key, api[key]);
+ }
+ if (hasOwn$1(baseApis, key)) {
+ return promisify(key, baseApis[key]);
+ }
+ return promisify(key, wrapper(key, platform[key]));
+ }
+ };
+ return new Proxy({}, UniProxyHandlers);
+}
+function initGetProvider(providers) {
+ return function getProvider2({ service, success, fail, complete }) {
+ let res;
+ if (providers[service]) {
+ res = {
+ errMsg: "getProvider:ok",
+ service,
+ provider: providers[service]
+ };
+ isFunction(success) && success(res);
+ } else {
+ res = {
+ errMsg: "getProvider:fail:服务[" + service + "]不存在"
+ };
+ isFunction(fail) && fail(res);
+ }
+ isFunction(complete) && complete(res);
+ };
+}
+const objectKeys = [
+ "qy",
+ "env",
+ "error",
+ "version",
+ "lanDebug",
+ "cloud",
+ "serviceMarket",
+ "router",
+ "worklet",
+ "__webpack_require_UNI_MP_PLUGIN__"
+];
+const singlePageDisableKey = ["lanDebug", "router", "worklet"];
+const launchOption = wx.getLaunchOptionsSync ? wx.getLaunchOptionsSync() : null;
+function isWxKey(key) {
+ if (launchOption && launchOption.scene === 1154 && singlePageDisableKey.includes(key)) {
+ return false;
+ }
+ return objectKeys.indexOf(key) > -1 || typeof wx[key] === "function";
+}
+function initWx() {
+ const newWx = {};
+ for (const key in wx) {
+ if (isWxKey(key)) {
+ newWx[key] = wx[key];
+ }
+ }
+ if (typeof globalThis !== "undefined" && typeof requireMiniProgram === "undefined") {
+ globalThis.wx = newWx;
+ }
+ return newWx;
+}
+const mocks$1 = ["__route__", "__wxExparserNodeId__", "__wxWebviewId__"];
+const getProvider = initGetProvider({
+ oauth: ["weixin"],
+ share: ["weixin"],
+ payment: ["wxpay"],
+ push: ["weixin"]
+});
+function initComponentMocks(component) {
+ const res = /* @__PURE__ */ Object.create(null);
+ mocks$1.forEach((name) => {
+ res[name] = component[name];
+ });
+ return res;
+}
+function createSelectorQuery() {
+ const query = wx$2.createSelectorQuery();
+ const oldIn = query.in;
+ query.in = function newIn(component) {
+ return oldIn.call(this, initComponentMocks(component));
+ };
+ return query;
+}
+const wx$2 = initWx();
+let baseInfo = wx$2.getAppBaseInfo && wx$2.getAppBaseInfo();
+if (!baseInfo) {
+ baseInfo = wx$2.getSystemInfoSync();
+}
+const host = baseInfo ? baseInfo.host : null;
+const shareVideoMessage = host && host.env === "SAAASDK" ? wx$2.miniapp.shareVideoMessage : wx$2.shareVideoMessage;
+var shims = /* @__PURE__ */ Object.freeze({
+ __proto__: null,
+ createSelectorQuery,
+ getProvider,
+ shareVideoMessage
+});
+const compressImage = {
+ args(fromArgs, toArgs) {
+ if (fromArgs.compressedHeight && !toArgs.compressHeight) {
+ toArgs.compressHeight = fromArgs.compressedHeight;
+ }
+ if (fromArgs.compressedWidth && !toArgs.compressWidth) {
+ toArgs.compressWidth = fromArgs.compressedWidth;
+ }
+ }
+};
+var protocols = /* @__PURE__ */ Object.freeze({
+ __proto__: null,
+ compressImage,
+ getAppAuthorizeSetting,
+ getAppBaseInfo,
+ getDeviceInfo,
+ getSystemInfo,
+ getSystemInfoSync,
+ getWindowInfo,
+ previewImage,
+ redirectTo,
+ showActionSheet
+});
+const wx$1 = initWx();
+var index = initUni(shims, protocols, wx$1);
+new Set(
+ /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol)
+);
+function toRaw$1(observed) {
+ const raw = observed && observed["__v_raw"];
+ return raw ? toRaw$1(raw) : observed;
+}
+function isRef$1(r2) {
+ return !!(r2 && r2.__v_isRef === true);
+}
+/**
+* @vue/runtime-core v3.4.21
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/
+const stack$1 = [];
+function pushWarningContext$1(vnode) {
+ stack$1.push(vnode);
+}
+function popWarningContext$1() {
+ stack$1.pop();
+}
+function warn$1$1(msg, ...args) {
+ const instance = stack$1.length ? stack$1[stack$1.length - 1].component : null;
+ const appWarnHandler = instance && instance.appContext.config.warnHandler;
+ const trace = getComponentTrace$1();
+ if (appWarnHandler) {
+ callWithErrorHandling$1(
+ appWarnHandler,
+ instance,
+ 11,
+ [
+ msg + args.map((a2) => {
+ var _a, _b;
+ return (_b = (_a = a2.toString) == null ? void 0 : _a.call(a2)) != null ? _b : JSON.stringify(a2);
+ }).join(""),
+ instance && instance.proxy,
+ trace.map(
+ ({ vnode }) => `at <${formatComponentName$1(instance, vnode.type)}>`
+ ).join("\n"),
+ trace
+ ]
+ );
+ } else {
+ const warnArgs = [`[Vue warn]: ${msg}`, ...args];
+ if (trace.length && // avoid spamming console during tests
+ true) {
+ warnArgs.push(`
+`, ...formatTrace$1(trace));
+ }
+ console.warn(...warnArgs);
+ }
+}
+function getComponentTrace$1() {
+ let currentVNode = stack$1[stack$1.length - 1];
+ if (!currentVNode) {
+ return [];
+ }
+ const normalizedStack = [];
+ while (currentVNode) {
+ const last = normalizedStack[0];
+ if (last && last.vnode === currentVNode) {
+ last.recurseCount++;
+ } else {
+ normalizedStack.push({
+ vnode: currentVNode,
+ recurseCount: 0
+ });
+ }
+ const parentInstance = currentVNode.component && currentVNode.component.parent;
+ currentVNode = parentInstance && parentInstance.vnode;
+ }
+ return normalizedStack;
+}
+function formatTrace$1(trace) {
+ const logs = [];
+ trace.forEach((entry, i2) => {
+ logs.push(...i2 === 0 ? [] : [`
+`], ...formatTraceEntry$1(entry));
+ });
+ return logs;
+}
+function formatTraceEntry$1({ vnode, recurseCount }) {
+ const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;
+ const isRoot = vnode.component ? vnode.component.parent == null : false;
+ const open = ` at <${formatComponentName$1(
+ vnode.component,
+ vnode.type,
+ isRoot
+ )}`;
+ const close = `>` + postfix;
+ return vnode.props ? [open, ...formatProps$1(vnode.props), close] : [open + close];
+}
+function formatProps$1(props) {
+ const res = [];
+ const keys = Object.keys(props);
+ keys.slice(0, 3).forEach((key) => {
+ res.push(...formatProp$1(key, props[key]));
+ });
+ if (keys.length > 3) {
+ res.push(` ...`);
+ }
+ return res;
+}
+function formatProp$1(key, value, raw) {
+ if (isString(value)) {
+ value = JSON.stringify(value);
+ return raw ? value : [`${key}=${value}`];
+ } else if (typeof value === "number" || typeof value === "boolean" || value == null) {
+ return raw ? value : [`${key}=${value}`];
+ } else if (isRef$1(value)) {
+ value = formatProp$1(key, toRaw$1(value.value), true);
+ return raw ? value : [`${key}=Ref<`, value, `>`];
+ } else if (isFunction(value)) {
+ return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];
+ } else {
+ value = toRaw$1(value);
+ return raw ? value : [`${key}=`, value];
+ }
+}
+const ErrorTypeStrings$1 = {
+ ["sp"]: "serverPrefetch hook",
+ ["bc"]: "beforeCreate hook",
+ ["c"]: "created hook",
+ ["bm"]: "beforeMount hook",
+ ["m"]: "mounted hook",
+ ["bu"]: "beforeUpdate hook",
+ ["u"]: "updated",
+ ["bum"]: "beforeUnmount hook",
+ ["um"]: "unmounted hook",
+ ["a"]: "activated hook",
+ ["da"]: "deactivated hook",
+ ["ec"]: "errorCaptured hook",
+ ["rtc"]: "renderTracked hook",
+ ["rtg"]: "renderTriggered hook",
+ [0]: "setup function",
+ [1]: "render function",
+ [2]: "watcher getter",
+ [3]: "watcher callback",
+ [4]: "watcher cleanup function",
+ [5]: "native event handler",
+ [6]: "component event handler",
+ [7]: "vnode hook",
+ [8]: "directive hook",
+ [9]: "transition hook",
+ [10]: "app errorHandler",
+ [11]: "app warnHandler",
+ [12]: "ref function",
+ [13]: "async component loader",
+ [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."
+};
+function callWithErrorHandling$1(fn, instance, type, args) {
+ try {
+ return args ? fn(...args) : fn();
+ } catch (err) {
+ handleError$1(err, instance, type);
+ }
+}
+function handleError$1(err, instance, type, throwInDev = true) {
+ const contextVNode = instance ? instance.vnode : null;
+ if (instance) {
+ let cur = instance.parent;
+ const exposedInstance = instance.proxy;
+ const errorInfo = ErrorTypeStrings$1[type];
+ while (cur) {
+ const errorCapturedHooks = cur.ec;
+ if (errorCapturedHooks) {
+ for (let i2 = 0; i2 < errorCapturedHooks.length; i2++) {
+ if (errorCapturedHooks[i2](err, exposedInstance, errorInfo) === false) {
+ return;
+ }
+ }
+ }
+ cur = cur.parent;
+ }
+ const appErrorHandler = instance.appContext.config.errorHandler;
+ if (appErrorHandler) {
+ callWithErrorHandling$1(
+ appErrorHandler,
+ null,
+ 10,
+ [err, exposedInstance, errorInfo]
+ );
+ return;
+ }
+ }
+ logError$1(err, type, contextVNode, throwInDev);
+}
+function logError$1(err, type, contextVNode, throwInDev = true) {
+ {
+ const info = ErrorTypeStrings$1[type];
+ if (contextVNode) {
+ pushWarningContext$1(contextVNode);
+ }
+ warn$1$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
+ if (contextVNode) {
+ popWarningContext$1();
+ }
+ if (throwInDev) {
+ throw err;
+ } else {
+ console.error(err);
+ }
+ }
+}
+let isFlushing$1 = false;
+let isFlushPending$1 = false;
+const queue$1 = [];
+let flushIndex$1 = 0;
+const pendingPostFlushCbs$1 = [];
+let activePostFlushCbs$1 = null;
+let postFlushIndex$1 = 0;
+const resolvedPromise$1 = /* @__PURE__ */ Promise.resolve();
+const RECURSION_LIMIT$1 = 100;
+function findInsertionIndex$1(id) {
+ let start = flushIndex$1 + 1;
+ let end = queue$1.length;
+ while (start < end) {
+ const middle = start + end >>> 1;
+ const middleJob = queue$1[middle];
+ const middleJobId = getId$1(middleJob);
+ if (middleJobId < id || middleJobId === id && middleJob.pre) {
+ start = middle + 1;
+ } else {
+ end = middle;
+ }
+ }
+ return start;
+}
+function queueJob$1(job) {
+ if (!queue$1.length || !queue$1.includes(
+ job,
+ isFlushing$1 && job.allowRecurse ? flushIndex$1 + 1 : flushIndex$1
+ )) {
+ if (job.id == null) {
+ queue$1.push(job);
+ } else {
+ queue$1.splice(findInsertionIndex$1(job.id), 0, job);
+ }
+ queueFlush$1();
+ }
+}
+function queueFlush$1() {
+ if (!isFlushing$1 && !isFlushPending$1) {
+ isFlushPending$1 = true;
+ resolvedPromise$1.then(flushJobs$1);
+ }
+}
+function queuePostFlushCb$1(cb) {
+ if (!isArray$1(cb)) {
+ if (!activePostFlushCbs$1 || !activePostFlushCbs$1.includes(
+ cb,
+ cb.allowRecurse ? postFlushIndex$1 + 1 : postFlushIndex$1
+ )) {
+ pendingPostFlushCbs$1.push(cb);
+ }
+ } else {
+ pendingPostFlushCbs$1.push(...cb);
+ }
+ queueFlush$1();
+}
+function flushPostFlushCbs$1(seen) {
+ if (pendingPostFlushCbs$1.length) {
+ const deduped = [...new Set(pendingPostFlushCbs$1)].sort(
+ (a2, b2) => getId$1(a2) - getId$1(b2)
+ );
+ pendingPostFlushCbs$1.length = 0;
+ if (activePostFlushCbs$1) {
+ activePostFlushCbs$1.push(...deduped);
+ return;
+ }
+ activePostFlushCbs$1 = deduped;
+ {
+ seen = seen || /* @__PURE__ */ new Map();
+ }
+ for (postFlushIndex$1 = 0; postFlushIndex$1 < activePostFlushCbs$1.length; postFlushIndex$1++) {
+ if (checkRecursiveUpdates$1(seen, activePostFlushCbs$1[postFlushIndex$1])) {
+ continue;
+ }
+ activePostFlushCbs$1[postFlushIndex$1]();
+ }
+ activePostFlushCbs$1 = null;
+ postFlushIndex$1 = 0;
+ }
+}
+const getId$1 = (job) => job.id == null ? Infinity : job.id;
+const comparator$1 = (a2, b2) => {
+ const diff2 = getId$1(a2) - getId$1(b2);
+ if (diff2 === 0) {
+ if (a2.pre && !b2.pre)
+ return -1;
+ if (b2.pre && !a2.pre)
+ return 1;
+ }
+ return diff2;
+};
+function flushJobs$1(seen) {
+ isFlushPending$1 = false;
+ isFlushing$1 = true;
+ {
+ seen = seen || /* @__PURE__ */ new Map();
+ }
+ queue$1.sort(comparator$1);
+ const check = (job) => checkRecursiveUpdates$1(seen, job);
+ try {
+ for (flushIndex$1 = 0; flushIndex$1 < queue$1.length; flushIndex$1++) {
+ const job = queue$1[flushIndex$1];
+ if (job && job.active !== false) {
+ if (check(job)) {
+ continue;
+ }
+ callWithErrorHandling$1(job, null, 14);
+ }
+ }
+ } finally {
+ flushIndex$1 = 0;
+ queue$1.length = 0;
+ flushPostFlushCbs$1(seen);
+ isFlushing$1 = false;
+ if (queue$1.length || pendingPostFlushCbs$1.length) {
+ flushJobs$1(seen);
+ }
+ }
+}
+function checkRecursiveUpdates$1(seen, fn) {
+ if (!seen.has(fn)) {
+ seen.set(fn, 1);
+ } else {
+ const count = seen.get(fn);
+ if (count > RECURSION_LIMIT$1) {
+ const instance = fn.ownerInstance;
+ const componentName = instance && getComponentName$1(instance.type);
+ handleError$1(
+ `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,
+ null,
+ 10
+ );
+ return true;
+ } else {
+ seen.set(fn, count + 1);
+ }
+ }
+}
+const hmrDirtyComponents = /* @__PURE__ */ new Set();
+{
+ getGlobalThis().__VUE_HMR_RUNTIME__ = {
+ createRecord: tryWrap(createRecord),
+ rerender: tryWrap(rerender),
+ reload: tryWrap(reload)
+ };
+}
+const map = /* @__PURE__ */ new Map();
+function createRecord(id, initialDef) {
+ if (map.has(id)) {
+ return false;
+ }
+ map.set(id, {
+ initialDef: normalizeClassComponent(initialDef),
+ instances: /* @__PURE__ */ new Set()
+ });
+ return true;
+}
+function normalizeClassComponent(component) {
+ return isClassComponent$1(component) ? component.__vccOpts : component;
+}
+function rerender(id, newRender) {
+ const record = map.get(id);
+ if (!record) {
+ return;
+ }
+ record.initialDef.render = newRender;
+ [...record.instances].forEach((instance) => {
+ if (newRender) {
+ instance.render = newRender;
+ normalizeClassComponent(instance.type).render = newRender;
+ }
+ instance.renderCache = [];
+ instance.effect.dirty = true;
+ instance.update();
+ });
+}
+function reload(id, newComp) {
+ const record = map.get(id);
+ if (!record)
+ return;
+ newComp = normalizeClassComponent(newComp);
+ updateComponentDef(record.initialDef, newComp);
+ const instances = [...record.instances];
+ for (const instance of instances) {
+ const oldComp = normalizeClassComponent(instance.type);
+ if (!hmrDirtyComponents.has(oldComp)) {
+ if (oldComp !== record.initialDef) {
+ updateComponentDef(oldComp, newComp);
+ }
+ hmrDirtyComponents.add(oldComp);
+ }
+ instance.appContext.propsCache.delete(instance.type);
+ instance.appContext.emitsCache.delete(instance.type);
+ instance.appContext.optionsCache.delete(instance.type);
+ if (instance.ceReload) {
+ hmrDirtyComponents.add(oldComp);
+ instance.ceReload(newComp.styles);
+ hmrDirtyComponents.delete(oldComp);
+ } else if (instance.parent) {
+ instance.parent.effect.dirty = true;
+ queueJob$1(instance.parent.update);
+ } else if (instance.appContext.reload) {
+ instance.appContext.reload();
+ } else if (typeof window !== "undefined") {
+ window.location.reload();
+ } else {
+ console.warn(
+ "[HMR] Root or manually mounted instance modified. Full reload required."
+ );
+ }
+ }
+ queuePostFlushCb$1(() => {
+ for (const instance of instances) {
+ hmrDirtyComponents.delete(
+ normalizeClassComponent(instance.type)
+ );
+ }
+ });
+}
+function updateComponentDef(oldComp, newComp) {
+ extend(oldComp, newComp);
+ for (const key in oldComp) {
+ if (key !== "__file" && !(key in newComp)) {
+ delete oldComp[key];
+ }
+ }
+}
+function tryWrap(fn) {
+ return (id, arg) => {
+ try {
+ return fn(id, arg);
+ } catch (e2) {
+ console.error(e2);
+ console.warn(
+ `[HMR] Something went wrong during Vue component hot-reload. Full reload required.`
+ );
+ }
+ };
+}
+{
+ const g2 = getGlobalThis();
+ const registerGlobalSetter = (key, setter) => {
+ let setters;
+ if (!(setters = g2[key]))
+ setters = g2[key] = [];
+ setters.push(setter);
+ return (v2) => {
+ if (setters.length > 1)
+ setters.forEach((set2) => set2(v2));
+ else
+ setters[0](v2);
+ };
+ };
+ registerGlobalSetter(
+ `__VUE_INSTANCE_SETTERS__`,
+ (v2) => v2
+ );
+ registerGlobalSetter(
+ `__VUE_SSR_SETTERS__`,
+ (v2) => v2
+ );
+}
+const classifyRE$1 = /(?:^|[-_])(\w)/g;
+const classify$1 = (str) => str.replace(classifyRE$1, (c2) => c2.toUpperCase()).replace(/[-_]/g, "");
+function getComponentName$1(Component2, includeInferred = true) {
+ return isFunction(Component2) ? Component2.displayName || Component2.name : Component2.name || includeInferred && Component2.__name;
+}
+function formatComponentName$1(instance, Component2, isRoot = false) {
+ let name = getComponentName$1(Component2);
+ if (!name && Component2.__file) {
+ const match = Component2.__file.match(/([^/\\]+)\.\w+$/);
+ if (match) {
+ name = match[1];
+ }
+ }
+ if (!name && instance && instance.parent) {
+ const inferFromRegistry = (registry) => {
+ for (const key in registry) {
+ if (registry[key] === Component2) {
+ return key;
+ }
+ }
+ };
+ name = inferFromRegistry(
+ instance.components || instance.parent.type.components
+ ) || inferFromRegistry(instance.appContext.components);
+ }
+ return name ? classify$1(name) : isRoot ? `App` : `Anonymous`;
+}
+function isClassComponent$1(value) {
+ return isFunction(value) && "__vccOpts" in value;
+}
+/**
+* @dcloudio/uni-mp-vue v3.4.21
+* (c) 2018-present Yuxi (Evan) You and Vue contributors
+* @license MIT
+**/
+function warn$2(msg, ...args) {
+ console.warn(`[Vue warn] ${msg}`, ...args);
+}
+let activeEffectScope;
+class EffectScope {
+ constructor(detached = false) {
+ this.detached = detached;
+ this._active = true;
+ this.effects = [];
+ this.cleanups = [];
+ this.parent = activeEffectScope;
+ if (!detached && activeEffectScope) {
+ this.index = (activeEffectScope.scopes || (activeEffectScope.scopes = [])).push(
+ this
+ ) - 1;
+ }
+ }
+ get active() {
+ return this._active;
+ }
+ run(fn) {
+ if (this._active) {
+ const currentEffectScope = activeEffectScope;
+ try {
+ activeEffectScope = this;
+ return fn();
+ } finally {
+ activeEffectScope = currentEffectScope;
+ }
+ } else {
+ warn$2(`cannot run an inactive effect scope.`);
+ }
+ }
+ /**
+ * This should only be called on non-detached scopes
+ * @internal
+ */
+ on() {
+ activeEffectScope = this;
+ }
+ /**
+ * This should only be called on non-detached scopes
+ * @internal
+ */
+ off() {
+ activeEffectScope = this.parent;
+ }
+ stop(fromParent) {
+ if (this._active) {
+ let i2, l2;
+ for (i2 = 0, l2 = this.effects.length; i2 < l2; i2++) {
+ this.effects[i2].stop();
+ }
+ for (i2 = 0, l2 = this.cleanups.length; i2 < l2; i2++) {
+ this.cleanups[i2]();
+ }
+ if (this.scopes) {
+ for (i2 = 0, l2 = this.scopes.length; i2 < l2; i2++) {
+ this.scopes[i2].stop(true);
+ }
+ }
+ if (!this.detached && this.parent && !fromParent) {
+ const last = this.parent.scopes.pop();
+ if (last && last !== this) {
+ this.parent.scopes[this.index] = last;
+ last.index = this.index;
+ }
+ }
+ this.parent = void 0;
+ this._active = false;
+ }
+ }
+}
+function effectScope(detached) {
+ return new EffectScope(detached);
+}
+function recordEffectScope(effect2, scope = activeEffectScope) {
+ if (scope && scope.active) {
+ scope.effects.push(effect2);
+ }
+}
+function getCurrentScope() {
+ return activeEffectScope;
+}
+function onScopeDispose(fn) {
+ if (activeEffectScope) {
+ activeEffectScope.cleanups.push(fn);
+ } else {
+ warn$2(
+ `onScopeDispose() is called when there is no active effect scope to be associated with.`
+ );
+ }
+}
+let activeEffect;
+class ReactiveEffect2 {
+ constructor(fn, trigger2, scheduler, scope) {
+ this.fn = fn;
+ this.trigger = trigger2;
+ this.scheduler = scheduler;
+ this.active = true;
+ this.deps = [];
+ this._dirtyLevel = 4;
+ this._trackId = 0;
+ this._runnings = 0;
+ this._shouldSchedule = false;
+ this._depsLength = 0;
+ recordEffectScope(this, scope);
+ }
+ get dirty() {
+ if (this._dirtyLevel === 2 || this._dirtyLevel === 3) {
+ this._dirtyLevel = 1;
+ pauseTracking();
+ for (let i2 = 0; i2 < this._depsLength; i2++) {
+ const dep = this.deps[i2];
+ if (dep.computed) {
+ triggerComputed(dep.computed);
+ if (this._dirtyLevel >= 4) {
+ break;
+ }
+ }
+ }
+ if (this._dirtyLevel === 1) {
+ this._dirtyLevel = 0;
+ }
+ resetTracking();
+ }
+ return this._dirtyLevel >= 4;
+ }
+ set dirty(v2) {
+ this._dirtyLevel = v2 ? 4 : 0;
+ }
+ run() {
+ this._dirtyLevel = 0;
+ if (!this.active) {
+ return this.fn();
+ }
+ let lastShouldTrack = shouldTrack;
+ let lastEffect = activeEffect;
+ try {
+ shouldTrack = true;
+ activeEffect = this;
+ this._runnings++;
+ preCleanupEffect(this);
+ return this.fn();
+ } finally {
+ postCleanupEffect(this);
+ this._runnings--;
+ activeEffect = lastEffect;
+ shouldTrack = lastShouldTrack;
+ }
+ }
+ stop() {
+ var _a;
+ if (this.active) {
+ preCleanupEffect(this);
+ postCleanupEffect(this);
+ (_a = this.onStop) == null ? void 0 : _a.call(this);
+ this.active = false;
+ }
+ }
+}
+function triggerComputed(computed2) {
+ return computed2.value;
+}
+function preCleanupEffect(effect2) {
+ effect2._trackId++;
+ effect2._depsLength = 0;
+}
+function postCleanupEffect(effect2) {
+ if (effect2.deps.length > effect2._depsLength) {
+ for (let i2 = effect2._depsLength; i2 < effect2.deps.length; i2++) {
+ cleanupDepEffect(effect2.deps[i2], effect2);
+ }
+ effect2.deps.length = effect2._depsLength;
+ }
+}
+function cleanupDepEffect(dep, effect2) {
+ const trackId = dep.get(effect2);
+ if (trackId !== void 0 && effect2._trackId !== trackId) {
+ dep.delete(effect2);
+ if (dep.size === 0) {
+ dep.cleanup();
+ }
+ }
+}
+let shouldTrack = true;
+let pauseScheduleStack = 0;
+const trackStack = [];
+function pauseTracking() {
+ trackStack.push(shouldTrack);
+ shouldTrack = false;
+}
+function resetTracking() {
+ const last = trackStack.pop();
+ shouldTrack = last === void 0 ? true : last;
+}
+function pauseScheduling() {
+ pauseScheduleStack++;
+}
+function resetScheduling() {
+ pauseScheduleStack--;
+ while (!pauseScheduleStack && queueEffectSchedulers.length) {
+ queueEffectSchedulers.shift()();
+ }
+}
+function trackEffect(effect2, dep, debuggerEventExtraInfo) {
+ var _a;
+ if (dep.get(effect2) !== effect2._trackId) {
+ dep.set(effect2, effect2._trackId);
+ const oldDep = effect2.deps[effect2._depsLength];
+ if (oldDep !== dep) {
+ if (oldDep) {
+ cleanupDepEffect(oldDep, effect2);
+ }
+ effect2.deps[effect2._depsLength++] = dep;
+ } else {
+ effect2._depsLength++;
+ }
+ {
+ (_a = effect2.onTrack) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));
+ }
+ }
+}
+const queueEffectSchedulers = [];
+function triggerEffects(dep, dirtyLevel, debuggerEventExtraInfo) {
+ var _a;
+ pauseScheduling();
+ for (const effect2 of dep.keys()) {
+ let tracking;
+ if (effect2._dirtyLevel < dirtyLevel && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
+ effect2._shouldSchedule || (effect2._shouldSchedule = effect2._dirtyLevel === 0);
+ effect2._dirtyLevel = dirtyLevel;
+ }
+ if (effect2._shouldSchedule && (tracking != null ? tracking : tracking = dep.get(effect2) === effect2._trackId)) {
+ {
+ (_a = effect2.onTrigger) == null ? void 0 : _a.call(effect2, extend({ effect: effect2 }, debuggerEventExtraInfo));
+ }
+ effect2.trigger();
+ if ((!effect2._runnings || effect2.allowRecurse) && effect2._dirtyLevel !== 2) {
+ effect2._shouldSchedule = false;
+ if (effect2.scheduler) {
+ queueEffectSchedulers.push(effect2.scheduler);
+ }
+ }
+ }
+ }
+ resetScheduling();
+}
+const createDep = (cleanup, computed2) => {
+ const dep = /* @__PURE__ */ new Map();
+ dep.cleanup = cleanup;
+ dep.computed = computed2;
+ return dep;
+};
+const targetMap = /* @__PURE__ */ new WeakMap();
+const ITERATE_KEY = Symbol("iterate");
+const MAP_KEY_ITERATE_KEY = Symbol("Map key iterate");
+function track(target, type, key) {
+ if (shouldTrack && activeEffect) {
+ let depsMap = targetMap.get(target);
+ if (!depsMap) {
+ targetMap.set(target, depsMap = /* @__PURE__ */ new Map());
+ }
+ let dep = depsMap.get(key);
+ if (!dep) {
+ depsMap.set(key, dep = createDep(() => depsMap.delete(key)));
+ }
+ trackEffect(
+ activeEffect,
+ dep,
+ {
+ target,
+ type,
+ key
+ }
+ );
+ }
+}
+function trigger(target, type, key, newValue, oldValue, oldTarget) {
+ const depsMap = targetMap.get(target);
+ if (!depsMap) {
+ return;
+ }
+ let deps = [];
+ if (type === "clear") {
+ deps = [...depsMap.values()];
+ } else if (key === "length" && isArray$1(target)) {
+ const newLength = Number(newValue);
+ depsMap.forEach((dep, key2) => {
+ if (key2 === "length" || !isSymbol(key2) && key2 >= newLength) {
+ deps.push(dep);
+ }
+ });
+ } else {
+ if (key !== void 0) {
+ deps.push(depsMap.get(key));
+ }
+ switch (type) {
+ case "add":
+ if (!isArray$1(target)) {
+ deps.push(depsMap.get(ITERATE_KEY));
+ if (isMap(target)) {
+ deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));
+ }
+ } else if (isIntegerKey(key)) {
+ deps.push(depsMap.get("length"));
+ }
+ break;
+ case "delete":
+ if (!isArray$1(target)) {
+ deps.push(depsMap.get(ITERATE_KEY));
+ if (isMap(target)) {
+ deps.push(depsMap.get(MAP_KEY_ITERATE_KEY));
+ }
+ }
+ break;
+ case "set":
+ if (isMap(target)) {
+ deps.push(depsMap.get(ITERATE_KEY));
+ }
+ break;
+ }
+ }
+ pauseScheduling();
+ for (const dep of deps) {
+ if (dep) {
+ triggerEffects(
+ dep,
+ 4,
+ {
+ target,
+ type,
+ key,
+ newValue,
+ oldValue,
+ oldTarget
+ }
+ );
+ }
+ }
+ resetScheduling();
+}
+function getDepFromReactive(object, key) {
+ var _a;
+ return (_a = targetMap.get(object)) == null ? void 0 : _a.get(key);
+}
+const isNonTrackableKeys = /* @__PURE__ */ makeMap(`__proto__,__v_isRef,__isVue`);
+const builtInSymbols = new Set(
+ /* @__PURE__ */ Object.getOwnPropertyNames(Symbol).filter((key) => key !== "arguments" && key !== "caller").map((key) => Symbol[key]).filter(isSymbol)
+);
+const arrayInstrumentations = /* @__PURE__ */ createArrayInstrumentations();
+function createArrayInstrumentations() {
+ const instrumentations = {};
+ ["includes", "indexOf", "lastIndexOf"].forEach((key) => {
+ instrumentations[key] = function(...args) {
+ const arr = toRaw(this);
+ for (let i2 = 0, l2 = this.length; i2 < l2; i2++) {
+ track(arr, "get", i2 + "");
+ }
+ const res = arr[key](...args);
+ if (res === -1 || res === false) {
+ return arr[key](...args.map(toRaw));
+ } else {
+ return res;
+ }
+ };
+ });
+ ["push", "pop", "shift", "unshift", "splice"].forEach((key) => {
+ instrumentations[key] = function(...args) {
+ pauseTracking();
+ pauseScheduling();
+ const res = toRaw(this)[key].apply(this, args);
+ resetScheduling();
+ resetTracking();
+ return res;
+ };
+ });
+ return instrumentations;
+}
+function hasOwnProperty(key) {
+ const obj = toRaw(this);
+ track(obj, "has", key);
+ return obj.hasOwnProperty(key);
+}
+class BaseReactiveHandler2 {
+ constructor(_isReadonly = false, _isShallow = false) {
+ this._isReadonly = _isReadonly;
+ this._isShallow = _isShallow;
+ }
+ get(target, key, receiver) {
+ const isReadonly2 = this._isReadonly, isShallow2 = this._isShallow;
+ if (key === "__v_isReactive") {
+ return !isReadonly2;
+ } else if (key === "__v_isReadonly") {
+ return isReadonly2;
+ } else if (key === "__v_isShallow") {
+ return isShallow2;
+ } else if (key === "__v_raw") {
+ if (receiver === (isReadonly2 ? isShallow2 ? shallowReadonlyMap : readonlyMap : isShallow2 ? shallowReactiveMap : reactiveMap).get(target) || // receiver is not the reactive proxy, but has the same prototype
+ // this means the reciever is a user proxy of the reactive proxy
+ Object.getPrototypeOf(target) === Object.getPrototypeOf(receiver)) {
+ return target;
+ }
+ return;
+ }
+ const targetIsArray = isArray$1(target);
+ if (!isReadonly2) {
+ if (targetIsArray && hasOwn$1(arrayInstrumentations, key)) {
+ return Reflect.get(arrayInstrumentations, key, receiver);
+ }
+ if (key === "hasOwnProperty") {
+ return hasOwnProperty;
+ }
+ }
+ const res = Reflect.get(target, key, receiver);
+ if (isSymbol(key) ? builtInSymbols.has(key) : isNonTrackableKeys(key)) {
+ return res;
+ }
+ if (!isReadonly2) {
+ track(target, "get", key);
+ }
+ if (isShallow2) {
+ return res;
+ }
+ if (isRef(res)) {
+ return targetIsArray && isIntegerKey(key) ? res : res.value;
+ }
+ if (isObject$2(res)) {
+ return isReadonly2 ? readonly(res) : reactive(res);
+ }
+ return res;
+ }
+}
+class MutableReactiveHandler2 extends BaseReactiveHandler2 {
+ constructor(isShallow2 = false) {
+ super(false, isShallow2);
+ }
+ set(target, key, value, receiver) {
+ let oldValue = target[key];
+ if (!this._isShallow) {
+ const isOldValueReadonly = isReadonly(oldValue);
+ if (!isShallow(value) && !isReadonly(value)) {
+ oldValue = toRaw(oldValue);
+ value = toRaw(value);
+ }
+ if (!isArray$1(target) && isRef(oldValue) && !isRef(value)) {
+ if (isOldValueReadonly) {
+ return false;
+ } else {
+ oldValue.value = value;
+ return true;
+ }
+ }
+ }
+ const hadKey = isArray$1(target) && isIntegerKey(key) ? Number(key) < target.length : hasOwn$1(target, key);
+ const result = Reflect.set(target, key, value, receiver);
+ if (target === toRaw(receiver)) {
+ if (!hadKey) {
+ trigger(target, "add", key, value);
+ } else if (hasChanged(value, oldValue)) {
+ trigger(target, "set", key, value, oldValue);
+ }
+ }
+ return result;
+ }
+ deleteProperty(target, key) {
+ const hadKey = hasOwn$1(target, key);
+ const oldValue = target[key];
+ const result = Reflect.deleteProperty(target, key);
+ if (result && hadKey) {
+ trigger(target, "delete", key, void 0, oldValue);
+ }
+ return result;
+ }
+ has(target, key) {
+ const result = Reflect.has(target, key);
+ if (!isSymbol(key) || !builtInSymbols.has(key)) {
+ track(target, "has", key);
+ }
+ return result;
+ }
+ ownKeys(target) {
+ track(
+ target,
+ "iterate",
+ isArray$1(target) ? "length" : ITERATE_KEY
+ );
+ return Reflect.ownKeys(target);
+ }
+}
+class ReadonlyReactiveHandler2 extends BaseReactiveHandler2 {
+ constructor(isShallow2 = false) {
+ super(true, isShallow2);
+ }
+ set(target, key) {
+ {
+ warn$2(
+ `Set operation on key "${String(key)}" failed: target is readonly.`,
+ target
+ );
+ }
+ return true;
+ }
+ deleteProperty(target, key) {
+ {
+ warn$2(
+ `Delete operation on key "${String(key)}" failed: target is readonly.`,
+ target
+ );
+ }
+ return true;
+ }
+}
+const mutableHandlers = /* @__PURE__ */ new MutableReactiveHandler2();
+const readonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler2();
+const shallowReactiveHandlers = /* @__PURE__ */ new MutableReactiveHandler2(
+ true
+);
+const shallowReadonlyHandlers = /* @__PURE__ */ new ReadonlyReactiveHandler2(true);
+const toShallow = (value) => value;
+const getProto = (v2) => Reflect.getPrototypeOf(v2);
+function get(target, key, isReadonly2 = false, isShallow2 = false) {
+ target = target["__v_raw"];
+ const rawTarget = toRaw(target);
+ const rawKey = toRaw(key);
+ if (!isReadonly2) {
+ if (hasChanged(key, rawKey)) {
+ track(rawTarget, "get", key);
+ }
+ track(rawTarget, "get", rawKey);
+ }
+ const { has: has2 } = getProto(rawTarget);
+ const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;
+ if (has2.call(rawTarget, key)) {
+ return wrap(target.get(key));
+ } else if (has2.call(rawTarget, rawKey)) {
+ return wrap(target.get(rawKey));
+ } else if (target !== rawTarget) {
+ target.get(key);
+ }
+}
+function has(key, isReadonly2 = false) {
+ const target = this["__v_raw"];
+ const rawTarget = toRaw(target);
+ const rawKey = toRaw(key);
+ if (!isReadonly2) {
+ if (hasChanged(key, rawKey)) {
+ track(rawTarget, "has", key);
+ }
+ track(rawTarget, "has", rawKey);
+ }
+ return key === rawKey ? target.has(key) : target.has(key) || target.has(rawKey);
+}
+function size(target, isReadonly2 = false) {
+ target = target["__v_raw"];
+ !isReadonly2 && track(toRaw(target), "iterate", ITERATE_KEY);
+ return Reflect.get(target, "size", target);
+}
+function add$1(value) {
+ value = toRaw(value);
+ const target = toRaw(this);
+ const proto = getProto(target);
+ const hadKey = proto.has.call(target, value);
+ if (!hadKey) {
+ target.add(value);
+ trigger(target, "add", value, value);
+ }
+ return this;
+}
+function set$1(key, value) {
+ value = toRaw(value);
+ const target = toRaw(this);
+ const { has: has2, get: get2 } = getProto(target);
+ let hadKey = has2.call(target, key);
+ if (!hadKey) {
+ key = toRaw(key);
+ hadKey = has2.call(target, key);
+ } else {
+ checkIdentityKeys(target, has2, key);
+ }
+ const oldValue = get2.call(target, key);
+ target.set(key, value);
+ if (!hadKey) {
+ trigger(target, "add", key, value);
+ } else if (hasChanged(value, oldValue)) {
+ trigger(target, "set", key, value, oldValue);
+ }
+ return this;
+}
+function deleteEntry(key) {
+ const target = toRaw(this);
+ const { has: has2, get: get2 } = getProto(target);
+ let hadKey = has2.call(target, key);
+ if (!hadKey) {
+ key = toRaw(key);
+ hadKey = has2.call(target, key);
+ } else {
+ checkIdentityKeys(target, has2, key);
+ }
+ const oldValue = get2 ? get2.call(target, key) : void 0;
+ const result = target.delete(key);
+ if (hadKey) {
+ trigger(target, "delete", key, void 0, oldValue);
+ }
+ return result;
+}
+function clear() {
+ const target = toRaw(this);
+ const hadItems = target.size !== 0;
+ const oldTarget = isMap(target) ? new Map(target) : new Set(target);
+ const result = target.clear();
+ if (hadItems) {
+ trigger(target, "clear", void 0, void 0, oldTarget);
+ }
+ return result;
+}
+function createForEach(isReadonly2, isShallow2) {
+ return function forEach3(callback, thisArg) {
+ const observed = this;
+ const target = observed["__v_raw"];
+ const rawTarget = toRaw(target);
+ const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;
+ !isReadonly2 && track(rawTarget, "iterate", ITERATE_KEY);
+ return target.forEach((value, key) => {
+ return callback.call(thisArg, wrap(value), wrap(key), observed);
+ });
+ };
+}
+function createIterableMethod(method, isReadonly2, isShallow2) {
+ return function(...args) {
+ const target = this["__v_raw"];
+ const rawTarget = toRaw(target);
+ const targetIsMap = isMap(rawTarget);
+ const isPair = method === "entries" || method === Symbol.iterator && targetIsMap;
+ const isKeyOnly = method === "keys" && targetIsMap;
+ const innerIterator = target[method](...args);
+ const wrap = isShallow2 ? toShallow : isReadonly2 ? toReadonly : toReactive;
+ !isReadonly2 && track(
+ rawTarget,
+ "iterate",
+ isKeyOnly ? MAP_KEY_ITERATE_KEY : ITERATE_KEY
+ );
+ return {
+ // iterator protocol
+ next() {
+ const { value, done } = innerIterator.next();
+ return done ? { value, done } : {
+ value: isPair ? [wrap(value[0]), wrap(value[1])] : wrap(value),
+ done
+ };
+ },
+ // iterable protocol
+ [Symbol.iterator]() {
+ return this;
+ }
+ };
+ };
+}
+function createReadonlyMethod(type) {
+ return function(...args) {
+ {
+ const key = args[0] ? `on key "${args[0]}" ` : ``;
+ warn$2(
+ `${capitalize(type)} operation ${key}failed: target is readonly.`,
+ toRaw(this)
+ );
+ }
+ return type === "delete" ? false : type === "clear" ? void 0 : this;
+ };
+}
+function createInstrumentations() {
+ const mutableInstrumentations2 = {
+ get(key) {
+ return get(this, key);
+ },
+ get size() {
+ return size(this);
+ },
+ has,
+ add: add$1,
+ set: set$1,
+ delete: deleteEntry,
+ clear,
+ forEach: createForEach(false, false)
+ };
+ const shallowInstrumentations2 = {
+ get(key) {
+ return get(this, key, false, true);
+ },
+ get size() {
+ return size(this);
+ },
+ has,
+ add: add$1,
+ set: set$1,
+ delete: deleteEntry,
+ clear,
+ forEach: createForEach(false, true)
+ };
+ const readonlyInstrumentations2 = {
+ get(key) {
+ return get(this, key, true);
+ },
+ get size() {
+ return size(this, true);
+ },
+ has(key) {
+ return has.call(this, key, true);
+ },
+ add: createReadonlyMethod("add"),
+ set: createReadonlyMethod("set"),
+ delete: createReadonlyMethod("delete"),
+ clear: createReadonlyMethod("clear"),
+ forEach: createForEach(true, false)
+ };
+ const shallowReadonlyInstrumentations2 = {
+ get(key) {
+ return get(this, key, true, true);
+ },
+ get size() {
+ return size(this, true);
+ },
+ has(key) {
+ return has.call(this, key, true);
+ },
+ add: createReadonlyMethod("add"),
+ set: createReadonlyMethod("set"),
+ delete: createReadonlyMethod("delete"),
+ clear: createReadonlyMethod("clear"),
+ forEach: createForEach(true, true)
+ };
+ const iteratorMethods = [
+ "keys",
+ "values",
+ "entries",
+ Symbol.iterator
+ ];
+ iteratorMethods.forEach((method) => {
+ mutableInstrumentations2[method] = createIterableMethod(method, false, false);
+ readonlyInstrumentations2[method] = createIterableMethod(method, true, false);
+ shallowInstrumentations2[method] = createIterableMethod(method, false, true);
+ shallowReadonlyInstrumentations2[method] = createIterableMethod(
+ method,
+ true,
+ true
+ );
+ });
+ return [
+ mutableInstrumentations2,
+ readonlyInstrumentations2,
+ shallowInstrumentations2,
+ shallowReadonlyInstrumentations2
+ ];
+}
+const [
+ mutableInstrumentations,
+ readonlyInstrumentations,
+ shallowInstrumentations,
+ shallowReadonlyInstrumentations
+] = /* @__PURE__ */ createInstrumentations();
+function createInstrumentationGetter(isReadonly2, shallow) {
+ const instrumentations = shallow ? isReadonly2 ? shallowReadonlyInstrumentations : shallowInstrumentations : isReadonly2 ? readonlyInstrumentations : mutableInstrumentations;
+ return (target, key, receiver) => {
+ if (key === "__v_isReactive") {
+ return !isReadonly2;
+ } else if (key === "__v_isReadonly") {
+ return isReadonly2;
+ } else if (key === "__v_raw") {
+ return target;
+ }
+ return Reflect.get(
+ hasOwn$1(instrumentations, key) && key in target ? instrumentations : target,
+ key,
+ receiver
+ );
+ };
+}
+const mutableCollectionHandlers = {
+ get: /* @__PURE__ */ createInstrumentationGetter(false, false)
+};
+const shallowCollectionHandlers = {
+ get: /* @__PURE__ */ createInstrumentationGetter(false, true)
+};
+const readonlyCollectionHandlers = {
+ get: /* @__PURE__ */ createInstrumentationGetter(true, false)
+};
+const shallowReadonlyCollectionHandlers = {
+ get: /* @__PURE__ */ createInstrumentationGetter(true, true)
+};
+function checkIdentityKeys(target, has2, key) {
+ const rawKey = toRaw(key);
+ if (rawKey !== key && has2.call(target, rawKey)) {
+ const type = toRawType(target);
+ warn$2(
+ `Reactive ${type} contains both the raw and reactive versions of the same object${type === `Map` ? ` as keys` : ``}, which can lead to inconsistencies. Avoid differentiating between the raw and reactive versions of an object and only use the reactive version if possible.`
+ );
+ }
+}
+const reactiveMap = /* @__PURE__ */ new WeakMap();
+const shallowReactiveMap = /* @__PURE__ */ new WeakMap();
+const readonlyMap = /* @__PURE__ */ new WeakMap();
+const shallowReadonlyMap = /* @__PURE__ */ new WeakMap();
+function targetTypeMap(rawType) {
+ switch (rawType) {
+ case "Object":
+ case "Array":
+ return 1;
+ case "Map":
+ case "Set":
+ case "WeakMap":
+ case "WeakSet":
+ return 2;
+ default:
+ return 0;
+ }
+}
+function getTargetType(value) {
+ return value["__v_skip"] || !Object.isExtensible(value) ? 0 : targetTypeMap(toRawType(value));
+}
+function reactive(target) {
+ if (isReadonly(target)) {
+ return target;
+ }
+ return createReactiveObject(
+ target,
+ false,
+ mutableHandlers,
+ mutableCollectionHandlers,
+ reactiveMap
+ );
+}
+function shallowReactive(target) {
+ return createReactiveObject(
+ target,
+ false,
+ shallowReactiveHandlers,
+ shallowCollectionHandlers,
+ shallowReactiveMap
+ );
+}
+function readonly(target) {
+ return createReactiveObject(
+ target,
+ true,
+ readonlyHandlers,
+ readonlyCollectionHandlers,
+ readonlyMap
+ );
+}
+function shallowReadonly(target) {
+ return createReactiveObject(
+ target,
+ true,
+ shallowReadonlyHandlers,
+ shallowReadonlyCollectionHandlers,
+ shallowReadonlyMap
+ );
+}
+function createReactiveObject(target, isReadonly2, baseHandlers, collectionHandlers, proxyMap) {
+ if (!isObject$2(target)) {
+ {
+ warn$2(`value cannot be made reactive: ${String(target)}`);
+ }
+ return target;
+ }
+ if (target["__v_raw"] && !(isReadonly2 && target["__v_isReactive"])) {
+ return target;
+ }
+ const existingProxy = proxyMap.get(target);
+ if (existingProxy) {
+ return existingProxy;
+ }
+ const targetType = getTargetType(target);
+ if (targetType === 0) {
+ return target;
+ }
+ const proxy = new Proxy(
+ target,
+ targetType === 2 ? collectionHandlers : baseHandlers
+ );
+ proxyMap.set(target, proxy);
+ return proxy;
+}
+function isReactive(value) {
+ if (isReadonly(value)) {
+ return isReactive(value["__v_raw"]);
+ }
+ return !!(value && value["__v_isReactive"]);
+}
+function isReadonly(value) {
+ return !!(value && value["__v_isReadonly"]);
+}
+function isShallow(value) {
+ return !!(value && value["__v_isShallow"]);
+}
+function isProxy(value) {
+ return isReactive(value) || isReadonly(value);
+}
+function toRaw(observed) {
+ const raw = observed && observed["__v_raw"];
+ return raw ? toRaw(raw) : observed;
+}
+function markRaw(value) {
+ if (Object.isExtensible(value)) {
+ def(value, "__v_skip", true);
+ }
+ return value;
+}
+const toReactive = (value) => isObject$2(value) ? reactive(value) : value;
+const toReadonly = (value) => isObject$2(value) ? readonly(value) : value;
+const COMPUTED_SIDE_EFFECT_WARN = `Computed is still dirty after getter evaluation, likely because a computed is mutating its own dependency in its getter. State mutations in computed getters should be avoided. Check the docs for more details: https://vuejs.org/guide/essentials/computed.html#getters-should-be-side-effect-free`;
+class ComputedRefImpl {
+ constructor(getter, _setter, isReadonly2, isSSR) {
+ this.getter = getter;
+ this._setter = _setter;
+ this.dep = void 0;
+ this.__v_isRef = true;
+ this["__v_isReadonly"] = false;
+ this.effect = new ReactiveEffect2(
+ () => getter(this._value),
+ () => triggerRefValue(
+ this,
+ this.effect._dirtyLevel === 2 ? 2 : 3
+ )
+ );
+ this.effect.computed = this;
+ this.effect.active = this._cacheable = !isSSR;
+ this["__v_isReadonly"] = isReadonly2;
+ }
+ get value() {
+ const self2 = toRaw(this);
+ if ((!self2._cacheable || self2.effect.dirty) && hasChanged(self2._value, self2._value = self2.effect.run())) {
+ triggerRefValue(self2, 4);
+ }
+ trackRefValue(self2);
+ if (self2.effect._dirtyLevel >= 2) {
+ if (this._warnRecursive) {
+ warn$2(COMPUTED_SIDE_EFFECT_WARN, `
+
+getter: `, this.getter);
+ }
+ triggerRefValue(self2, 2);
+ }
+ return self2._value;
+ }
+ set value(newValue) {
+ this._setter(newValue);
+ }
+ // #region polyfill _dirty for backward compatibility third party code for Vue <= 3.3.x
+ get _dirty() {
+ return this.effect.dirty;
+ }
+ set _dirty(v2) {
+ this.effect.dirty = v2;
+ }
+ // #endregion
+}
+function computed$1(getterOrOptions, debugOptions, isSSR = false) {
+ let getter;
+ let setter;
+ const onlyGetter = isFunction(getterOrOptions);
+ if (onlyGetter) {
+ getter = getterOrOptions;
+ setter = () => {
+ warn$2("Write operation failed: computed value is readonly");
+ };
+ } else {
+ getter = getterOrOptions.get;
+ setter = getterOrOptions.set;
+ }
+ const cRef = new ComputedRefImpl(getter, setter, onlyGetter || !setter, isSSR);
+ return cRef;
+}
+function trackRefValue(ref2) {
+ var _a;
+ if (shouldTrack && activeEffect) {
+ ref2 = toRaw(ref2);
+ trackEffect(
+ activeEffect,
+ (_a = ref2.dep) != null ? _a : ref2.dep = createDep(
+ () => ref2.dep = void 0,
+ ref2 instanceof ComputedRefImpl ? ref2 : void 0
+ ),
+ {
+ target: ref2,
+ type: "get",
+ key: "value"
+ }
+ );
+ }
+}
+function triggerRefValue(ref2, dirtyLevel = 4, newVal) {
+ ref2 = toRaw(ref2);
+ const dep = ref2.dep;
+ if (dep) {
+ triggerEffects(
+ dep,
+ dirtyLevel,
+ {
+ target: ref2,
+ type: "set",
+ key: "value",
+ newValue: newVal
+ }
+ );
+ }
+}
+function isRef(r2) {
+ return !!(r2 && r2.__v_isRef === true);
+}
+function ref(value) {
+ return createRef(value, false);
+}
+function createRef(rawValue, shallow) {
+ if (isRef(rawValue)) {
+ return rawValue;
+ }
+ return new RefImpl(rawValue, shallow);
+}
+class RefImpl {
+ constructor(value, __v_isShallow) {
+ this.__v_isShallow = __v_isShallow;
+ this.dep = void 0;
+ this.__v_isRef = true;
+ this._rawValue = __v_isShallow ? value : toRaw(value);
+ this._value = __v_isShallow ? value : toReactive(value);
+ }
+ get value() {
+ trackRefValue(this);
+ return this._value;
+ }
+ set value(newVal) {
+ const useDirectValue = this.__v_isShallow || isShallow(newVal) || isReadonly(newVal);
+ newVal = useDirectValue ? newVal : toRaw(newVal);
+ if (hasChanged(newVal, this._rawValue)) {
+ this._rawValue = newVal;
+ this._value = useDirectValue ? newVal : toReactive(newVal);
+ triggerRefValue(this, 4, newVal);
+ }
+ }
+}
+function unref(ref2) {
+ return isRef(ref2) ? ref2.value : ref2;
+}
+const shallowUnwrapHandlers = {
+ get: (target, key, receiver) => unref(Reflect.get(target, key, receiver)),
+ set: (target, key, value, receiver) => {
+ const oldValue = target[key];
+ if (isRef(oldValue) && !isRef(value)) {
+ oldValue.value = value;
+ return true;
+ } else {
+ return Reflect.set(target, key, value, receiver);
+ }
+ }
+};
+function proxyRefs(objectWithRefs) {
+ return isReactive(objectWithRefs) ? objectWithRefs : new Proxy(objectWithRefs, shallowUnwrapHandlers);
+}
+function toRefs(object) {
+ if (!isProxy(object)) {
+ warn$2(`toRefs() expects a reactive object but received a plain one.`);
+ }
+ const ret = isArray$1(object) ? new Array(object.length) : {};
+ for (const key in object) {
+ ret[key] = propertyToRef(object, key);
+ }
+ return ret;
+}
+class ObjectRefImpl {
+ constructor(_object, _key, _defaultValue) {
+ this._object = _object;
+ this._key = _key;
+ this._defaultValue = _defaultValue;
+ this.__v_isRef = true;
+ }
+ get value() {
+ const val = this._object[this._key];
+ return val === void 0 ? this._defaultValue : val;
+ }
+ set value(newVal) {
+ this._object[this._key] = newVal;
+ }
+ get dep() {
+ return getDepFromReactive(toRaw(this._object), this._key);
+ }
+}
+class GetterRefImpl {
+ constructor(_getter) {
+ this._getter = _getter;
+ this.__v_isRef = true;
+ this.__v_isReadonly = true;
+ }
+ get value() {
+ return this._getter();
+ }
+}
+function toRef(source, key, defaultValue) {
+ if (isRef(source)) {
+ return source;
+ } else if (isFunction(source)) {
+ return new GetterRefImpl(source);
+ } else if (isObject$2(source) && arguments.length > 1) {
+ return propertyToRef(source, key, defaultValue);
+ } else {
+ return ref(source);
+ }
+}
+function propertyToRef(source, key, defaultValue) {
+ const val = source[key];
+ return isRef(val) ? val : new ObjectRefImpl(source, key, defaultValue);
+}
+const stack = [];
+function pushWarningContext(vnode) {
+ stack.push(vnode);
+}
+function popWarningContext() {
+ stack.pop();
+}
+function warn$1(msg, ...args) {
+ pauseTracking();
+ const instance = stack.length ? stack[stack.length - 1].component : null;
+ const appWarnHandler = instance && instance.appContext.config.warnHandler;
+ const trace = getComponentTrace();
+ if (appWarnHandler) {
+ callWithErrorHandling(
+ appWarnHandler,
+ instance,
+ 11,
+ [
+ msg + args.map((a2) => {
+ var _a, _b;
+ return (_b = (_a = a2.toString) == null ? void 0 : _a.call(a2)) != null ? _b : JSON.stringify(a2);
+ }).join(""),
+ instance && instance.proxy,
+ trace.map(
+ ({ vnode }) => `at <${formatComponentName(instance, vnode.type)}>`
+ ).join("\n"),
+ trace
+ ]
+ );
+ } else {
+ const warnArgs = [`[Vue warn]: ${msg}`, ...args];
+ if (trace.length && // avoid spamming console during tests
+ true) {
+ warnArgs.push(`
+`, ...formatTrace(trace));
+ }
+ console.warn(...warnArgs);
+ }
+ resetTracking();
+}
+function getComponentTrace() {
+ let currentVNode = stack[stack.length - 1];
+ if (!currentVNode) {
+ return [];
+ }
+ const normalizedStack = [];
+ while (currentVNode) {
+ const last = normalizedStack[0];
+ if (last && last.vnode === currentVNode) {
+ last.recurseCount++;
+ } else {
+ normalizedStack.push({
+ vnode: currentVNode,
+ recurseCount: 0
+ });
+ }
+ const parentInstance = currentVNode.component && currentVNode.component.parent;
+ currentVNode = parentInstance && parentInstance.vnode;
+ }
+ return normalizedStack;
+}
+function formatTrace(trace) {
+ const logs = [];
+ trace.forEach((entry, i2) => {
+ logs.push(...i2 === 0 ? [] : [`
+`], ...formatTraceEntry(entry));
+ });
+ return logs;
+}
+function formatTraceEntry({ vnode, recurseCount }) {
+ const postfix = recurseCount > 0 ? `... (${recurseCount} recursive calls)` : ``;
+ const isRoot = vnode.component ? vnode.component.parent == null : false;
+ const open = ` at <${formatComponentName(
+ vnode.component,
+ vnode.type,
+ isRoot
+ )}`;
+ const close = `>` + postfix;
+ return vnode.props ? [open, ...formatProps(vnode.props), close] : [open + close];
+}
+function formatProps(props) {
+ const res = [];
+ const keys = Object.keys(props);
+ keys.slice(0, 3).forEach((key) => {
+ res.push(...formatProp(key, props[key]));
+ });
+ if (keys.length > 3) {
+ res.push(` ...`);
+ }
+ return res;
+}
+function formatProp(key, value, raw) {
+ if (isString(value)) {
+ value = JSON.stringify(value);
+ return raw ? value : [`${key}=${value}`];
+ } else if (typeof value === "number" || typeof value === "boolean" || value == null) {
+ return raw ? value : [`${key}=${value}`];
+ } else if (isRef(value)) {
+ value = formatProp(key, toRaw(value.value), true);
+ return raw ? value : [`${key}=Ref<`, value, `>`];
+ } else if (isFunction(value)) {
+ return [`${key}=fn${value.name ? `<${value.name}>` : ``}`];
+ } else {
+ value = toRaw(value);
+ return raw ? value : [`${key}=`, value];
+ }
+}
+const ErrorTypeStrings = {
+ ["sp"]: "serverPrefetch hook",
+ ["bc"]: "beforeCreate hook",
+ ["c"]: "created hook",
+ ["bm"]: "beforeMount hook",
+ ["m"]: "mounted hook",
+ ["bu"]: "beforeUpdate hook",
+ ["u"]: "updated",
+ ["bum"]: "beforeUnmount hook",
+ ["um"]: "unmounted hook",
+ ["a"]: "activated hook",
+ ["da"]: "deactivated hook",
+ ["ec"]: "errorCaptured hook",
+ ["rtc"]: "renderTracked hook",
+ ["rtg"]: "renderTriggered hook",
+ [0]: "setup function",
+ [1]: "render function",
+ [2]: "watcher getter",
+ [3]: "watcher callback",
+ [4]: "watcher cleanup function",
+ [5]: "native event handler",
+ [6]: "component event handler",
+ [7]: "vnode hook",
+ [8]: "directive hook",
+ [9]: "transition hook",
+ [10]: "app errorHandler",
+ [11]: "app warnHandler",
+ [12]: "ref function",
+ [13]: "async component loader",
+ [14]: "scheduler flush. This is likely a Vue internals bug. Please open an issue at https://github.com/vuejs/core ."
+};
+function callWithErrorHandling(fn, instance, type, args) {
+ try {
+ return args ? fn(...args) : fn();
+ } catch (err) {
+ handleError(err, instance, type);
+ }
+}
+function callWithAsyncErrorHandling(fn, instance, type, args) {
+ if (isFunction(fn)) {
+ const res = callWithErrorHandling(fn, instance, type, args);
+ if (res && isPromise(res)) {
+ res.catch((err) => {
+ handleError(err, instance, type);
+ });
+ }
+ return res;
+ }
+ const values = [];
+ for (let i2 = 0; i2 < fn.length; i2++) {
+ values.push(callWithAsyncErrorHandling(fn[i2], instance, type, args));
+ }
+ return values;
+}
+function handleError(err, instance, type, throwInDev = true) {
+ const contextVNode = instance ? instance.vnode : null;
+ if (instance) {
+ let cur = instance.parent;
+ const exposedInstance = instance.proxy;
+ const errorInfo = ErrorTypeStrings[type] || type;
+ while (cur) {
+ const errorCapturedHooks = cur.ec;
+ if (errorCapturedHooks) {
+ for (let i2 = 0; i2 < errorCapturedHooks.length; i2++) {
+ if (errorCapturedHooks[i2](err, exposedInstance, errorInfo) === false) {
+ return;
+ }
+ }
+ }
+ cur = cur.parent;
+ }
+ const appErrorHandler = instance.appContext.config.errorHandler;
+ if (appErrorHandler) {
+ callWithErrorHandling(
+ appErrorHandler,
+ null,
+ 10,
+ [err, exposedInstance, errorInfo]
+ );
+ return;
+ }
+ }
+ logError(err, type, contextVNode, throwInDev);
+}
+function logError(err, type, contextVNode, throwInDev = true) {
+ {
+ const info = ErrorTypeStrings[type] || type;
+ if (contextVNode) {
+ pushWarningContext(contextVNode);
+ }
+ warn$1(`Unhandled error${info ? ` during execution of ${info}` : ``}`);
+ if (contextVNode) {
+ popWarningContext();
+ }
+ if (throwInDev) {
+ console.error(err);
+ } else {
+ console.error(err);
+ }
+ }
+}
+let isFlushing = false;
+let isFlushPending = false;
+const queue = [];
+let flushIndex = 0;
+const pendingPostFlushCbs = [];
+let activePostFlushCbs = null;
+let postFlushIndex = 0;
+const resolvedPromise = /* @__PURE__ */ Promise.resolve();
+let currentFlushPromise = null;
+const RECURSION_LIMIT = 100;
+function nextTick$1(fn) {
+ const p2 = currentFlushPromise || resolvedPromise;
+ return fn ? p2.then(this ? fn.bind(this) : fn) : p2;
+}
+function findInsertionIndex(id) {
+ let start = flushIndex + 1;
+ let end = queue.length;
+ while (start < end) {
+ const middle = start + end >>> 1;
+ const middleJob = queue[middle];
+ const middleJobId = getId(middleJob);
+ if (middleJobId < id || middleJobId === id && middleJob.pre) {
+ start = middle + 1;
+ } else {
+ end = middle;
+ }
+ }
+ return start;
+}
+function queueJob(job) {
+ if (!queue.length || !queue.includes(
+ job,
+ isFlushing && job.allowRecurse ? flushIndex + 1 : flushIndex
+ )) {
+ if (job.id == null) {
+ queue.push(job);
+ } else {
+ queue.splice(findInsertionIndex(job.id), 0, job);
+ }
+ queueFlush();
+ }
+}
+function queueFlush() {
+ if (!isFlushing && !isFlushPending) {
+ isFlushPending = true;
+ currentFlushPromise = resolvedPromise.then(flushJobs);
+ }
+}
+function hasQueueJob(job) {
+ return queue.indexOf(job) > -1;
+}
+function invalidateJob(job) {
+ const i2 = queue.indexOf(job);
+ if (i2 > flushIndex) {
+ queue.splice(i2, 1);
+ }
+}
+function queuePostFlushCb(cb) {
+ if (!isArray$1(cb)) {
+ if (!activePostFlushCbs || !activePostFlushCbs.includes(
+ cb,
+ cb.allowRecurse ? postFlushIndex + 1 : postFlushIndex
+ )) {
+ pendingPostFlushCbs.push(cb);
+ }
+ } else {
+ pendingPostFlushCbs.push(...cb);
+ }
+ queueFlush();
+}
+function flushPreFlushCbs(instance, seen, i2 = isFlushing ? flushIndex + 1 : 0) {
+ {
+ seen = seen || /* @__PURE__ */ new Map();
+ }
+ for (; i2 < queue.length; i2++) {
+ const cb = queue[i2];
+ if (cb && cb.pre) {
+ if (checkRecursiveUpdates(seen, cb)) {
+ continue;
+ }
+ queue.splice(i2, 1);
+ i2--;
+ cb();
+ }
+ }
+}
+function flushPostFlushCbs(seen) {
+ if (pendingPostFlushCbs.length) {
+ const deduped = [...new Set(pendingPostFlushCbs)].sort(
+ (a2, b2) => getId(a2) - getId(b2)
+ );
+ pendingPostFlushCbs.length = 0;
+ if (activePostFlushCbs) {
+ activePostFlushCbs.push(...deduped);
+ return;
+ }
+ activePostFlushCbs = deduped;
+ {
+ seen = seen || /* @__PURE__ */ new Map();
+ }
+ for (postFlushIndex = 0; postFlushIndex < activePostFlushCbs.length; postFlushIndex++) {
+ if (checkRecursiveUpdates(seen, activePostFlushCbs[postFlushIndex])) {
+ continue;
+ }
+ activePostFlushCbs[postFlushIndex]();
+ }
+ activePostFlushCbs = null;
+ postFlushIndex = 0;
+ }
+}
+const getId = (job) => job.id == null ? Infinity : job.id;
+const comparator = (a2, b2) => {
+ const diff2 = getId(a2) - getId(b2);
+ if (diff2 === 0) {
+ if (a2.pre && !b2.pre)
+ return -1;
+ if (b2.pre && !a2.pre)
+ return 1;
+ }
+ return diff2;
+};
+function flushJobs(seen) {
+ isFlushPending = false;
+ isFlushing = true;
+ {
+ seen = seen || /* @__PURE__ */ new Map();
+ }
+ queue.sort(comparator);
+ const check = (job) => checkRecursiveUpdates(seen, job);
+ try {
+ for (flushIndex = 0; flushIndex < queue.length; flushIndex++) {
+ const job = queue[flushIndex];
+ if (job && job.active !== false) {
+ if (check(job)) {
+ continue;
+ }
+ callWithErrorHandling(job, null, 14);
+ }
+ }
+ } finally {
+ flushIndex = 0;
+ queue.length = 0;
+ flushPostFlushCbs(seen);
+ isFlushing = false;
+ currentFlushPromise = null;
+ if (queue.length || pendingPostFlushCbs.length) {
+ flushJobs(seen);
+ }
+ }
+}
+function checkRecursiveUpdates(seen, fn) {
+ if (!seen.has(fn)) {
+ seen.set(fn, 1);
+ } else {
+ const count = seen.get(fn);
+ if (count > RECURSION_LIMIT) {
+ const instance = fn.ownerInstance;
+ const componentName = instance && getComponentName(instance.type);
+ handleError(
+ `Maximum recursive updates exceeded${componentName ? ` in component <${componentName}>` : ``}. This means you have a reactive effect that is mutating its own dependencies and thus recursively triggering itself. Possible sources include component template, render function, updated hook or watcher source function.`,
+ null,
+ 10
+ );
+ return true;
+ } else {
+ seen.set(fn, count + 1);
+ }
+ }
+}
+let devtools;
+let buffer = [];
+let devtoolsNotInstalled = false;
+function emit$1(event, ...args) {
+ if (devtools) {
+ devtools.emit(event, ...args);
+ } else if (!devtoolsNotInstalled) {
+ buffer.push({ event, args });
+ }
+}
+function setDevtoolsHook(hook, target) {
+ var _a, _b;
+ devtools = hook;
+ if (devtools) {
+ devtools.enabled = true;
+ buffer.forEach(({ event, args }) => devtools.emit(event, ...args));
+ buffer = [];
+ } else if (
+ // handle late devtools injection - only do this if we are in an actual
+ // browser environment to avoid the timer handle stalling test runner exit
+ // (#4815)
+ typeof window !== "undefined" && // some envs mock window but not fully
+ window.HTMLElement && // also exclude jsdom
+ !((_b = (_a = window.navigator) == null ? void 0 : _a.userAgent) == null ? void 0 : _b.includes("jsdom"))
+ ) {
+ const replay = target.__VUE_DEVTOOLS_HOOK_REPLAY__ = target.__VUE_DEVTOOLS_HOOK_REPLAY__ || [];
+ replay.push((newHook) => {
+ setDevtoolsHook(newHook, target);
+ });
+ setTimeout(() => {
+ if (!devtools) {
+ target.__VUE_DEVTOOLS_HOOK_REPLAY__ = null;
+ devtoolsNotInstalled = true;
+ buffer = [];
+ }
+ }, 3e3);
+ } else {
+ devtoolsNotInstalled = true;
+ buffer = [];
+ }
+}
+function devtoolsInitApp(app, version2) {
+ emit$1("app:init", app, version2, {
+ Fragment,
+ Text,
+ Comment,
+ Static
+ });
+}
+const devtoolsComponentAdded = /* @__PURE__ */ createDevtoolsComponentHook(
+ "component:added"
+ /* COMPONENT_ADDED */
+);
+const devtoolsComponentUpdated = /* @__PURE__ */ createDevtoolsComponentHook(
+ "component:updated"
+ /* COMPONENT_UPDATED */
+);
+const _devtoolsComponentRemoved = /* @__PURE__ */ createDevtoolsComponentHook(
+ "component:removed"
+ /* COMPONENT_REMOVED */
+);
+const devtoolsComponentRemoved = (component) => {
+ if (devtools && typeof devtools.cleanupBuffer === "function" && // remove the component if it wasn't buffered
+ !devtools.cleanupBuffer(component)) {
+ _devtoolsComponentRemoved(component);
+ }
+};
+/*! #__NO_SIDE_EFFECTS__ */
+// @__NO_SIDE_EFFECTS__
+function createDevtoolsComponentHook(hook) {
+ return (component) => {
+ emit$1(
+ hook,
+ component.appContext.app,
+ component.uid,
+ // fixed by xxxxxx
+ // 为 0 是 App,无 parent 是 Page 指向 App
+ component.uid === 0 ? void 0 : component.parent ? component.parent.uid : 0,
+ component
+ );
+ };
+}
+const devtoolsPerfStart = /* @__PURE__ */ createDevtoolsPerformanceHook(
+ "perf:start"
+ /* PERFORMANCE_START */
+);
+const devtoolsPerfEnd = /* @__PURE__ */ createDevtoolsPerformanceHook(
+ "perf:end"
+ /* PERFORMANCE_END */
+);
+function createDevtoolsPerformanceHook(hook) {
+ return (component, type, time) => {
+ emit$1(hook, component.appContext.app, component.uid, component, type, time);
+ };
+}
+function devtoolsComponentEmit(component, event, params) {
+ emit$1(
+ "component:emit",
+ component.appContext.app,
+ component,
+ event,
+ params
+ );
+}
+function emit(instance, event, ...rawArgs) {
+ if (instance.isUnmounted)
+ return;
+ const props = instance.vnode.props || EMPTY_OBJ;
+ {
+ const {
+ emitsOptions,
+ propsOptions: [propsOptions]
+ } = instance;
+ if (emitsOptions) {
+ if (!(event in emitsOptions) && true) {
+ if (!propsOptions || !(toHandlerKey(event) in propsOptions)) {
+ warn$1(
+ `Component emitted event "${event}" but it is neither declared in the emits option nor as an "${toHandlerKey(event)}" prop.`
+ );
+ }
+ } else {
+ const validator = emitsOptions[event];
+ if (isFunction(validator)) {
+ const isValid2 = validator(...rawArgs);
+ if (!isValid2) {
+ warn$1(
+ `Invalid event arguments: event validation failed for event "${event}".`
+ );
+ }
+ }
+ }
+ }
+ }
+ let args = rawArgs;
+ const isModelListener2 = event.startsWith("update:");
+ const modelArg = isModelListener2 && event.slice(7);
+ if (modelArg && modelArg in props) {
+ const modifiersKey = `${modelArg === "modelValue" ? "model" : modelArg}Modifiers`;
+ const { number, trim } = props[modifiersKey] || EMPTY_OBJ;
+ if (trim) {
+ args = rawArgs.map((a2) => isString(a2) ? a2.trim() : a2);
+ }
+ if (number) {
+ args = rawArgs.map(looseToNumber);
+ }
+ }
+ {
+ devtoolsComponentEmit(instance, event, args);
+ }
+ {
+ const lowerCaseEvent = event.toLowerCase();
+ if (lowerCaseEvent !== event && props[toHandlerKey(lowerCaseEvent)]) {
+ warn$1(
+ `Event "${lowerCaseEvent}" is emitted in component ${formatComponentName(
+ instance,
+ instance.type
+ )} but the handler is registered for "${event}". Note that HTML attributes are case-insensitive and you cannot use v-on to listen to camelCase events when using in-DOM templates. You should probably use "${hyphenate(
+ event
+ )}" instead of "${event}".`
+ );
+ }
+ }
+ let handlerName;
+ let handler = props[handlerName = toHandlerKey(event)] || // also try camelCase event handler (#2249)
+ props[handlerName = toHandlerKey(camelize(event))];
+ if (!handler && isModelListener2) {
+ handler = props[handlerName = toHandlerKey(hyphenate(event))];
+ }
+ if (handler) {
+ callWithAsyncErrorHandling(
+ handler,
+ instance,
+ 6,
+ args
+ );
+ }
+ const onceHandler = props[handlerName + `Once`];
+ if (onceHandler) {
+ if (!instance.emitted) {
+ instance.emitted = {};
+ } else if (instance.emitted[handlerName]) {
+ return;
+ }
+ instance.emitted[handlerName] = true;
+ callWithAsyncErrorHandling(
+ onceHandler,
+ instance,
+ 6,
+ args
+ );
+ }
+}
+function normalizeEmitsOptions(comp, appContext, asMixin = false) {
+ const cache = appContext.emitsCache;
+ const cached = cache.get(comp);
+ if (cached !== void 0) {
+ return cached;
+ }
+ const raw = comp.emits;
+ let normalized = {};
+ let hasExtends = false;
+ if (!isFunction(comp)) {
+ const extendEmits = (raw2) => {
+ const normalizedFromExtend = normalizeEmitsOptions(raw2, appContext, true);
+ if (normalizedFromExtend) {
+ hasExtends = true;
+ extend(normalized, normalizedFromExtend);
+ }
+ };
+ if (!asMixin && appContext.mixins.length) {
+ appContext.mixins.forEach(extendEmits);
+ }
+ if (comp.extends) {
+ extendEmits(comp.extends);
+ }
+ if (comp.mixins) {
+ comp.mixins.forEach(extendEmits);
+ }
+ }
+ if (!raw && !hasExtends) {
+ if (isObject$2(comp)) {
+ cache.set(comp, null);
+ }
+ return null;
+ }
+ if (isArray$1(raw)) {
+ raw.forEach((key) => normalized[key] = null);
+ } else {
+ extend(normalized, raw);
+ }
+ if (isObject$2(comp)) {
+ cache.set(comp, normalized);
+ }
+ return normalized;
+}
+function isEmitListener(options, key) {
+ if (!options || !isOn(key)) {
+ return false;
+ }
+ key = key.slice(2).replace(/Once$/, "");
+ return hasOwn$1(options, key[0].toLowerCase() + key.slice(1)) || hasOwn$1(options, hyphenate(key)) || hasOwn$1(options, key);
+}
+let currentRenderingInstance = null;
+function setCurrentRenderingInstance(instance) {
+ const prev = currentRenderingInstance;
+ currentRenderingInstance = instance;
+ instance && instance.type.__scopeId || null;
+ return prev;
+}
+const COMPONENTS = "components";
+function resolveComponent(name, maybeSelfReference) {
+ return resolveAsset(COMPONENTS, name, true, maybeSelfReference) || name;
+}
+function resolveAsset(type, name, warnMissing = true, maybeSelfReference = false) {
+ const instance = currentRenderingInstance || currentInstance;
+ if (instance) {
+ const Component2 = instance.type;
+ {
+ const selfName = getComponentName(
+ Component2,
+ false
+ );
+ if (selfName && (selfName === name || selfName === camelize(name) || selfName === capitalize(camelize(name)))) {
+ return Component2;
+ }
+ }
+ const res = (
+ // local registration
+ // check instance[type] first which is resolved for options API
+ resolve(instance[type] || Component2[type], name) || // global registration
+ resolve(instance.appContext[type], name)
+ );
+ if (!res && maybeSelfReference) {
+ return Component2;
+ }
+ if (warnMissing && !res) {
+ const extra = `
+If this is a native custom element, make sure to exclude it from component resolution via compilerOptions.isCustomElement.`;
+ warn$1(`Failed to resolve ${type.slice(0, -1)}: ${name}${extra}`);
+ }
+ return res;
+ } else {
+ warn$1(
+ `resolve${capitalize(type.slice(0, -1))} can only be used in render() or setup().`
+ );
+ }
+}
+function resolve(registry, name) {
+ return registry && (registry[name] || registry[camelize(name)] || registry[capitalize(camelize(name))]);
+}
+const INITIAL_WATCHER_VALUE = {};
+function watch(source, cb, options) {
+ if (!isFunction(cb)) {
+ warn$1(
+ `\`watch(fn, options?)\` signature has been moved to a separate API. Use \`watchEffect(fn, options?)\` instead. \`watch\` now only supports \`watch(source, cb, options?) signature.`
+ );
+ }
+ return doWatch(source, cb, options);
+}
+function doWatch(source, cb, {
+ immediate,
+ deep,
+ flush,
+ once: once2,
+ onTrack,
+ onTrigger
+} = EMPTY_OBJ) {
+ if (cb && once2) {
+ const _cb = cb;
+ cb = (...args) => {
+ _cb(...args);
+ unwatch();
+ };
+ }
+ if (deep !== void 0 && typeof deep === "number") {
+ warn$1(
+ `watch() "deep" option with number value will be used as watch depth in future versions. Please use a boolean instead to avoid potential breakage.`
+ );
+ }
+ if (!cb) {
+ if (immediate !== void 0) {
+ warn$1(
+ `watch() "immediate" option is only respected when using the watch(source, callback, options?) signature.`
+ );
+ }
+ if (deep !== void 0) {
+ warn$1(
+ `watch() "deep" option is only respected when using the watch(source, callback, options?) signature.`
+ );
+ }
+ if (once2 !== void 0) {
+ warn$1(
+ `watch() "once" option is only respected when using the watch(source, callback, options?) signature.`
+ );
+ }
+ }
+ const warnInvalidSource = (s2) => {
+ warn$1(
+ `Invalid watch source: `,
+ s2,
+ `A watch source can only be a getter/effect function, a ref, a reactive object, or an array of these types.`
+ );
+ };
+ const instance = currentInstance;
+ const reactiveGetter = (source2) => deep === true ? source2 : (
+ // for deep: false, only traverse root-level properties
+ traverse(source2, deep === false ? 1 : void 0)
+ );
+ let getter;
+ let forceTrigger = false;
+ let isMultiSource = false;
+ if (isRef(source)) {
+ getter = () => source.value;
+ forceTrigger = isShallow(source);
+ } else if (isReactive(source)) {
+ getter = () => reactiveGetter(source);
+ forceTrigger = true;
+ } else if (isArray$1(source)) {
+ isMultiSource = true;
+ forceTrigger = source.some((s2) => isReactive(s2) || isShallow(s2));
+ getter = () => source.map((s2) => {
+ if (isRef(s2)) {
+ return s2.value;
+ } else if (isReactive(s2)) {
+ return reactiveGetter(s2);
+ } else if (isFunction(s2)) {
+ return callWithErrorHandling(s2, instance, 2);
+ } else {
+ warnInvalidSource(s2);
+ }
+ });
+ } else if (isFunction(source)) {
+ if (cb) {
+ getter = () => callWithErrorHandling(source, instance, 2);
+ } else {
+ getter = () => {
+ if (cleanup) {
+ cleanup();
+ }
+ return callWithAsyncErrorHandling(
+ source,
+ instance,
+ 3,
+ [onCleanup]
+ );
+ };
+ }
+ } else {
+ getter = NOOP;
+ warnInvalidSource(source);
+ }
+ if (cb && deep) {
+ const baseGetter = getter;
+ getter = () => traverse(baseGetter());
+ }
+ let cleanup;
+ let onCleanup = (fn) => {
+ cleanup = effect2.onStop = () => {
+ callWithErrorHandling(fn, instance, 4);
+ cleanup = effect2.onStop = void 0;
+ };
+ };
+ let oldValue = isMultiSource ? new Array(source.length).fill(INITIAL_WATCHER_VALUE) : INITIAL_WATCHER_VALUE;
+ const job = () => {
+ if (!effect2.active || !effect2.dirty) {
+ return;
+ }
+ if (cb) {
+ const newValue = effect2.run();
+ if (deep || forceTrigger || (isMultiSource ? newValue.some((v2, i2) => hasChanged(v2, oldValue[i2])) : hasChanged(newValue, oldValue)) || false) {
+ if (cleanup) {
+ cleanup();
+ }
+ callWithAsyncErrorHandling(cb, instance, 3, [
+ newValue,
+ // pass undefined as the old value when it's changed for the first time
+ oldValue === INITIAL_WATCHER_VALUE ? void 0 : isMultiSource && oldValue[0] === INITIAL_WATCHER_VALUE ? [] : oldValue,
+ onCleanup
+ ]);
+ oldValue = newValue;
+ }
+ } else {
+ effect2.run();
+ }
+ };
+ job.allowRecurse = !!cb;
+ let scheduler;
+ if (flush === "sync") {
+ scheduler = job;
+ } else if (flush === "post") {
+ scheduler = () => queuePostRenderEffect$1(job, instance && instance.suspense);
+ } else {
+ job.pre = true;
+ if (instance)
+ job.id = instance.uid;
+ scheduler = () => queueJob(job);
+ }
+ const effect2 = new ReactiveEffect2(getter, NOOP, scheduler);
+ const scope = getCurrentScope();
+ const unwatch = () => {
+ effect2.stop();
+ if (scope) {
+ remove(scope.effects, effect2);
+ }
+ };
+ {
+ effect2.onTrack = onTrack;
+ effect2.onTrigger = onTrigger;
+ }
+ if (cb) {
+ if (immediate) {
+ job();
+ } else {
+ oldValue = effect2.run();
+ }
+ } else if (flush === "post") {
+ queuePostRenderEffect$1(
+ effect2.run.bind(effect2),
+ instance && instance.suspense
+ );
+ } else {
+ effect2.run();
+ }
+ return unwatch;
+}
+function instanceWatch(source, value, options) {
+ const publicThis = this.proxy;
+ const getter = isString(source) ? source.includes(".") ? createPathGetter(publicThis, source) : () => publicThis[source] : source.bind(publicThis, publicThis);
+ let cb;
+ if (isFunction(value)) {
+ cb = value;
+ } else {
+ cb = value.handler;
+ options = value;
+ }
+ const reset = setCurrentInstance(this);
+ const res = doWatch(getter, cb.bind(publicThis), options);
+ reset();
+ return res;
+}
+function createPathGetter(ctx, path) {
+ const segments = path.split(".");
+ return () => {
+ let cur = ctx;
+ for (let i2 = 0; i2 < segments.length && cur; i2++) {
+ cur = cur[segments[i2]];
+ }
+ return cur;
+ };
+}
+function traverse(value, depth, currentDepth = 0, seen) {
+ if (!isObject$2(value) || value["__v_skip"]) {
+ return value;
+ }
+ if (depth && depth > 0) {
+ if (currentDepth >= depth) {
+ return value;
+ }
+ currentDepth++;
+ }
+ seen = seen || /* @__PURE__ */ new Set();
+ if (seen.has(value)) {
+ return value;
+ }
+ seen.add(value);
+ if (isRef(value)) {
+ traverse(value.value, depth, currentDepth, seen);
+ } else if (isArray$1(value)) {
+ for (let i2 = 0; i2 < value.length; i2++) {
+ traverse(value[i2], depth, currentDepth, seen);
+ }
+ } else if (isSet(value) || isMap(value)) {
+ value.forEach((v2) => {
+ traverse(v2, depth, currentDepth, seen);
+ });
+ } else if (isPlainObject$2(value)) {
+ for (const key in value) {
+ traverse(value[key], depth, currentDepth, seen);
+ }
+ }
+ return value;
+}
+function validateDirectiveName(name) {
+ if (isBuiltInDirective(name)) {
+ warn$1("Do not use built-in directive ids as custom directive id: " + name);
+ }
+}
+function createAppContext() {
+ return {
+ app: null,
+ config: {
+ isNativeTag: NO,
+ performance: false,
+ globalProperties: {},
+ optionMergeStrategies: {},
+ errorHandler: void 0,
+ warnHandler: void 0,
+ compilerOptions: {}
+ },
+ mixins: [],
+ components: {},
+ directives: {},
+ provides: /* @__PURE__ */ Object.create(null),
+ optionsCache: /* @__PURE__ */ new WeakMap(),
+ propsCache: /* @__PURE__ */ new WeakMap(),
+ emitsCache: /* @__PURE__ */ new WeakMap()
+ };
+}
+let uid$1 = 0;
+function createAppAPI(render, hydrate) {
+ return function createApp2(rootComponent, rootProps = null) {
+ if (!isFunction(rootComponent)) {
+ rootComponent = extend({}, rootComponent);
+ }
+ if (rootProps != null && !isObject$2(rootProps)) {
+ warn$1(`root props passed to app.mount() must be an object.`);
+ rootProps = null;
+ }
+ const context = createAppContext();
+ const installedPlugins = /* @__PURE__ */ new WeakSet();
+ const app = context.app = {
+ _uid: uid$1++,
+ _component: rootComponent,
+ _props: rootProps,
+ _container: null,
+ _context: context,
+ _instance: null,
+ version: version$1,
+ get config() {
+ return context.config;
+ },
+ set config(v2) {
+ {
+ warn$1(
+ `app.config cannot be replaced. Modify individual options instead.`
+ );
+ }
+ },
+ use(plugin2, ...options) {
+ if (installedPlugins.has(plugin2)) {
+ warn$1(`Plugin has already been applied to target app.`);
+ } else if (plugin2 && isFunction(plugin2.install)) {
+ installedPlugins.add(plugin2);
+ plugin2.install(app, ...options);
+ } else if (isFunction(plugin2)) {
+ installedPlugins.add(plugin2);
+ plugin2(app, ...options);
+ } else {
+ warn$1(
+ `A plugin must either be a function or an object with an "install" function.`
+ );
+ }
+ return app;
+ },
+ mixin(mixin) {
+ {
+ if (!context.mixins.includes(mixin)) {
+ context.mixins.push(mixin);
+ } else {
+ warn$1(
+ "Mixin has already been applied to target app" + (mixin.name ? `: ${mixin.name}` : "")
+ );
+ }
+ }
+ return app;
+ },
+ component(name, component) {
+ {
+ validateComponentName(name, context.config);
+ }
+ if (!component) {
+ return context.components[name];
+ }
+ if (context.components[name]) {
+ warn$1(`Component "${name}" has already been registered in target app.`);
+ }
+ context.components[name] = component;
+ return app;
+ },
+ directive(name, directive) {
+ {
+ validateDirectiveName(name);
+ }
+ if (!directive) {
+ return context.directives[name];
+ }
+ if (context.directives[name]) {
+ warn$1(`Directive "${name}" has already been registered in target app.`);
+ }
+ context.directives[name] = directive;
+ return app;
+ },
+ // fixed by xxxxxx
+ mount() {
+ },
+ // fixed by xxxxxx
+ unmount() {
+ },
+ provide(key, value) {
+ if (key in context.provides) {
+ warn$1(
+ `App already provides property with key "${String(key)}". It will be overwritten with the new value.`
+ );
+ }
+ context.provides[key] = value;
+ return app;
+ },
+ runWithContext(fn) {
+ const lastApp = currentApp;
+ currentApp = app;
+ try {
+ return fn();
+ } finally {
+ currentApp = lastApp;
+ }
+ }
+ };
+ return app;
+ };
+}
+let currentApp = null;
+function provide(key, value) {
+ if (!currentInstance) {
+ {
+ warn$1(`provide() can only be used inside setup().`);
+ }
+ } else {
+ let provides = currentInstance.provides;
+ const parentProvides = currentInstance.parent && currentInstance.parent.provides;
+ if (parentProvides === provides) {
+ provides = currentInstance.provides = Object.create(parentProvides);
+ }
+ provides[key] = value;
+ if (currentInstance.type.mpType === "app") {
+ currentInstance.appContext.app.provide(key, value);
+ }
+ }
+}
+function inject(key, defaultValue, treatDefaultAsFactory = false) {
+ const instance = currentInstance || currentRenderingInstance;
+ if (instance || currentApp) {
+ const provides = instance ? instance.parent == null ? instance.vnode.appContext && instance.vnode.appContext.provides : instance.parent.provides : currentApp._context.provides;
+ if (provides && key in provides) {
+ return provides[key];
+ } else if (arguments.length > 1) {
+ return treatDefaultAsFactory && isFunction(defaultValue) ? defaultValue.call(instance && instance.proxy) : defaultValue;
+ } else {
+ warn$1(`injection "${String(key)}" not found.`);
+ }
+ } else {
+ warn$1(`inject() can only be used inside setup() or functional components.`);
+ }
+}
+function hasInjectionContext() {
+ return !!(currentInstance || currentRenderingInstance || currentApp);
+}
+const isKeepAlive = (vnode) => vnode.type.__isKeepAlive;
+function onActivated(hook, target) {
+ registerKeepAliveHook(hook, "a", target);
+}
+function onDeactivated(hook, target) {
+ registerKeepAliveHook(hook, "da", target);
+}
+function registerKeepAliveHook(hook, type, target = currentInstance) {
+ const wrappedHook = hook.__wdc || (hook.__wdc = () => {
+ let current = target;
+ while (current) {
+ if (current.isDeactivated) {
+ return;
+ }
+ current = current.parent;
+ }
+ return hook();
+ });
+ injectHook(type, wrappedHook, target);
+ if (target) {
+ let current = target.parent;
+ while (current && current.parent) {
+ if (isKeepAlive(current.parent.vnode)) {
+ injectToKeepAliveRoot(wrappedHook, type, target, current);
+ }
+ current = current.parent;
+ }
+ }
+}
+function injectToKeepAliveRoot(hook, type, target, keepAliveRoot) {
+ const injected = injectHook(
+ type,
+ hook,
+ keepAliveRoot,
+ true
+ /* prepend */
+ );
+ onUnmounted(() => {
+ remove(keepAliveRoot[type], injected);
+ }, target);
+}
+function injectHook(type, hook, target = currentInstance, prepend = false) {
+ if (target) {
+ if (isRootHook(type)) {
+ target = target.root;
+ }
+ const hooks = target[type] || (target[type] = []);
+ const wrappedHook = hook.__weh || (hook.__weh = (...args) => {
+ if (target.isUnmounted) {
+ return;
+ }
+ pauseTracking();
+ const reset = setCurrentInstance(target);
+ const res = callWithAsyncErrorHandling(hook, target, type, args);
+ reset();
+ resetTracking();
+ return res;
+ });
+ if (prepend) {
+ hooks.unshift(wrappedHook);
+ } else {
+ hooks.push(wrappedHook);
+ }
+ return wrappedHook;
+ } else {
+ const apiName = toHandlerKey(
+ (ErrorTypeStrings[type] || type.replace(/^on/, "")).replace(/ hook$/, "")
+ );
+ warn$1(
+ `${apiName} is called when there is no active component instance to be associated with. Lifecycle injection APIs can only be used during execution of setup().`
+ );
+ }
+}
+const createHook = (lifecycle) => (hook, target = currentInstance) => (
+ // post-create lifecycle registrations are noops during SSR (except for serverPrefetch)
+ (!isInSSRComponentSetup || lifecycle === "sp") && injectHook(lifecycle, (...args) => hook(...args), target)
+);
+const onBeforeMount = createHook("bm");
+const onMounted = createHook("m");
+const onBeforeUpdate = createHook("bu");
+const onUpdated = createHook("u");
+const onBeforeUnmount = createHook("bum");
+const onUnmounted = createHook("um");
+const onServerPrefetch = createHook("sp");
+const onRenderTriggered = createHook(
+ "rtg"
+);
+const onRenderTracked = createHook(
+ "rtc"
+);
+function onErrorCaptured(hook, target = currentInstance) {
+ injectHook("ec", hook, target);
+}
+const getPublicInstance = (i2) => {
+ if (!i2)
+ return null;
+ if (isStatefulComponent(i2))
+ return getExposeProxy(i2) || i2.proxy;
+ return getPublicInstance(i2.parent);
+};
+const publicPropertiesMap = (
+ // Move PURE marker to new line to workaround compiler discarding it
+ // due to type annotation
+ /* @__PURE__ */ extend(/* @__PURE__ */ Object.create(null), {
+ $: (i2) => i2,
+ // fixed by xxxxxx vue-i18n 在 dev 模式,访问了 $el,故模拟一个假的
+ // $el: i => i.vnode.el,
+ $el: (i2) => i2.__$el || (i2.__$el = {}),
+ $data: (i2) => i2.data,
+ $props: (i2) => shallowReadonly(i2.props),
+ $attrs: (i2) => shallowReadonly(i2.attrs),
+ $slots: (i2) => shallowReadonly(i2.slots),
+ $refs: (i2) => shallowReadonly(i2.refs),
+ $parent: (i2) => getPublicInstance(i2.parent),
+ $root: (i2) => getPublicInstance(i2.root),
+ $emit: (i2) => i2.emit,
+ $options: (i2) => resolveMergedOptions(i2),
+ $forceUpdate: (i2) => i2.f || (i2.f = () => {
+ i2.effect.dirty = true;
+ queueJob(i2.update);
+ }),
+ // $nextTick: i => i.n || (i.n = nextTick.bind(i.proxy!)),// fixed by xxxxxx
+ $watch: (i2) => instanceWatch.bind(i2)
+ })
+);
+const isReservedPrefix = (key) => key === "_" || key === "$";
+const hasSetupBinding = (state, key) => state !== EMPTY_OBJ && !state.__isScriptSetup && hasOwn$1(state, key);
+const PublicInstanceProxyHandlers = {
+ get({ _: instance }, key) {
+ const { ctx, setupState, data, props, accessCache, type, appContext } = instance;
+ if (key === "__isVue") {
+ return true;
+ }
+ let normalizedProps;
+ if (key[0] !== "$") {
+ const n2 = accessCache[key];
+ if (n2 !== void 0) {
+ switch (n2) {
+ case 1:
+ return setupState[key];
+ case 2:
+ return data[key];
+ case 4:
+ return ctx[key];
+ case 3:
+ return props[key];
+ }
+ } else if (hasSetupBinding(setupState, key)) {
+ accessCache[key] = 1;
+ return setupState[key];
+ } else if (data !== EMPTY_OBJ && hasOwn$1(data, key)) {
+ accessCache[key] = 2;
+ return data[key];
+ } else if (
+ // only cache other properties when instance has declared (thus stable)
+ // props
+ (normalizedProps = instance.propsOptions[0]) && hasOwn$1(normalizedProps, key)
+ ) {
+ accessCache[key] = 3;
+ return props[key];
+ } else if (ctx !== EMPTY_OBJ && hasOwn$1(ctx, key)) {
+ accessCache[key] = 4;
+ return ctx[key];
+ } else if (shouldCacheAccess) {
+ accessCache[key] = 0;
+ }
+ }
+ const publicGetter = publicPropertiesMap[key];
+ let cssModule, globalProperties;
+ if (publicGetter) {
+ if (key === "$attrs") {
+ track(instance, "get", key);
+ } else if (key === "$slots") {
+ track(instance, "get", key);
+ }
+ return publicGetter(instance);
+ } else if (
+ // css module (injected by vue-loader)
+ (cssModule = type.__cssModules) && (cssModule = cssModule[key])
+ ) {
+ return cssModule;
+ } else if (ctx !== EMPTY_OBJ && hasOwn$1(ctx, key)) {
+ accessCache[key] = 4;
+ return ctx[key];
+ } else if (
+ // global properties
+ globalProperties = appContext.config.globalProperties, hasOwn$1(globalProperties, key)
+ ) {
+ {
+ return globalProperties[key];
+ }
+ } else if (currentRenderingInstance && (!isString(key) || // #1091 avoid internal isRef/isVNode checks on component instance leading
+ // to infinite warning loop
+ key.indexOf("__v") !== 0)) {
+ if (data !== EMPTY_OBJ && isReservedPrefix(key[0]) && hasOwn$1(data, key)) {
+ warn$1(
+ `Property ${JSON.stringify(
+ key
+ )} must be accessed via $data because it starts with a reserved character ("$" or "_") and is not proxied on the render context.`
+ );
+ } else if (instance === currentRenderingInstance) {
+ warn$1(
+ `Property ${JSON.stringify(key)} was accessed during render but is not defined on instance.`
+ );
+ }
+ }
+ },
+ set({ _: instance }, key, value) {
+ const { data, setupState, ctx } = instance;
+ if (hasSetupBinding(setupState, key)) {
+ setupState[key] = value;
+ return true;
+ } else if (setupState.__isScriptSetup && hasOwn$1(setupState, key)) {
+ warn$1(`Cannot mutate
+
+
diff --git a/src/package/admin/index.vue b/src/package/admin/index.vue
index 68863e8..959334c 100644
--- a/src/package/admin/index.vue
+++ b/src/package/admin/index.vue
@@ -1,17 +1,17 @@
+
+
-
+
-
-
+
-
-
+
@@ -23,14 +23,13 @@
-
+
-
+
- {{ item.title }}
+ {{ item.title }}
@@ -50,245 +49,232 @@
返回
-
-
-
-
-
\ No newline at end of file
+}
+
diff --git a/src/pages.json b/src/pages.json
index 40d2d23..408fbb0 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -282,6 +282,13 @@
"enablePullDownRefresh": false,
"navigationStyle": "custom"
}
+ }, {
+ "path": "admin/field",
+ "style": {
+ "navigationBarTitleText": "场地管理",
+ "enablePullDownRefresh": false,
+ "navigationStyle": "custom"
+ }
},
{
"path": "teacher/detail",
diff --git a/src/pages/order/order.vue b/src/pages/order/order.vue
index 0e4b99a..6f5c287 100644
--- a/src/pages/order/order.vue
+++ b/src/pages/order/order.vue
@@ -216,32 +216,31 @@
if (this.current !== e.currentIndex) {
this.current = e.currentIndex
}
- if (userId == 0) {
+ if (userId === 0) {
app.openLogin()
return;
}
// 全部
- if (index == 0) {
+ if (index === 0) {
where.payStatus = undefined;
where.orderStatus = undefined;
}
// 未支付
- if (index == 1) {
+ if (index === 1) {
where.payStatus = 0;
where.orderStatus = undefined;
}
// 已支付
- if (index == 2) {
+ if (index === 2) {
where.payStatus = 1;
- where.orderStatus = 0;
}
// 已完成
- if (index == 3) {
+ if (index === 3) {
where.payStatus = 1;
where.orderStatus = 1;
}
// 押金
- if (index == 4) {
+ if (index === 4) {
pageWechatDeposit({
uid: uni.getStorageSync('user_id')
}).then(res => {
@@ -412,4 +411,4 @@
font-size: 30rpx !important;
}
}
-
\ No newline at end of file
+
diff --git a/src/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.vue b/src/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.vue
index 451703d..95d95c0 100644
--- a/src/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.vue
+++ b/src/uni_modules/ws-admin-card/components/ws-admin-card/ws-admin-card.vue
@@ -18,9 +18,9 @@
点击登录
-
+
@@ -69,7 +69,7 @@ export default {
});
},
change(index) {
- console.log(index);
+ uni.setStorageSync('currentId',index);
},
reload() {
this.$emit('done');
diff --git a/src/uni_modules/ws-common/utils/app.scss b/src/uni_modules/ws-common/utils/app.scss
index 7ab9aff..0bb5c1f 100644
--- a/src/uni_modules/ws-common/utils/app.scss
+++ b/src/uni_modules/ws-common/utils/app.scss
@@ -373,7 +373,9 @@ page {
padding-left: 0.5rem; /* 8px */
padding-right: 0.5rem; /* 8px */
}
-
+.p-5{
+ padding: 0.25rem; /* 8px */
+}
.text-blue-500{
color: rgb(59 130 246);
}
@@ -386,4 +388,4 @@ page {
}
.mx-10{
margin: 0 40rpx;
-}
\ No newline at end of file
+}
diff --git a/src/uni_modules/ws-login/components/ws-login/api/index.ts b/src/uni_modules/ws-login/components/ws-login/api/index.ts
index 2e371e5..b03c4bc 100644
--- a/src/uni_modules/ws-login/components/ws-login/api/index.ts
+++ b/src/uni_modules/ws-login/components/ws-login/api/index.ts
@@ -1,86 +1,88 @@
import request from '@/uni_modules/ws-common/utils/request';
-import type { ApiResult } from '@/uni_modules/ws-common/api';
-import type { User } from '@/uni_modules/ws-common/api/system/user/model';
-import type { UpdatePasswordParam, NoticeResult, LoginParam } from './model';
-import { SERVER_API_URL } from '@/config/setting';
+import type {ApiResult} from '@/uni_modules/ws-common/api';
+import type {User} from '@/uni_modules/ws-common/api/system/user/model';
+import type {UpdatePasswordParam, NoticeResult, LoginParam} from './model';
+import {SERVER_API_URL} from '@/config/setting';
/**
* 解析token
*/
-export async function parseToken(token : string) : Promise {
- const res = await request.get>(
- 'https://server.gxwebsoft.com/api/parseToken/' + token
- );
- if (res.data.code === 0 && res.data.data) {
- return res.data.data;
- }
- return Promise.reject(new Error(res.data.message));
+export async function parseToken(token: string): Promise {
+ const res = await request.get>(
+ 'https://server.gxwebsoft.com/api/parseToken/' + token
+ );
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
}
/**
* 获取当前登录的用户信息、菜单、权限、角色
*/
-export async function getUserInfo() : Promise {
- const res = await request.get>(SERVER_API_URL + '/auth/user');
- if (res.data.code === 0 && res.data.data) {
- return res.data.data;
- }
- return Promise.reject(new Error(res.data.message));
+export async function getUserInfo(): Promise {
+ const res = await request.get>(SERVER_API_URL + '/auth/user');
+ if (res.data.code === 0 && res.data.data) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
}
-export async function loginMpWxMobile(data : User) : Promise {
- const res = await request.post>(SERVER_API_URL + '/wx-login/loginByMpWxPhone', data);
- if (res.data.code === 0) {
- return res.data.data;
- }
- return Promise.reject(new Error(res.data.message));
+export async function loginMpWxMobile(data: User): Promise {
+ const res = await request.post>(SERVER_API_URL + '/wx-login/loginByMpWxPhone', data);
+ if (res.data.code === 0) {
+ return res.data.data;
+ }
+ return Promise.reject(new Error(res.data.message));
}
/**
* 发送短信验证码
*/
-export async function sendSmsCaptcha(data : LoginParam) : Promise {
- const res = await request.post>(
- SERVER_API_URL + '/sendSmsCaptcha',
- data
- );
- if (res.data.code === 0) {
- return res.data.message;
- }
- return Promise.reject(new Error(res.data.message));
+export async function sendSmsCaptcha(data: LoginParam): Promise {
+ const res = await request.post>(
+ SERVER_API_URL + '/sendSmsCaptcha',
+ data
+ );
+ if (res.data.code === 0) {
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
}
/**
* 短信验证码登录
*/
-export async function loginBySms(data: LoginParam) : Promise {
- const res = await request.post>(
- SERVER_API_URL + '/loginBySms',
- data
- );
- if (res.data.code === 0) {
- uni.setStorageSync('access_token', res.data.data?.access_token)
- // setToken(res.data.data?.access_token, data.remember);
- if (res.data.data?.user) {
- const user = res.data.data?.user;
- console.log('user: ',user.userId);
- uni.setStorageSync('user_id', user.userId)
- console.log('TenantId: ',user.tenantId);
- console.log('Phone: ',user.phone);
- console.log('UserId: ',user.userId);
- console.log('MerchantId: ',user.merchantId);
- uni.setStorageSync('TenantId', user.tenantId)
- uni.setStorageSync('Phone', user.phone)
- uni.setStorageSync('UserId', user.userId)
- if(user.merchantId){
- uni.setStorageSync('MerchantId',user.merchantId)
- }
- }
+export async function loginBySms(data: LoginParam): Promise {
+ const res = await request.post>(
+ SERVER_API_URL + '/loginBySms',
+ data
+ );
+ if (res.data.code === 0) {
+ // @ts-ignore
+ uni.setStorageSync('access_token', res.data.data?.access_token)
+ // setToken(res.data.data?.access_token, data.remember);
+ // @ts-ignore
+ const user = res.data.data?.user;
+ if (user) {
+ console.log('user: ', user.userId);
+ uni.setStorageSync('user_id', user.userId)
+ console.log('TenantId: ', user.tenantId);
+ console.log('Phone: ', user.phone);
+ console.log('UserId: ', user.userId);
+ console.log('MerchantId: ', user.merchantId);
+ uni.setStorageSync('TenantId', user.tenantId)
+ uni.setStorageSync('Phone', user.phone)
+ uni.setStorageSync('UserId', user.userId)
+ if (user.merchantId) {
+ uni.setStorageSync('MerchantId', user.merchantId)
+ }
+ }
- return res.data.message;
- }
- return Promise.reject(new Error(res.data.message));
+ return res.data.message;
+ }
+ return Promise.reject(new Error(res.data.message));
}
@@ -88,103 +90,103 @@ export async function loginBySms(data: LoginParam) : Promise {
* 修改当前登录的用户密码
*/
export async function updatePassword(
- data : UpdatePasswordParam
-) : Promise {
- const res = await request.put>('/auth/password', data);
- if (res.data.code === 0) {
- return res.data.message ?? '修改成功';
- }
- return Promise.reject(new Error(res.data.message));
+ data: UpdatePasswordParam
+): Promise {
+ const res = await request.put>('/auth/password', data);
+ if (res.data.code === 0) {
+ return res.data.message ?? '修改成功';
+ }
+ return Promise.reject(new Error(res.data.message));
}
/**
* 查询未读通知
*/
-export async function getUnreadNotice() : Promise {
- return {
- notice: [
- {
- color: '#60B2FC',
- icon: 'NotificationFilled',
- title: '你收到了一封14份新周报',
- time: '2020-07-27 18:30:18'
- },
- {
- color: '#F5686F',
- icon: 'PushpinFilled',
- title: '许经理同意了你的请假申请',
- time: '2020-07-27 09:08:36'
- },
- {
- color: '#7CD734',
- icon: 'VideoCameraFilled',
- title: '陈总邀请你参加视频会议',
- time: '2020-07-26 18:30:01'
- },
- {
- color: '#FAAD14',
- icon: 'CarryOutFilled',
- title: '你推荐的刘诗雨已通过第三轮面试',
- time: '2020-07-25 16:38:46'
- },
- {
- color: '#2BCACD',
- icon: 'BellFilled',
- title: '你的6月加班奖金已发放',
- time: '2020-07-25 11:03:31'
- }
- ],
- letter: [
- {
- avatar:
- 'https://cdn.eleadmin.com/20200609/c184eef391ae48dba87e3057e70238fb.jpg',
- title: 'SunSmile 评论了你的日志',
- content: '写的不错, 以后多多向你学习~',
- time: '2020-07-27 18:30:18'
- },
- {
- avatar:
- 'https://cdn.eleadmin.com/20200609/948344a2a77c47a7a7b332fe12ff749a.jpg',
- title: '刘诗雨 点赞了你的日志',
- content: '写的不错, 以后多多向你学习~',
- time: '2020-07-27 09:08:36'
- },
- {
- avatar:
- 'https://cdn.eleadmin.com/20200609/2d98970a51b34b6b859339c96b240dcd.jpg',
- title: '酷酷的大叔 评论了你的周报',
- content: '写的不错, 以后多多向你学习~',
- time: '2020-07-26 18:30:01'
- },
- {
- avatar:
- 'https://cdn.eleadmin.com/20200609/f6bc05af944a4f738b54128717952107.jpg',
- title: 'Jasmine 点赞了你的周报',
- content: '写的不错, 以后多多向你学习~',
- time: '2020-07-25 11:03:31'
- }
- ],
- todo: [
- {
- status: 0,
- title: '刘诗雨的请假审批',
- description: '刘诗雨在 07-27 18:30 提交的请假申请'
- },
- {
- status: 1,
- title: '第三方代码紧急变更',
- description: '需要在 2020-07-27 之前完成'
- },
- {
- status: 2,
- title: '信息安全考试',
- description: '需要在 2020-07-26 18:30 前完成'
- },
- {
- status: 2,
- title: 'EleAdmin发布新版本',
- description: '需要在 2020-07-25 11:03 前完成'
- }
- ]
- };
-}
\ No newline at end of file
+export async function getUnreadNotice(): Promise {
+ return {
+ notice: [
+ {
+ color: '#60B2FC',
+ icon: 'NotificationFilled',
+ title: '你收到了一封14份新周报',
+ time: '2020-07-27 18:30:18'
+ },
+ {
+ color: '#F5686F',
+ icon: 'PushpinFilled',
+ title: '许经理同意了你的请假申请',
+ time: '2020-07-27 09:08:36'
+ },
+ {
+ color: '#7CD734',
+ icon: 'VideoCameraFilled',
+ title: '陈总邀请你参加视频会议',
+ time: '2020-07-26 18:30:01'
+ },
+ {
+ color: '#FAAD14',
+ icon: 'CarryOutFilled',
+ title: '你推荐的刘诗雨已通过第三轮面试',
+ time: '2020-07-25 16:38:46'
+ },
+ {
+ color: '#2BCACD',
+ icon: 'BellFilled',
+ title: '你的6月加班奖金已发放',
+ time: '2020-07-25 11:03:31'
+ }
+ ],
+ letter: [
+ {
+ avatar:
+ 'https://cdn.eleadmin.com/20200609/c184eef391ae48dba87e3057e70238fb.jpg',
+ title: 'SunSmile 评论了你的日志',
+ content: '写的不错, 以后多多向你学习~',
+ time: '2020-07-27 18:30:18'
+ },
+ {
+ avatar:
+ 'https://cdn.eleadmin.com/20200609/948344a2a77c47a7a7b332fe12ff749a.jpg',
+ title: '刘诗雨 点赞了你的日志',
+ content: '写的不错, 以后多多向你学习~',
+ time: '2020-07-27 09:08:36'
+ },
+ {
+ avatar:
+ 'https://cdn.eleadmin.com/20200609/2d98970a51b34b6b859339c96b240dcd.jpg',
+ title: '酷酷的大叔 评论了你的周报',
+ content: '写的不错, 以后多多向你学习~',
+ time: '2020-07-26 18:30:01'
+ },
+ {
+ avatar:
+ 'https://cdn.eleadmin.com/20200609/f6bc05af944a4f738b54128717952107.jpg',
+ title: 'Jasmine 点赞了你的周报',
+ content: '写的不错, 以后多多向你学习~',
+ time: '2020-07-25 11:03:31'
+ }
+ ],
+ todo: [
+ {
+ status: 0,
+ title: '刘诗雨的请假审批',
+ description: '刘诗雨在 07-27 18:30 提交的请假申请'
+ },
+ {
+ status: 1,
+ title: '第三方代码紧急变更',
+ description: '需要在 2020-07-27 之前完成'
+ },
+ {
+ status: 2,
+ title: '信息安全考试',
+ description: '需要在 2020-07-26 18:30 前完成'
+ },
+ {
+ status: 2,
+ title: 'EleAdmin发布新版本',
+ description: '需要在 2020-07-25 11:03 前完成'
+ }
+ ]
+ };
+}
diff --git a/src/uni_modules/ws-select-merchant/changelog.md b/src/uni_modules/ws-select-merchant/changelog.md
new file mode 100644
index 0000000..e69de29
diff --git a/src/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.vue b/src/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.vue
new file mode 100644
index 0000000..b25db7f
--- /dev/null
+++ b/src/uni_modules/ws-select-merchant/components/ws-select-merchant/ws-select-merchant.vue
@@ -0,0 +1,74 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/uni_modules/ws-select-merchant/package.json b/src/uni_modules/ws-select-merchant/package.json
new file mode 100644
index 0000000..32291af
--- /dev/null
+++ b/src/uni_modules/ws-select-merchant/package.json
@@ -0,0 +1,83 @@
+{
+ "id": "ws-select-merchant",
+ "displayName": "ws-select-merchant",
+ "version": "1.0.0",
+ "description": "ws-select-merchant",
+ "keywords": [
+ "ws-select-merchant"
+],
+ "repository": "",
+ "engines": {
+ "HBuilderX": "^3.1.0"
+ },
+ "dcloudext": {
+ "type": "component-vue",
+ "sale": {
+ "regular": {
+ "price": "0.00"
+ },
+ "sourcecode": {
+ "price": "0.00"
+ }
+ },
+ "contact": {
+ "qq": ""
+ },
+ "declaration": {
+ "ads": "",
+ "data": "",
+ "permissions": ""
+ },
+ "npmurl": ""
+ },
+ "uni_modules": {
+ "dependencies": [],
+ "encrypt": [],
+ "platforms": {
+ "cloud": {
+ "tcb": "u",
+ "aliyun": "u",
+ "alipay": "u"
+ },
+ "client": {
+ "Vue": {
+ "vue2": "u",
+ "vue3": "u"
+ },
+ "App": {
+ "app-vue": "u",
+ "app-nvue": "u",
+ "app-uvue": "u"
+ },
+ "H5-mobile": {
+ "Safari": "u",
+ "Android Browser": "u",
+ "微信浏览器(Android)": "u",
+ "QQ浏览器(Android)": "u"
+ },
+ "H5-pc": {
+ "Chrome": "u",
+ "IE": "u",
+ "Edge": "u",
+ "Firefox": "u",
+ "Safari": "u"
+ },
+ "小程序": {
+ "微信": "u",
+ "阿里": "u",
+ "百度": "u",
+ "字节跳动": "u",
+ "QQ": "u",
+ "钉钉": "u",
+ "快手": "u",
+ "飞书": "u",
+ "京东": "u"
+ },
+ "快应用": {
+ "华为": "u",
+ "联盟": "u"
+ }
+ }
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/uni_modules/ws-select-merchant/readme.md b/src/uni_modules/ws-select-merchant/readme.md
new file mode 100644
index 0000000..c118dfb
--- /dev/null
+++ b/src/uni_modules/ws-select-merchant/readme.md
@@ -0,0 +1 @@
+# ws-select-merchant
\ No newline at end of file