From 6c9d839fc7cfe55967e3df707d655df0e6834d45 Mon Sep 17 00:00:00 2001 From: chen <2659004835@qq.com> Date: Mon, 14 Mar 2022 17:09:10 +0800 Subject: [PATCH] =?UTF-8?q?=E5=BA=95=E9=83=A8=E5=AF=BC=E8=88=AA=E7=9A=84?= =?UTF-8?q?=E6=95=B4=E7=90=86=E3=80=81=E9=A1=B9=E7=9B=AE=E7=9B=AE=E5=BD=95?= =?UTF-8?q?=E7=BB=93=E6=9E=84=E7=9A=84=E6=95=B4=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 9 + App.vue | 42 ++ commons/animate.min.css | 12 + commons/base.css | 365 ++++++++++++ commons/icon-font.css | 119 ++++ components/containers/container-subgroup.vue | 85 +++ components/foot-tabs/foot-tab-one.vue | 193 +++++++ components/function-list/function-list.vue | 85 +++ components/list/list-one.vue | 75 +++ components/list/list-two.vue | 163 ++++++ components/lw-notice/iconFont.vue | 61 ++ components/lw-notice/icons.js | 6 + components/lw-notice/lw-notice.vue | 373 +++++++++++++ components/nothing/nothing-page.vue | 41 ++ components/nothing/pitera.vue | 54 ++ components/public-customer.vue | 100 ++++ components/shareAll.vue | 42 ++ components/status-nav.vue | 185 +++++++ components/swiper-tab/swiper-tab.vue | 172 ++++++ components/swiper/swiper-pu.vue | 132 +++++ jsFile/base64-src.js | 201 +++++++ jsFile/requst.js | 149 +++++ jsFile/share.js | 11 + jsFile/tools.js | 550 +++++++++++++++++++ main.js | 25 + manifest.json | 91 +++ package.json | 11 + pages.json | 97 ++++ pages/guide-page/guide-page.vue | 67 +++ pages/login/agreement.vue | 22 + pages/login/login.vue | 23 + pages/tabbar/feedback/feedback.vue | 23 + pages/tabbar/my/my.vue | 44 ++ pages/tabbar/pagehome/pagehome.vue | 32 ++ pages/tabbar/project-list/project-list.vue | 23 + project.config.json | 77 +++ readme.md | 18 + static/tabbar/icon-mo-fun.png | Bin 0 -> 2081 bytes static/tabbar/icon-mo-home.png | Bin 0 -> 1596 bytes static/tabbar/icon-mo-news.png | Bin 0 -> 1850 bytes static/tabbar/icon-mo-person.png | Bin 0 -> 1835 bytes static/tabbar/icon-scan.png | Bin 0 -> 2605 bytes static/tabbar/icon-select-fun.png | Bin 0 -> 2138 bytes static/tabbar/icon-select-home.png | Bin 0 -> 1603 bytes static/tabbar/icon-select-person.png | Bin 0 -> 1760 bytes uni.scss | 76 +++ 46 files changed, 3854 insertions(+) create mode 100644 .gitignore create mode 100644 App.vue create mode 100644 commons/animate.min.css create mode 100644 commons/base.css create mode 100644 commons/icon-font.css create mode 100644 components/containers/container-subgroup.vue create mode 100644 components/foot-tabs/foot-tab-one.vue create mode 100644 components/function-list/function-list.vue create mode 100644 components/list/list-one.vue create mode 100644 components/list/list-two.vue create mode 100644 components/lw-notice/iconFont.vue create mode 100644 components/lw-notice/icons.js create mode 100644 components/lw-notice/lw-notice.vue create mode 100644 components/nothing/nothing-page.vue create mode 100644 components/nothing/pitera.vue create mode 100644 components/public-customer.vue create mode 100644 components/shareAll.vue create mode 100644 components/status-nav.vue create mode 100644 components/swiper-tab/swiper-tab.vue create mode 100644 components/swiper/swiper-pu.vue create mode 100644 jsFile/base64-src.js create mode 100644 jsFile/requst.js create mode 100644 jsFile/share.js create mode 100644 jsFile/tools.js create mode 100644 main.js create mode 100644 manifest.json create mode 100644 package.json create mode 100644 pages.json create mode 100644 pages/guide-page/guide-page.vue create mode 100644 pages/login/agreement.vue create mode 100644 pages/login/login.vue create mode 100644 pages/tabbar/feedback/feedback.vue create mode 100644 pages/tabbar/my/my.vue create mode 100644 pages/tabbar/pagehome/pagehome.vue create mode 100644 pages/tabbar/project-list/project-list.vue create mode 100644 project.config.json create mode 100644 readme.md create mode 100644 static/tabbar/icon-mo-fun.png create mode 100644 static/tabbar/icon-mo-home.png create mode 100644 static/tabbar/icon-mo-news.png create mode 100644 static/tabbar/icon-mo-person.png create mode 100644 static/tabbar/icon-scan.png create mode 100644 static/tabbar/icon-select-fun.png create mode 100644 static/tabbar/icon-select-home.png create mode 100644 static/tabbar/icon-select-person.png create mode 100644 uni.scss diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..f4cd8cf --- /dev/null +++ b/.gitignore @@ -0,0 +1,9 @@ +/vendor +/node_modules +/public/storage +/unpackage +/.hbuilderx +Homestead.yaml +Homestead.json +.env +.idea diff --git a/App.vue b/App.vue new file mode 100644 index 0000000..59cc84a --- /dev/null +++ b/App.vue @@ -0,0 +1,42 @@ + + + diff --git a/commons/animate.min.css b/commons/animate.min.css new file mode 100644 index 0000000..8ae4afd --- /dev/null +++ b/commons/animate.min.css @@ -0,0 +1,12 @@ +@charset "UTF-8";/*! +Animate.css - http://daneden.me/animate +Licensed under the MIT license + +Copyright (c) 2013 Daniel Eden + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. +*/.animated{-webkit-animation-duration:1s;animation-duration:1s;-webkit-animation-fill-mode:both;animation-fill-mode:both}.animated.infinite{-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite}.animated.hinge{-webkit-animation-duration:2s;animation-duration:2s}@-webkit-keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);transform:translateY(-15px)}}@keyframes bounce{0%,100%,20%,50%,80%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}40%{-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}60%{-webkit-transform:translateY(-15px);-ms-transform:translateY(-15px);transform:translateY(-15px)}}.bounce{-webkit-animation-name:bounce;animation-name:bounce}@-webkit-keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}@keyframes flash{0%,100%,50%{opacity:1}25%,75%{opacity:0}}.flash{-webkit-animation-name:flash;animation-name:flash}@-webkit-keyframes pulse{0%{-webkit-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes pulse{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.pulse{-webkit-animation-name:pulse;animation-name:pulse}@-webkit-keyframes rubberBand{0%{-webkit-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes rubberBand{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}30%{-webkit-transform:scaleX(1.25) scaleY(0.75);-ms-transform:scaleX(1.25) scaleY(0.75);transform:scaleX(1.25) scaleY(0.75)}40%{-webkit-transform:scaleX(0.75) scaleY(1.25);-ms-transform:scaleX(0.75) scaleY(1.25);transform:scaleX(0.75) scaleY(1.25)}60%{-webkit-transform:scaleX(1.15) scaleY(0.85);-ms-transform:scaleX(1.15) scaleY(0.85);transform:scaleX(1.15) scaleY(0.85)}100%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.rubberBand{-webkit-animation-name:rubberBand;animation-name:rubberBand}@-webkit-keyframes shake{0%,100%{-webkit-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);transform:translateX(10px)}}@keyframes shake{0%,100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}10%,30%,50%,70%,90%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}20%,40%,60%,80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}}.shake{-webkit-animation-name:shake;animation-name:shake}@-webkit-keyframes swing{20%{-webkit-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}}@keyframes swing{20%{-webkit-transform:rotate(15deg);-ms-transform:rotate(15deg);transform:rotate(15deg)}40%{-webkit-transform:rotate(-10deg);-ms-transform:rotate(-10deg);transform:rotate(-10deg)}60%{-webkit-transform:rotate(5deg);-ms-transform:rotate(5deg);transform:rotate(5deg)}80%{-webkit-transform:rotate(-5deg);-ms-transform:rotate(-5deg);transform:rotate(-5deg)}100%{-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg)}}.swing{-webkit-transform-origin:top center;-ms-transform-origin:top center;transform-origin:top center;-webkit-animation-name:swing;animation-name:swing}@-webkit-keyframes tada{0%{-webkit-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}@keyframes tada{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}10%,20%{-webkit-transform:scale(0.9) rotate(-3deg);-ms-transform:scale(0.9) rotate(-3deg);transform:scale(0.9) rotate(-3deg)}30%,50%,70%,90%{-webkit-transform:scale(1.1) rotate(3deg);-ms-transform:scale(1.1) rotate(3deg);transform:scale(1.1) rotate(3deg)}40%,60%,80%{-webkit-transform:scale(1.1) rotate(-3deg);-ms-transform:scale(1.1) rotate(-3deg);transform:scale(1.1) rotate(-3deg)}100%{-webkit-transform:scale(1) rotate(0);-ms-transform:scale(1) rotate(0);transform:scale(1) rotate(0)}}.tada{-webkit-animation-name:tada;animation-name:tada}@-webkit-keyframes wobble{0%{-webkit-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);transform:translateX(0%)}}@keyframes wobble{0%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}15%{-webkit-transform:translateX(-25%) rotate(-5deg);-ms-transform:translateX(-25%) rotate(-5deg);transform:translateX(-25%) rotate(-5deg)}30%{-webkit-transform:translateX(20%) rotate(3deg);-ms-transform:translateX(20%) rotate(3deg);transform:translateX(20%) rotate(3deg)}45%{-webkit-transform:translateX(-15%) rotate(-3deg);-ms-transform:translateX(-15%) rotate(-3deg);transform:translateX(-15%) rotate(-3deg)}60%{-webkit-transform:translateX(10%) rotate(2deg);-ms-transform:translateX(10%) rotate(2deg);transform:translateX(10%) rotate(2deg)}75%{-webkit-transform:translateX(-5%) rotate(-1deg);-ms-transform:translateX(-5%) rotate(-1deg);transform:translateX(-5%) rotate(-1deg)}100%{-webkit-transform:translateX(0%);-ms-transform:translateX(0%);transform:translateX(0%)}}.wobble{-webkit-animation-name:wobble;animation-name:wobble}@-webkit-keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1;-webkit-transform:scale(1.05);-ms-transform:scale(1.05);transform:scale(1.05)}70%{-webkit-transform:scale(.9);-ms-transform:scale(.9);transform:scale(.9)}100%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}}.bounceIn{-webkit-animation-name:bounceIn;animation-name:bounceIn}@-webkit-keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}60%{opacity:1;-webkit-transform:translateY(30px);-ms-transform:translateY(30px);transform:translateY(30px)}80%{-webkit-transform:translateY(-10px);-ms-transform:translateY(-10px);transform:translateY(-10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInDown{-webkit-animation-name:bounceInDown;animation-name:bounceInDown}@-webkit-keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}60%{opacity:1;-webkit-transform:translateX(30px);-ms-transform:translateX(30px);transform:translateX(30px)}80%{-webkit-transform:translateX(-10px);-ms-transform:translateX(-10px);transform:translateX(-10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInLeft{-webkit-animation-name:bounceInLeft;animation-name:bounceInLeft}@-webkit-keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes bounceInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}60%{opacity:1;-webkit-transform:translateX(-30px);-ms-transform:translateX(-30px);transform:translateX(-30px)}80%{-webkit-transform:translateX(10px);-ms-transform:translateX(10px);transform:translateX(10px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.bounceInRight{-webkit-animation-name:bounceInRight;animation-name:bounceInRight}@-webkit-keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes bounceInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}60%{opacity:1;-webkit-transform:translateY(-30px);-ms-transform:translateY(-30px);transform:translateY(-30px)}80%{-webkit-transform:translateY(10px);-ms-transform:translateY(10px);transform:translateY(10px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.bounceInUp{-webkit-animation-name:bounceInUp;animation-name:bounceInUp}@-webkit-keyframes bounceOut{0%{-webkit-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}}@keyframes bounceOut{0%{-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}25%{-webkit-transform:scale(.95);-ms-transform:scale(.95);transform:scale(.95)}50%{opacity:1;-webkit-transform:scale(1.1);-ms-transform:scale(1.1);transform:scale(1.1)}100%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}}.bounceOut{-webkit-animation-name:bounceOut;animation-name:bounceOut}@-webkit-keyframes bounceOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes bounceOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.bounceOutDown{-webkit-animation-name:bounceOutDown;animation-name:bounceOutDown}@-webkit-keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes bounceOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.bounceOutLeft{-webkit-animation-name:bounceOutLeft;animation-name:bounceOutLeft}@-webkit-keyframes bounceOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes bounceOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}20%{opacity:1;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.bounceOutRight{-webkit-animation-name:bounceOutRight;animation-name:bounceOutRight}@-webkit-keyframes bounceOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes bounceOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}20%{opacity:1;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.bounceOutUp{-webkit-animation-name:bounceOutUp;animation-name:bounceOutUp}@-webkit-keyframes fadeIn{0%{opacity:0}100%{opacity:1}}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.fadeIn{-webkit-animation-name:fadeIn;animation-name:fadeIn}@-webkit-keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDown{-webkit-animation-name:fadeInDown;animation-name:fadeInDown}@-webkit-keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInDownBig{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInDownBig{-webkit-animation-name:fadeInDownBig;animation-name:fadeInDownBig}@-webkit-keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeft{0%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeft{-webkit-animation-name:fadeInLeft;animation-name:fadeInLeft}@-webkit-keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInLeftBig{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInLeftBig{-webkit-animation-name:fadeInLeftBig;animation-name:fadeInLeftBig}@-webkit-keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRight{0%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRight{-webkit-animation-name:fadeInRight;animation-name:fadeInRight}@-webkit-keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes fadeInRightBig{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.fadeInRightBig{-webkit-animation-name:fadeInRightBig;animation-name:fadeInRightBig}@-webkit-keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUp{0%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUp{-webkit-animation-name:fadeInUp;animation-name:fadeInUp}@-webkit-keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes fadeInUpBig{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.fadeInUpBig{-webkit-animation-name:fadeInUpBig;animation-name:fadeInUpBig}@-webkit-keyframes fadeOut{0%{opacity:1}100%{opacity:0}}@keyframes fadeOut{0%{opacity:1}100%{opacity:0}}.fadeOut{-webkit-animation-name:fadeOut;animation-name:fadeOut}@-webkit-keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);transform:translateY(20px)}}@keyframes fadeOutDown{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(20px);-ms-transform:translateY(20px);transform:translateY(20px)}}.fadeOutDown{-webkit-animation-name:fadeOutDown;animation-name:fadeOutDown}@-webkit-keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes fadeOutDownBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.fadeOutDownBig{-webkit-animation-name:fadeOutDownBig;animation-name:fadeOutDownBig}@-webkit-keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);transform:translateX(-20px)}}@keyframes fadeOutLeft{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-20px);-ms-transform:translateX(-20px);transform:translateX(-20px)}}.fadeOutLeft{-webkit-animation-name:fadeOutLeft;animation-name:fadeOutLeft}@-webkit-keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes fadeOutLeftBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.fadeOutLeftBig{-webkit-animation-name:fadeOutLeftBig;animation-name:fadeOutLeftBig}@-webkit-keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);transform:translateX(20px)}}@keyframes fadeOutRight{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(20px);-ms-transform:translateX(20px);transform:translateX(20px)}}.fadeOutRight{-webkit-animation-name:fadeOutRight;animation-name:fadeOutRight}@-webkit-keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes fadeOutRightBig{0%{opacity:1;-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.fadeOutRightBig{-webkit-animation-name:fadeOutRightBig;animation-name:fadeOutRightBig}@-webkit-keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);transform:translateY(-20px)}}@keyframes fadeOutUp{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-20px);-ms-transform:translateY(-20px);transform:translateY(-20px)}}.fadeOutUp{-webkit-animation-name:fadeOutUp;animation-name:fadeOutUp}@-webkit-keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes fadeOutUpBig{0%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.fadeOutUpBig{-webkit-animation-name:fadeOutUpBig;animation-name:fadeOutUpBig}@-webkit-keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}@keyframes flip{0%{-webkit-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(0) scale(1);transform:perspective(400px) translateZ(0) rotateY(0) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}40%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(170deg) scale(1);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}50%{-webkit-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-ms-transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);transform:perspective(400px) translateZ(150px) rotateY(190deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}80%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-ms-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(.95);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}100%{-webkit-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-ms-transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);transform:perspective(400px) translateZ(0) rotateY(360deg) scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}}.animated.flip{-webkit-backface-visibility:visible;-ms-backface-visibility:visible;backface-visibility:visible;-webkit-animation-name:flip;animation-name:flip}@-webkit-keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}@keyframes flipInX{0%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateX(-10deg);-ms-transform:perspective(400px) rotateX(-10deg);transform:perspective(400px) rotateX(-10deg)}70%{-webkit-transform:perspective(400px) rotateX(10deg);-ms-transform:perspective(400px) rotateX(10deg);transform:perspective(400px) rotateX(10deg)}100%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}}.flipInX{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInX;animation-name:flipInX}@-webkit-keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}@keyframes flipInY{0%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}40%{-webkit-transform:perspective(400px) rotateY(-10deg);-ms-transform:perspective(400px) rotateY(-10deg);transform:perspective(400px) rotateY(-10deg)}70%{-webkit-transform:perspective(400px) rotateY(10deg);-ms-transform:perspective(400px) rotateY(10deg);transform:perspective(400px) rotateY(10deg)}100%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}}.flipInY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipInY;animation-name:flipInY}@-webkit-keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}@keyframes flipOutX{0%{-webkit-transform:perspective(400px) rotateX(0deg);-ms-transform:perspective(400px) rotateX(0deg);transform:perspective(400px) rotateX(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateX(90deg);-ms-transform:perspective(400px) rotateX(90deg);transform:perspective(400px) rotateX(90deg);opacity:0}}.flipOutX{-webkit-animation-name:flipOutX;animation-name:flipOutX;-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important}@-webkit-keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}@keyframes flipOutY{0%{-webkit-transform:perspective(400px) rotateY(0deg);-ms-transform:perspective(400px) rotateY(0deg);transform:perspective(400px) rotateY(0deg);opacity:1}100%{-webkit-transform:perspective(400px) rotateY(90deg);-ms-transform:perspective(400px) rotateY(90deg);transform:perspective(400px) rotateY(90deg);opacity:0}}.flipOutY{-webkit-backface-visibility:visible!important;-ms-backface-visibility:visible!important;backface-visibility:visible!important;-webkit-animation-name:flipOutY;animation-name:flipOutY}@-webkit-keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}@keyframes lightSpeedIn{0%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}60%{-webkit-transform:translateX(-20%) skewX(30deg);-ms-transform:translateX(-20%) skewX(30deg);transform:translateX(-20%) skewX(30deg);opacity:1}80%{-webkit-transform:translateX(0%) skewX(-15deg);-ms-transform:translateX(0%) skewX(-15deg);transform:translateX(0%) skewX(-15deg);opacity:1}100%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}}.lightSpeedIn{-webkit-animation-name:lightSpeedIn;animation-name:lightSpeedIn;-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}@-webkit-keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}@keyframes lightSpeedOut{0%{-webkit-transform:translateX(0%) skewX(0deg);-ms-transform:translateX(0%) skewX(0deg);transform:translateX(0%) skewX(0deg);opacity:1}100%{-webkit-transform:translateX(100%) skewX(-30deg);-ms-transform:translateX(100%) skewX(-30deg);transform:translateX(100%) skewX(-30deg);opacity:0}}.lightSpeedOut{-webkit-animation-name:lightSpeedOut;animation-name:lightSpeedOut;-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}@-webkit-keyframes rotateIn{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateIn{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(-200deg);-ms-transform:rotate(-200deg);transform:rotate(-200deg);opacity:0}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateIn{-webkit-animation-name:rotateIn;animation-name:rotateIn}@-webkit-keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownLeft{-webkit-animation-name:rotateInDownLeft;animation-name:rotateInDownLeft}@-webkit-keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInDownRight{-webkit-animation-name:rotateInDownRight;animation-name:rotateInDownRight}@-webkit-keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpLeft{-webkit-animation-name:rotateInUpLeft;animation-name:rotateInUpLeft}@-webkit-keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}}@keyframes rotateInUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}}.rotateInUpRight{-webkit-animation-name:rotateInUpRight;animation-name:rotateInUpRight}@-webkit-keyframes rotateOut{0%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}@keyframes rotateOut{0%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:center center;-ms-transform-origin:center center;transform-origin:center center;-webkit-transform:rotate(200deg);-ms-transform:rotate(200deg);transform:rotate(200deg);opacity:0}}.rotateOut{-webkit-animation-name:rotateOut;animation-name:rotateOut}@-webkit-keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutDownLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutDownLeft{-webkit-animation-name:rotateOutDownLeft;animation-name:rotateOutDownLeft}@-webkit-keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutDownRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutDownRight{-webkit-animation-name:rotateOutDownRight;animation-name:rotateOutDownRight}@-webkit-keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}@keyframes rotateOutUpLeft{0%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:left bottom;-ms-transform-origin:left bottom;transform-origin:left bottom;-webkit-transform:rotate(-90deg);-ms-transform:rotate(-90deg);transform:rotate(-90deg);opacity:0}}.rotateOutUpLeft{-webkit-animation-name:rotateOutUpLeft;animation-name:rotateOutUpLeft}@-webkit-keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}@keyframes rotateOutUpRight{0%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);opacity:1}100%{-webkit-transform-origin:right bottom;-ms-transform-origin:right bottom;transform-origin:right bottom;-webkit-transform:rotate(90deg);-ms-transform:rotate(90deg);transform:rotate(90deg);opacity:0}}.rotateOutUpRight{-webkit-animation-name:rotateOutUpRight;animation-name:rotateOutUpRight}@-webkit-keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInDown{0%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}100%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInDown{-webkit-animation-name:slideInDown;animation-name:slideInDown}@-webkit-keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInLeft{-webkit-animation-name:slideInLeft;animation-name:slideInLeft}@-webkit-keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}100%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}}.slideInRight{-webkit-animation-name:slideInRight;animation-name:slideInRight}@-webkit-keyframes slideOutLeft{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);transform:translateX(-2000px)}}@keyframes slideOutLeft{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(-2000px);-ms-transform:translateX(-2000px);transform:translateX(-2000px)}}.slideOutLeft{-webkit-animation-name:slideOutLeft;animation-name:slideOutLeft}@-webkit-keyframes slideOutRight{0%{-webkit-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);transform:translateX(2000px)}}@keyframes slideOutRight{0%{-webkit-transform:translateX(0);-ms-transform:translateX(0);transform:translateX(0)}100%{opacity:0;-webkit-transform:translateX(2000px);-ms-transform:translateX(2000px);transform:translateX(2000px)}}.slideOutRight{-webkit-animation-name:slideOutRight;animation-name:slideOutRight}@-webkit-keyframes slideOutUp{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);transform:translateY(-2000px)}}@keyframes slideOutUp{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(-2000px);-ms-transform:translateY(-2000px);transform:translateY(-2000px)}}.slideOutUp{-webkit-animation-name:slideOutUp;animation-name:slideOutUp}@-webkit-keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);transform:translateY(0)}}@keyframes slideInUp{0%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}100%{opacity:1;-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}}.slideInUp{-webkit-animation-name:slideInUp;animation-name:slideInUp}@-webkit-keyframes slideOutDown{0%{-webkit-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);transform:translateY(2000px)}}@keyframes slideOutDown{0%{-webkit-transform:translateY(0);-ms-transform:translateY(0);transform:translateY(0)}100%{opacity:0;-webkit-transform:translateY(2000px);-ms-transform:translateY(2000px);transform:translateY(2000px)}}.slideOutDown{-webkit-animation-name:slideOutDown;animation-name:slideOutDown}@-webkit-keyframes hinge{0%{-webkit-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);transform:translateY(700px);opacity:0}}@keyframes hinge{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}20%,60%{-webkit-transform:rotate(80deg);-ms-transform:rotate(80deg);transform:rotate(80deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}40%{-webkit-transform:rotate(60deg);-ms-transform:rotate(60deg);transform:rotate(60deg);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}80%{-webkit-transform:rotate(60deg) translateY(0);-ms-transform:rotate(60deg) translateY(0);transform:rotate(60deg) translateY(0);-webkit-transform-origin:top left;-ms-transform-origin:top left;transform-origin:top left;-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out;opacity:1}100%{-webkit-transform:translateY(700px);-ms-transform:translateY(700px);transform:translateY(700px);opacity:0}}.hinge{-webkit-animation-name:hinge;animation-name:hinge}@-webkit-keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}@keyframes rollIn{0%{opacity:0;-webkit-transform:translateX(-100%) rotate(-120deg);-ms-transform:translateX(-100%) rotate(-120deg);transform:translateX(-100%) rotate(-120deg)}100%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}}.rollIn{-webkit-animation-name:rollIn;animation-name:rollIn}@-webkit-keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}@keyframes rollOut{0%{opacity:1;-webkit-transform:translateX(0px) rotate(0deg);-ms-transform:translateX(0px) rotate(0deg);transform:translateX(0px) rotate(0deg)}100%{opacity:0;-webkit-transform:translateX(100%) rotate(120deg);-ms-transform:translateX(100%) rotate(120deg);transform:translateX(100%) rotate(120deg)}}.rollOut{-webkit-animation-name:rollOut;animation-name:rollOut}@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}50%{opacity:1}}.zoomIn{-webkit-animation-name:zoomIn;animation-name:zoomIn}@-webkit-keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInDown{0%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInDown{-webkit-animation-name:zoomInDown;animation-name:zoomInDown}@-webkit-keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInLeft{0%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(48px);-ms-transform:scale(.475) translateX(48px);transform:scale(.475) translateX(48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInLeft{-webkit-animation-name:zoomInLeft;animation-name:zoomInLeft}@-webkit-keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInRight{0%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateX(-48px);-ms-transform:scale(.475) translateX(-48px);transform:scale(.475) translateX(-48px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInRight{-webkit-animation-name:zoomInRight;animation-name:zoomInRight}@-webkit-keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}@keyframes zoomInUp{0%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-animation-timing-function:ease-in-out;animation-timing-function:ease-in-out}60%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}}.zoomInUp{-webkit-animation-name:zoomInUp;animation-name:zoomInUp}@-webkit-keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}@keyframes zoomOut{0%{opacity:1;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1)}50%{opacity:0;-webkit-transform:scale(.3);-ms-transform:scale(.3);transform:scale(.3)}100%{opacity:0}}.zoomOut{-webkit-animation-name:zoomOut;animation-name:zoomOut}@-webkit-keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;transform-origin:center bottom}}@keyframes zoomOutDown{40%{opacity:1;-webkit-transform:scale(.475) translateY(-60px);-ms-transform:scale(.475) translateY(-60px);transform:scale(.475) translateY(-60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(2000px);-ms-transform:scale(.1) translateY(2000px);transform:scale(.1) translateY(2000px);-webkit-transform-origin:center bottom;-ms-transform-origin:center bottom;transform-origin:center bottom}}.zoomOutDown{-webkit-animation-name:zoomOutDown;animation-name:zoomOutDown}@-webkit-keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;transform-origin:left center}}@keyframes zoomOutLeft{40%{opacity:1;-webkit-transform:scale(.475) translateX(42px);-ms-transform:scale(.475) translateX(42px);transform:scale(.475) translateX(42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(-2000px);-ms-transform:scale(.1) translateX(-2000px);transform:scale(.1) translateX(-2000px);-webkit-transform-origin:left center;-ms-transform-origin:left center;transform-origin:left center}}.zoomOutLeft{-webkit-animation-name:zoomOutLeft;animation-name:zoomOutLeft}@-webkit-keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;transform-origin:right center}}@keyframes zoomOutRight{40%{opacity:1;-webkit-transform:scale(.475) translateX(-42px);-ms-transform:scale(.475) translateX(-42px);transform:scale(.475) translateX(-42px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateX(2000px);-ms-transform:scale(.1) translateX(2000px);transform:scale(.1) translateX(2000px);-webkit-transform-origin:right center;-ms-transform-origin:right center;transform-origin:right center}}.zoomOutRight{-webkit-animation-name:zoomOutRight;animation-name:zoomOutRight}@-webkit-keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;transform-origin:center top}}@keyframes zoomOutUp{40%{opacity:1;-webkit-transform:scale(.475) translateY(60px);-ms-transform:scale(.475) translateY(60px);transform:scale(.475) translateY(60px);-webkit-animation-timing-function:linear;animation-timing-function:linear}100%{opacity:0;-webkit-transform:scale(.1) translateY(-2000px);-ms-transform:scale(.1) translateY(-2000px);transform:scale(.1) translateY(-2000px);-webkit-transform-origin:center top;-ms-transform-origin:center top;transform-origin:center top}}.zoomOutUp{-webkit-animation-name:zoomOutUp;animation-name:zoomOutUp} \ No newline at end of file diff --git a/commons/base.css b/commons/base.css new file mode 100644 index 0000000..7915eae --- /dev/null +++ b/commons/base.css @@ -0,0 +1,365 @@ + + + + + + + + + + +/* @media screen and (height:812px){ +} +@media screen and (height:844px){ +} +@media screen and (height:896px){ +} +@media screen and (min-height:926px){ +} + */ + + + + +.bottoc{margin-top: 6rpx;color: #414141;} +.opc{opacity: 0.7;} +.width100{width: 100%;} +.width55{width: 55%;} +.width50{width: 50%;} +.width49{width: 49%;} +.width48_5{width: 48.5%;} +.width48{width: 48%;} +.width47{width: 47%;} +.width46{width: 46%;} +.width45{width: 45%;} +.width33{width: 33%;} +.width25{width: 25%;} + +.posAll{position: fixed;top: 0;left: 0;right: 0;bottom: 0;background-color: rgba(0,0,0,.45);z-index: 12;} +.posir{position: relative;} +.posia{position: absolute;} +.poszy{position: fixed;left: 0;right: 0;z-index: 3;} +.posiszy{position: fixed;left: 0;right: 0;z-index: 5;} +.posixzy{position: fixed;left: 0;right: 0;z-index: 2;bottom: 0;} +.posia-op{position: absolute;top: 0;right: 0;left: 0;bottom: 0;opacity: 0;} +.syxzo{top: 0;left: 0;right: 0;bottom: 0;opacity: 0;} + + +.dis{display: flex;} +.disac{display: flex;align-items: center;} +.disja{display: flex;justify-content: space-around;} +.disjb{display: flex;justify-content: space-between;} +.disje{display: flex;justify-content: flex-end;} +.disjbac{display: flex;justify-content: space-between;align-items: center;} +.disjcac{display: flex;justify-content: center;align-items: center;} +.fc{flex-direction: column;} +.fw{flex-wrap: wrap;} +.fe{justify-content: flex-end;} +.flexs{flex-shrink: 0;} + + +.wh42{width: 42rpx;height: 42rpx;} +.wh44{width: 44rpx;height: 44rpx;} + +button:after{content: none!important;} +.borbot{border-bottom: 2rpx solid #E6E6E6;} +.borbot:last-child{border-bottom: none;} +.bbot{border-bottom: 2rpx solid #E6E6E6;} +.borbot-df{border: 2rpx solid #DFDFDF;} +.borbot-cc{border: 2rpx solid #CCCCCC;} + +/* 行高 */ +.line-h30{line-height: 30rpx;} +.line-h32{line-height: 32rpx;} +.line-h34{line-height: 34rpx;} +.line-h36{line-height: 36rpx;} +.line-h38{line-height: 38rpx;} +.line-h40{line-height: 40rpx;} +.line-h42{line-height: 42rpx;} +.line-h44{line-height: 44rpx;} +.line-h46{line-height: 46rpx;} +.line-h48{line-height: 48rpx;} +.line-h50{line-height: 50rpx;} +.line-h52{line-height: 52rpx;} +.line-h54{line-height: 54rpx;} +.line-h56{line-height: 56rpx;} +.line-h58{line-height: 58rpx;} +.line-h60{line-height: 60rpx;} +.line-h62{line-height: 62rpx;} +.line-h64{line-height: 64rpx;} +.line-h66{line-height: 66rpx;} +.line-h68{line-height: 60rpx;} +.line-h70{line-height: 70rpx;} +.line-h72{line-height: 72rpx;} +.line-h74{line-height: 74rpx;} + + +.clips1{display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 1;overflow: hidden;text-overflow: ellipsis;word-wrap: break-word;word-break:break-all;} +.clips2{display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 2;overflow: hidden;text-overflow: ellipsis;word-wrap: break-word;word-break:break-all;} +.clips3{display: -webkit-box;-webkit-box-orient: vertical;-webkit-line-clamp: 3;overflow: hidden;text-overflow: ellipsis;word-wrap: break-word;word-break:break-all;} + + +/* 字体大小 */ +.fon20{font-size: 20rpx;} +.fon22{font-size: 22rpx;} +.fon24{font-size: 24rpx;} +.fon25{font-size: 25rpx;} +.fon26{font-size: 26rpx;} +.fon27{font-size: 27rpx;} +.fon28{font-size: 28rpx;} +.fon30{font-size: 30rpx;} +.fon32{font-size: 32rpx;} +.fon34{font-size: 34rpx;} +.fon36{font-size: 36rpx;} +.fon38{font-size: 38rpx;} +.fon40{font-size: 40rpx;} +.fon42{font-size: 42rpx;} +.fon44{font-size: 44rpx;} +.fon46{font-size: 46rpx;} +.fon48{font-size: 48rpx;} +.fon50{font-size: 50rpx;} +.fon52{font-size: 52rpx;} +.fon54{font-size: 54rpx;} +.fon56{font-size: 56rpx;} +.fon58{font-size: 58rpx;} +.fon60{font-size: 60rpx;} +.fon62{font-size: 62rpx;} +.fon64{font-size: 64rpx;} +.fon66{font-size: 66rpx;} +.fon68{font-size: 68rpx;} +.fon70{font-size: 70rpx;} +.fon72{font-size: 72rpx;} + +/* 字体颜色 */ +.colf{color: #FFFFFF;} +.colf6{color: #f6f6f6;} +.colb{color: #000000;} +.colc{color: #CCCCCC;} +.col3{color: #333333;} +.col34{color: #343434;} +.col6{color: #666666;} +.colf8{color: #F85050;} +.col9{color: #999999;} +.pcol{color: #3875F6;} +.col2c{color: #2C2C2C;} +.col80{color: #808080;} +.col7D{color: #7D7D7D;} +.colB3{color: #B3B3B3;} +.col5b{color: #5B5B5B;} +.colpeili{color: #868695;} +/* 佩丽字体颜色 */ +.peili-colorRed{color: #fe2525;} + + +/* 字体位置 */ +.tc{text-align: center;} +.tright{text-align: right;} + +/* 行间距 */ +.linh40{line-height: 40rpx;} +.linh50{line-height: 50rpx;} +.linh60{line-height: 60rpx;} +.linh70{line-height: 70rpx;} + +/* 粗体 */ +.bold{font-weight: bold;} +.bold400{font-weight: 400;} +.bold500{font-weight: 500;} +.font5{font-weight: 500;} +.font4{font-weight: 400;} + + +/* 背景颜色 */ +.pbackc{background-color: #3875F6;} +.bacf{background-color: #FFFFFF;} +.bac0{background-color: #000000;} +.bcdb{background-color: #DBDBDB;} +.bcf8{background: #F85050;} +.bacf5{background: #F5F5F5;} +.bacf6{background-color: #f6f6f6;} +/* 佩丽商城背景色 */ +.peili-backColor{background-color: #fe2525;} + + +/* 文本居中方式 */ +.tcenter{text-align: center;} + + +/* 圆角 */ +.radius10{border-radius: 10rpx;} +.radius15{border-radius: 15rpx;} +.radius20{border-radius: 20rpx;} +.radius30{border-radius: 30rpx;} +.radius35{border-radius: 35rpx;} +.radius40{border-radius: 40rpx;} +.radius45{border-radius: 45rpx;} + +/* 上下左右---外边距 */ +.mar10{margin: 10rpx;} +.mar20{margin: 20rpx;} +.mar25{margin: 25rpx;} +.mar30{margin: 30rpx;} +.mar32{margin: 32rpx;} +.mar36{margin: 36rpx;} +.mar40{margin: 40rpx;} +.mar50{margin: 50rpx;} +/* 上下---外边距 */ +.mar-sx10{margin-top: 10rpx;margin-bottom: 10rpx;} +.mar-sx20{margin-top: 20rpx;margin-bottom: 20rpx;} +.mar-sx25{margin-top: 25rpx;margin-bottom: 25rpx;} +.mar-sx30{margin-top: 30rpx;margin-bottom: 30rpx;} +.mar-sx32{margin-top: 32rpx;margin-bottom: 32rpx;} +.mar-sx36{margin-top: 36rpx;margin-bottom: 36rpx;} +.mar-sx40{margin-top: 40rpx;margin-bottom: 40rpx;} +.mar-sx50{margin-top: 50rpx;margin-bottom: 50rpx;} +/* 左右---外边距 */ +.mar-zy10{margin-left: 10rpx;margin-right: 10rpx;} +.mar-zy20{margin-left: 20rpx;margin-right: 20rpx;} +.mar-zy25{margin-left: 25rpx;margin-right: 25rpx;} +.mar-zy30{margin-left: 30rpx;margin-right: 30rpx;} +.mar-zy32{margin-left: 32rpx;margin-right: 32rpx;} +.mar-zy36{margin-left: 36rpx;margin-right: 36rpx;} +.mar-zy40{margin-left: 40rpx;margin-right: 40rpx;} +.mar-zy50{margin-left: 50rpx;margin-right: 50rpx;} +.mar-zy85{margin-left: 85rpx;margin-right: 85rpx;} +/* 上---外边距 */ +.mar-s10{margin-top: 10rpx;} +.mar-s20{margin-top: 20rpx;} +.mar-s25{margin-top: 25rpx;} +.mar-s30{margin-top: 30rpx;} +.mar-s32{margin-top: 32rpx;} +.mar-s36{margin-top: 36rpx;} +.mar-s40{margin-top: 40rpx;} +.mar-s50{margin-top: 50rpx;} +.mar-s60{margin-top: 60rpx;} +.mar-s70{margin-top: 70rpx;} +.mar-s80{margin-top: 80rpx;} +.mar-s90{margin-top: 90rpx;} +.mar-s100{margin-top: 100rpx;} +.mar-s120{margin-top: 120rpx;} +.mar-s140{margin-top: 140rpx;} +.mar-s160{margin-top: 160rpx;} +.mar-s180{margin-top: 180rpx;} +/* 下---外边距 */ +.mar-x10{margin-bottom: 10rpx;} +.mar-x20{margin-bottom: 20rpx;} +.mar-x25{margin-bottom: 25rpx;} +.mar-x30{margin-bottom: 30rpx;} +.mar-x32{margin-bottom: 32rpx;} +.mar-x36{margin-bottom: 36rpx;} +.mar-x40{margin-bottom: 40rpx;} +.mar-x50{margin-bottom: 50rpx;} +.mar-x60{margin-bottom: 60rpx;} +.mar-x70{margin-bottom: 70rpx;} +.mar-x80{margin-bottom: 80rpx;} +.mar-x90{margin-bottom: 90rpx;} +.mar-x100{margin-bottom: 100rpx;} +.mar-x120{margin-bottom: 120rpx;} +.mar-x140{margin-bottom: 140rpx;} +.mar-x160{margin-bottom: 160rpx;} +.mar-x180{margin-bottom: 180rpx;} +/* 左---外边距 */ +.mar-z10{margin-left: 10rpx;} +.mar-z20{margin-left: 20rpx;} +.mar-z25{margin-left: 25rpx;} +.mar-z30{margin-left: 30rpx;} +.mar-z32{margin-left: 32rpx;} +.mar-z36{margin-left: 36rpx;} +.mar-z40{margin-left: 40rpx;} +.mar-z50{margin-left: 50rpx;} +/* 右---外边距 */ +.mar-y10{margin-right: 10rpx;} +.mar-y20{margin-right: 20rpx;} +.mar-y25{margin-right: 25rpx;} +.mar-y30{margin-right: 30rpx;} +.mar-y32{margin-right: 32rpx;} +.mar-y36{margin-right: 36rpx;} +.mar-y40{margin-right: 40rpx;} +.mar-y50{margin-right: 50rpx;} + +/* 上下左右---内边距 */ +.pad10{padding: 10rpx;} +.pad20{padding: 20rpx;} +.pad25{padding: 25rpx;} +.pad30{padding: 30rpx;} +.pad32{padding: 32rpx;} +.pad36{padding: 36rpx;} +.pad40{padding: 40rpx;} +.pad50{padding: 50rpx;} +/* 上下---内边距 */ +.pad-sx10{padding-top: 10rpx;padding-bottom: 10rpx;} +.pad-sx20{padding-top: 20rpx;padding-bottom: 20rpx;} +.pad-sx25{padding-top: 25rpx;padding-bottom: 25rpx;} +.pad-sx30{padding-top: 30rpx;padding-bottom: 30rpx;} +.pad-sx32{padding-top: 32rpx;padding-bottom: 32rpx;} +.pad-sx36{padding-top: 36rpx;padding-bottom: 36rpx;} +.pad-sx40{padding-top: 40rpx;padding-bottom: 40rpx;} +.pad-sx50{padding-top: 50rpx;padding-bottom: 50rpx;} +/* 左右---内边距 */ +.pad-zy10{padding-left: 10rpx;padding-right: 10rpx;} +.pad-zy20{padding-left: 20rpx;padding-right: 20rpx;} +.pad-zy25{padding-left: 25rpx;padding-right: 25rpx;} +.pad-zy30{padding-left: 30rpx;padding-right: 30rpx;} +.pad-zy32{padding-left: 32rpx;padding-right: 32rpx;} +.pad-zy36{padding-left: 36rpx;padding-right: 36rpx;} +.pad-zy40{padding-left: 40rpx;padding-right: 40rpx;} +.pad-zy50{padding-left: 50rpx;padding-right: 50rpx;} +/* 上---内边距 */ +.pad-s10{padding-top: 10rpx;} +.pad-s20{padding-top: 20rpx;} +.pad-s25{padding-top: 25rpx;} +.pad-s30{padding-top: 30rpx;} +.pad-s32{padding-top: 32rpx;} +.pad-s36{padding-top: 36rpx;} +.pad-s40{padding-top: 40rpx;} +.pad-s50{padding-top: 50rpx;} +/* 下---内边距 */ +.pad-x10{padding-bottom: 10rpx;} +.pad-x20{padding-bottom: 20rpx;} +.pad-x25{padding-bottom: 25rpx;} +.pad-x30{padding-bottom: 30rpx;} +.pad-x32{padding-bottom: 32rpx;} +.pad-x36{padding-bottom: 36rpx;} +.pad-x40{padding-bottom: 40rpx;} +.pad-x50{padding-bottom: 50rpx;} +.pad-x120{padding-bottom: 120rpx;} +.pad-x140{padding-bottom: 140rpx;} +.pad-x160{padding-bottom: 160rpx;} +.pad-x180{padding-bottom: 180rpx;} +.pad-x260{padding-bottom: 260rpx;} +/* 左---内边距 */ +.pad-z10{padding-left: 10rpx;} +.pad-z20{padding-left: 20rpx;} +.pad-z25{padding-left: 25rpx;} +.pad-z30{padding-left: 30rpx;} +.pad-z32{padding-left: 32rpx;} +.pad-z36{padding-left: 36rpx;} +.pad-z40{padding-left: 40rpx;} +.pad-z50{padding-left: 50rpx;} +/* 右---内边距 */ +.pad-y10{padding-right: 10rpx;} +.pad-y20{padding-right: 20rpx;} +.pad-y25{padding-right: 25rpx;} +.pad-y30{padding-right: 30rpx;} +.pad-y32{padding-right: 32rpx;} +.pad-y36{padding-right: 36rpx;} +.pad-y40{padding-right: 40rpx;} +.pad-y50{padding-right: 50rpx;} + +.pad-sx27-zy20{padding: 27rpx 20rpx;} + + + + +scroll-view ::-webkit-scrollbar { + display: none !important; + width: 0 !important; + height: 0 !important; + -webkit-appearance: none; + background: transparent; +} + + + + + diff --git a/commons/icon-font.css b/commons/icon-font.css new file mode 100644 index 0000000..32454bd --- /dev/null +++ b/commons/icon-font.css @@ -0,0 +1,119 @@ +@font-face { + font-family: "iconfont"; /* Project id 3180711 */ + src: url('https://at.alicdn.com/t/font_3180711_10x4pseyz93d.woff2?t=1647086207249') format('woff2'), + url('https://at.alicdn.com/t/font_3180711_10x4pseyz93d.woff?t=1647086207249') format('woff'), + url('https://at.alicdn.com/t/font_3180711_10x4pseyz93d.ttf?t=1647086207249') format('truetype'); +} + +.icon { + font-family: "iconfont" !important; + font-size: 16px; + font-style: normal; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; +} + +.icon-nothing-collection:before { + content: "\e610"; +} + +.icon-nothing-more:before { + content: "\e624"; +} + +.icon-nothing-data:before { + content: "\e60c"; +} + +.icon-address-check:before { + content: "\e6c2"; +} + +.icon-address-unchecked:before { + content: "\e623"; +} + +.icon-navigate-now:before { + content: "\e640"; +} + +.icon-send-goods:before { + content: "\e601"; +} + +.icon-payment:before { + content: "\e602"; +} + +.icon-finish:before { + content: "\e63f"; +} + +.icon-take:before { + content: "\e649"; +} + +.icon-refund:before { + content: "\e613"; +} + +.icon-customer-black:before { + content: "\ec2e"; +} + +.icon-customer:before { + content: "\e628"; +} + +.icon-check:before { + content: "\e61e"; +} + +.icon-del-white:before { + content: "\e61f"; +} + +.icon-screen:before { + content: "\e60b"; +} + +.icon-search:before { + content: "\e653"; +} + +.icon-caidan-mo:before { + content: "\e73e"; +} + +.icon-renwu-mo:before { + content: "\e73f"; +} + +.icon-shopp-cart:before { + content: "\e73d"; +} + +.icon-caidan-active:before { + content: "\e608"; +} + +.icon-renwu-acitve:before { + content: "\e67c"; +} + +.icon-home-mo:before { + content: "\e673"; +} + +.icon-home-active:before { + content: "\e674"; +} + +.icon-return:before { + content: "\e600"; +} + +.icon-next:before { + content: "\e60e"; +} + diff --git a/components/containers/container-subgroup.vue b/components/containers/container-subgroup.vue new file mode 100644 index 0000000..fa9a8e6 --- /dev/null +++ b/components/containers/container-subgroup.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/components/foot-tabs/foot-tab-one.vue b/components/foot-tabs/foot-tab-one.vue new file mode 100644 index 0000000..f4e6e96 --- /dev/null +++ b/components/foot-tabs/foot-tab-one.vue @@ -0,0 +1,193 @@ + + + + diff --git a/components/function-list/function-list.vue b/components/function-list/function-list.vue new file mode 100644 index 0000000..f7579df --- /dev/null +++ b/components/function-list/function-list.vue @@ -0,0 +1,85 @@ + + + + + diff --git a/components/list/list-one.vue b/components/list/list-one.vue new file mode 100644 index 0000000..1eb8ed7 --- /dev/null +++ b/components/list/list-one.vue @@ -0,0 +1,75 @@ + + + + + diff --git a/components/list/list-two.vue b/components/list/list-two.vue new file mode 100644 index 0000000..7e24653 --- /dev/null +++ b/components/list/list-two.vue @@ -0,0 +1,163 @@ + + + + + diff --git a/components/lw-notice/iconFont.vue b/components/lw-notice/iconFont.vue new file mode 100644 index 0000000..2a9093d --- /dev/null +++ b/components/lw-notice/iconFont.vue @@ -0,0 +1,61 @@ + + + + + diff --git a/components/lw-notice/icons.js b/components/lw-notice/icons.js new file mode 100644 index 0000000..67e17e3 --- /dev/null +++ b/components/lw-notice/icons.js @@ -0,0 +1,6 @@ +export default { + 'aixin':'\ue8ab', + 'rules':'\ue909', + 'sound':'\ue8ea', + 'arrowright':'\uee02' +} diff --git a/components/lw-notice/lw-notice.vue b/components/lw-notice/lw-notice.vue new file mode 100644 index 0000000..226235d --- /dev/null +++ b/components/lw-notice/lw-notice.vue @@ -0,0 +1,373 @@ + + + + + diff --git a/components/nothing/nothing-page.vue b/components/nothing/nothing-page.vue new file mode 100644 index 0000000..b0c34ae --- /dev/null +++ b/components/nothing/nothing-page.vue @@ -0,0 +1,41 @@ + + + + + diff --git a/components/nothing/pitera.vue b/components/nothing/pitera.vue new file mode 100644 index 0000000..25b6cc7 --- /dev/null +++ b/components/nothing/pitera.vue @@ -0,0 +1,54 @@ + + + + + diff --git a/components/public-customer.vue b/components/public-customer.vue new file mode 100644 index 0000000..742de2e --- /dev/null +++ b/components/public-customer.vue @@ -0,0 +1,100 @@ + + + + + diff --git a/components/shareAll.vue b/components/shareAll.vue new file mode 100644 index 0000000..7cbd813 --- /dev/null +++ b/components/shareAll.vue @@ -0,0 +1,42 @@ + + + + + diff --git a/components/status-nav.vue b/components/status-nav.vue new file mode 100644 index 0000000..3a72df5 --- /dev/null +++ b/components/status-nav.vue @@ -0,0 +1,185 @@ + + + + + diff --git a/components/swiper-tab/swiper-tab.vue b/components/swiper-tab/swiper-tab.vue new file mode 100644 index 0000000..6e77940 --- /dev/null +++ b/components/swiper-tab/swiper-tab.vue @@ -0,0 +1,172 @@ + + + + + diff --git a/components/swiper/swiper-pu.vue b/components/swiper/swiper-pu.vue new file mode 100644 index 0000000..d3852a3 --- /dev/null +++ b/components/swiper/swiper-pu.vue @@ -0,0 +1,132 @@ + + + + + diff --git a/jsFile/base64-src.js b/jsFile/base64-src.js new file mode 100644 index 0000000..8bf62bb --- /dev/null +++ b/jsFile/base64-src.js @@ -0,0 +1,201 @@ +function getLocalFilePath(path) { + if (path.indexOf('_www') === 0 || path.indexOf('_doc') === 0 || path.indexOf('_documents') === 0 || path.indexOf( + '_downloads') === 0) { + return path + } + if (path.indexOf('file://') === 0) { + return path + } + if (path.indexOf('/storage/emulated/0/') === 0) { + return path + } + if (path.indexOf('/') === 0) { + var localFilePath = plus.io.convertAbsoluteFileSystem(path) + if (localFilePath !== path) { + return localFilePath + } else { + path = path.substr(1) + } + } + return '_www/' + path +} + +function dataUrlToBase64(str) { + var array = str.split(',') + return array[array.length - 1] +} + +var index = 0 + +function getNewFileId() { + return Date.now() + String(index++) +} + +function biggerThan(v1, v2) { + var v1Array = v1.split('.') + var v2Array = v2.split('.') + var update = false + for (var index = 0; index < v2Array.length; index++) { + var diff = v1Array[index] - v2Array[index] + if (diff !== 0) { + update = diff > 0 + break + } + } + return update +} +// 图片路径转base64 +export function pathToBase64(path) { + return new Promise(function(resolve, reject) { + if (typeof window === 'object' && 'document' in window) { + if (typeof FileReader === 'function') { + var xhr = new XMLHttpRequest() + xhr.open('GET', path, true) + xhr.responseType = 'blob' + xhr.onload = function() { + if (this.status === 200) { + let fileReader = new FileReader() + fileReader.onload = function(e) { + resolve(e.target.result) + } + fileReader.onerror = reject + fileReader.readAsDataURL(this.response) + } + } + xhr.onerror = reject + xhr.send() + return + } + var canvas = document.createElement('canvas') + var c2x = canvas.getContext('2d') + var img = new Image + img.onload = function() { + canvas.width = img.width + canvas.height = img.height + c2x.drawImage(img, 0, 0) + resolve(canvas.toDataURL()) + canvas.height = canvas.width = 0 + } + img.onerror = reject + img.src = path + return + } + if (typeof plus === 'object') { + plus.io.resolveLocalFileSystemURL(getLocalFilePath(path), function(entry) { + entry.file(function(file) { + var fileReader = new plus.io.FileReader() + fileReader.onload = function(data) { + resolve(data.target.result) + } + fileReader.onerror = function(error) { + reject(error) + } + fileReader.readAsDataURL(file) + }, function(error) { + reject(error) + }) + }, function(error) { + reject(error) + }) + return + } + if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) { + wx.getFileSystemManager().readFile({ + filePath: path, + encoding: 'base64', + success: function(res) { + resolve('data:image/png;base64,' + res.data) + }, + fail: function(error) { + reject(error) + } + }) + return + } + reject(new Error('not support')) + }) +} +// base64转图片路径 +export function base64ToPath(base64) { + return new Promise(function(resolve, reject) { + if (typeof window === 'object' && 'document' in window) { + base64 = base64.split(',') + var type = base64[0].match(/:(.*?);/)[1] + var str = atob(base64[1]) + var n = str.length + var array = new Uint8Array(n) + while (n--) { + array[n] = str.charCodeAt(n) + } + return resolve((window.URL || window.webkitURL).createObjectURL(new Blob([array], { + type: type + }))) + } + var extName = base64.split(',')[0].match(/data\:\S+\/(\S+);/) + if (extName) { + extName = extName[1] + } else { + reject(new Error('base64 error')) + } + var fileName = getNewFileId() + '.' + extName + if (typeof plus === 'object') { + var basePath = '_doc' + var dirPath = 'uniapp_temp' + var filePath = basePath + '/' + dirPath + '/' + fileName + if (!biggerThan(plus.os.name === 'Android' ? '1.9.9.80627' : '1.9.9.80472', plus.runtime + .innerVersion)) { + plus.io.resolveLocalFileSystemURL(basePath, function(entry) { + entry.getDirectory(dirPath, { + create: true, + exclusive: false, + }, function(entry) { + entry.getFile(fileName, { + create: true, + exclusive: false, + }, function(entry) { + entry.createWriter(function(writer) { + writer.onwrite = function() { + resolve(filePath) + } + writer.onerror = reject + writer.seek(0) + writer.writeAsBinary(dataUrlToBase64(base64)) + }, reject) + }, reject) + }, reject) + }, reject) + return + } + var bitmap = new plus.nativeObj.Bitmap(fileName) + bitmap.loadBase64Data(base64, function() { + bitmap.save(filePath, {}, function() { + bitmap.clear() + resolve(filePath) + }, function(error) { + bitmap.clear() + reject(error) + }) + }, function(error) { + bitmap.clear() + reject(error) + }) + return + } + if (typeof wx === 'object' && wx.canIUse('getFileSystemManager')) { + var filePath = wx.env.USER_DATA_PATH + '/' + fileName + wx.getFileSystemManager().writeFile({ + filePath: filePath, + data: dataUrlToBase64(base64), + encoding: 'base64', + success: function() { + resolve(filePath) + }, + fail: function(error) { + reject(error) + } + }) + return + } + reject(new Error('not support')) + }) +} diff --git a/jsFile/requst.js b/jsFile/requst.js new file mode 100644 index 0000000..2fa353d --- /dev/null +++ b/jsFile/requst.js @@ -0,0 +1,149 @@ +// 判断当前环境 +const ENV = process.env.NODE_ENV; +console.log(ENV,'当前环境'); // development:开发环境 test:测试环境 production:生产环境 + +// 清理所有缓存并前往授权页 +const goLogin = () => { + uni.clearStorageSync(); + uni.navigateTo({ + url: '/pages/login/login' + }) +} +// 请求错误处理 +const checkError = (e) => { + // console.error("----接口错误----", e) + if (e.data) { + if (e.data.code) { + switch (Number(e.data.code)) { + case 4003: + // 参数错误 + console.log('4003参数错误'); + break; + case 4004: + // 记录不存在 + console.log('4004记录不存在'); + break; + case 5001: + // xxx错误 + console.log('5001xxx错误'); + break; + case 5050: + // 服务器错误,请稍后重试 + console.log('5050服务器错误,请稍后重试'); + break; + case 5051: + // 未知错误 + console.log('5051未知错误'); + break; + case 6001: + // token验证失败或已失效 + console.log('6001token验证失败或已失效'); + goLogin(); + break; + } + } + } +} + +// 封装request的(GET、POST)请求 +const request = (method, url, options) => { + let methods = ''; + let headers = {}; + switch (method) { + case 'get': + methods = 'GET' + headers = { + 'Content-Type': 'application/json; charset=UTF-8', + 'Authorization': 'Bearer '+uni.getStorageSync('token') || '' + } + break; + case 'post': + methods = 'POST' + headers = { + 'Content-Type': 'application/json; charset=UTF-8', + 'Authorization': 'Bearer '+uni.getStorageSync('token') || '' + } + break; + case 'postForm': + methods = 'POST' + headers = { + 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', + 'Authorization': 'Bearer '+uni.getStorageSync('token') || '' + } + break; + } + return new Promise((resolve, reject) => { + uni.request({ + url: `${uni.getStorageSync('hostapi')}${url}`, + method: methods, + data: options, + header: headers, + success: res => { + console.log(`${url}返的结果===>`,res); + if (res.statusCode == 200) { + if (res.data.code == 0) { + // 接口调用成功 + resolve(res.data); + } else { + // 接口返回错误信息 + checkError(res); + } + } else { + // 接口返回错误信息 + checkError(res); + } + }, + fail: e => { + // 接口请求错误 + checkError(e, reject); + }, + complete: rest => { + // 是否成功,都会执行 + } + }) + }) +} +// 上传文件 封装请求 +const uploadFile = (url, options) => { + let tempData = options || {} + return new Promise((resolve, reject) => { + uni.uploadFile({ + url: `${uni.getStorageSync('hostapi')}${url}`, + filePath: tempData.file, + name: 'image', + fileType:'image', + formData: tempData, + header: { + 'Content-Type': 'multipart/form-data;charset=UTF-8', + 'Authorization': 'Bearer '+uni.getStorageSync('token') || '' + }, + success: res => { + if (res.statusCode == 200) { + let temp = JSON.parse(res.data) + if (temp.code == 0) { + resolve(temp) + } + } + } + }); + }) +} + + +export default { + get: (url, options) => { + return request('get', url, options) + }, + // JOSN格式 + post: (url, options) => { + return request('post', url, options) + }, + // form-data格式 + postForm: (url, options) => { + return request('postForm', url, options) + }, + // 上传 + upload: (url, options) => { + return uploadFile(url, options) + } +} diff --git a/jsFile/share.js b/jsFile/share.js new file mode 100644 index 0000000..c115a8f --- /dev/null +++ b/jsFile/share.js @@ -0,0 +1,11 @@ +export default { + onShareAppMessage(res) { //发送给朋友 + return { + title: '', // 默认是小程序的名称(可以写slogan等) + path: uni.getStorageSync('url') // 默认是当前页面,必须是以‘/’开头的完整路径 + } + }, + onShareTimeline(res) {//分享到朋友圈 + return {} + }, +} \ No newline at end of file diff --git a/jsFile/tools.js b/jsFile/tools.js new file mode 100644 index 0000000..438bacf --- /dev/null +++ b/jsFile/tools.js @@ -0,0 +1,550 @@ +const tools = { + timer:'', + timerNot:'', + // 埋点倒计时 + daoTime(){ + let daoTime = uni.getStorageSync('daoTime') + if(daoTime==''){//初次判断倒计时是否为空 + uni.setStorageSync('daoTime',60)//设置倒计时 + daoTime = uni.getStorageSync('daoTime') + this.timer = setInterval(()=>{ + uni.setStorageSync('daoTime',daoTime--)//设置倒计时 + // console.log('埋点倒计时初次:',daoTime); + // console.log('埋点长度初次:',uni.getStorageSync('maiList').length); + if(uni.getStorageSync('daoTime')<=0 || uni.getStorageSync('maiList').length==5){ + uni.removeStorageSync('daoTime')//清空倒计时 + clearInterval(this.timer)//关闭倒计时 + // console.log('上/报,埋点'); + // reportBuriedPoint(uni.getStorageSync('maiList'))//上报事件 + uni.removeStorageSync('maiList')//清空上报参数 + this.daoTime()//重新倒计时 + } + },1000) + } else {//继续当前倒计时倒计 + this.timer = setInterval(()=>{ + uni.setStorageSync('daoTime',daoTime--)//设置倒计时 + // console.log('埋点倒计时:',daoTime); + // console.log('埋点长度:',uni.getStorageSync('maiList').length); + if(uni.getStorageSync('daoTime')<=0 || uni.getStorageSync('maiList').length==5){ + uni.removeStorageSync('daoTime')//清空倒计时 + clearInterval(this.timer)//关闭倒计时 + // console.log('上报,埋点'); + // reportBuriedPoint(uni.getStorageSync('maiList'))//上报事件 + uni.removeStorageSync('maiList')//清空上报参数 + this.daoTime()//重新倒计时 + } + },1000) + } + }, + closeTimer(){ + clearInterval(this.timer)//关闭倒计时 + console.log('倒计时清空了'); + clearInterval(this.timerNot)//关闭倒计时 + }, + maiDian(data){//埋点事件 + let maiList = uni.getStorageSync('maiList') + // console.log(maiList); + if(maiList==''){ + maiList = [data] + } else maiList.push(data) + uni.setStorageSync('maiList',maiList) + }, + weekDate(){//获取未来七天星期几,几号 + let date = new Date() + let year = date.getFullYear() + let month = date.getMonth()+1 + let day = date.getDate() + let nth = date.getDay()//星期几 + // console.log(year,month,day); + let xingq = ['周一','周二','周三','周四','周五','周六','周日'] + + }, + // 手机号验证 + isPhone:function(phone){ + // 手机号正则表达式 + let reg_tel = /^(13[0-9]|14[01456879]|15[0-35-9]|16[2567]|17[0-8]|18[0-9]|19[0-35-9])\d{8}$/; + // if(!reg_tel.test(phone)){ + // return true + // } + // return false + return !reg_tel.test(phone); + }, + // 手机号中间四位用"****"带替 + hideMPhone(phone){ + return `${phone.substr(0, 3)}****${phone.substr(7)}` + }, + // 昵称从第一个字开始,后面的都用"*"代替 + hideName(name,num){ + return `${name.substr(0, 1)}****${name.substr(name.length-1)}` + }, + // 金额转换各三位数使用英文","隔开 + changeNum(num){ + if (num) { + // 针对整数部分进行格式化处理,这是此方法的核心,也是稍难理解的一个地方,逆向的来思考或者采用简单的事例来实现就容易多了 + /* + 也可以这样想象,现在有一串数字字符串在你面前,如果让你给他家千分位的逗号的话,你是怎么来思考和操作的? + 字符串长度为0/1/2/3时都不用添加 + 字符串长度大于3的时候,从右往左数,有三位字符就加一个逗号,然后继续往前数,直到不到往前数少于三位字符为止 + */ + num = num+''; // 数字转换为字符串,数字是没有.length属性的 + for (var i = 0; i < Math.floor((num.length - (1 + i)) / 3); i++) { + num = num.substring(0, num.length - (4 * i + 3)) + ',' + num.substring(num.length - (4 * i + 3)) + } + // 将数据(符号、整数部分、小数部分)整体组合返回 + return num; + } + }, + // 整数添加.00,小数就不添加 + addXiaoShu(num){ + console.log(num,120); + let str = num.toString(); + if(str.length > 9){ + str = str*1; + str = str.toFixed(2); + str = str+''; + } + return str.includes('.') ? str*1 : str = num + '.00'; + }, + // type:+加、-减、*乘、/除 + // len:小数后保留几位 + operationEv(num1,num2,type,len=0){ + // 将数字转化成字符串 + num1 = num1.toString(); + num2 = num2.toString(); + // 获取小数点的位置 + var index1 = num1.indexOf("."); + var index2 = num2.indexOf("."); + // 如果小数点存在,那么就再获取各自的小数位数 + var ws1 = 0; + var ws2 = 0; + if(index1 != -1){ + ws1 = num1.split(".")[1].length; + } + if(index2 != -1){ + ws2 = num2.split(".")[1].length; + } + // 看谁的小数位数大,谁的小数位数小 + var bigger = (ws1 > ws2) ? ws1 : ws2; + var smaller = (ws1 < ws2) ? ws1 : ws2; + // 计算得到需要补齐的0的个数 + var zerosCount = bigger - smaller; + // 好了,现在不管三七二十,全部去除小数点 + num1 = num1.replace(".",""); + num2 = num2.replace(".",""); + // 比较num1和num2谁大,比较方法就是看谁是smaller,是smaller的一方就补0 + if(ws1 == smaller){ + for (var i = 0; i < zerosCount; i++) { + num1 += "0"; + } + } else { + for (var i = 0; i < zerosCount; i++) { + num2 += "0"; + } + } + // 开始计算 + var sum = ""; + if(type=="+"){ + // 加 + sum = parseInt(num1) + parseInt(num2); + } + if(type=="-"){ + // 减 + sum = parseInt(num1) - parseInt(num2); + } + if(type=="*"){ + // 乘 + sum = parseInt(num1) * parseInt(num2); + } + if(type=="/"){ + // 除 + sum = parseInt(num1) / parseInt(num2); + } + // 根据较大的小数位数计算倍数 + var beishu = 1; + for (var i = 0; i < bigger; i++) { + beishu = beishu*10; + } + sum = sum/beishu; + if(type=="*"){ + switch (bigger){ + case 1: + sum = sum / 10; + break; + case 2: + sum = sum / 100; + break; + case 3: + sum = sum / 1000; + break; + } + } + if(type=="/"){ + switch (bigger){ + case 1: + sum = sum * 10; + break; + case 2: + sum = sum * 100; + break; + case 3: + sum = sum * 1000; + break; + } + } + len!=0 ? sum = sum.toFixed(len) : ''; + return sum; + }, + // 时间戳===>日期 + timestampToTime(timestamp) { + var date = timestamp.toString().length==13 ? new Date(timestamp*1) : new Date(timestamp * 1000);//时间戳为10位需*1000,时间戳为13位的话不需乘1000 + var Y = date.getFullYear(); + var M = (date.getMonth()+1 < 10 ? '0'+(date.getMonth()+1) : date.getMonth()+1); + var D = date.getDate() < 10 ? '0'+date.getDate() : date.getDate(); + var h = date.getHours() < 10 ? '0'+date.getHours() : date.getHours(); + var m = date.getMinutes() < 10 ? '0'+date.getMinutes() : date.getMinutes(); + var s = date.getSeconds() < 10 ? '0'+date.getSeconds() : date.getSeconds(); + return Y + '-' + M + '-' + D + ' ' + h + ':' + m + ':' +s; + }, + // 日期===>时间戳 + timeToTimestamp(time){ + var date = new Date(time); + var timestamp = date.getTime();//精确到毫秒 + return timestamp + // var date = new Date('2014-04-23 18:55:49:123'); + // 有三种方式获取 + // var time1 = date.getTime();//精确到毫秒 + // var time2 = date.valueOf();//精确到毫秒 + // var time3 = Date.parse(date);//只能精确到秒,毫秒用000替代 + // console.log(time1);//1398250549123 + // console.log(time2);//1398250549123 + // console.log(time3);//1398250549000 + }, + // 随机数生成 + randomStr(){ + var strData = ""; + //如果觉得12个数太少也可以多放点,将i<4修改即可 + for(var i=0;i<4;i++){ + var num = random(0,9); //数字 + var upper = String.fromCharCode(random(65,90)); //大写字母 + var lower = String.fromCharCode(random(97,122)); //小写字母 + strData = strData+num+upper+lower; //将所有结果放进strData中 + + } + var str = ""; + for (var i = 0; i < 4; i++) { + str += strData[random(0,strData.length-1)]; //在strData里面随机抽取四个数 + } + return str; + }, + // 金额输入框验证 + checkPrice(number,zong){ + let reg = /^[0-9]*$/;//数字正则表达式 + let newObj = {} + zong = parseInt(zong).toString()//取小数点左边的整数 + if(!reg.test(number)){//不是数字时 + newObj = { + len:zong.length,//动态设置长度 + val:zong//动态设置值正整数的总金额 + } + } else {//是数字时 + newObj = { + len:zong.length, + val:number//动态设置当前输入的值 + } + if(number*1 > zong*1){//输入的金额大于总金额 + newObj.val = zong//赋值总金额 + } + } + return newObj + }, + // 提示方法 + showToast: function(msg, icon,time) { + // 弹框图标:none默认无图标、loading、success + var newIncon = 'none'; + if (icon) {newIncon = icon;} + // 弹框显示时间:默认2秒 + var newTime = 2000 + if (time) {newTime = time;} + return uni.showToast({ + title: msg, + icon: newIncon, + duration:newTime + }) + }, + formatDuring: function(mss) { + // let dangTime = Math.round(new Date()/1000)//获取当前时间戳 + var hours = parseInt((mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60)); + var minutes = parseInt((mss % (1000 * 60 * 60)) / (1000 * 60)); + var seconds = (mss % (1000 * 60)) / 1000; + hours = hours < 10 ? ('0' + hours) : hours; + minutes = minutes < 10 ? ('0' + minutes) : minutes; + seconds = seconds < 10 && seconds >= 1 ? ('0' + seconds) : seconds; + return hours + ' : ' + minutes + ' : ' + seconds; + }, + escape2Html(str) {//富文本 + var arrEntities = { 'lt': '<', 'gt': '>', 'nbsp': ' ', 'amp': '&', 'quot': '"' }; + return str.replace(/&(lt|gt|nbsp|amp|quot|src);/ig, function (all, t) { + return arrEntities[t]; + }) + .replace(' { + if (res.confirm) { + // 新的版本已经下载好,调用 applyUpdate 应用新版本并重启 + updateManager.applyUpdate() + } + } + }) + }) + updateManager.onUpdateFailed(function (res) { + // 新版本下载失败 + // console.log('新版本下载失败:',res); + }) + // #endif + }, + networkStatus(){//检查网络状态 + uni.getNetworkType({ + success: function (res) { + console.log('当前网络状态:',res.networkType);//none:当前无网络连接 + if(res.networkType=='none'){ + uni.setStorageSync('isNet',false) + } else { + uni.setStorageSync('isNet',true); + // 微信小程序原生API性能优化 + // #ifdef MP-WEIXIN + // 连网下,检测小程序是否有更新 + tools.updaX(); + // #endif + } + } + }); + }, + // 文本复制 + clickCopy(data){ + uni.setClipboardData({ + data: data, + success: ()=> { + uni.showToast({title: '复制成功',duration: 2000,icon: 'none'}); + } + }); + }, + dayTime(endTime,startTime=''){//开启倒计时 + let totalSecond = ''; + // 本地倒计时 + // if(startTime=='') totalSecond = Math.floor((new Date(endTime).getTime() - new Date().getTime())/1000); + // 解决苹果手机问题 + let date = endTime; + date = endTime.replace(/-/g,'/') + // 服务器倒计时 + if(startTime!='') totalSecond = Math.floor((new Date(date).getTime() - startTime)/1000); + // 总秒数 + let second = totalSecond; + // 天数 + let day = Math.floor(second / 3600 / 24); + let dayStr = day.toString(); + if(dayStr.length == 1) dayStr = '0' + dayStr; + // 小时 + let hr = Math.floor((second - day * 3600 * 24) / 3600); + let hrStr = hr.toString(); + if(hrStr.length == 1) hrStr = '0' + hrStr; + // 分钟 + let min = Math.floor((second - day * 3600 * 24 - hr * 3600) / 60); + let minStr = min.toString(); + if(minStr.length == 1) minStr = '0' + minStr; + // 秒 + let sec = second - day * 3600 * 24 - hr * 3600 - min * 60; + let secStr = sec.toString(); + if(secStr.length == 1) secStr = '0' + secStr; + + let newTime = ''; + if(dayStr==0) { + newTime = hrStr +'时'+ minStr +'分'+ secStr +'秒'; + } else { + newTime = dayStr +'天'+ hrStr +'时'+ minStr +'分'+ secStr +'秒'; + } + return newTime; + }, + // 刷新token + refreshToken(){ + console.log('进入检测token是否过期'); + var date = new Date(); + var timestamp = date.getTime();//精确到毫秒 + // 如果过期时间 减 10分钟 小于当前时间,刷新token + if((uni.getStorageSync('expire')*1000 - 600000) < timestamp) { + uni.login({ + provider: 'weixin', + success: (res)=> { + if (res.code) { + var params = {code:res.code} + uni.request({ + url: `${uni.getStorageSync('hostapi')}/api/user/login`, + method: 'post', + data: params, + header: { + 'Content-Type': 'application/json; charset=UTF-8', + 'Authorization': 'Bearer '+uni.getStorageSync('token') || '' + }, + success: res => { + if(res.data.data.token!=''){ + uni.setStorageSync('token',res.data.data.token)//缓存token + uni.setStorageSync('openid',res.data.data.openid)//缓存Openid + uni.setStorageSync('expire',res.data.data.expire)//缓存失效时间(时间戳格式) + uni.setStorageSync('is_active',res.data.data.is_active)//是否第一次授权 + uni.setStorageSync('phone_active',res.data.data.phone_active)//是否绑定手机号 + uni.setStorageSync('userId',res.data.data.account_id)//用户id + uni.setStorageSync('invite_code',res.data.data.invite_code)//邀请码 + } + } + }) + } + }, + }); + } + }, + // 判断是否授权,没授权,前往登录页面授权 + judgeAuth(){ + let auth = true; + switch (uni.getStorageSync('phone_active')*1){ + case 0: // 未注册 + uni.navigateTo({url:'/pages/login/login'}); + auth = false + break; + case 1: // 已注册 + auth = true + break; + } + return auth; + }, + // 判断当前环境、清空日志、设置全局域名 + currentContext(){ + // #ifdef APP-PLUS + if(uni.getSystemInfoSync().platform != "devtools"){//devtools:开发版 值域为:ios、android、mac(3.1.10+)、windows(3.1.10+)、linux(3.1.10+) + console.log = () =>{} + } + // #endif + // 微信小程序原生API性能优化 + // #ifdef MP-WEIXIN + let hInfo = wx.getAccountInfoSync(); + // console.log(hInfo.envVersion);//develop:开发版 trial:体验版 release:正式版 + // if(hInfo.miniProgram.envVersion == "develop"){ + if(hInfo.miniProgram.envVersion == "develop" || hInfo.miniProgram.envVersion == "trial"){ + // (开发版,体验版)-配置全局域名 + // uni.setStorageSync('hostapi','https://hengmei.scdxtc.cn/api/'); + } else { + // 清除所有输出日志 + console.log = () =>{}; + // 正式版-配置全局域名 + // uni.setStorageSync('hostapi','https://hm.hmzfyy.cn/api/'); + // 开启埋点倒计时 + this.daoTime();//开启埋点倒计时 + } + // #endif + }, + // 禁止小程序使用分享 + disableShareEv(){ + // #ifdef APP-PLUS + uni.hideShareMenu(); + // #endif + // #ifdef MP-WEIXIN + wx.hideShareMenu({ + menus: ['shareAppMessage', 'shareTimeline'] + }) + // #endif + }, + // 获取当前页面url,不带参数 + obtainUrl(){ + let pages = getCurrentPages(); + let route = pages[pages.length - 1].route; + uni.setStorageSync('url',`/${route}?invite_code=${uni.getStorageSync('invite_code')}`); + console.log(`${route}`,'tools.js:当前页面路径不带参数') + }, + // 获取当前页面url,带参数 + obtainUrlParam(){ + let pages = getCurrentPages(); + let routeParam = pages[pages.length - 1].$page.fullPath; + uni.setStorageSync('urlParam',`${routeParam}?invite_code=${uni.getStorageSync('invite_code')}`); + console.log(uni.getStorageSync('urlParam'),'tools.js:当前页面路径带参数') + }, + // 去这里 + goFlag:true, + goThere(){ + if(this.flag){ + this.flag = false; + // #ifdef MP-WEIXIN + wx.getLocation({//获取当前经纬度 + type: 'wgs84', //返回可以用于wx.openLocation的经纬度,官方提示bug: iOS 6.3.30 type 参数不生效,只会返回 wgs84 类型的坐标信息 + success: (res)=> { + wx.openLocation({//​使用微信内置地图查看位置。 + latitude: 30.656693,//要去的纬度-地址 + longitude: 104.136425,//要去的经度-地址 + name: '大向天诚有限责任公司', + address: '四川省成都市成华区双店路B口', + fail:err=>{ + this.showToast('地址信息错误'); + } + }) + } + }) + // #endif + setTimeout(()=>{ + this.flag = true; + },2000) + } else { + this.showToast('请勿多次点击'); + } + }, + // 拨打电话 + countCustomer(phone){ + const res = uni.getSystemInfoSync(); + if(res.platform=='ios'){ + uni.makePhoneCall({ + phoneNumber:phone, + success: () => {}, + fail: () => {} + }) + } else { + uni.showActionSheet({ + itemList:[phone,'立即呼叫'], + itemColor:'#3875F6', + success: (res) => { + if(res.tapIndex==1){ + uni.makePhoneCall({ + phoneNumber:phone + }) + } + } + }) + } + }, +} + + + + + + + + + + +export default { + tools +} \ No newline at end of file diff --git a/main.js b/main.js new file mode 100644 index 0000000..ae02d11 --- /dev/null +++ b/main.js @@ -0,0 +1,25 @@ +import Vue from 'vue'; +import App from './App'; + +import nothingPage from './components/nothing/nothing-page.vue';//引入无内容组件 +Vue.component('nothing-page',nothingPage);//全局注册无内容组件 + +import footTabOne from './components/foot-tabs/foot-tab-one.vue';//引入容器组件 +Vue.component('foot-tab',footTabOne);//全局注册容器组件 + +import share from './jsFile/share.js';// 全局注册分享事件 +Vue.mixin(share); + +// 常用工具 +import tools from '@/jsFile/tools.js'; +Vue.prototype.$toolAll = tools; +// 响应数据 +import requst from '@/jsFile/requst.js'; +Vue.prototype.$requst = requst; + +App.mpType = 'app'; + +const app = new Vue({ + ...App +}) +app.$mount() diff --git a/manifest.json b/manifest.json new file mode 100644 index 0000000..13e9e9e --- /dev/null +++ b/manifest.json @@ -0,0 +1,91 @@ +{ + "name" : "飞猴", + "appid" : "__UNI__25FB71A", + "description" : "", + "versionName" : "1.0.0", + "versionCode" : "100", + "transformPx" : false, + "app-plus" : { + "usingComponents" : true, + "compilerVersion" : 3, + /* 5+App特有相关 */ + "modules" : { + "Payment" : {}, + "Share" : {} + }, + /* 模块配置 */ + "distribute" : { + /* 应用发布信息 */ + "android" : { + /* android打包配置 */ + "permissions" : [ + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "", + "" + ] + }, + "ios" : {}, + /* ios打包配置 */ + "sdkConfigs" : { + "maps" : {}, + "payment" : { + "weixin" : { + "__platform__" : [ "ios", "android" ], + "appid" : "wx2654bc27c419ada6", + "UniversalLinks" : "" + } + }, + "push" : {}, + "geolocation" : {}, + "share" : { + "weixin" : { + "appid" : "wx2654bc27c419ada6", + "UniversalLinks" : "" + } + } + } + }, + "splashscreen" : { + "alwaysShowBeforeRender" : false, + "waiting" : false + } + }, + /* SDK配置 */ + "quickapp" : {}, + /* 快应用特有相关 */ + "mp-weixin" : { + /* 小程序特有相关 */ + "appid" : "wx2654bc27c419ada6", + "setting" : { + "urlCheck" : true, + "es6" : true + }, + "usingComponents" : true, + "permission" : { + "scope.userLocation" : { + "desc" : "您的位置信息将用于小程序位置接口的效果展示" + } + } + }, + "h5" : { + "sdkConfigs" : { + "maps" : {} + } + }, + "mp-baidu" : { + "appid" : "24346353" + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..6db41f4 --- /dev/null +++ b/package.json @@ -0,0 +1,11 @@ +{ + "id": "zhuge-swiper", + "name": "轮播视频和图片", + "version": "1.0.1", + "description": "自动轮播视频和图片组件。播放视频时停止轮播,手动滑动swiper时视频停止播放", + "keywords": [ + "vue", + "swiper", + "zhuge" + ] +} \ No newline at end of file diff --git a/pages.json b/pages.json new file mode 100644 index 0000000..afed55b --- /dev/null +++ b/pages.json @@ -0,0 +1,97 @@ +{ + "pages": [ + { + "path" : "pages/guide-page/guide-page", + "style" :{ + "navigationBarTitleText": "", + "enablePullDownRefresh": false, + "navigationStyle": "custom",//禁用原生导航栏,微信小程序可用 + "navigationBarTextStyle":"white", + "app-plus": { + "titleNView": false //禁用原生导航栏,APP和H5可用 + } + } + } + ,{ + "path" : "pages/login/login", + "style" :{ + "navigationBarTitleText":"" + } + } + ,{ + "path" : "pages/tabbar/pagehome/pagehome", + "style" :{ + "navigationBarTitleText": "", + "enablePullDownRefresh": false, + "navigationStyle": "custom",//禁用原生导航栏,微信小程序可用 + "navigationBarTextStyle":"black", + "app-plus": { + "titleNView": false ,//禁用原生导航栏,APP和H5可用 + "bounce":"none", + "scrollIndicator":"none" + } + } + } + ,{ + "path" : "pages/tabbar/my/my", + "style" :{ + "navigationBarTitleText":"个人中心" + } + } + ,{ + "path": "pages/login/agreement", + "style" :{ + "navigationBarTitleText":"" + } + } + ,{ + "path" : "pages/tabbar/project-list/project-list", + "style" : + { + "navigationBarTitleText": "项目列表", + "enablePullDownRefresh": false + } + + } + ,{ + "path" : "pages/tabbar/feedback/feedback", + "style" : + { + "navigationBarTitleText": "意见反馈", + "enablePullDownRefresh": false + } + + } + ], + "subPackages": [ + {//A包 + "root": "pagesA", + "pages": [ + { + "path" : "", + "style" : {} + } + ] + }, + {//B包 + "root": "pagesB", + "pages": [ + { + "path" : "", + "style" :{} + } + ] + } + ], + "preloadRule": { + "pages/tabbar/pagehome/pagehome": { + "network": "all", + "packages": ["pagesA"] + } + }, + "globalStyle": { + "navigationBarTextStyle": "black", + "navigationBarBackgroundColor": "#FFFFFF",//导航栏背景色 + "backgroundColor": "#FFFFFF"//窗口背景色 + } +} diff --git a/pages/guide-page/guide-page.vue b/pages/guide-page/guide-page.vue new file mode 100644 index 0000000..42b345c --- /dev/null +++ b/pages/guide-page/guide-page.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/pages/login/agreement.vue b/pages/login/agreement.vue new file mode 100644 index 0000000..a43d586 --- /dev/null +++ b/pages/login/agreement.vue @@ -0,0 +1,22 @@ + + + + + diff --git a/pages/login/login.vue b/pages/login/login.vue new file mode 100644 index 0000000..fe5449a --- /dev/null +++ b/pages/login/login.vue @@ -0,0 +1,23 @@ + + + diff --git a/pages/tabbar/feedback/feedback.vue b/pages/tabbar/feedback/feedback.vue new file mode 100644 index 0000000..5ae9174 --- /dev/null +++ b/pages/tabbar/feedback/feedback.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/pages/tabbar/my/my.vue b/pages/tabbar/my/my.vue new file mode 100644 index 0000000..f5ec696 --- /dev/null +++ b/pages/tabbar/my/my.vue @@ -0,0 +1,44 @@ + + + + + diff --git a/pages/tabbar/pagehome/pagehome.vue b/pages/tabbar/pagehome/pagehome.vue new file mode 100644 index 0000000..6b355f8 --- /dev/null +++ b/pages/tabbar/pagehome/pagehome.vue @@ -0,0 +1,32 @@ + + + + + diff --git a/pages/tabbar/project-list/project-list.vue b/pages/tabbar/project-list/project-list.vue new file mode 100644 index 0000000..32c427e --- /dev/null +++ b/pages/tabbar/project-list/project-list.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/project.config.json b/project.config.json new file mode 100644 index 0000000..9edc87c --- /dev/null +++ b/project.config.json @@ -0,0 +1,77 @@ +{ + "description": "项目配置文件", + "packOptions": { + "ignore": [] + }, + "setting": { + "urlCheck": true, + "es6": true, + "enhance": true, + "postcss": true, + "preloadBackgroundData": false, + "minified": true, + "newFeature": false, + "coverView": true, + "nodeModules": false, + "autoAudits": false, + "showShadowRootInWxmlPanel": true, + "scopeDataCheck": false, + "uglifyFileName": false, + "checkInvalidKey": true, + "checkSiteMap": true, + "uploadWithSourceMap": true, + "compileHotReLoad": false, + "lazyloadPlaceholderEnable": false, + "useMultiFrameRuntime": true, + "useApiHook": true, + "useApiHostProcess": true, + "babelSetting": { + "ignore": [], + "disablePlugins": [], + "outputPath": "" + }, + "useIsolateContext": false, + "userConfirmedBundleSwitch": false, + "packNpmManually": false, + "packNpmRelationList": [], + "minifyWXSS": true, + "disableUseStrict": false, + "minifyWXML": true, + "showES6CompileOption": false, + "useCompilerPlugins": false, + "ignoreUploadUnusedFiles": true + }, + "compileType": "miniprogram", + "libVersion": "2.22.0", + "appid": "wx987dc41899f719e8", + "projectname": "%E4%BD%A9%E4%B8%BD%E5%95%86%E5%9F%8E", + "debugOptions": { + "hidedInDevtools": [] + }, + "scripts": {}, + "staticServerOptions": { + "baseURL": "", + "servePath": "" + }, + "isGameTourist": false, + "condition": { + "search": { + "list": [] + }, + "conversation": { + "list": [] + }, + "game": { + "list": [] + }, + "plugin": { + "list": [] + }, + "gamePlugin": { + "list": [] + }, + "miniprogram": { + "list": [] + } + } +} \ No newline at end of file diff --git a/readme.md b/readme.md new file mode 100644 index 0000000..6e041e2 --- /dev/null +++ b/readme.md @@ -0,0 +1,18 @@ + \ No newline at end of file diff --git a/static/tabbar/icon-mo-fun.png b/static/tabbar/icon-mo-fun.png new file mode 100644 index 0000000000000000000000000000000000000000..7caad2ea5d0911f03818df7585cbdd29a6d2f1de GIT binary patch literal 2081 zcmX|?eK^zWAIHDjZ1XTtQ66?OQ`#!qjK;<=Q3z>-a4<}s_F$&XPMC^9sgC93;a8Y- zQYR1nN@9+klX6mdIGmG6Tew28IP#Da{pS3-&V5~<`~H0H`*XeC*ZcF&ogd(TKwsBP z7XSc#Z!ZtJ=ESUrHcYdhTWe+k0O(+1P$)mt&zBO*Vc{5YoERof$l_|=0l?W+$YsPP zGx?|(=CMRJ75$;L9gRwiqoPCh`VsuN`bu zGf+ZS3OkJ=q@w@fQZ)JcH6D%nr-h$PMbp*=QK5bTsC^tB6SWsdvWc~|C!!q4I9n2d zOtjyFA`)yJ@B|0Et(^_QmO>y=?8vCE3+xlm|JeX;*yhJWPk;6u~vG4@1ux;hQJ^e-BR z-%GH8&7)Z~Df-5o0Tg8WNM$T1SYI8>tjyo&>E>B&+W~Ci#*F3&S9h3g#)J2Fq)8Kx zU<$@f3xbmSbmcEHJ6AfNEwZ8nQBk*alyP=;t?i%G0=4q5Tr9yj0aycN zX}yO03CXN7J~&2sm{IWNv)&}|8cG7N$^ai7@sT|N*!108bFL`gVihC@oFlF`IEh=u z`8!ft#P<}%v>ap4(W_9ko_wf?{f1V#DFM{&aX-tFyRA1*J%W*+RFf@~(gUL?t`^}J zE(!Fs*NSA(Uk;((kc6?qbQ<(Rwd5QBdRVI1q>2c94XS`OTQ+fkkkZd=)kf8VVe6D4 zb`l0T0e*Io{x)}`z|-wjJpWK`K4dWN?4MV7yBjDS>J@Rbja%Aj$1i`|M_Ny=JQ3GOJ$JWP*kLM%EY^&TPkU^2S%w1jBjoD_L3#E0eR+;SHco%f`DkL=YBphlA1$2L-& zkPU<=UNXN|W9L}erO4Zp()3H%F9nNYSZlaXt)EdCF!X*|d$2HaruwX-K?Nj2e>^-a z442G7@2;S8>5*=mZ}WSR)w;7-xH9 zkL{9`fD8M=A8&_UGnAoX8V8NthUVpt;`c3nZEbDyT|XIAis3o!aIZp}8p*-FZ`Tl_ zK>-9_z3u6pm0Uwp%hSn6OW@JNi?n%M?9t%4ev2FJTW7wxO9AjKv||+HHv`c^`wuy!$>1=4i$P6 z^LM5Am}I{UbOTuTmN3^lP(h}5)iKT*=+C!B7|p-RQKQ6ApW6LZk`{zxw_G0O^Rj1l z^3ye~yo^^YBlTb*G`DKRN){1fojQ?yB))+<{;k6bMUUVY;Fx@XmpGJnv~g`NKH69& zTcp)@xMmZlOlXYil7f1~$uY-vNI0mv$mf*hZYS~WyqyTRUlyf7ug97URqe#3+jkzTy;N-6tjjC zffwoT-ESU;-11w+EFb#}%GrPf+wYRG&8xhI(?_huU0q!uhuWJrZ^BXK&x@vJW)=k6 z2FplcS84_Q>f)RtrC5osk#Nd`K|clfcny~UYHp6_Q3tReQ+}x+yoCS>hHS?OXIjHch>1-8M(hI?wJTF8{HC(8}hcv zJz@k7-7S+Wefr`0!eq1EDM(se~Vr{Iw?HRQ=-S z4bdP(QA3#GmJx{!z?V0CGhGMscVDWz;Lq>a`!3;bZ@GF}(aPFCt<1BdSw7YlUG2V1 zUn6@}8psCFe8V>E=#P~gW)Ea3FtRsMhmsZA)#+>64GlndaXf-So0<^`9*2eyBFFpS z_q~nnmsDP=<0`Z&^y9sL&jXz#DYZ1`(kygMFDKXGbSnM(-RnQQx2L~HoqP1j{{has Bi#q@S literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-mo-home.png b/static/tabbar/icon-mo-home.png new file mode 100644 index 0000000000000000000000000000000000000000..14971a6a0a1e1ebdde2805e81689f856f056b15e GIT binary patch literal 1596 zcmX|>c~p{F7{0r|$WbW;K@B0vjWl<{ny{=S#3cg}2uO6qDa)F2EVt5f z8_6syOKVUMMrqb$X_jp=7SrM~O~$B=S~Lzeo$fhzdGGt)-*cY#k9&|F6@oB#GzS0x z5xS1XFzl{#bDpVTJ^Zhd3jknv$_A#085u!gr*UztgtQ$ToRrHqM5~!F>-jN=W{2)$p%DM~zCnh6m13M#?O-{i0tugnNQVaktN5q1p z++92&MM}kd;Zh9exobQI`cfiFrD6i+1R-W59STYla3F8oDt9))iwKd(IKnCqGSSNo zB6<)=cn=bu;OXu`pm?mJc#@&71GB~)@)aZ`QW&)0uVRLXib)oU_!K-|B9Y)Ep13qY z5}rUNlkpxzJdx;bsBjnV;fYvMcb;(h9O8cljU!|WQuv~jG#)g^WbH`XEuvyD_&E{$ zR~3Uj{5OAw;9G|{JVRRq2LBaH;@<;+aYHCAU;{Jv{PFPQxQ!0CvOQ0PhLm42`*8Gh zy7TFNABM*Na`GbkV>htPRTlOpgUre1m+U_-gc&jVUIy<9y>7IY9*4ylA3X;tFWH`S zDhxTY2zIPC;9f1)Ig%YQ)ao-lpgFNxxU6t?sG@r+Ygj)&MZS2 zQq174cRU1}mI6K@E;-SC1+T*D?~{>sjc^Cjn_siEOO}QNiD9{o1uQ@&53MruL1bEc z(Zfdl#rtySn=9>)`}cl)sFnpRJ_919$}F&$fvf_Ya;jbVwgvV%TLaKvq!hC^~BwOP_-lHPxnhS%M8-(h`YFOj;uok9Ca!E~!Hh>i8;E$%+sOAsJPpQRP zJ38$>uS=fY;or4O)8#f)II{J2W6}6-N#n9AYs~)V3)fgQKTcPHnR}mC3|@)pNo;ae zoQ29M6w2nD1=_1n~e&=>t*t$p=Gwrz&szFc?PrN%#+TIk&MF4L26#S6DUGz=(mFb%W9d^Axq$Z zTlYus^J-x;PT~7YQ3iY@0=NivsLL2TQL5U(V3&yr#vQYZ1G(1j>Z5u5{Cu%QVxO3p zIIgyY_ZLsF)3I+%CNU^D%5Vx&(QpvqgRhyw4a zO?BvxK=Zb`@vMo7iMG;`5;1sbbJVD)_35KW-Z9-35zfL9q-uvhA>up!(z4p3Yzjxw zzkRnFI9^spA(BX>kzshFQaLTl&Yq3lc2(*-mKpynM{w?O{n)n3RS!*jdfo_LxY!&- z;Ohh}ODZcWP;PcVQBzY>OJnN${ZPD~`x*Ix{p_U0{z9P;TlkxPeQ&y0EN1Q5LvCwr zZB?1ZtGo_np4E8umbGkp7VKuXQikMe{?(9_;0$cw>eeSoZ1$@#sw_w@E+}`YToI;t zkcXA=Fpee-<$mB~cr~5r!RcL;JdbbS+bU56Jw;dicF@z-@!fSI-%^PrPM$tEq1v!> z`s2OJ4XNr+zqh389xDI7X4l!$_m%{>b+>}^EztkKqQOsnZKJbS+S|7Q?Zy}O*SFbK z6%eG z-O25~Tvc=HGjK}pGe1t(xH@|lBL8(bm{5N2dt@==V%bZ@isiPqqBhYjv-F+5D`zEG zEn)J=4|P`BpVgit)z>z%G&#>@u!P#8rW^qAnlO1j@Iz8+@qKt@T^8VHR1vh@Sejx} ezzFL_>8 literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-mo-news.png b/static/tabbar/icon-mo-news.png new file mode 100644 index 0000000000000000000000000000000000000000..28f24a73854335ccdd688d690489bf50afdf142d GIT binary patch literal 1850 zcmX|?c{tnI8pnSUB!r5pT5h=!?a&djSkh#KBDJMaTM3ue7L`jPB1kP)LTh+RFKSDL zT5eON)l@rLHHblRTU*`gjBVoTU}&}1zK)5xedavRd(Qiw^FE*N^L_t0Ii4Oa>Z{x(zrD0d181h(;_q?HjHk;W3uJ%0AOp+V~2)E z)47N+`V|I?g#6UnfkZGONJxKcDu&8-qDL`YlR0#sWDno)>@S=>;bIV;}y5b=KonI0d`VX(Q3SQg@t85$Owz$GD( z=tB|o7ZtfZ^q>CZ#h(+Rv*csp$o*HI2>Ap6O7(7J2VdItp0eneV;7J0rdy&OPBp)I zQ*=Dg+|S4sln@Q=I)8}t7s&HMM5=et+ZuVhr2V>&z)Li?rANoo_K!`6**eUlDi z+kZC2sP`%Q0k8Nvf`J_3l1gQs;>{O*N`iO%a=|_RkPialsq_FW23ztU71?QQ>294g z$nYte?RWo8tpz>}==&hFH6Q{P{ zZg!_Tmx`+`@j9Ttt{G$T?ks3gN5OETn(=F$rUh}q6s{xcOZC#Sg?^g(N_Ar5zi?UX4_#;P; z^_`D1XT#ZZvJ<0Ly$(e(PJ+GSo~^WdlGpk6ABJb~)Oh8Q^n+=>561x-r?01_UN-q{slj6w&hAK13xfH__dgA0J124VhM+J7p|pjB`4EKA@+h>^g^>#%Ss`D*vVN z{oRCwgw`ido^*WPPOS|~gBm%KmwIN1BPXXmV&`llri1cOHuK3p0#!>pffLQ|Aeo&? z*4EaPjLwjorNK<*$ES01b9xmO6)@uh*NYw=gH*%Fhl_UI6^m9HT_$1g?_SE(&#DFw z5t^72$rK9Zekn6LdWlvV9LZuW>vv(4d&+{hqllb!&=zSg?KU|Ple92gZDQas`m}Oy zFLfvoi$;ICHaeC-3i9;CK+Ckk=dQKgu&YvPnbDh@iN&uxo4$d{+vwKU&59#oS|2?4 zP&YIWyWTZ3SyNME|D>sj_&v0wwDjOV!^6WPQ&S(&78Z7uLZKeW5TiEhQZ-;TaI}gn zyt83+Yb~m#fpGliIx|Bt@)ghB-Mw&m5^$$b(*Nm2H?>bG=xNFfC$fW7wC|tUly+O~ z_N=Z-D4Ur_KKMHtvHkULwuzmIx}gDMArb3GBp09~HOBJ+rQYqgv%-hih2lFG&z2P8 zfd$8GiZuDIC@%<}<{+{EaeZx#Yn+q^T)7UPFbZTnG}_Tl0xGenBZHfe&c(&WfVv)K z+ogpBz=)i`aNoh^GmKL%RQ31@@0Po>vy)Tp8I^l<6Ka&Wfvj^~cJvzqdd{9w@h*pb zn-6hjR6l+k$Mx|UHE@q{dMohP^rb<*|JQgx-;M+|0+i6LHO+Cm*W?%#!C9GM>EBD> zHU9j~@#h^dR9wFqDJJZ3o}Gwx4yk#WN*#DD7K<4yPFCoNobU3I)*crxG}<$S^Z-8{ z+|h2cpBfQxXzu;``oPJtvANeR9R)6^-L?-}28JK~HaW7aW3HFT%l9<2EKR;45?2OA zg!pJW{g;}TFJB4^T)Q=@7~{|SjPozgZd18?bB&T-VBMnSe6UV_#~7rDR#FTTt?cfX zTH^IW=NpBhp*#a}Lx7u?fE}{Tum$VOT-AwAa3mod5&~H?Iy=WQS<1G-$uf z-#W5&Nj)f6bjRU6EZBGdMgA>&{v_(IVi%_I&8crdiS-|D^%b`%ohe@A?+YRnpCM{@ fvlL|i%}G~i0E@~V-P}5T_~p5s^B^}mhGhH>Kc6X* literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-mo-person.png b/static/tabbar/icon-mo-person.png new file mode 100644 index 0000000000000000000000000000000000000000..6c64dc2f73ae5d74eaa662fa05f787f53a0be2df GIT binary patch literal 1835 zcmX|?2{hZ;9>@PgB$l)p`z}&So+XQ|LQpZ5j3qBMt+cd=l!zrybi~q1YALT6Z-k+? zYMZH2v{XksqEYjBMf+;kD5VuGA#@t1>Y16C*E9E=yZr9&cRt_q{hfQxEh2~b!_b#OHzZR7ZHE#-7DfeEmL)DIx+gJ}r%fN2Alz z(;dO~)Ay z*iwd8MC&4=DAF6=1mHv&3p$&on;M(xy+?eY{y8g0qI%cMI?WHHwMj%659~1WeCF&HB8<`b4YI3d35+xnTJfu?D70_cH zWLe*VcAM>%nz=rPE~t>588#@1Ueu+7ZNr!aKjiC76$|H}d zEa{}Qj^|~QL*H#UZOX#5R;tc0geOVV6L1oVdcbbD@3_m>p0F~a&Bavd6%6OvT#Z;;Q_MYYpCpen23(@ zmLB{H#WY>!gKD^bkgE}>ei_B}L4-qRws76)#TO*#=)o$1BSW1g{wsJLuh99`Bphx_p1!{+|Q&AkHYlWewzbH?z4D=qaD zl4-FoQfV!&DZa?>x`tRRJ|36U@ZVoA(WzdcP!jZu0ne`5@wNelK)I=@sjEJyoFwRJ zB){VYSax_wKV%A9`=U0Fu>5<^m7*+8+~Bu^W`i1L*Gsd6^X!U>ia3H<=$IrGrg*W_ z3ky+HT=nf$nXFAJm1@M|su#^=A9g~(xqa8g9-y@jJLbfedRPB6Xk%eB9j2){Qabpi z^UZq>vC&-eo`VPRMA%2K%-7e~>n2~l+SuCNBkU}{%^&k`Ml1dJO{8*cWMm{p@3MW+ z;c{MIUmta6>Zgb{TRNS7x4F65iRZadyN11iAC5K#}j`h5*auA1J8bMI!Gn0|TF2on4pRYHBL{`uK4_g{KBX*Xp2W z`17CSw1O7xaJ#(1Vl^v4qOzxBgmFInsb6)5p}}O8uI;U`q1myq4rE=(ZkMgP9o)yV zlkK#c+`Are z-ef8O6&IqRqCC!P=P|r%;IA`o#*fB3O;18h`ek>SO49}yL&A?Q61SCkKuJjnk#s9z zjYbf8qrT~{2re@(*>Pw4qAHZPS5=b@SsL5yl>ymcN8MYjAj~oau`8VRYi+leB&Zq2 z#6C7T7@^|cX9nD{8@|q8HP4!aGMwdNEyV1bT793|Iw&8s#Nj@-fA1xh^Oaw?ST1(^ zTt4R9u%>2heb#vURG+Pt$XV=WmCn%m?)=}S_Tc*d3%iTm(%<}F6zo;De>juzX)0@t SF)_6N#|3^F;@jpEb@309=p>W? literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-scan.png b/static/tabbar/icon-scan.png new file mode 100644 index 0000000000000000000000000000000000000000..d55ebc6848ea7c58b9bff91d0b3f49179edffcc7 GIT binary patch literal 2605 zcmX|D2{0R47mg775?*boCDMf|k`Ocz>x;c&CziH}M2RJWRHBrmEw36|Ev3Zr=&z{S z)z(&MsaC71ilV3rs*A3+E`ELgoBz(7d+)jD%=gXr&77H==7zVIk%UMB000?B2b{<5 z>98A);-b5IX%le)01$GfdJz}|m!lYRRHOlk5)~9|z>1{r)&T&lC5uiXhX*sDLBSzZ znmKH(y9WlPQp{n##x4jK`k%p}REN_s!Jen_UgXo^WHbe4X(5SaVRiu`gBc_!D>8x> zi(#3={=voU-hV&CVbFhC7~$qH>)(V>f{PpU�JSsIh^GJ{gHJgqorakR}MUAxaNw zh(Mac5vFjYkv;;6L6~5S(9nMu%t8{1jiH>xc;M{*CELx+VWA8L9Rr6mnM?zwkwH{U z2powCddrJ@ zMRFXa@wjM&k0PO0C$DW};```2uf;NH$t+0<>*~k6Kxd2=f3IA{Ky5pr-fe3p!}E5R@oG5T22Ksqe*ebpySNyRiGD)RVh$Y5S3jNeu>gx|a zA**#KzK?4qKQBKIrI+~H1LsfQYq$S|5baV7)u015(fL;-UMh%c*d&%L53u)gd;ouO z1T@_`g(3Me-y`}fUgc(-Gu1bOtM<0Y&#f^$2GgwOfN?-$yl&yiF=*suxxbZnc^f~D zBE;(a16V3X^X(+qmJ2Sdy365ROe^@#I_Z@HkucD4QsN)z+-lpYasSl{51=ilhaN9G zSo_Fs>PYaK&Vi8zPH<8JO2#j>wN1w}(kBWq+t*t@1AaQ$TvwX!BEK|#+2ACBKKHlK zacsVK^X=wCePzA}9M8AqOdL}&L64a~gzup5HO;zvPgqv~Okn|45_w44e$#~4QRlNA*#S4_F9k-+9 znhV6-f{S5lfw>hmb`W|He?D;FUaQsN&vFwScPWjXiR>`NAFn8>{TW&w?q@1CO!TB6 zm5}#`sH4u;bLwUiE}1^bs`mL}d-eU3$sXQJ|7v!JQ*Q0^WgirsSzM={9LLJm&bsE! z743Wc*nNF=)PZm=)8gEdwKvfoKd=fWs^8aK?nIfswo+pU_)~yK&_u6eYV4oOsV|su zD(tGFQL>MG5nFS*r%`GT=mRsX38{jE3wr7ZB$TCt2vn z6*k_2<^{H;zTHV4@CS2j_^YeihWdUo=NZI9ZfoOCxU$Uz40tGOw5vU>QiI?R9yB(N z4|y25|8Ux+vfHb-zPF;J_11%4O-HS_MEDfG)I1y|J)|%WRea`XhYHflXgv76okx0V z8WfETG4v0TOkQ9W$v<0&I9Xd#Z1^5B-F@6zL8dlS6m|bp(d*L>K9KxJ@{#CbWOUD% z`@(Ys!gLZdCQhZhz;I`-Cbo|lht@oI#G&xgD&%9jfTcH9Wa5(IQ?`k1^t&;8)Rcl& zLjczUmGTL3uBKT>)yAG&D~mL%dUh2IK3pzH#>+tV!yu2NUuJ!(Qu#)L%AXei0}8Y| znATYEwECIK2+X8wY~VGs5W|HYI|=m*TeR_kiq!dGi1LBEp+%|ny>+1osV0Pi`E{v# zn8sIDmdr;P6@QZy-vs%NuaLtJX`e?O88fmmu(Z*xgd7XgqG?N~a;$-SRuac4(`hy4 zQLZUx{8H|}1l@m#yt=REruW?j5bH>x#`q245Fqk~Lycn7A3%SplBbtEr6*=KuZV9L zTzGbwZmJ?z{Hs+j+_T!E?o%Zwdi?PQc88J5As^RM+YGzdC>q7cXx#qB%^Z?TCnQDa zs;a0euW;aFpSf|WK5fdw3CIL5u}oHz+sZcHw-?kE`)kHJ&Md`qvTh@ZiL;N{2z1T< zbIY1CC?Mt->20tqo1$NrV zZH0r4tAqSws>)7H4%cZ35+TdlUrbdrZH~)cl@yaMR@(LSt4^k)Il6PU!LL!gn}qFt zz5kOh=0Yjc_E0KH6#0Z>lLJ^7GHP;2;p9C zy?^MT{F@&)N+oq>=2N#$Eeutg{e2VW4=B(uwM@evu6^`M<4W1ICy5qTpQL*#HZbJ9 z+KV7*%!y(dfa{B%Lf+X4VXW*Ar{@bl*Q7tLHJsqo_x=jl`+`X;B;T$~FM92#6vuGc z7fy)y3B610=T%T}~6{+uZh_lW4HW&atsY@lQA2|6T zhFh?~$q@O-|ApdPO|2)@aJ_t(32aTPk$9kDzfJS%MqanusjY4q)(F@BS-M!$`*x>S zl;lRxro_>$j(Y-jN-K#QCUk9Y^_-U6#`ZcbT`~vs!DgyFy;yz8VBVRZ9GG`QsbtXT zOE*u6(G5zLi~n|4wm@+Bf$ZXQ)wRw;?+(~K}gxyeIJi4+S)sx zt>zC*^QHJ)){2v-e4bU@WoSZ|@gV<$vEUI7f9{0vFA)Z-)i=jUoT8nE^}Dslk+`Eq zSNvSWe*kxR0FxiaQyinEAM9gs*>i~@*G7T)eWh*~KnFH`y5<4e{)M0p28+BLDyZ literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-select-fun.png b/static/tabbar/icon-select-fun.png new file mode 100644 index 0000000000000000000000000000000000000000..dbc2af9e1dd6226dffcb56b0e37ffc4770aca1bc GIT binary patch literal 2138 zcmX|@dpy(oAIHBlLvsnaJzTfRaVfT$>)71pvg6uZQjzOOHXD{L>o6iB5!=3oL`Ugc|1O!_vih2zaP)n#T>zR6yG5y`O;){zK1Jk*wj6#=MZMi`7m zrNkv-SvbT$T&(E6`;0`u{%K*v;t&qIg0MhOAD9y@febS@u`rH6o0-BatxeDtC~H%* zgD_JR+7gMfM4~aqC^QyjfyG$Eel7$a3bRd!jKY!#EaHNbPufFM$9-yZNBim4oYgCDY~Mhw5t64SEUT1O;<^?Sakg)NGdsvkyZCIh)Yh z^c)HCwuv5x>HB^8sRI-yo6o)p<1wlQ;Kc=b7 zM9=&t1eNRBsAN&CyfKxM9G$ccPP={9w9l)OmxV|ltCc2UP-sx0s<{{v*eEfeXwz-z zCkrju9CM-WU9rqrJZMtkg^aMwoZi+JW`vF0LaUJn2Wn2QDR~ua`+bHhUKYK>9 ztd4TCF3bLn!25Eu_!#IQ=yf*hjo*wzXp12Y+$*+_&7%Q_%eSuxe-kb$EDu6TKyzhl z*MwjDdA2cs1S=?(5(@l^tT^5>!zX?55SCHx)E9WX2B#4Hc6-ZEXyjWhb_>9y_rx=S zKCov$?_=J)+HLJkdBM;-eb98-8Ra|stQ1cG`CzO&T->70GD=;|D09{e^A=Dka(g>l z?vs*YklLysNk5|V2PjB}0a6y?6a^3cmi&0imQC?vS+5O%I>%=_U+#g&##{#@d zEnu{-#8Hk`e_YGg3NmC?1zy^uq?V2fTFpE47q163hCo6=b2SAPI&98JG1VL>%9?JV z#NMD!)(gQWE}?U(^$F<5aDVbBsH(bF1@_{-R_DFDi{pylz_xoQA)4ztMRR-~Ub~;w z3U;R9qHxQq*VMrg3eU7B!j+4Z#vM6bn(SG8W;>0wxBZmabKswGvG=g|i57liJlH+C16kt<5AMu|3s0#D zL>f`YCb+sCLj69qs?-+MHJz9fJpXjlbk%huyG-F=;Mtyd)mlD#slyj4cU3xCf7Wo% zDw92U@=w+ah%6L6ylvtXA`Flpd*_(e6CdJQA*1s^Y+`uhyvzrRmboC@(f^)WzZyRuE^Jq;m53P~qpK_9$FvSIU6m45Doz zW(7V}3F{W@2=jznjnBHHC%LX@d`JSVZ?%-im(dN^t@61vhD&8U9X+He@igiA{e5a+ z+q@)(J`l2}PpgUI{{^kPTTFe=%yCS`y(h7v z z++4oO=Bf^^)-QzFb&%`8d0hT?h|uo7d{ghF#?Z$3n>)}s+r>MX8Wk!H9bJ6`b+W>P z+;-JLe{s+){bK5rf?Vi1-5SZXiR}EjDmhyx`Y=t*MLy#|&t{qM(>H0Yqu*h*Q!L#T zitl#?wVM?8ObB$wT+p0kc?)c>;YvbK70nyouaN997 F{eMi>s0IK4 literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-select-home.png b/static/tabbar/icon-select-home.png new file mode 100644 index 0000000000000000000000000000000000000000..15dbf6e123b05992f71445c1a0300262a64e62cb GIT binary patch literal 1603 zcmX|>dpOg39LIm#+?v~xD2AVPIgDKi8*@uBnY75BR0p%UWS49hr8YgfoSajSORZea zsx{Klb%d0ql)}2XHJ0iW$zv2r7j>r7)AxD4m(S<>d0y}D`}4>5U{qwNIou8o0Dw6) zEQGG#UFN5Wk$x@w*1!P($hy>MhLAyvATxO!Y(f$*k%bj;`1*SQ@Cy*}6PVjsLNJk) zoXVx3Ca$%hz|IavsKhLLeDDX##a61JRG%pA;Xi?y5UIq(Xh4sQP37$mIn}j8J;YmbKcaVrD zc;oQiID!WTPaxyH$Q~r{=Ro_NSOWqM%ZQLOvOX%g)ZmW_w_H8Ob;T ziA2KTi8vw=qp!dSa=5|-5r!*RHjnt95yBEMGgA4&R2~CS0 zhx_GEAN=YNi>q%-hTeZAGJXO846aZ^f}$A(wbHFA$QWyJi|@VRsxrCxDrTC-0K-w% z4xnZ?=Fx8s%?=-W?#D=qduKdd8*F+iesYacd8FW!&n)WAUb++NKwBcZN1+XQf_5q5 zY9b16rY9C@m-p@8X?*wT@rvVGBx6QbDbUTab&Vg(cNUZsxh$+-lnO%{r~$+0yJc_C za@L)9me!})559KNhTgI@mvYw-$J|KOZKt5yAQwL;&7B13Ao!Z^q(eAIN?c=J~@*`B>i)4ok;$zh8(6?c; z!Zc?cy}dzvO-$&n2{3A2oGnJQ_dju1;F4Zt+h8Ua|68Z}1g?h-ybRuC*v$`s)T+Qq zb}iqreMGWohx2L(h0n3mrCir1VqXRuLE!_9OY1-{B-S;_Q09e%X(S)zEUwQMtFRZC ztIC@X0&V%h*@&xy@X~ZeZewYO?*t47>ys2JI|JN+Omq`ex~*Zk_-Wx&qrn0+qAAMx zGSDewvr3M%I-AkMTp!)rg^VdEFFE?DsE-84ml5p6cO{|XVYFgJ{E}HK#uR$r%-)M` z&gKceanr>gpjC7H4MknjTGct##)W)d91cyE!SlCL zzbfYzMr+LS{Vb*dTSF(>wR3XnW;Ut%>P1&IyA#q~b}r^d`|ApiYDVUneyxxvwbaqB2o&H@+M`gI*hQ^{Ch+ZM|EH(Kqe6K;^v45ViTQE;z{oH0|@=!5nu z3z>bx;{Mu-)>qq3F|pw%K9f&O1ksYq)@M5|NiitBT`-PZWB3j|Y4H|_u6dj@e5~=ZqC|OxhrKern^|-k2)oc+fYxHyH37JW#lAVWFBymv`b4gT!i${lRek_c)+XoYOBcvFQ&z5o$1Gu=&6$Khf`zV9}{4k^nI<4zP{I*Z~RO+B{k|`@}g#tN!%r`5yTo>pN z@M!2;PcL-vFAcgr6xeOAUpL(T`s=l=)b0K7^7 literal 0 HcmV?d00001 diff --git a/static/tabbar/icon-select-person.png b/static/tabbar/icon-select-person.png new file mode 100644 index 0000000000000000000000000000000000000000..8300a667b32bd30e8bbbcd516354dcc456af7c50 GIT binary patch literal 1760 zcmX|?eLUOO9>;%4JhUn_N~wDI30kEQiK2<1Aw{$y;vv?u8zOB&kQ=E4cNIFNjMmK7 zdb(Cs#XR()QbDtht7>{ZwGGNLx|((III0wj-M)5SukShMd(QXu{+!SEpL31s?*rE| z)&c+kPWC0yRI9ZrZ1!lV=48Ne5&$4)IKg3pFv?jxGa=4CGCCoOWiN{3sqO)Q;348g zGGkc+Fp71N6YqvxkUm0!oM<;B-HGBr;d!yx9N!c^D=5W3n3)pG#6=@L+_eZIyb2J< z5=4TcIBt9*UgU=Si;Gw7caPCX@UIdBsGwH@p9MPEJENGG6Ijp%XOD4q zz+q1u2eA$q7qo*58sms^z~CL6@s2p~<3PG=fdqc^1w4)9{ZUMnxgpsC0S}Kx3xz^^ zp`(2Q{~{WL!{N{lSTq)kQdOW5lj8-EB2;{$;C{oP>CAml+wAa7o~X zM51>^&>vM)_RxR(Qzd_Qh!wAD3t#2G+=Q_J0P0jSi5MJ~*>f|NTNq;0o7Txy%H{GZ zw4ueTtA=;gH0@8GM%_jr@3Aig8?RT8m{gB!O!09dNe_L^o2=%9t%G`IGpN&=e!jsZ z({7@+1U@Dv(|?Uey-iv90asPMFg2VTv`rqF#m#oiZgsZJCO^Y0jU_MNFqNoF%q8%f zI{L7GDztgp>pJU@^%cJZJrUzg&awFp)-qd#HG^A>ar~u`xREMemHo^O_;TN96l0%a zuvG}SgW#+k>@M{5f6{6`#A%d6qHg&|KhtBwo9K{bm^ti{OrN2{)1>N-0)+_S9~W8q zAu>b-->Skm-Nj(%KzEr)Yh8WGZ0YbDDL++PnzLm)UHQZ~ z#$@^#5Dt_dhJa#wg+Wi6rQy9S{mn826kD8dYe+1hUhm(rV9faH_2GnPQcL@kWnaUC z5mY;+bN3ni@OYJcr8&J;&6~XWI1Nx6td&3C@VB&SMKS%J1X=W$t*ILm)y4N(a1dx+0?Sv`f@8%O|(Su>8yl~v(g4j`7qf-)#f!6eE{Y=L%r0l*bHiE%erbJI zE8S8bDYbR_>E6F-ll)#dZ5qyVb&vbDM4S&DT>Fs6^04q@d$F2%Y;XOow}9u6Xzs;} z^vq5CmF+`S>Se7V5Ayw_)?w@;2lJS}>Go<(Y+4o#bPcv7ra$?dO-TMZv6kEWsifw2 zpE>^l!x-!$gxA>hgLzJo`Ml0<3_KNtoGYl>EU4+piZ_j2h#t$0 zMu5?cNw0*Ry8|Ux4O|&x)2>}obZ*p^oemud96Mna zu|49Yr2noVCSx%MKy6-O7GWt?Qo|XaUAD_P7E4-&qCu zelaS(Wf%TMbWLI1xPI#GL%yRYRqx~PNT=-wG(T8JlpK-}@mqA5@6fUL=1#DX;fJDgKjNCu6!%(vsDog*hqo4??5u5uD<#9eXREG$3#BuPipXFWc&%Bj{1B6 literal 0 HcmV?d00001 diff --git a/uni.scss b/uni.scss new file mode 100644 index 0000000..f0f426c --- /dev/null +++ b/uni.scss @@ -0,0 +1,76 @@ +/** + * 这里是uni-app内置的常用样式变量 + * + * uni-app 官方扩展插件及插件市场(https://ext.dcloud.net.cn)上很多三方插件均使用了这些样式变量 + * 如果你是插件开发者,建议你使用scss预处理,并在插件代码中直接使用这些变量(无需 import 这个文件),方便用户通过搭积木的方式开发整体风格一致的App + * + */ + +/** + * 如果你是App开发者(插件使用者),你可以通过修改这些变量来定制自己的插件主题,实现自定义主题功能 + * + * 如果你的项目同样使用了scss预处理,你也可以直接在你的 scss 代码中使用如下变量,同时无需 import 这个文件 + */ + +/* 颜色变量 */ + +/* 行为相关颜色 */ +$uni-color-primary: #007aff; +$uni-color-success: #4cd964; +$uni-color-warning: #f0ad4e; +$uni-color-error: #dd524d; + +/* 文字基本颜色 */ +$uni-text-color:#333;//基本色 +$uni-text-color-inverse:#fff;//反色 +$uni-text-color-grey:#999;//辅助灰色,如加载更多的提示信息 +$uni-text-color-placeholder: #808080; +$uni-text-color-disable:#c0c0c0; + +/* 背景颜色 */ +$uni-bg-color:#ffffff; +$uni-bg-color-grey:#f8f8f8; +$uni-bg-color-hover:#f1f1f1;//点击状态颜色 +$uni-bg-color-mask:rgba(0, 0, 0, 0.4);//遮罩颜色 + +/* 边框颜色 */ +$uni-border-color:#c8c7cc; + +/* 尺寸变量 */ + +/* 文字尺寸 */ +$uni-font-size-sm:24upx; +$uni-font-size-base:28upx; +$uni-font-size-lg:32upx; + +/* 图片尺寸 */ +$uni-img-size-sm:40upx; +$uni-img-size-base:52upx; +$uni-img-size-lg:80upx; + +/* Border Radius */ +$uni-border-radius-sm: 4upx; +$uni-border-radius-base: 6upx; +$uni-border-radius-lg: 12upx; +$uni-border-radius-circle: 50%; + +/* 水平间距 */ +$uni-spacing-row-sm: 10px; +$uni-spacing-row-base: 20upx; +$uni-spacing-row-lg: 30upx; + +/* 垂直间距 */ +$uni-spacing-col-sm: 8upx; +$uni-spacing-col-base: 16upx; +$uni-spacing-col-lg: 24upx; + +/* 透明度 */ +$uni-opacity-disabled: 0.3; // 组件禁用态的透明度 + +/* 文章场景相关 */ +$uni-color-title: #2C405A; // 文章标题颜色 +$uni-font-size-title:40upx; +$uni-color-subtitle: #555555; // 二级标题颜色 +$uni-font-size-subtitle:36upx; +$uni-color-paragraph: #3F536E; // 文章段落颜色 +$uni-font-size-paragraph:30upx; \ No newline at end of file