From 3d4443eac837faf041beb46dbd18e74bc7a47c75 Mon Sep 17 00:00:00 2001 From: Ooo_My_God Date: Wed, 18 Jan 2017 15:23:53 +0800 Subject: [PATCH] :rocket:Hello, github. --- .babelrc | 5 + .editorconfig | 20 + .gitignore | 4 + LICENSE | 21 + README.md | 18 + build/base.conf.js | 33 ++ build/webpack.dev.conf.js | 19 + build/webpack.prod.conf.js | 33 ++ dist/ydui.css | 2 + dist/ydui.js | 5 + example/app.vue | 7 + example/index.html | 19 + example/main.js | 73 ++++ example/routers/actionsheet.vue | 57 +++ example/routers/asidebar.vue | 14 + example/routers/badge.vue | 48 +++ example/routers/button.vue | 21 + example/routers/cell.vue | 162 ++++++++ example/routers/cityselect.vue | 44 +++ example/routers/dialog.vue | 113 ++++++ example/routers/grids.vue | 34 ++ example/routers/icons.vue | 31 ++ example/routers/index.vue | 40 ++ example/routers/keyboard.vue | 44 +++ example/routers/list.infinitescroll.vue | 109 ++++++ example/routers/list.pullrefresh.vue | 95 +++++ example/routers/list.theme.vue | 63 +++ example/routers/list.vue | 34 ++ example/routers/navbar.vue | 51 +++ example/routers/progressbar.vue | 39 ++ example/routers/scrolltab.vue | 44 +++ example/routers/sendcode.vue | 58 +++ example/routers/slider.vue | 27 ++ example/routers/spinner.vue | 64 ++++ example/routers/tab.vue | 24 ++ example/routers/tabbar.vue | 57 +++ example/routers/tabs.vue | 12 + example/styles/demo.less | 359 ++++++++++++++++++ package.json | 53 +++ src/components/actionsheet/index.js | 3 + .../actionsheet/src/actionsheet.vue | 54 +++ src/components/badge/index.js | 6 + src/components/badge/src/badge-radius.vue | 14 + src/components/badge/src/badge.vue | 43 +++ src/components/button/index.js | 6 + src/components/button/src/button-group.vue | 9 + src/components/button/src/button.vue | 59 +++ src/components/cell/index.js | 9 + src/components/cell/src/cell-group.vue | 15 + src/components/cell/src/cell-item.vue | 59 +++ src/components/cityselect/index.js | 2 + src/components/cityselect/src/cityselect.vue | 202 ++++++++++ src/components/cityselect/src/ydui.citys.js | 1 + src/components/dialog/index.js | 13 + src/components/dialog/src/alert/alert.vue | 23 ++ src/components/dialog/src/alert/index.js | 28 ++ src/components/dialog/src/confirm/confirm.vue | 38 ++ src/components/dialog/src/confirm/index.js | 31 ++ src/components/dialog/src/loading/index.js | 29 ++ src/components/dialog/src/loading/loading.vue | 16 + src/components/dialog/src/notify/index.js | 46 +++ src/components/dialog/src/notify/notify.vue | 18 + src/components/dialog/src/toast/index.js | 35 ++ src/components/dialog/src/toast/toast.vue | 28 ++ src/components/grids/index.js | 9 + src/components/grids/src/grids-group.vue | 29 ++ src/components/grids/src/grids-item.vue | 31 ++ src/components/icons/index.js | 2 + src/components/icons/src/icons.vue | 50 +++ src/components/infinitescroll/index.js | 2 + .../infinitescroll/src/infinitescroll.vue | 86 +++++ src/components/keyboard/index.js | 3 + src/components/keyboard/src/keyboard.vue | 126 ++++++ src/components/layout/index.js | 2 + src/components/layout/src/layout.vue | 31 ++ src/components/list/index.js | 11 + src/components/list/src/list-item.vue | 19 + src/components/list/src/list-other.vue | 11 + src/components/list/src/list-theme.vue | 27 ++ src/components/navbar/index.js | 8 + .../navbar/src/navbar-back-icon.vue | 9 + .../navbar/src/navbar-next-icon.vue | 9 + src/components/navbar/src/navbar.vue | 34 ++ src/components/progressbar/index.js | 2 + .../progressbar/src/progressbar.vue | 162 ++++++++ src/components/pullrefresh/index.js | 2 + .../pullrefresh/src/pullrefresh.vue | 187 +++++++++ src/components/scrolltab/index.js | 6 + .../scrolltab/src/scrolltab-panel.vue | 17 + src/components/scrolltab/src/scrolltab.vue | 115 ++++++ src/components/sendcode/index.js | 2 + src/components/sendcode/src/sendcode.vue | 78 ++++ src/components/slider/index.js | 6 + src/components/slider/src/slider-item.vue | 11 + src/components/slider/src/slider.vue | 277 ++++++++++++++ src/components/spinner/index.js | 2 + src/components/spinner/src/spinner.vue | 226 +++++++++++ src/components/switch/index.js | 2 + src/components/switch/src/switch.vue | 36 ++ src/components/tab/index.js | 6 + src/components/tab/src/tab-panel.vue | 20 + src/components/tab/src/tab.vue | 58 +++ src/components/tabbar/index.js | 6 + src/components/tabbar/src/tabbar-item.vue | 29 ++ src/components/tabbar/src/tabbar.vue | 23 ++ src/index.js | 98 +++++ src/styles/common/iconfont.less | 4 + src/styles/common/mixins.less | 134 +++++++ src/styles/common/public.less | 94 +++++ src/styles/common/reset.less | 103 +++++ src/styles/common/variables.less | 109 ++++++ src/styles/components/actionsheet.less | 41 ++ src/styles/components/badge.less | 57 +++ src/styles/components/button.less | 64 ++++ src/styles/components/cell.less | 146 +++++++ src/styles/components/cityselect.less | 142 +++++++ src/styles/components/dialog.less | 222 +++++++++++ src/styles/components/grids.less | 79 ++++ src/styles/components/icons.less | 234 ++++++++++++ src/styles/components/keyboard.less | 149 ++++++++ src/styles/components/list.less | 313 +++++++++++++++ src/styles/components/navbar.less | 87 +++++ src/styles/components/progressbar.less | 23 ++ src/styles/components/scrolltab.less | 96 +++++ src/styles/components/slider.less | 76 ++++ src/styles/components/spinner.less | 44 +++ src/styles/components/switch.less | 40 ++ src/styles/components/tab.less | 78 ++++ src/styles/components/tabbar.less | 75 ++++ src/styles/index.less | 4 + src/utils/assist.js | 29 ++ 131 files changed, 7056 insertions(+) create mode 100644 .babelrc create mode 100644 .editorconfig create mode 100644 .gitignore create mode 100644 LICENSE create mode 100644 README.md create mode 100644 build/base.conf.js create mode 100644 build/webpack.dev.conf.js create mode 100644 build/webpack.prod.conf.js create mode 100644 dist/ydui.css create mode 100644 dist/ydui.js create mode 100644 example/app.vue create mode 100644 example/index.html create mode 100644 example/main.js create mode 100644 example/routers/actionsheet.vue create mode 100644 example/routers/asidebar.vue create mode 100644 example/routers/badge.vue create mode 100644 example/routers/button.vue create mode 100644 example/routers/cell.vue create mode 100644 example/routers/cityselect.vue create mode 100644 example/routers/dialog.vue create mode 100644 example/routers/grids.vue create mode 100644 example/routers/icons.vue create mode 100644 example/routers/index.vue create mode 100644 example/routers/keyboard.vue create mode 100644 example/routers/list.infinitescroll.vue create mode 100644 example/routers/list.pullrefresh.vue create mode 100644 example/routers/list.theme.vue create mode 100644 example/routers/list.vue create mode 100644 example/routers/navbar.vue create mode 100644 example/routers/progressbar.vue create mode 100644 example/routers/scrolltab.vue create mode 100644 example/routers/sendcode.vue create mode 100644 example/routers/slider.vue create mode 100644 example/routers/spinner.vue create mode 100644 example/routers/tab.vue create mode 100644 example/routers/tabbar.vue create mode 100644 example/routers/tabs.vue create mode 100644 example/styles/demo.less create mode 100644 package.json create mode 100644 src/components/actionsheet/index.js create mode 100644 src/components/actionsheet/src/actionsheet.vue create mode 100644 src/components/badge/index.js create mode 100644 src/components/badge/src/badge-radius.vue create mode 100644 src/components/badge/src/badge.vue create mode 100644 src/components/button/index.js create mode 100644 src/components/button/src/button-group.vue create mode 100644 src/components/button/src/button.vue create mode 100644 src/components/cell/index.js create mode 100644 src/components/cell/src/cell-group.vue create mode 100644 src/components/cell/src/cell-item.vue create mode 100644 src/components/cityselect/index.js create mode 100644 src/components/cityselect/src/cityselect.vue create mode 100644 src/components/cityselect/src/ydui.citys.js create mode 100644 src/components/dialog/index.js create mode 100644 src/components/dialog/src/alert/alert.vue create mode 100644 src/components/dialog/src/alert/index.js create mode 100644 src/components/dialog/src/confirm/confirm.vue create mode 100644 src/components/dialog/src/confirm/index.js create mode 100644 src/components/dialog/src/loading/index.js create mode 100644 src/components/dialog/src/loading/loading.vue create mode 100644 src/components/dialog/src/notify/index.js create mode 100644 src/components/dialog/src/notify/notify.vue create mode 100644 src/components/dialog/src/toast/index.js create mode 100644 src/components/dialog/src/toast/toast.vue create mode 100644 src/components/grids/index.js create mode 100644 src/components/grids/src/grids-group.vue create mode 100644 src/components/grids/src/grids-item.vue create mode 100644 src/components/icons/index.js create mode 100644 src/components/icons/src/icons.vue create mode 100644 src/components/infinitescroll/index.js create mode 100644 src/components/infinitescroll/src/infinitescroll.vue create mode 100644 src/components/keyboard/index.js create mode 100644 src/components/keyboard/src/keyboard.vue create mode 100644 src/components/layout/index.js create mode 100644 src/components/layout/src/layout.vue create mode 100644 src/components/list/index.js create mode 100644 src/components/list/src/list-item.vue create mode 100644 src/components/list/src/list-other.vue create mode 100644 src/components/list/src/list-theme.vue create mode 100644 src/components/navbar/index.js create mode 100644 src/components/navbar/src/navbar-back-icon.vue create mode 100644 src/components/navbar/src/navbar-next-icon.vue create mode 100644 src/components/navbar/src/navbar.vue create mode 100644 src/components/progressbar/index.js create mode 100644 src/components/progressbar/src/progressbar.vue create mode 100644 src/components/pullrefresh/index.js create mode 100644 src/components/pullrefresh/src/pullrefresh.vue create mode 100644 src/components/scrolltab/index.js create mode 100644 src/components/scrolltab/src/scrolltab-panel.vue create mode 100644 src/components/scrolltab/src/scrolltab.vue create mode 100644 src/components/sendcode/index.js create mode 100644 src/components/sendcode/src/sendcode.vue create mode 100644 src/components/slider/index.js create mode 100644 src/components/slider/src/slider-item.vue create mode 100644 src/components/slider/src/slider.vue create mode 100644 src/components/spinner/index.js create mode 100644 src/components/spinner/src/spinner.vue create mode 100644 src/components/switch/index.js create mode 100644 src/components/switch/src/switch.vue create mode 100644 src/components/tab/index.js create mode 100644 src/components/tab/src/tab-panel.vue create mode 100644 src/components/tab/src/tab.vue create mode 100644 src/components/tabbar/index.js create mode 100644 src/components/tabbar/src/tabbar-item.vue create mode 100644 src/components/tabbar/src/tabbar.vue create mode 100644 src/index.js create mode 100644 src/styles/common/iconfont.less create mode 100644 src/styles/common/mixins.less create mode 100644 src/styles/common/public.less create mode 100644 src/styles/common/reset.less create mode 100644 src/styles/common/variables.less create mode 100644 src/styles/components/actionsheet.less create mode 100644 src/styles/components/badge.less create mode 100644 src/styles/components/button.less create mode 100644 src/styles/components/cell.less create mode 100644 src/styles/components/cityselect.less create mode 100644 src/styles/components/dialog.less create mode 100644 src/styles/components/grids.less create mode 100644 src/styles/components/icons.less create mode 100644 src/styles/components/keyboard.less create mode 100644 src/styles/components/list.less create mode 100644 src/styles/components/navbar.less create mode 100644 src/styles/components/progressbar.less create mode 100644 src/styles/components/scrolltab.less create mode 100644 src/styles/components/slider.less create mode 100644 src/styles/components/spinner.less create mode 100644 src/styles/components/switch.less create mode 100644 src/styles/components/tab.less create mode 100644 src/styles/components/tabbar.less create mode 100644 src/styles/index.less create mode 100644 src/utils/assist.js diff --git a/.babelrc b/.babelrc new file mode 100644 index 00000000..e027e954 --- /dev/null +++ b/.babelrc @@ -0,0 +1,5 @@ +{ + "presets": [ + ["es2015"] + ] +} diff --git a/.editorconfig b/.editorconfig new file mode 100644 index 00000000..f8f04514 --- /dev/null +++ b/.editorconfig @@ -0,0 +1,20 @@ +# editorconfig.org + +root = true + +[*] +index_size = 2 +charset = utf-8 +end_of_line = lf +indent_style = space +insert_final_newline = true +trim_trailing_whitespace = true + +[*.md] +trim_trailing_whitespace = false + +[*.js] +index_size = 4 + +[*.less] +index_size = 2 diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..f7b016cc --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +.DS_Store +node_modules/ +npm-debug.log +/.idea diff --git a/LICENSE b/LICENSE new file mode 100644 index 00000000..52fd8346 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2015-2016 YDCSS Inc. + +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. diff --git a/README.md b/README.md new file mode 100644 index 00000000..fa9d735f --- /dev/null +++ b/README.md @@ -0,0 +1,18 @@ +# vue-ydui + +> A Vue.js project + +## Build Setup + +``` bash +# install dependencies +npm install + +# serve with hot reload at localhost:8080 +npm run dev + +# build for production with minification +npm run build +``` + +For detailed explanation on how things work, consult the [docs for vue-loader](http://vuejs.github.io/vue-loader). diff --git a/build/base.conf.js b/build/base.conf.js new file mode 100644 index 00000000..6a27ff9b --- /dev/null +++ b/build/base.conf.js @@ -0,0 +1,33 @@ +module.exports = { + module: { + loaders: [ + { + test: /\.vue$/, + loader: 'vue', + exclude: /node_modules/ + }, + { + test: /\.js$/, + loader: 'babel', + exclude: /node_modules/ + }, + { + test: /\.less$/, + loader: 'style!css!less', + exclude: /node_modules/ + }, + { + test: /\.json$/, + loader: 'json', + exclude: /node_modules/ + } + ] + }, + vue: { + postcss: [ + require('autoprefixer')({ + browsers: ['Android >= 4', 'Explorer >= 10', 'iOS >= 6'], cascade: false + }) + ] + } +}; diff --git a/build/webpack.dev.conf.js b/build/webpack.dev.conf.js new file mode 100644 index 00000000..087e5d15 --- /dev/null +++ b/build/webpack.dev.conf.js @@ -0,0 +1,19 @@ +const path = require('path'); +const webpack = require('webpack'); +const merge = require('webpack-merge'); +const baseWebpackConfig = require('./base.conf'); + +module.exports = merge(baseWebpackConfig, { + entry: { + main: './example/main.js', + vendors: ['vue', 'vue-router'] + }, + output: { + path: path.join(__dirname, './dist'), + publicPath: '/dist/', + filename: '[name].js' + }, + plugins: [ + new webpack.optimize.CommonsChunkPlugin({name: 'vendor', filename: 'vendor.js'}) + ] +}); diff --git a/build/webpack.prod.conf.js b/build/webpack.prod.conf.js new file mode 100644 index 00000000..743df21b --- /dev/null +++ b/build/webpack.prod.conf.js @@ -0,0 +1,33 @@ +const path = require('path'); +const webpack = require('webpack'); +const merge = require('webpack-merge'); +const ExtractTextPlugin = require('extract-text-webpack-plugin'); +const baseWebpackConfig = require('./base.conf'); +const pkg = require('../package.json'); + +module.exports = merge(baseWebpackConfig, { + entry: { + main: './src/index.js' + }, + output: { + path: path.join(__dirname, '../dist'), + publicPath: '/dist/', + filename: 'ydui.js', + library: 'ydui', + libraryTarget: 'umd' + }, + externals: { + vue: 'Vue' + }, + vue: { + loaders: { + less: ExtractTextPlugin.extract('css!less') + } + }, + plugins: [ + new webpack.BannerPlugin(pkg.name + ' v' + pkg.version + ' by YDCSS (c) ' + new Date().getFullYear() + ' Licensed ' + pkg.license), + new ExtractTextPlugin('ydui.css'), + new webpack.optimize.UglifyJsPlugin({compress: {warnings: false}}), + new webpack.optimize.OccurenceOrderPlugin() + ] +}); diff --git a/dist/ydui.css b/dist/ydui.css new file mode 100644 index 00000000..7e7a99e8 --- /dev/null +++ b/dist/ydui.css @@ -0,0 +1,2 @@ +/*! vue-ydui v0.0.1 by YDCSS (c) 2017 Licensed MIT */ +@-webkit-keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes zoomIn{0%{opacity:0;-webkit-transform:scale3d(.3,.3,.3);transform:scale3d(.3,.3,.3)}50%{opacity:1}}.m-confirm{width:85%;background-color:#fafafa;border-radius:3px;font-size:15px}.m-alert,.m-confirm{-webkit-animation:zoomIn .15s ease forwards;animation:zoomIn .15s ease forwards}.m-alert .confirm-bd{text-align:center;padding:20px 20px 0}.m-alert .confirm-ft{margin-top:14px}.confirm-hd{text-align:left;padding:15px 20px 5px}.confirm-hd .confirm-title{font-weight:400;color:#444;word-break:break-all}.confirm-bd{text-align:left;padding:0 20px;font-size:14px;color:#888;line-height:20px;word-break:break-all}.confirm-ft{position:relative;line-height:40px;margin-top:14px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.confirm-ft:after{content:"";position:absolute;z-index:0;top:0;left:0;width:100%;height:1px;border-top:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.confirm-ft>a{position:relative;text-align:center;display:block;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding:0 2px}.confirm-ft>a:not(:last-child):after{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.confirm-ft>a.confirm-btn.default{color:#353535}.confirm-ft>a.confirm-btn.primary{color:#0bb20c}@media screen and (min-width:768px){.m-confirm{width:40%}}.m-toast{min-width:130px;max-width:80%;padding-top:20px;background:rgba(40,40,40,.8);text-align:center;border-radius:4px;color:#fff;-webkit-animation:zoomIn .06s ease forwards;animation:zoomIn .06s ease forwards}.m-toast.toast-none-icon{padding-top:10px;border-radius:3px}.m-toast.toast-none-icon .toast-content{padding:0 36px 10px}.toast-content{font-size:15px;padding:0 15px 15px;line-height:22px;word-break:break-all}.toast-error-icon,.toast-success-icon{display:block;margin-bottom:10px}.toast-error-icon:after,.toast-success-icon:after{display:inline-block;content:""}.toast-success-icon:after{width:43px;height:35px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABSCAMAAACVH4HWAAACH1BMVEX////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9O2oTAAAAtHRSTlMAAQIEBQYHCAkKCw0ODxAREhQVFhcYGRobHB0gISIkJSYnKCkqKy4vMDM1Nzg5Ojw+QEJDREZHSElKTE9VVldYWltdXl9gYWJlZmdoaWprbG5zd3h6e3x9fn+AgoOFhoiJiouNjpCSlJWYmZqbnJ2eoKKjpKaoqausrq+wtLa3ubq7vL2+wcLFxsfIy83Oz9DR0tPV19jZ2tvc3d7f4OHm5+jp6uvs7e7v8PL19/j5+vv8/f6CNheHAAACzElEQVQYGbXBCVtMUQAG4G9KJUok2cmSCNkqIbIURbRIlrIrRAhZUgoJpc1ehKK0yGR8P9CD1F3O3Lkzc877QqlFJTV7A6BUeMkgyYYYKBT3ln81h0CZjYMcVQJVNo/wvyoospvjjkGNPI57MRFKFFNjH5Qoo8YdKFFJjTdhUCD0PjU+L4MC0Y3UcG6AAvM6qbUNCqz4QK0jUGD1ELUuQ4HkAWrVTYB8O35Rqy0c8uVQp38J5DtFneFEyFdGvQxI57hDvQJIN/Eu9cohXVgT9aoh3bwm6rVMg2yxPdTrnQvZ1vdSz5UC2Tb/oMF2yJZBowLIlkOjS5DtEI3qIdtZGrXMgFwBN2j0aT7kCrpHI1ci5Ip+QpNMWAieG+WAdyLbaVIE9yafeD3wpX4LvLH8PU0uwL0FzfzrSjBsS/hKkzoH3Apq5aj2xbBpk5Mm7dPg3n6O6U+BLalOmnTHwcJNapyGDbk0+5kAK1epdXsKPMmjQBYsZVDnXQysXaBAPqxFfqRO31ZYuUaBCnhykAZH4VZoDQVq4Nl9GlSFQSy8gQKdEfBszhcadKyCyMwWCnyMhR2pNBpOhdnCVxRwrYc952hS6oBBfC9FdsGmwGc0eRQFnaQBihTDtqW9NOlaCY2dFLoCL2TQ7HsmxhygUHUAvFFCgVKMKqTQyzB4JeQpBR7OwR9nKNQXBy/F9VOgJwFAOYWcSfBaGoXSUUmxHfDBRYoMtI5Q6DB8EdJIL1yHb5YN0bb6YPgom3Y9j4DPymlPfwx8N+kN7XBthD/WOWnDHvgni54Vwl+V9OQq/BbeTGu1kCB+hFZaoiFDLi18i4EcFXQvGZJM7aA76ZAmmW4UQaJ8CpVDqloKPA6EVLM6adI2HZIl0ag7FtIVUc+1FgrcpU42VJjdRY3jUGMDx12EKof4X50DyhTzn4YIKJTWTdJ1MghKzTj/4NYa+Os3kb93+haplFoAAAAASUVORK5CYII=") no-repeat;background-size:43px 35px}.toast-error-icon:after{width:35px;height:35px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAACWFBMVEX///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+SCbtoAAAAx3RSTlMAAQIDBAUGBwgKDA4PEBESExQVFhcYGRobHB4fICEiIyQlJikqLC0uLzAxMjM0NTY3ODo7PD0/QEFCREVGSElLTE1OT1BRUlNUVVlaW1xdXl9iY2RlZ2hpamttbnBxc3R1dnh5fYCBhIeIiouMj5CRk5SVlpeYmZqbnJ2eoKGjpKaoqaqrrLCxsrS1tre4ubq8vb7AwsPFxsfIycrOz9HS09TV1tjZ2tvd3t/g4uPk5efo6err7e7v8PHy8/T19vf4+fr7/P3+xMlmOwAABJZJREFUGBntwf1jTWUAB/Dv2d2u7W5ZjcXMYuJWGFuaSFmW0SIKIRkaFauksCQieemFNBOmWKWZl43ptnXNLp3tOt9/K8bmPM9z7rnnnHv6zeeDhx56yI3w2TVB/M9md5OtVfBLKBeqVXHedbIMfgiu7KiHLH0b7zPqhyJVaa+1kn3FEOX8yAeuLUBqnv+Vd30NQdHvFBwdA+9G7ec9RgnMPqPk5to0eBOsjXHAUQhqein5eQy8KD9Hk3IIpl2hpGe5Breytxs02TYEorxjlB0eAXdmtdEk9joUgTrKIrPhQqjeoEnLBFhZcJMS48MMODWlhWYHs2FtUhtlp4vgSNr6XpoY72lIZNhxyqJz4cCoRpp1vwIbwS8oMz4IIJmKTpq1joe9dXHKDufCVmCTQbPGXCQzt4eyC8/ARv4xCnZkILnJHZTFqpFQeQfNbq+DI4V/UGZs0GBteS/NeirhUO5xKvZmwkLGdgquTYVjmQeoOJkPRd5xClqegAtpn1BxeTwk4csUnHgU7tQalHWVQ/BSNwXfZsKtZXHKbs2HyfI+Cr5Kh3vVOmW338GAtDqKtmjwYlYPFZs09Ms8QNH78Kisi4rPA7jjkUYKjNXwbOLfVOwLAo+fpSD+BlIwvoOKI1njLlHw71ykZFwbFb9EKLgxEykafZFJXJ+GlBVepK1oGXxQeJE2/pkCXxReYkJdk+CTwktMIDoZvilqp6XoVPiouIMWup+FryZEqKqGzyZGqWh+DD77iKrTOfDVUoMWGrPgo0VxWvo+CN/MjzOBbwLwSYXOhL7U4IsXbtHGx/BDeYy2apG6iVHaMxYiVcURJqPPRGoK2imKtFPRU4pU5J2jKFYa7qYiMhbeZTVRZMwDKuNUtObBq2ADJbW4YyVVTVnwRttDyTb020rVoQA82UhJQxD9AoeoqoMXtZT8loP7cpqpWgH3FhoUdY7FoNERKuKVcGumTlF8Fkxm9FHRHYY74SglNRCsoqp9JNwoaKdkFyQ7qWrKgnM5zZQ0DYEkeIqqvRqcCjZQcnUkFCOuULUBDml7KOl9Dham6VQY1XBmI2U1sFRDVawETqygbL8GS9p+qtqHI7nKOCUt2Uggu4WqE0EkUxqjJBZGQuEYVTuQRFGEskWwsZgW3oatnGbKdsHWbqr06bARbKDszxBshc5TFSlEQtoeyvRJSGKyTtWZLCSykYrVSGoNLezTYG0FFd9pSEo7QgvrYakyTlnHMDgw/C+q4hWwUBqjzKiAI1W0EH0SirERKurh0G5aaM2FpKCVigshODS0nRYaAhDkNFNhTIdjLxq08CnMQiep2gwXttLKW3ggq5GqyyG4EGqjBX0GBh2ihdlw5WWq+jY/jUFTrlKxFy7to+xCGcwKzlDSOQwu5XdR9EM2RKGDFC2Ba8so2BKALK2OZqc0uKad4gPGGlhZqnPQ7RJ4UGJwQHwJrE3v5ICd8GQX79OrkUhxC++5ng9P8q+znz4PiQ39if3WwqN3eZdeBTsZO3hHWyY8ymwjqVchiZo4uQSevUnqVUhqzo3WdHiWfj7+Khx4ag5SsGgxVP8B5afAD5V2CgcAAAAASUVORK5CYII=") no-repeat;background-size:35px 35px}@-webkit-keyframes notify-downin{0%{opacity:0;-webkit-transform:translate3d(0,-50px,0);transform:translate3d(0,-50px,0)}50%{opacity:.5}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@keyframes notify-downin{0%{opacity:0;-webkit-transform:translate3d(0,-50px,0);transform:translate3d(0,-50px,0)}50%{opacity:.5}to{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}}@-webkit-keyframes notify-upout{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}50%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-50px,0);transform:translate3d(0,-50px,0)}}@keyframes notify-upout{0%{opacity:1;-webkit-transform:translateZ(0);transform:translateZ(0)}50%{opacity:1}to{opacity:0;-webkit-transform:translate3d(0,-50px,0);transform:translate3d(0,-50px,0)}}.m-notify{position:fixed;top:0;left:0;width:100%;background-color:rgba(40,40,40,.8);line-height:.28rem;font-size:.26rem;color:#fff;padding:.3rem .24rem;opacity:0;-webkit-animation:notify-downin .2s linear forwards;animation:notify-downin .2s linear forwards;word-break:break-all;text-align:center}.m-notify.notify-out{opacity:1;-webkit-animation:notify-upout .15s linear forwards;animation:notify-upout .15s linear forwards}@-webkit-keyframes rotate-loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}@keyframes rotate-loading{0%{-webkit-transform:rotate(0);transform:rotate(0)}to{-webkit-transform:rotate(1turn);transform:rotate(1turn)}}.m-loading{border-radius:5px;color:#fff;background-color:rgba(40,40,40,.8);-webkit-animation:zoomIn .1s ease forwards;animation:zoomIn .1s ease forwards;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;padding:0 23px 0 24px;height:48px}.m-loading .loading-icon{width:28px;height:28px;background:url("data:image/png;base64,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") no-repeat;background-size:28px 28px;-webkit-animation:rotate-loading .45s linear forwards infinite;animation:rotate-loading .45s linear forwards infinite;margin-right:10px}.m-loading .loading-txt{font-size:15px;color:#fff;max-width:140px;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.m-button{padding:0 .24rem}.btn{height:.7rem;font-size:.26rem;display:inline-block;padding:0 .2rem;box-sizing:content-box}.btn,.btn-block{text-align:center;position:relative;border:none;pointer-events:auto;border-radius:3px}.btn-block{width:100%;display:block;font-size:.36rem;height:1rem;margin-top:.5rem}.btn-primary{background-color:#04be02;color:#fff}.btn-primary:active{background-color:#04ab02}.btn-danger{background-color:#ef4f4f;color:#fff}.btn-danger:active{background-color:#d74747}.btn-warning{background-color:#ffb400;color:#fff}.btn-warning:active{background-color:#e6a200}.btn-disabled{background-color:#ccc;color:#f0f0f0;pointer-events:none}.btn-disabled:active{background-color:#b8b8b8}.btn-hollow{background-color:#fff;color:#454545;border:1px solid #eaeaea}.btn-hollow:active{background-color:#f7f7f7}.hairline .btn-hollow{border:.5px solid #dedede}.m-navbar{height:.9rem;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:hsla(0,0%,100%,.98)}.m-navbar:after{content:"";position:absolute;z-index:2;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-navbar.navbar-fixed{position:fixed;top:0;left:0;width:100%;z-index:100}.navbar-item{-webkit-box-flex:0;-webkit-flex:0 0 25%;-ms-flex:0 0 25%;flex:0 0 25%;padding:0 .2rem;font-size:.3rem;white-space:nowrap;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#5c5c5c}.navbar-item:first-child{-webkit-box-ordinal-group:2;-webkit-order:1;-ms-flex-order:1;order:1;margin-right:-25%}.navbar-item:last-child{-webkit-box-ordinal-group:4;-webkit-order:3;-ms-flex-order:3;order:3}.navbar-item:last-child,.navbar-item:last-child>a{-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.navbar-item>a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:.9rem;min-width:25%;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1}.navbar-center-box{-webkit-box-ordinal-group:3;-webkit-order:2;-ms-flex-order:2;order:2;height:.9rem;width:50%;margin-left:25%}.navbar-center-box .navbar-center{width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:inherit}.navbar-center-box .navbar-center .center-title{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.4rem;color:#5c5c5c}.navbar-center-box .navbar-center img{height:60%}.back-icon:before,.next-icon:before{display:inline-block;font-family:YDUI-INLAY;font-size:.36rem;color:#5c5c5c}.back-icon:before{content:"\E607"}.next-icon:before{content:"\E608"}.m-cell{background-color:#fff;position:relative;z-index:5}.m-cell:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-cell a.cell-item,.m-cell label.cell-item{background-color:#fff}.m-cell a.cell-item:active,.m-cell label.cell-item:active{background-color:#f5f5f5}.cell-item{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;padding-left:.24rem;overflow:hidden}.cell-item:not(:last-child):after{margin-left:.24rem;content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.cell-left{color:#333;font-size:.3rem;white-space:nowrap;-ms-flex-align:center}.cell-left,.cell-right{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;align-items:center}.cell-right{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;width:100%;min-height:1rem;color:#525252;text-align:right;font-size:.26rem;padding-right:.24rem;-ms-flex-align:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end}.cell-right input[type=date],.cell-right input[type=datetime-local],.cell-right input[type=time]{line-height:1rem;-webkit-appearance:none;-moz-appearance:none}.cell-right input[type=checkbox]:not(.m-switch),.cell-right input[type=radio]{-webkit-appearance:none;-moz-appearance:none;position:absolute;left:-9999em}.cell-right input[type=checkbox]:not(.m-switch)+.cell-checkbox-icon:after,.cell-right input[type=checkbox]:not(.m-switch)+.cell-radio-icon:after,.cell-right input[type=radio]+.cell-checkbox-icon:after,.cell-right input[type=radio]+.cell-radio-icon:after{font-family:YDUI-INLAY;font-size:.44rem}.cell-right input[type=checkbox]:not(.m-switch)+.cell-radio-icon:after,.cell-right input[type=radio]+.cell-radio-icon:after{content:"\E600";color:#4cd864;display:none}.cell-right input[type=checkbox]:not(.m-switch)+.cell-checkbox-icon:after,.cell-right input[type=radio]+.cell-checkbox-icon:after{content:"\E604";color:#d9d9d9}.cell-right input[type=checkbox]:not(.m-switch):checked+.cell-radio-icon:after,.cell-right input[type=radio]:checked+.cell-radio-icon:after{display:inline-block}.cell-right input[type=checkbox]:not(.m-switch):checked+.cell-checkbox-icon:after,.cell-right input[type=radio]:checked+.cell-checkbox-icon:after{color:#4cd864;content:"\E601"}.cell-right:active{background:none}.cell-right input[type=date],.cell-right input[type=datetime-local],.cell-right input[type=number],.cell-right input[type=text],.cell-right input[type=time]{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;height:1rem;border:none;font-size:.3rem;background:transparent;color:#555;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;text-align:left}.cell-right textarea{width:100%;border:none;display:block;height:1.5rem;padding:.2rem 0}.cell-right select{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;height:1rem;border:none;display:block;color:#a9a9a9;font-size:.3rem;margin-left:-.08rem}.cell-icon{display:block}.cell-icon:after,.cell-icon:before{color:#a6a5a5;font-size:.42rem!important;margin-right:.1rem}.cell-icon img{height:.4rem;margin-right:.1rem}.cell-arrow:after{margin-left:.05rem;margin-right:-.08rem;display:block;font-family:YDUI-INLAY;font-size:.34rem;color:#c9c9c9;content:"\E608"}.m-switch{-webkit-appearance:none;-moz-appearance:none;position:relative;display:block;width:52px;height:32px;left:0;border:1px solid #dfdfdf;border-radius:16px;background-color:#dfdfdf}.m-switch:after,.m-switch:before{content:"";position:absolute;top:0;left:0;height:30px;border-radius:15px;-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.m-switch:before{width:50px;background-color:#fdfdfd}.m-switch:after{width:30px;background-color:#fff;box-shadow:0 1px 3px rgba(0,0,0,.4)}.m-switch:checked{border-color:#4cd864;background-color:#4cd864}.m-switch:checked:before{-webkit-transform:scale(0);transform:scale(0)}.m-switch:checked:after{-webkit-transform:translateX(20px);transform:translateX(20px)}.m-grids-2{overflow:hidden;position:relative;background-color:#fff}.m-grids-2:before{content:"";position:absolute;z-index:1;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-2 .grids-item{width:50%}.m-grids-2 .grids-item:not(:nth-child(2n)):before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-3{overflow:hidden;position:relative;background-color:#fff}.m-grids-3:before{content:"";position:absolute;z-index:1;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-3 .grids-item{width:33.333333%}.m-grids-3 .grids-item:not(:nth-child(3n)):before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-4{overflow:hidden;position:relative;background-color:#fff}.m-grids-4:before{content:"";position:absolute;z-index:1;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-4 .grids-item{width:25%}.m-grids-4 .grids-item:not(:nth-child(4n)):before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-5{overflow:hidden;position:relative;background-color:#fff}.m-grids-5:before{content:"";position:absolute;z-index:1;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-grids-5 .grids-item{width:20%}.m-grids-5 .grids-item:not(:nth-child(5n)):before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.grids-item{width:25%;float:left;position:relative;z-index:0;padding:.35rem 0;font-size:.28rem}.grids-item:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.grids-icon{height:.68rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.grids-icon img{height:70%}.grids-txt{word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:center;color:#333;padding:0 .2rem}@font-face{font-family:YDUI-ICONS;src:url("http://at.alicdn.com/t/font_1461139240_0312312.ttf") format("truetype")}[class*=" icon-"]:before,[class^=icon-]:before{font-family:YDUI-ICONS;font-size:inherit}.icon-footmark:before{content:"\E636"}.icon-discount:before{content:"\E633"}.icon-verifycode:before{content:"\E632"}.icon-star-outline:before{content:"\E630"}.icon-star:before{content:"\E631"}.icon-weibo:before{content:"\E62F"}.icon-download:before{content:"\E62E"}.icon-next:before{content:"\E62D"}.icon-home-outline:before{content:"\E62C"}.icon-home:before{content:"\E63D"}.icon-weixin:before{content:"\E629"}.icon-refresh:before{content:"\E628"}.icon-tencent-weibo:before{content:"\E627"}.icon-search:before{content:"\E626"}.icon-time:before{content:"\E625"}.icon-prev:before{content:"\E624"}.icon-like-outline:before{content:"\E639"}.icon-like:before{content:"\E63A"}.icon-setting:before{content:"\E623"}.icon-delete:before{content:"\E622"}.icon-sortlist:before{content:"\E621"}.icon-sortlarger:before{content:"\E620"}.icon-sortlargest:before{content:"\E61F"}.icon-qq:before{content:"\E62A"}.icon-more:before{content:"\E618"}.icon-shopcart-outline:before{content:"\E61A"}.icon-shopcart:before{content:"\E619"}.icon-checkoff:before{content:"\E617"}.icon-bad:before{content:"\E61C"}.icon-video:before{content:"\E61D"}.icon-clock:before{content:"\E61E"}.icon-ucenter-outline:before{content:"\E616"}.icon-ucenter:before{content:"\E615"}.icon-warn-outline:before{content:"\E613"}.icon-warn:before{content:"\E614"}.icon-share1:before{content:"\E610"}.icon-share2:before{content:"\E60E"}.icon-share3:before{content:"\E60D"}.icon-feedback:before{content:"\E60F"}.icon-type:before{content:"\E60C"}.icon-discover:before{content:"\E60B"}.icon-good:before{content:"\E61B"}.icon-shield-outline:before{content:"\E608"}.icon-shield:before{content:"\E60A"}.icon-qrscan:before{content:"\E609"}.icon-location:before{content:"\E607"}.icon-phone1:before{content:"\E606"}.icon-phone2:before{content:"\E637"}.icon-phone3:before{content:"\E63B"}.icon-error-outline:before{content:"\E602"}.icon-error:before{content:"\E603"}.icon-play:before{content:"\E601"}.icon-compose:before{content:"\E600"}.icon-question:before{content:"\E62B"}.icon-order:before{content:"\E638"}.m-list{overflow:hidden;position:relative}.m-list .list-item:active{background:none}.list-img{height:0;width:100%;padding:50% 0;overflow:hidden}.list-img img{width:100%;margin-top:-50%;border:none}.list-img img,.list-mes{background-color:#fff}.list-mes .list-title{color:#505050;font-size:.26rem;text-align:justify}.list-mes .list-other{padding-top:.06rem;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;color:#999}.list-price{font-size:.3rem;color:#eb5211}.list-price>em{font-size:.22rem}.list-del-price{padding-left:.06rem;font-size:.2rem;margin-left:.02rem;position:relative;color:#8c8c8c}.list-del-price:after{content:"";position:absolute;z-index:0;top:0;left:0;width:100%;height:1px;border-top:1px solid #8c8c8c;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0;top:auto;bottom:50%}.list-theme1{padding:0 2px}.list-theme1 .list-item{width:50%;float:left;padding:0 2px;margin-top:4px}.list-theme1 .list-item .list-mes{padding:.1rem}.list-theme1 .list-item .list-mes .list-title{font-weight:700;word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:justify;height:.32rem}.list-theme2 .list-item{width:50%;float:left;padding-top:4px}.list-theme2 .list-item:nth-child(odd){padding-right:2px}.list-theme2 .list-item:nth-child(2n){padding-left:2px}.list-theme2 .list-item .list-mes{padding:.1rem}.list-theme2 .list-item .list-mes .list-title{word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:justify;height:.36rem}.list-theme3 .list-item{width:50%;float:left;padding:.2rem;position:relative;z-index:0;background-color:#fff}.list-theme3 .list-item:before{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.list-theme3 .list-item:nth-child(odd):after{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.list-theme3 .list-item .list-mes{padding-top:.1rem}.list-theme3 .list-item .list-mes .list-title{word-wrap:normal;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;text-align:justify;height:.3rem}.list-theme3 .list-item .list-mes .list-other{padding-top:4px}.list-theme3 .list-item:active{background:#fff}.list-theme4{padding:0 7px;background-color:#fff}.list-theme4 .list-item{overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:7px 0 8px;position:relative}.list-theme4 .list-item:not(:last-child):after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.list-theme4 .list-item .list-img{width:2rem;padding:1rem 0}.list-theme4 .list-item .list-mes{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding-left:7px}.list-theme4 .list-item .list-mes .list-title{overflow:hidden;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;word-break:break-all;text-overflow:ellipsis;line-height:.38rem;max-height:1.34rem}.list-theme4 .list-item .list-mes .list-other{padding-top:.1rem}.list-theme5{background-color:#fff}.list-theme5 .list-item{display:block;position:relative;z-index:1;padding:.2rem .2rem 0}.list-theme5 .list-item:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.list-theme5 .list-item .list-mes{padding:.2rem 0 .15rem}.list-theme5 .list-item .list-mes .list-other{padding-top:.1rem}@media screen and (min-width:768px){.list-theme1{padding:0 4px}.list-theme1 .list-item{padding:0 4px;margin-top:8px}.list-theme2 .list-item{padding-top:8px}.list-theme2 .list-item:nth-child(odd){padding-right:4px}.list-theme2 .list-item:nth-child(2n){padding-left:4px}.list-theme4{padding:0 9px}.list-theme4 .list-item{padding:9px 0 10px}.list-theme4 .list-item .list-mes{padding-left:9px}}.list-loading{margin-top:.1rem;text-align:center;font-size:.26rem;color:#999;height:.66rem;line-height:.66rem}.list-loading img{height:inherit;display:inline-block}.list-donetip{font-size:.24rem;text-align:center;padding:.25rem 0;color:#777}.pullrefresh-animation-timing{-webkit-transition:-webkit-transform .15s;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s}@-webkit-keyframes backRotateAnimation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(-1turn);transform:rotate(-1turn)}}@keyframes backRotateAnimation{0%{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(-1turn);transform:rotate(-1turn)}}.pullrefresh-dragtip{position:absolute;top:-46px;left:50%;z-index:996;-webkit-transform:translateZ(0);transform:translateZ(0);width:42px;height:42px;line-height:42px;margin-left:-21px;border-radius:50%;text-align:center;background-color:#fff;box-shadow:0 1px 4px rgba(0,0,0,.25)}.pullrefresh-dragtip>span{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:inherit}.pullrefresh-dragtip>span:after{content:"";display:block;width:20px;height:20px;background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAABa1BMVEVTfvH///9TfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFAPDq2AAAAeHRSTlMAAAECAwQGBwkLDQ8QERMUFRkiIyYnLS4vMjM1Njc4OTpAQUJDREVGTVJWXmBiZmdoaWpxc3V8f4GCg4SGiIyNj5aXmZqbnJ+go6SlpqmqrK+wub2/wMHCxMXJzM3P0tPU1djd3t/n6Orr7O7w8fP09fb3+Pn6/f5+D/4+AAABqklEQVQ4y43V+T8CQRQA8GklUeQmhESuHBHJUY5EIWeHECGrcpVV++eb2Z3Y2d22eT+9mfm2n880894AQIRpKnDxVCh/sanD+c7/aS8PdDoCOqPfvCRu3c1VKaOOFC+P3LJBlAQ1h3m1uB8UpJRan/FaOX3i39jaj5fw+OeIJ6nzQ1y4crXhGeP43qfk63/UwQnjxDCxS4ufU9DeNzQqLTBAFn1y2vKIBi9WoAivnAZR/tqtJTG1lWFaHNKUmF6i1K0tRWpDWZLRliINoWykjhRo0ztMYqBuQGpHv3FR0TV07q1U9AzSO0BFM5BG6GgO0nU6ikpkhY5y9DQPqY9+W2E6ek7/Z/noj2CM/mCF6xKnouIlHKWiwtW+ZmqjGV8XpmLBLNWUHXm+Ep+VlGHJVkMaYuhLO/WKG4b+GC2yZqJlsCotAxhPhcqaBrJGtKjYW39akAEA6rS3dr/YxCN6CQWTuGkmXBY802gP4bndBiClYKDaiisP0e3NwEGyWG3NqwwgKWzwFbUGn52QnJbms+ExAjWqeIwyHhN5BxRPXLbAc+xNcK5Hdl1+ASkP8ND4fLD1AAAAAElFTkSuQmCC") no-repeat;background-size:20px 20px}.pullrefresh-dragtip>span.pullrefresh-loading:after{background:url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAABcVBMVEVTfvH///9TfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvG7eWgbAAAAenRSTlMAAAECAwQGBwkKCw0PEBETFBUZIiMmJy0uLzIzNTY3ODk6QEFCQ0RFRktNUlZeYGJmZ2hpanFzdXyBgoOEhoiMjY+Wl5mam5yfoKOkpqmqrK+wuLm6vb/AwcLExcnMzc/S09TV2N3e3+fo6uvs7vDx8/T19vf4+fr9/naKfqcAAAGISURBVDjLjZVVW0JBEEBXDLC7FbsVuzDAwO7E7sAORDi/3od7/T72Ajrztjvn4c7dmTNKaZHV7t2+eQ5/BI4Xewq1TFKSdmxZ+yIqTvszEqCNx1jjcTAtDpq9RLy4qIpBK27NXPh81TM+OecPmufvNgva8mYk9ly55o2jafYdYMuuo40hAA5qtCrzPCF20vUPKH0BCPbalCXKfOl6WZnXAPcV6q8wUB/AQ7H6H3WGgc9qJUB3AfqVAHUCHNok6DxArRKg9ldgX0nQegCXCB0FwjkidAM4UyL0CliWoY/AmAz9AoZlaEiOPgFueVlLMnRT/rPc8idokD+s/RXwi1CjCeuUuLWP/mjtTneRNjADCcmCJyL+rqgxDDoTkGn7ANOC4U5ZAQhka8oIxFOGYx2ADquI+mJqKz8HwPuv3vI9hsSXU6Kl2WpK88CVZ96k1s+bdzPJuoorf1UcuVybmvAuHH7+qnnEFiv4SDzB3zVL18aQQ7aMroayEu4tY8XdPRMKnPi6Syzt8gMGxsBO8KgZSQAAAABJRU5ErkJggg==") no-repeat;background-size:20px 20px;-webkit-animation:backRotateAnimation .4s linear infinite;animation:backRotateAnimation .4s linear infinite}.pullrefresh-draghelp{width:100%;height:100%;position:fixed;top:0;left:0;z-index:1000;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.pullrefresh-draghelp>div{width:2.3rem;height:2.3rem;background-color:rgba(0,0,0,.8)}.pullrefresh-draghelp>div:before{content:"\E60D";font-family:YDUI-INLAY;font-size:.88rem;text-align:center;color:#fff;display:block;padding-top:.36rem}.pullrefresh-draghelp>div>span{text-align:center;color:#fff;font-size:.28rem;display:block;padding-top:.2rem}.badge{color:#fff;font-size:12px;position:relative;display:inline-block;border-radius:1000px;line-height:1;padding:3px 6px;white-space:nowrap;background-color:#d0d0d0}.badge-radius{border-radius:2px}.badge-primary{background-color:#04be02;color:#fff}.badge-danger{background-color:#ef4f4f;color:#fff}.badge-warning{background-color:#ffb400;color:#fff}.badge-hollow{background-color:#fbfbfb;color:#b2b2b2}.badge-hollow:after{content:"";width:200%;height:200%;border:1px solid #b2b2b2;position:absolute;top:0;left:0;border-radius:1rem;-webkit-transform-origin:0 0;transform-origin:0 0;-webkit-transform:scale(.5);transform:scale(.5)}.badge-radius:after{border-radius:2px}.m-tabbar{width:100%;position:relative;z-index:100;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;padding:.104rem 0 .07rem;background-color:hsla(0,0%,100%,.96)}.m-tabbar:after{content:"";position:absolute;z-index:0;top:0;left:0;width:100%;height:1px;border-top:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.tabbar-fixed{position:fixed;bottom:0;left:0;z-index:49}.tabbar-item{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#979797}.tabbar-active{color:#09bb07}.tabbar-active .tabbar-icon{color:inherit}.tabbar-badge{top:-.02rem;margin-left:-.15rem}.tabbar-badge,.tabbar-dot{position:absolute;left:100%;z-index:999}.tabbar-dot{display:block;width:10px;height:10px;background-color:#ef4f4f;border-radius:50%;top:.02rem;margin-left:-.11rem}.tabbar-icon{height:.5832rem;color:#979797;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;position:relative}.tabbar-icon img{height:70%}.tabbar-txt{display:inline-block;font-size:.24rem}.tab-nav{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;z-index:0}.tab-nav:after{content:"";position:absolute;z-index:3;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.tab-nav-item{width:1%;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;position:relative;text-align:center;color:#585858;font-size:.28rem;line-height:.85rem;display:block}.tab-nav-item,.tab-nav-item.tab-active,.tab-nav-item.tab-active:active{background-color:#fff}.tab-nav-item:active{background-color:#f7f7f7}.tab-nav-item a{display:inherit;color:inherit}.tab-nav-item:not(:last-child):after{position:absolute;top:35%;right:0;content:"";width:1px;height:30%;-webkit-transform:scaleX(.5);transform:scaleX(.5);border-right:1px solid #d9d9d9}.tab-nav-item.tab-active{color:#ff5e53}.tab-nav-item.tab-active:before{content:"";width:70%;height:2px;position:absolute;left:50%;bottom:0;margin-left:-35%;z-index:4;background-color:currentColor}.tab-panel{position:relative;overflow:hidden;background-color:#fff}.tab-panel .tab-panel-item{width:100%;position:absolute;top:0;padding:.24rem;-webkit-transform:translateX(-100%);transform:translateX(-100%)}.tab-panel .tab-panel-item.tab-active{position:relative;-webkit-transition:-webkit-transform .15s;transition:-webkit-transform .15s;transition:transform .15s;transition:transform .15s,-webkit-transform .15s;-webkit-transform:translateX(0);transform:translateX(0)}.tab-panel .tab-panel-item.tab-active~.tab-panel-item{-webkit-transform:translateX(100%);transform:translateX(100%)}.m-scrolltab{position:absolute;top:0;left:0;right:0;bottom:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.scrolltab-nav{height:100%;background-color:#f5f5f5;overflow-y:auto;-webkit-overflow-scrolling:touch;position:relative;z-index:1}.scrolltab-nav:after{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #dfdfdf;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.scrolltab-item{padding:0 .3rem;height:1rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;position:relative;z-index:1}.scrolltab-item.scrolltab-active{background-color:#fff}.scrolltab-item.scrolltab-active:before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #fff;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.scrolltab-item.scrolltab-active:active{background-color:#fff}.scrolltab-item:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #dfdfdf;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.scrolltab-item:before{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #dfdfdf;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.scrolltab-item:active{background:none}.scrolltab-icon{margin-right:.2rem;font-size:.32rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.scrolltab-icon>img{height:.4rem;display:inline-block}.scrolltab-title{font-size:.3rem;color:#666;overflow-x:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:1.6rem}.scrolltab-content{height:100%;background-color:#fff;overflow-y:auto;-webkit-overflow-scrolling:touch;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;padding:0 .24rem .24rem;position:relative}.scrolltab-content-title{font-size:.3rem;font-weight:400;color:#555;display:block;padding-bottom:.1rem;padding-top:.32rem;margin-bottom:.2rem;position:relative;z-index:1}.scrolltab-content-title:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.m-actionsheet{text-align:center;position:fixed;bottom:0;left:0;width:100%;z-index:1000;background-color:#efeff4;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.actionsheet-item{display:block;position:relative;font-size:.28rem;color:#555;height:1rem;line-height:1rem;background-color:#fff}.actionsheet-item:after{content:"";position:absolute;z-index:2;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.actionsheet-action{display:block;margin-top:.15rem;font-size:.28rem;color:#555;height:1rem;line-height:1rem;background-color:#fff}.actionsheet-active{-webkit-transform:translate(0);transform:translate(0)}.m-keyboard{position:fixed;bottom:0;left:0;width:100%;z-index:1000;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s;background-color:#f7f7f7}.m-keyboard.keyboard-active{-webkit-transform:translate(0);transform:translate(0)}.keyboard-content{background-color:#fff;margin-top:.3rem;position:relative}.keyboard-content:before{content:"";position:absolute;z-index:0;top:0;left:0;width:100%;height:1px;border-top:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.keyboard-title{overflow:hidden;padding:.2rem 0 .12rem;color:#222;margin-bottom:1px;font-size:.24rem;text-align:center;background-color:#fff}.keyboard-title:before{font-family:YDUI-INLAY;content:"\E60A";font-size:.26rem;color:#ff2424;line-height:1;margin-right:.06rem}.keyboard-numbers{font-size:.48rem;background-color:#fff}.keyboard-numbers>li{width:100%}.keyboard-numbers>li,.keyboard-numbers>li>a{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.keyboard-numbers>li>a{width:1%;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;color:#222;height:1rem;position:relative;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;background-color:#fff}.keyboard-numbers>li>a:active{background-color:#f2f2f2}.keyboard-numbers>li>a:not(:last-child):after{content:"";position:absolute;z-index:0;top:0;right:0;height:100%;border-right:1px solid #d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.keyboard-numbers>li>a:before{content:"";position:absolute;z-index:0;top:0;left:0;width:100%;height:1px;border-top:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.keyboard-numbers>li:last-child>a:last-child,.keyboard-numbers>li:last-child>a:nth-last-child(3){background-color:#f7f7f7;font-size:.3rem;color:#686868}.keyboard-numbers>li:last-child>a:last-child:after{font-family:YDUI-INLAY;content:"\E609";font-size:.6rem}.keyboard-head{height:.8rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;color:#1f2324;font-size:.3rem;position:relative}.keyboard-head:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.keyboard-password{margin:0 .8rem;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;position:relative;background-color:#fff}.keyboard-password:after{content:"";width:200%;height:200%;-webkit-transform:scale(.5);transform:scale(.5);position:absolute;border:1px solid #d9d9d9;top:0;left:0;-webkit-transform-origin:0 0;transform-origin:0 0;border-radius:4px}.keyboard-password li{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;height:1rem}.keyboard-password li:not(:last-child):after{content:"";width:1px;height:50%;position:absolute;right:0;top:25%;background-color:#d9d9d9;-webkit-transform:scaleX(.5);transform:scaleX(.5)}.keyboard-password li i{width:6px;height:6px;border-radius:50%;background-color:#000}.keyboard-error{padding:2px .8rem;color:red;overflow:hidden;height:.5rem;line-height:.5rem;font-size:.24rem}.m-slider{overflow:hidden}.m-slider,.slider-wrapper{width:100%;position:relative}.slider-wrapper{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;height:100%;-webkit-transform:translateZ(0);transform:translateZ(0);z-index:1;-webkit-transition-property:-webkit-transform;transition-property:-webkit-transform;transition-property:transform;transition-property:transform,-webkit-transform}.slider-wrapper.slider-wrapper-vertical{-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column}.slider-item{width:100%;height:100%;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0}.slider-item a{display:block}.slider-item img{width:100%}@-webkit-keyframes slider-pagination-opacity{0%{opacity:0}to{opacity:1}}@keyframes slider-pagination-opacity{0%{opacity:0}to{opacity:1}}.slider-pagination{position:absolute;width:100%;z-index:2;left:0;bottom:.1rem;pointer-events:none;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:end;-webkit-align-items:flex-end;-ms-flex-align:end;align-items:flex-end;opacity:0;-webkit-animation:slider-pagination-opacity .3s linear .4s forwards;animation:slider-pagination-opacity .3s linear .4s forwards}.slider-pagination,.slider-pagination.slider-pagination-vertical{-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center}.slider-pagination.slider-pagination-vertical{width:0;height:100%;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;bottom:0;left:auto;right:.1rem}.slider-pagination>.slider-pagination-item{margin:.05rem;width:6px;height:6px;display:inline-block;border-radius:100%;background-color:#b7d0e1}.slider-pagination>.slider-pagination-item.slider-pagination-item-active{background-color:#ff0005}@font-face{font-family:YDUI-INLAY;src:url(data:application/x-font-ttf;base64,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) format("truetype")}.m-spinner{border:1px solid #eae8e8;border-radius:1px;display:inline-block;overflow:hidden}.m-spinner>a{float:left;width:.6rem;height:.6rem;line-height:.62rem;text-align:center;font-weight:700;color:#666;letter-spacing:0;background-color:#f8f8f8}.m-spinner>a:active{background-color:#ececec}.m-spinner>a:after{font-family:YDUI-INLAY;color:#777;font-size:.18rem}.m-spinner>a:first-child:after{content:"\E60B"}.m-spinner>a:last-child:after{content:"\E602"}.m-spinner>input{letter-spacing:0;float:left;width:.85rem;height:.6rem;line-height:2.7;text-align:center;color:#666;border:none;font-size:.26rem;background-color:#fff}.m-cityselect{position:fixed;bottom:0;left:0;width:100%;height:75%;background-color:#fff;z-index:1000;-webkit-transform:translateY(100%);transform:translateY(100%);-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.m-cityselect.cityselect-active{-webkit-transform:translate(0);transform:translate(0)}.cityselect-header{position:absolute;top:0;left:0;width:100%;z-index:1}.cityselect-header:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.cityselect-title{width:100%;font-size:.3rem;text-align:center;height:45px;line-height:45px;position:relative}.cityselect-title:after{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #b2b2b2;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.cityselect-nav{width:100%;padding-left:.2rem;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.cityselect-nav>a{font-size:.26rem;color:#222;display:block;height:40px;line-height:46px;padding:0 .2rem;position:relative;margin-right:.15rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:40%}.cityselect-nav>a.cityselect-nav-active{color:#f23030}.cityselect-nav>a.cityselect-nav-active:after{content:"";width:100%;height:2px;background-color:#f23030;position:absolute;bottom:0;left:0;z-index:2}.cityselect-content{height:100%;padding-top:85px;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex}.cityselect-content.cityselect-move-animate{-webkit-transition:-webkit-transform .3s;transition:-webkit-transform .3s;transition:transform .3s;transition:transform .3s,-webkit-transform .3s}.cityselect-content.cityselect-next{-webkit-transform:translate(-50%);transform:translate(-50%)}.cityselect-content.cityselect-prev{-webkit-transform:translate(0);transform:translate(0)}.cityselect-content>.cityselect-item{display:block;height:inherit;width:50%;-webkit-box-flex:0;-webkit-flex:0 0 50%;-ms-flex:0 0 50%;flex:0 0 50%;overflow-y:auto;-webkit-overflow-scrolling:touch;background-color:#fff}.cityselect-content>.cityselect-item::-webkit-scrollbar{width:0}.cityselect-content>.cityselect-item:nth-child(2n){background-color:#f5f5f5}.cityselect-item-box{width:100%;height:inherit;display:block;padding:0 .4rem}.cityselect-item-box>a{color:#333;font-size:.26rem;height:40px;line-height:40px;overflow:hidden;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center;width:100%;position:relative;z-index:1}.cityselect-item-box>a:before{content:"";position:absolute;z-index:0;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.cityselect-item-box>a:active{background:none}.cityselect-item-box>a span{-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;display:block}.cityselect-item-box>a.cityselect-item-active{color:#f23030}.cityselect-item-box>a.cityselect-item-active:after{display:block;content:"\E600";font-family:YDUI-INLAY}.m-progressbar{position:relative;color:#333;width:100%;height:100%}.m-progressbar>svg{width:100%}.m-progressbar>svg>path{-webkit-transition:all .8s linear;transition:all .8s linear}.progressbar-content{position:absolute;top:50%;left:50%;font-size:.3rem;-webkit-transform:translate(-50%,-50%);transform:translate(-50%,-50%)} \ No newline at end of file diff --git a/dist/ydui.js b/dist/ydui.js new file mode 100644 index 00000000..b57aad7e --- /dev/null +++ b/dist/ydui.js @@ -0,0 +1,5 @@ +/*! vue-ydui v0.0.1 by YDCSS (c) 2017 Licensed MIT */ +!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("Vue")):"function"==typeof define&&define.amd?define(["Vue"],e):"object"==typeof exports?exports.ydui=e(require("Vue")):t.ydui=e(t.Vue)}(this,function(t){return function(t){function e(a){if(n[a])return n[a].exports;var i=n[a]={exports:{},id:a,loaded:!1};return t[a].call(i.exports,i,i.exports,e),i.loaded=!0,i.exports}var n={};return e.m=t,e.c=n,e.p="/dist/",e(0)}([function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0}),n(8);var i=n(147),s=a(i),r=n(157),o=a(r),c=n(6),l=a(c),u=n(159),d=a(u),f=n(144),p=a(f),v=n(166),h=a(v),m=n(153),y=a(m),g=n(154),_=a(g),b=n(158),x=a(b),w=n(155),k=a(w),C=n(161),R=a(C),T=n(143),$=a(T),j=n(168),P=a(j),E=n(167),M=a(E),S=n(162),F=a(S),O=n(142),L=a(O),I=n(163),B=a(I),H=n(156),N=a(H),D=n(164),A=a(D),z=n(165),V=a(z),W=n(145),Y=a(W),U=n(160),G=a(U);window.document.addEventListener("touchstart",function(t){},!1);var q=function(t){t.component(o.default.name,o.default),t.component(l.default.name,l.default),t.component(l.default.ButtonGroup.name,l.default.ButtonGroup),t.component(d.default.name,d.default),t.component(d.default.BackIcon.name,d.default.BackIcon),t.component(d.default.NextIcon.name,d.default.NextIcon),t.component(p.default.CellGroup.name,p.default.CellGroup),t.component(p.default.CellItem.name,p.default.CellItem),t.component(h.default.name,h.default),t.component(y.default.GridsGroup.name,y.default.GridsGroup),t.component(y.default.GridsItem.name,y.default.GridsItem),t.component(_.default.name,_.default),t.component(x.default.ListTheme.name,x.default.ListTheme),t.component(x.default.ListItem.name,x.default.ListItem),t.component(x.default.ListOther.name,x.default.ListOther),t.component(k.default.name,k.default),t.component(R.default.name,R.default),t.component($.default.name,$.default),t.component($.default.BadgeRadius.name,$.default.BadgeRadius),t.component(P.default.name,P.default),t.component(P.default.TabBarItem.name,P.default.TabBarItem),t.component(M.default.name,M.default),t.component(M.default.TabPanel.name,M.default.TabPanel),t.component(F.default.name,F.default),t.component(F.default.ScrollTabPanel.name,F.default.ScrollTabPanel),t.component(L.default.name,L.default),t.component(B.default.name,B.default),t.component(N.default.name,N.default),t.component(A.default.name,A.default),t.component(A.default.SliderItem.name,A.default.SliderItem),t.component(V.default.name,V.default),t.component(Y.default.name,Y.default),t.component(G.default.name,G.default),t.prototype.$yduiBus=new t,t.prototype.$dialog=s.default};"undefined"!=typeof window&&window.Vue&&q(window.Vue),e.default={install:q,version:"0.0.1",Dialog:s.default,Layout:o.default,Button:l.default,Navbar:d.default,Cell:p.default,Switch:h.default,Grids:y.default,Icons:_.default,List:x.default,InfiniteScroll:k.default,PullRefresh:R.default,Badge:$.default,TabBar:P.default,Tab:M.default,ScrollTab:F.default,ActionSheet:L.default,SendCode:B.default,KeyBoard:N.default,Slider:A.default,Spinner:V.default,CitySelect:Y.default,ProgressBar:G.default}},,,function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=function(){var t=function(t){t.preventDefault(),t.stopPropagation()},e=!1;return{lock:function(){e||(e=!0,document.addEventListener("touchmove",t))},unlock:function(){e=!1,document.removeEventListener("touchmove",t)}}}(),a=function(t){var e=/^#([a-fA-F0-9]){3}(([a-fA-F0-9]){3})?$/,n=/^[rR][gG][bB][aA]\(\s*((25[0-5]|2[0-4]\d|1?\d{1,2})\s*,\s*){3}\s*(\.|\d+\.)?\d+\s*\)$/,a=/^[rR][gG][bB]\(\s*((25[0-5]|2[0-4]\d|1?\d{1,2})\s*,\s*){2}(25[0-5]|2[0-4]\d|1?\d{1,2})\s*\)$/;return e.test(t)||n.test(t)||a.test(t)};e.pageScroll=n,e.isColor=a},function(e,n){e.exports=t},function(t,e,n){var a,i;n(19),a=n(106);var s=n(86);i=a=a||{},"object"!=typeof a.default&&"function"!=typeof a.default||(i=a=a.default),"function"==typeof i&&(i=i.options),i.render=s.render,i.staticRenderFns=s.staticRenderFns,t.exports=a},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(32),s=a(i),r=n(31),o=a(r);s.default.ButtonGroup=o.default,e.default=s.default},function(t,e,n){function a(t,e){for(var n=0;n=0&&_.splice(e,1)}function o(t){var e=document.createElement("style");return e.type="text/css",s(t,e),e}function c(t){var e=document.createElement("link");return e.rel="stylesheet",s(t,e),e}function l(t,e){var n,a,i;if(e.singleton){var s=g++;n=y||(y=o(e)),a=u.bind(null,n,s,!1),i=u.bind(null,n,s,!0)}else t.sourceMap&&"function"==typeof URL&&"function"==typeof URL.createObjectURL&&"function"==typeof URL.revokeObjectURL&&"function"==typeof Blob&&"function"==typeof btoa?(n=c(e),a=f.bind(null,n),i=function(){r(n),n.href&&URL.revokeObjectURL(n.href)}):(n=o(e),a=d.bind(null,n),i=function(){r(n)});return a(t),function(e){if(e){if(e.css===t.css&&e.media===t.media&&e.sourceMap===t.sourceMap)return;a(t=e)}else i()}}function u(t,e,n,a){var i=n?"":a.css;if(t.styleSheet)t.styleSheet.cssText=b(e,i);else{var s=document.createTextNode(i),r=t.childNodes;r[e]&&t.removeChild(r[e]),r.length?t.insertBefore(s,r[e]):t.appendChild(s)}}function d(t,e){var n=e.css,a=e.media;if(a&&t.setAttribute("media",a),t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}function f(t,e){var n=e.css,a=e.sourceMap;a&&(n+="\n/*# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(JSON.stringify(a))))+" */");var i=new Blob([n],{type:"text/css"}),s=t.href;t.href=URL.createObjectURL(i),s&&URL.revokeObjectURL(s)}var p={},v=function(t){var e;return function(){return"undefined"==typeof e&&(e=t.apply(this,arguments)),e}},h=v(function(){return/msie [6-9]\b/.test(window.navigator.userAgent.toLowerCase())}),m=v(function(){return document.head||document.getElementsByTagName("head")[0]}),y=null,g=0,_=[];t.exports=function(t,e){e=e||{},"undefined"==typeof e.singleton&&(e.singleton=h()),"undefined"==typeof e.insertAt&&(e.insertAt="bottom");var n=i(t);return a(n,e),function(t){for(var s=[],r=0;rinput[type=button]::-moz-focus-inner,input[type=reset]::-moz-focus-inner,input[type=submit]::-moz-focus-inner{border:none}input[type=checkbox],input[type=radio]{vertical-align:middle}input::-webkit-inner-spin-button,input::-webkit-outer-spin-button{-webkit-appearance:none!important;-moz-appearance:none!important;margin:0}input:-webkit-autofill{-webkit-box-shadow:0 0 0 1000px #fff inset}textarea{outline:none;border-radius:0;-webkit-appearance:none;-moz-appearance:none;overflow:auto;resize:none;font:100% tahoma,\\5b8b\\4f53,arial}table{border-collapse:collapse;border-spacing:0}.g-view{margin:0 auto;max-width:750px;min-width:300px}.g-view:before{height:.9rem}.g-view:after,.g-view:before{content:"";display:block;width:100%}.g-view:after{height:1.5rem}.g-flexview{height:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 auto;max-width:750px;min-width:300px}.g-scrollview{width:100%;height:100%;-webkit-box-flex:1;-webkit-flex:1;-ms-flex:1;flex:1;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;position:relative;margin-bottom:-1px}.g-scrollview:after{content:"";display:block;width:100%;height:.5rem}.g-linetitle{padding:.35rem .24rem .1rem;font-size:.3rem;text-align:left;color:#888;position:relative;z-index:1;background-color:#f5f5f5}.g-linetitle:after{content:"";position:absolute;z-index:3;bottom:0;left:0;width:100%;height:1px;border-bottom:1px solid #d9d9d9;-webkit-transform:scaleY(.5);transform:scaleY(.5);-webkit-transform-origin:0 0;transform-origin:0 0}.ios .g-scrollview{margin-top:1px}.hairline .g-scrollview{margin-top:.5px}.g-fix-ios-overflow-scrolling-bug{-webkit-overflow-scrolling:auto}.mask-black-dialog{z-index:1500}.mask-black,.mask-black-dialog{background-color:rgba(0,0,0,.4);position:fixed;bottom:0;right:0;left:0;top:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.mask-black{z-index:500}.mask-white-dialog{z-index:1500}.mask-white,.mask-white-dialog{background-color:transparent;position:fixed;bottom:0;right:0;left:0;top:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-webkit-align-items:center;-ms-flex-align:center;align-items:center}.mask-white{z-index:500}',""])},function(t,e){t.exports=function(){var t=[];return t.toString=function(){for(var t=[],e=0;e=e,expression:"nums.length >= n"}]})])})),t._v(" "),n("div",{staticClass:"keyboard-content"},[n("div",{staticClass:"keyboard-title"},[t._v(t._s(t.title))]),t._v(" "),n("ul",{staticClass:"keyboard-numbers"},t._l(4,function(e){return n("li",[4==e?n("a",{attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.close(e)}}},[t._v("取消")]):t._e(),t._v(" "),t._l(t.numsArr.slice(3*(e-1),3*e),function(e){return n("a",{attrs:{href:"javascript:;"},on:{click:function(n){n.stopPropagation(),t.numclick(e)}}},[t._v(t._s(e))])}),t._v(" "),4==e?n("a",{attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.backspace(e)}}}):t._e()],2)}))])])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("article",{staticClass:"m-list",class:t.classes},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("input",{directives:[{name:"model",rawName:"v-model",value:t.checked,expression:"checked"}],staticClass:"m-switch",attrs:{type:"checkbox"},domProps:{checked:Array.isArray(t.checked)?t._i(t.checked,null)>-1:t.checked},on:{change:t.changeVal,click:function(e){var n=t.checked,a=e.target,i=!!a.checked;if(Array.isArray(n)){var s=null,r=t._i(n,s);i?r<0&&(t.checked=n.concat(s)):r>-1&&(t.checked=n.slice(0,r).concat(n.slice(r+1)))}else t.checked=i}}})},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"mask-black-dialog"},[n("div",{staticClass:"m-confirm"},[n("div",{staticClass:"confirm-hd"},[n("strong",{staticClass:"confirm-title",domProps:{innerHTML:t._s(t.title)}})]),t._v(" "),n("div",{staticClass:"confirm-bd",domProps:{innerHTML:t._s(t.mes)}}),t._v(" "),"function"==typeof t.opts?[n("div",{staticClass:"confirm-ft"},[n("a",{staticClass:"confirm-btn default",attrs:{href:"javascript:;"},on:{click:function(e){t.closeConfirm(!1)}}},[t._v("取消")]),t._v(" "),n("a",{staticClass:"confirm-btn primary",attrs:{href:"javascript:;"},on:{click:function(e){t.closeConfirm(!1,t.opts)}}},[t._v("确定")])])]:[n("div",{staticClass:"confirm-ft"},t._l(t.opts,function(e){return n("a",{staticClass:"confirm-btn",class:"boolean"==typeof e.color?e.color?"primary":"default":"",style:{color:e.color},attrs:{href:"javascript:;"},on:{click:function(n){t.closeConfirm(e.stay,e.callback)}}},[t._v(t._s(e.txt))])}))]],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t._t("list"),t._v(" "),n("div",{ref:"tag"}),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:!t.isLoading&&t.isDone,expression:"!isLoading && isDone"}],staticClass:"list-donetip"},[t._t("doneTip",[t._v("没有更多数据了")])],2),t._v(" "),n("div",{directives:[{name:"show",rawName:"v-show",value:t.isLoading,expression:"isLoading"}],staticClass:"list-loading"},[t._t("loadingTip",[t._v("加载中")])],2)],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{ref:"dragBox"},[t._t("list"),t._v(" "),n("div",{ref:"dragTip",staticClass:"pullrefresh-dragtip",class:t.dragTip.animationTiming,style:{transform:"translate3d(0, "+t.dragTip.translate+"px, 0) scale("+t.dragTip.scale+")"}},[n("span",{class:t.dragTip.loadingIcon,style:{transform:"rotate("+t.dragTip.iconRotate+"deg)",opacity:t.dragTip.iconOpacity}})])],2),t._v(" "),t.showHelpTag?n("div",{staticClass:"pullrefresh-draghelp",on:{click:function(e){t.showHelpTag=!1}}},[t._m(0)]):t._e()])},staticRenderFns:[function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("span",[t._v("下拉更新")])])}]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"tab-panel-item",class:t.classes},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("a",{staticClass:"list-item",attrs:{href:"javascript:;"}},[n("div",{staticClass:"list-img"},[t._t("img")],2),t._v(" "),n("div",{staticClass:"list-mes"},[n("div",{staticClass:"list-title"},[t._t("title")],2),t._v(" "),t._t("other")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"mask-white-dialog"},[n("div",{staticClass:"m-loading"},[n("div",{staticClass:"loading-icon"}),t._v(" "),n("div",{staticClass:"loading-txt",domProps:{innerHTML:t._s(t.title)}})])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("i",{class:t.classes,style:t.styles})},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("section",{staticClass:"g-flexview"},[t.showNavbar?t._t("navbar",[t.title?n("yd-navbar",{attrs:{title:t.title}},[n("router-link",{attrs:{to:t.link||"/"},slot:"left"},[n("yd-navbar-back-icon")],1)],1):t._e()]):t._e(),t._v(" "),n("section",{ref:"scrollview",staticClass:"g-scrollview"},[t._t("default")],2),t._v(" "),t._t("tabbar")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[t.title?n("div",{staticClass:"g-linetitle"},[t._v(t._s(t.title))]):t._e(),t._v(" "),n("div",{class:t.classes},[t._t("default")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return"label"==t.type?n("label",{staticClass:"cell-item"},[t.checkLeft?n("div",{staticClass:"cell-left"},[t._t("left")],2):t._e(),t._v(" "),n("div",{staticClass:"cell-right",class:t.classes},[t._t("right")],2)]):"link"==t.type||t.href?n("router-link",{staticClass:"cell-item",attrs:{to:t.href}},[t.checkLeft?n("div",{staticClass:"cell-left"},[t._t("left")],2):t._e(),t._v(" "),n("div",{staticClass:"cell-right",class:t.classes},[t._t("right")],2)]):n("div",{staticClass:"cell-item"},[t.checkLeft?n("div",{staticClass:"cell-left"},[t._t("left")],2):t._e(),t._v(" "),n("div",{staticClass:"cell-right",class:t.classes},[t._t("right")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("router-link",{staticClass:"tabbar-item",class:t.classes,attrs:{to:t.link}},[n("span",{staticClass:"tabbar-icon"},[t._t("icon"),t._v(" "),n("span",{staticClass:"tabbar-badge"},[t._t("badge")],2),t._v(" "),t.dot?n("span",{staticClass:"tabbar-dot"}):t._e()],2),t._v(" "),n("span",{staticClass:"tabbar-txt"},[t._v(t._s(t.title))])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{directives:[{name:"show",rawName:"v-show",value:t.show,expression:"show"}],staticClass:"mask-black",on:{click:function(e){e.stopPropagation(),t.close(e)}}}),t._v(" "),n("div",{staticClass:"m-actionsheet",class:t.show?"actionsheet-active":""},[t._l(t.items,function(e){return n("a",{staticClass:"actionsheet-item",attrs:{href:"javascript:;"},on:{click:function(n){n.stopPropagation(),t.itemClick(e)}}},[t._v(t._s(e.label))])}),t._v(" "),t.cancel?n("a",{staticClass:"actionsheet-action",attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.close(e)}}},[t._v(t._s(t.cancel))]):t._e()],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",[n("div",{directives:[{name:"show",rawName:"v-show",value:t.show,expression:"show"}],staticClass:"mask-black",on:{click:function(e){e.stopPropagation(),t.close(e)}}}),t._v(" "),n("div",{staticClass:"m-cityselect",class:t.show?"cityselect-active":""},[n("div",{staticClass:"cityselect-header"},[n("p",{staticClass:"cityselect-title"},[t._v("所在地区")]),t._v(" "),n("div",{staticClass:"cityselect-nav"},[n("a",{directives:[{name:"show",rawName:"v-show",value:!!t.nav.txt1,expression:"!!nav.txt1"}],class:0==t.nav.index?"cityselect-nav-active":"",attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.backoffView(0)}}},[t._v(t._s(t.nav.txt1))]),t._v(" "),n("a",{directives:[{name:"show",rawName:"v-show",value:!!t.nav.txt2,expression:"!!nav.txt2"}],class:1==t.nav.index?"cityselect-nav-active":"",attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.backoffView(1)}}},[t._v(t._s(t.nav.txt2))]),t._v(" "),n("a",{directives:[{name:"show",rawName:"v-show",value:!!t.nav.txt3,expression:"!!nav.txt3"}],class:2==t.nav.index?"cityselect-nav-active":"",attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.forwardView(!0)}}},[t._v(t._s(t.nav.txt3))])])]),t._v(" "),n("ul",{staticClass:"cityselect-content",class:t.activeClasses},[n("li",{ref:"provanceBox",staticClass:"cityselect-item"},[n("div",{staticClass:"cityselect-item-box"},t._l(t.citys,function(e){return n("a",{class:e.n==t.activeProvance?"cityselect-item-active":"",attrs:{href:"javascript:;"},on:{click:function(n){n.stopPropagation(),t.chooseProvance(e.n,e.c)}}},[n("span",[t._v(t._s(e.n))])])}))]),t._v(" "),n("li",{ref:"cityBox",staticClass:"cityselect-item"},[n("div",{staticClass:"cityselect-item-box"},t._l(t.cityArray,function(e){return n("a",{class:e.n==t.activeCity?"cityselect-item-active":"",attrs:{href:"javascript:;"},on:{click:function(n){n.stopPropagation(),t.chooseCity(e.n,e.a)}}},[n("span",[t._v(t._s(e.n))])])}))]),t._v(" "),n("li",{ref:"areaBox",staticClass:"cityselect-item"},[n("div",{staticClass:"cityselect-item-box"},t._l(t.areaArray,function(e){return n("a",{class:e==t.activeArea?"cityselect-item-active":"",attrs:{href:"javascript:;"},on:{click:function(n){n.stopPropagation(),t.chooseArea(e); +}}},[n("span",[t._v(t._s(e))])])}))])])])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"slider-item"},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"m-button"},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"badge",class:t.typesClass,style:{backgroundColor:t.bgcolor,color:t.color}},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("header",{staticClass:"m-navbar",class:t.classes},[n("div",{staticClass:"navbar-item"},[t._t("left")],2),t._v(" "),n("div",{staticClass:"navbar-center-box"},[n("div",{staticClass:"navbar-center"},[t._t("center",[n("span",{staticClass:"center-title"},[t._v(t._s(t.title))])])],2)]),t._v(" "),n("div",{staticClass:"navbar-item"},[t._t("right")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"m-cell"},[t.title?n("div",{staticClass:"g-linetitle"},[t._v(t._s(t.title))]):t._e(),t._v(" "),t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("router-link",{staticClass:"grids-item",attrs:{to:t.link||""}},[t.checkIcon?n("div",{staticClass:"grids-icon"},[t._t("icon")],2):t._e(),t._v(" "),t.checkText?n("div",{staticClass:"grids-txt"},[t._t("text")],2):t._e()])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"mask-white-dialog"},[n("div",{staticClass:"m-toast",class:""==t.iconsClass?"toast-none-icon":""},[t.iconsClass?n("div",{class:t.iconsClass}):t._e(),t._v(" "),n("p",{staticClass:"toast-content",domProps:{innerHTML:t._s(t.mes)}})])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"m-notify",class:t.classes,domProps:{innerHTML:t._s(t.mes)}})},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",[n("i",{staticClass:"back-icon"}),t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"m-tab",attrs:{id:"J_Tab"}},[n("ul",{staticClass:"tab-nav"},t._l(t.navList,function(e){return n("li",{staticClass:"tab-nav-item",class:e._uid==t.activeIndex?"tab-active":"",on:{click:function(n){t.changeHandler(e._uid)}}},[n("a",{attrs:{href:"javascript:;"}},[t._v(t._s(e.label))])])})),t._v(" "),n("div",{staticClass:"tab-panel"},[t._t("default")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("yd-button",{class:t.start?"btn-disabled":"",style:{backgroundColor:t.bgcolor,color:t.color},attrs:{size:t.size,type:t.type,disabled:t.start}},[t._v("\n "+t._s(t.tmpStr)+"\n")])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"mask-black-dialog"},[n("div",{staticClass:"m-confirm m-alert"},[n("div",{staticClass:"confirm-bd",domProps:{innerHTML:t._s(t.mes)}}),t._v(" "),n("div",{staticClass:"confirm-ft"},[n("a",{staticClass:"confirm-btn primary",attrs:{href:"javascript:;"},on:{click:function(e){e.stopPropagation(),t.closeAlert(e)}}},[t._v("确定")])])])])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{ref:"slider",staticClass:"m-slider"},[n("div",{ref:"warpper",staticClass:"slider-wrapper",class:"vertical"==t.direction?"slider-wrapper-vertical":"",style:t.dragStyleObject},[n("div",{staticClass:"slider-item",style:t.itemHeight,domProps:{innerHTML:t._s(t.lastItem)}}),t._v(" "),t._t("default"),t._v(" "),n("div",{staticClass:"slider-item",style:t.itemHeight,domProps:{innerHTML:t._s(t.firtstItem)}})],2),t._v(" "),n("div",{staticClass:"slider-pagination",class:"vertical"==t.direction?"slider-pagination-vertical":""},t._l(t.itemNums,function(e,a){return n("span",{staticClass:"slider-pagination-item",class:t.paginationIndex==a?"slider-pagination-item-active":""})}))])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("footer",{staticClass:"m-tabbar",class:t.classes},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"m-spinner"},[n("a",{ref:"minus",attrs:{href:"javascript:;"}}),t._v(" "),n("input",{directives:[{name:"model",rawName:"v-model",value:t.counter,expression:"counter"}],ref:"numInput",attrs:{type:"text",readonly:t.readonly,placeholder:""},domProps:{value:t._s(t.counter)},on:{input:function(e){e.target.composing||(t.counter=e.target.value)}}}),t._v(" "),n("a",{ref:"add",attrs:{href:"javascript:;"}})])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",{staticClass:"badge badge-radius",class:t.typesClass,style:{backgroundColor:t.bgcolor,color:t.color}},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("span",[t._t("default"),n("i",{staticClass:"next-icon"})],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("button",{class:t.classes,style:{backgroundColor:t.bgcolor,color:t.color},attrs:{disabled:t.disabled}},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"m-scrolltab"},[n("div",{staticClass:"scrolltab-nav"},t._l(t.navList,function(e){return n("a",{staticClass:"scrolltab-item",class:t.activeIndex==e._uid?"scrolltab-active":"",attrs:{href:"javascript:;"},on:{click:function(n){t.moveHandler(e._uid)}}},[n("div",{staticClass:"scrolltab-icon"},[n("i",{class:e.icon})]),t._v(" "),n("div",{staticClass:"scrolltab-title"},[t._v(t._s(e.label))])])})),t._v(" "),n("div",{ref:"scrollView",staticClass:"scrolltab-content"},[t._t("default")],2)])},staticRenderFns:[]}},function(t,e){t.exports={render:function(){var t=this,e=t.$createElement,n=t._self._c||e;return n("div",{staticClass:"list-other"},[t._t("default")],2)},staticRenderFns:[]}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-actionsheet",data:function(){return{show:!1}},props:{value:{type:Boolean,default:!1},items:{type:Array,require:!0},cancel:String},watch:{value:function(t){this.show=t}},methods:{itemClick:function(t){t&&("function"==typeof t.method&&t.method(),!t.unclose&&this.close())},close:function(){this.$emit("input",!1)}},destroyed:function(){this.close()}}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(5),s=a(i);e.default={name:"yd-badge-radius",extends:s.default}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-badge",props:{type:{type:String,validator:function(t){return["primary","danger","warning","hollow"].indexOf(t)>-1}},color:{type:String,validator:function(t){return t||isColor(t)}},bgcolor:{type:String,validator:function(t){return t||isColor(t)}}},computed:{typesClass:function(){return this.bgcolor?"":this.type?"badge-"+this.type:""}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-button-group"}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n(3);e.default={name:"yd-button",props:{disabled:Boolean,type:{type:String,validator:function(t){return["primary","danger","warning","hollow","disabled"].indexOf(t)>-1},default:"primary"},size:{type:String,validator:function(t){return["small","large"].indexOf(t)>-1}},bgcolor:{type:String,validator:function(t){return t||(0,a.isColor)(t)}},color:{type:String,validator:function(t){return(0,a.isColor)(t)}}},computed:{classes:function(){var t="large"==this.size?"btn-block":"btn",e="btn-"+this.type;return this.disabled&&(e="btn-disabled"),this.bgcolor&&(e=""),t+" "+e}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-cell-group",props:{title:String}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-cell-item",props:{type:{type:String,validator:function(t){return["link","label","div"].indexOf(t)>-1}},arrow:{type:Boolean,default:!1},href:{}},computed:{checkLeft:function(){return!!this.$slots.left},classes:function(){return this.arrow?"cell-arrow":""}}}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(146),s=a(i);e.default={name:"yd-cityselect",data:function(){return{citys:s.default,show:!1,nav:{index:0,txt1:"请选择",txt2:"",txt3:""},activeProvance:"",activeCity:"",activeArea:"",cityArray:[],areaArray:[],activeClasses:"",itemHeight:40}},props:{provance:String,city:String,area:String,done:Function,value:{type:Boolean,default:!1}},watch:{value:function(t){this.show=t}},methods:{chooseProvance:function(t,e){this.nav.index=1,this.nav.txt1=this.activeProvance=t,this.nav.txt2="请选择",this.nav.txt3="",this.cityArray=e,this.activeCity=""},chooseCity:function(t,e){return this.nav.txt2=this.activeCity=t,this.activeArea="",e.length<=0?void this.returnValue():(this.nav.txt3="请选择",this.areaArray=e,void this.forwardView(!0))},chooseArea:function(t){this.nav.txt3=this.activeArea=t,this.returnValue()},setDefalutValue:function(){var t=this;this.provance&&this.citys.every(function(e,n){if(e.n==t.provance){var a=t.$refs.provanceBox;a.scrollTop=n*t.itemHeight-a.offsetHeight/3,t.nav.index=1,t.nav.txt1=t.activeProvance=t.provance,t.nav.txt2="请选择";var i=t.cityArray=e.c;return i.every(function(e,n){if(e.n==t.city){var a=t.$refs.cityBox;a.scrollTop=n*t.itemHeight-a.offsetHeight/3,t.nav.txt2=t.activeCity=t.city;var i=t.areaArray=e.a,s=i.indexOf(t.area);if(i.length>0&&(t.nav.index=2,t.nav.txt3="请选择",t.forwardView(!1)),s>-1){var r=t.$refs.areaBox;r.scrollTop=s*t.itemHeight-r.offsetHeight/3,t.nav.txt3=t.activeArea=t.area}return!1}return!0}),!1}return!0})},returnValue:function(){this.done({provance:this.activeProvance,city:this.activeCity,area:this.activeArea}),this.close()},close:function(){this.$emit("input",!1),this.show=!1},backoffView:function(t){this.nav.index=t,this.activeClasses="cityselect-move-animate cityselect-prev"},forwardView:function(t){this.nav.index=2,this.activeClasses=(t?"cityselect-move-animate":"")+" cityselect-next"}},mounted:function(){this.setDefalutValue()},destroyed:function(){this.close()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={props:{mes:String,callback:Function}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={props:{title:String,mes:String,opts:{type:[Array,Function],default:function(){}}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={props:{title:String}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={data:function(){return{classes:""}},props:{mes:String,timeout:Number,callback:Function}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={props:{mes:String,icon:String,timeout:Number,callback:Function},computed:{iconsClass:function(){var t="";return"success"!=this.icon&&"error"!=this.icon||(t="toast-"+this.icon+"-icon"),t}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-grids-group",props:{rows:{type:[Number,String],validator:function(t){return["2","3","4","5"].indexOf(t+"")>-1},default:"4"},title:String},computed:{classes:function(){return"m-grids-"+this.rows}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-grids-item",props:{link:String},computed:{checkIcon:function(){return!!this.$slots.icon},checkText:function(){return!!this.$slots.text}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n(3);e.default={name:"yd-icon",props:{name:String,color:{type:String,validator:function(t){return(0,a.isColor)(t)},default:"#333"},size:{type:String,validator:function(t){return/^(\.|\d+\.)?\d+(px|rem)$/.test(t)},default:".6rem"}},computed:{classes:function(){return"icon-"+this.name},styles:function(){var t={};return this.size&&(t.fontSize=this.size),this.color&&(t.color=this.color),t}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-infinitescroll",data:function(){return{isLoading:!1,isDone:!1}},props:{onInfinite:{type:Function,required:!0}},methods:{init:function(){var t=this;this.scrollview=this.getScrollview(),this.scrollview.addEventListener("scroll",function(){t.throttle(t.scrollHandler)}),this.$yduiBus.$on("ydui.infinitescroll.loadedDone",function(){t.isLoading=!1,t.isDone=!0}),this.$yduiBus.$on("ydui.infinitescroll.finishLoad",function(){t.isLoading=!1})},getScrollview:function(){var t=document.defaultView.getComputedStyle(this.$el.parentNode).overflowY;return"scroll"==t||"auto"==t?this.$el.parentNode:this.$parent.$refs.scrollview?this.$parent.$refs.scrollview:window},scrollHandler:function(){if(!this.isLoading&&!this.isDone){var t=this.scrollview,e=t==window?document.body.offsetHeight:t.offsetHeight,n=t==window?0:t.getBoundingClientRect().top;this.$refs.tag.getBoundingClientRect().top<=n+e+e/10&&(this.isLoading=!0,this.onInfinite())}},throttle:function(t,e){clearTimeout(t.tId),t.tId=setTimeout(function(){t.call(e)},100)}},mounted:function(){this.init()},destroyed:function(){this.scrollview.removeEventListener("scroll",this.scrollHandler)}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-keyboard",data:function(){return{nums:"",show:!1,error:"",numsArr:[1,2,3,4,5,6,7,8,9,0]}},props:{inputDone:{type:Function},disorder:{type:Boolean,default:!1},value:{type:Boolean,default:!1},title:{type:String,default:"YDUI安全键盘"}},watch:{value:function(t){this.nums="",this.error="",this.show=t,this.show&&this.disorder&&(this.numsArr=this.upsetOrder(this.numsArr))},nums:function(t){t.length>=6&&this.inputDone&&"function"==typeof this.inputDone&&this.inputDone(t)}},methods:{numclick:function(t){this.error="",this.nums.length>=6||(this.nums+=t)},backspace:function(){var t=this.nums;t&&(this.nums=t.substr(0,t.length-1))},upsetOrder:function(t){for(var e=Math.floor,n=Math.random,a=t.length,i=void 0,s=void 0,r=void 0,o=e(a/2)+1;o--;)i=e(n()*a),s=e(n()*a),i!==s&&(r=t[i],t[i]=t[s],t[s]=r);return t},close:function(){this.$emit("input",!1)},setError:function(t){this.error=t,this.nums=""}},mounted:function(){var t=this;this.$yduiBus.$on("keyboard.error",function(e){t.setError(e)}),this.$yduiBus.$on("keyboard.close",this.close)},destroyed:function(){this.close()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-layout",props:{link:String,title:String,showNavbar:{type:Boolean,default:!0}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-list-item"}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-list-other"}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-list",props:{theme:[Number,String],validator:function(t){return["1","2","3","4","5"].indexOf(t+"")>-1},default:"2"},computed:{classes:function(){return"list-theme"+this.theme}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-navbar-back-icon"}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-navbar-next-icon"}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-navbar",props:{title:String,fixed:Boolean},computed:{classes:function(){return this.fixed?"navbar-fixed":""}}}},function(t,e,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var a=n(3);e.default={name:"yd-progressbar",data:function(){return{viewBox:"0 0 100 100",show:!1,stroke:{dasharray:"",dashoffset:""}}},props:{type:{type:String,validator:function(t){return["circle","line"].indexOf(t)>-1},default:"circle"},fillColor:{type:String,validator:function(t){return(0,a.isColor)(t)}},strokeWidth:{validator:function(t){return/^\d*$/.test(t)},default:0},strokeColor:{type:String,validator:function(t){return(0,a.isColor)(t)},default:"#E5E5E5"},trailWidth:{validator:function(t){return/^\d*$/.test(t)},default:0,require:!0},trailColor:{type:String,validator:function(t){return(0,a.isColor)(t)},default:"#646464"},progress:{validator:function(t){return/^(0(.\d+)?|1(\.0+)?)$/.test(t)},default:0}},methods:{init:function(){var t=this,e=this.length=this.$refs.trailPath.getTotalLength();this.stroke.dashoffset=e,this.stroke.dasharray=e+","+e,this.scrollview=this.getScrollview(),this.show=!0,"line"==this.type&&(this.viewBox="0 0 100 "+(this.strokeWidth?this.strokeWidth:this.trailWidth)),setTimeout(function(){t.checkInview()},0),this.bindEvent()},getScrollview:function(){var t=document.defaultView.getComputedStyle(this.$el.parentNode).overflowY;return"scroll"==t||"auto"==t?this.$el.parentNode:this.$parent.$refs.scrollview?this.$parent.$refs.scrollview:window},checkInview:function(){var t=this.scrollview,e=t==window?document.body.offsetHeight:t.offsetHeight,n=t===window?0:t.getBoundingClientRect().top,a=this.$el.getBoundingClientRect().top-n,i=a+this.$el.offsetHeight;(a>=0&&a0&&i<=e)&&(this.stroke.dashoffset=this.length-this.progress*this.length)},bindEvent:function(){this.scrollview.addEventListener("scroll",this.checkInview),this.scrollview.addEventListener("resize",this.checkInview)},unbindEvent:function(){this.scrollview.removeEventListener("scroll",this.checkInview),this.scrollview.removeEventListener("resize",this.checkInview)}},watch:{progress:function(t){this.stroke.dashoffset=this.length-t*this.length}},computed:{getPathString:function(){if("line"==this.type)return"M 0,{R} L 100,{R}".replace(/\{R\}/g,this.trailWidth/2);var t=50-(this.strokeWidth?this.strokeWidth:this.trailWidth)/2;return"M 50,50 m 0,-{R} a {R},{R} 0 1 1 0,{2R} a {R},{R} 0 1 1 0,-{2R}".replace(/\{R\}/g,t).replace(/\{2R\}/g,2*t)}},mounted:function(){this.init()},destoryed:function(){this.unbindEvent()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-pullrefresh",props:{onInfinite:{type:Function,required:!0}},data:function(){return{showHelpTag:!1,dragTip:{iconOpacity:.5,iconRotate:0,loadingIcon:"",animationTiming:"",scale:1,translate:0,distance:100},touches:{loading:!1,startClientY:0,moveOffset:0,isDraging:!1}}},methods:{init:function(){this.offsetTop=this.$refs.dragBox.getBoundingClientRect().top,this.bindEvents(),this.$yduiBus.$on("ydui.pullrefresh.finishLoad",this.finishLoad),this.showHelp()},showHelp:function(){var t=this,e="PULLREFRESH-TIP",n=window.localStorage;1!=n.getItem(e)&&(this.showHelpTag=!0,setTimeout(function(){t.showHelpTag=!1},5e3)),n.setItem(e,1)},bindEvents:function(){var t=this.$refs.dragBox;t.addEventListener("touchstart",this.touchStartHandler),t.addEventListener("touchmove",this.touchMoveHandler),t.addEventListener("touchend",this.touchEndHandler),document.body.addEventListener("touchmove",this.stopWeixinDrag)},unbindEvents:function(){var t=this.$refs.dragBox;t.removeEventListener("touchstart",this.touchStartHandler),t.removeEventListener("touchmove",this.touchMoveHandler),t.removeEventListener("touchend",this.touchEndHandler),document.body.removeEventListener("touchmove",this.stopWeixinDrag)},stopWeixinDrag:function(t){this.touches.isDraging&&t.preventDefault()},touchStartHandler:function(t){return this.touches.loading?void t.preventDefault():void(this.$refs.dragBox.getBoundingClientRect().tope.clientY||this.$refs.dragBox.getBoundingClientRect().top=this.dragTip.distance&&(n=this.dragTip.distance),this.dragTip.iconRotate=n/.25,this.touches.moveOffset=this.dragTip.translate=n}},touchEndHandler:function(t){var e=this.touches;if(e.loading)return void t.preventDefault();if(!(this.$refs.dragBox.getBoundingClientRect().top=this.dragTip.distance)return this.dragTip.translate=this.dragTip.distance/1.5,this.dragTip.loadingIcon="pullrefresh-loading",void this.triggerLoad();this.dragTip.translate=0,this.resetParams()}},triggerLoad:function(){this.touches.loading=!0,this.onInfinite()},finishLoad:function(){var t=this;setTimeout(function(){t.dragTip.iconRotate=0,t.dragTip.scale=0,t.resetParams()},200)},resetParams:function(){var t=this;setTimeout(function(){var e=t.touches,n=t.dragTip;e.isDraging=!1,e.loading=!1,e.moveOffset=0,n.animationTiming="",n.iconOpacity=.5,n.translate=0,n.scale=1,n.loadingIcon=""},150)}},mounted:function(){this.init()},destroyed:function(){this.unbindEvents()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-scrolltab-panel",props:{label:String,icon:String,active:Boolean}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-scrolltab",data:function(){return{scrolling:!1,navList:[],activeIndex:0,timer:null}},methods:{getPanels:function(){return this.$children.filter(function(t){return"yd-scrolltab-panel"===t.$options.name})},init:function(){this.scrollView=this.$refs.scrollView,this.contentOffsetTop=this.scrollView.getBoundingClientRect().top,this.bindEvent(),this.setDefault()},bindEvent:function(){this.scrollView.addEventListener("scroll",this.checkInview),this.scrollView.addEventListener("resize",this.checkInview)},setDefault:function(){var t=this,e=this.getPanels(),n=0;e.forEach(function(a){t.navList.push({label:a.label,_uid:a._uid,icon:a.icon}),a.active?(t.activeIndex=a._uid,t.moveHandler(a._uid)):(++n,n>=e.length&&(t.activeIndex=e[0]._uid))})},moveHandler:function(t){var e=this;if(!this.scrolling){this.scrolling=!0;var n=this.getPanels(),a=n.filter(function(e){return e._uid==t})[0].$el.getBoundingClientRect().top;this.scrollView.scrollTop=a+this.scrollView.scrollTop-this.contentOffsetTop+2,this.activeIndex=t,setTimeout(function(){e.scrolling=!1},6)}},checkInview:function(){var t=this;if(!this.scrolling){var e=this.getPanels(),n=e.length,a=this.scrollView,i=a.offsetHeight,s=a.scrollTop,r=e[0].$el.offsetHeight;return s>=r*n-i?void(this.activeIndex=e[n-1]._uid):void e.forEach(function(e){e.$el.getBoundingClientRect().top<=t.contentOffsetTop&&(t.activeIndex=e._uid)})}}},mounted:function(){this.init()},destroyed:function(){this.scrollView.removeEventListener("scroll",this.checkInview),this.scrollView.removeEventListener("resize",this.checkInview)}}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(6),s=a(i);e.default={name:"yd-sendcode",extends:s.default,data:function(){return{tmpStr:"获取短信验证码",timer:null,start:!1}},props:{initStr:String,second:{default:60,validator:function(t){return/^\d*$/.test(t)}},runStr:{type:String,default:"{%s}秒后重新获取"},resetStr:{type:String,default:"重新获取验证码"},value:{type:Boolean,default:!1}},methods:{run:function(){var t=this,e=this.second;this.tmpStr=this.getStr(this.second),this.timer=setInterval(function(){e--,t.tmpStr=t.getStr(e),e<=0&&t.stop()},1e3)},stop:function(){this.tmpStr=this.resetStr,this.$emit("input",!1),clearInterval(this.timer)},getStr:function(t){return this.runStr.replace(/\{([^{]*?)%s(.*?)\}/g,t)}},watch:{value:function(t){this.start=t,t&&this.run()}},mounted:function(){this.initStr&&(this.tmpStr=this.initStr)},destroyed:function(){this.stop()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-slider-item"}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-slider",data:function(){return{firtstItem:"",lastItem:"",itemNums:0,index:1,itemsArr:[],autoPlayTimer:null,paginationIndex:0,itemHeight:{height:null},dragStyleObject:{transform:0,speed:0},touches:{moveTag:0,startClientPosition:0,moveOffset:0,touchStartTime:0,isTouchEvent:!1,allowClick:!1}}},props:{speed:{default:300,validator:function(t){return/^\d*$/.test(t)}},autoplay:{default:0,validator:function(t){return/^\d*$/.test(t)}},direction:{type:String,validator:function(t){return["horizontal","vertical"].indexOf(t)>-1},default:"horizontal"}},methods:{init:function(){var t=this;this.itemsArr=this.$children.filter(function(t){return"yd-slider-item"===t.$options.name}),this.itemNums=this.itemsArr.length,"vertical"==this.direction?!function(){t.$refs.slider.style.height="100%";var e=t.$el.clientHeight;t.itemHeight.height=e+"px",t.setTranslate(0,-e),t.itemsArr.forEach(function(t){t.$el.style.height=e+"px"})}():this.setTranslate(0,-this.$refs.warpper.offsetWidth),this.cloneItem(),this.bindEvents(),this.autoplay>0&&this.autoPlay()},cloneItem:function(){var t=this.itemsArr;this.firtstItem=t[0].$el.innerHTML,this.lastItem=t[t.length-1].$el.innerHTML},touchStartHandler:function(t){var e=this.touches;if(e.allowClick=!0,e.isTouchEvent="touchstart"===t.type,(e.isTouchEvent||!("which"in t)||3!==t.which)&&0==e.moveTag){e.moveTag=1,"vertical"==this.direction?e.startClientPosition=t.touches?t.touches[0].clientY:t.clientY:e.startClientPosition=t.touches?t.touches[0].clientX:t.clientX,e.touchStartTime=Date.now();var n=this.itemNums;if(0==this.index)return this.index=n,void this.setTranslate(0,-n*("vertical"==this.direction?this.$el.clientHeight:this.$refs.warpper.offsetWidth));this.index>n&&(this.index=1,this.setTranslate(0,"vertical"==this.direction?-this.$el.clientHeight:-this.$refs.warpper.offsetWidth))}},touchMoveHandler:function(t){t.preventDefault();var e=this.touches;if(e.allowClick=!1,!e.isTouchEvent||"mousemove"!==t.type){var n=0;n="vertical"==this.direction?t.touches?t.touches[0].clientY:t.clientY:t.touches?t.touches[0].clientX:t.clientX;var a=e.moveOffset=n-e.startClientPosition;0!=a&&0!=e.moveTag&&(1==e.moveTag&&(this.stopAutoplay(),e.moveTag=2),2==e.moveTag&&this.setTranslate(0,-this.index*("vertical"==this.direction?this.$el.clientHeight:this.$refs.warpper.offsetWidth)+a))}},touchEndHandler:function(){var t=this.touches,e=t.moveOffset,n="vertical"==this.direction?this.$el.clientHeight:this.$refs.warpper.offsetWidth;if(setTimeout(function(){t.allowClick=!0},0),1==t.moveTag&&(t.moveTag=0),2==t.moveTag){t.moveTag=0;var a=Date.now()-t.touchStartTime;a>300&&Math.abs(e)<=.5*n?this.setTranslate(this.speed,-this.index*n):this.setTranslate(this.speed,-((e>0?--this.index:++this.index)*n))}},autoPlay:function(){var t=this;this.autoPlayTimer=setInterval(function(){var e="vertical"==t.direction?t.$el.clientHeight:t.$refs.warpper.offsetWidth;return t.index>t.itemNums?(t.index=1,t.setTranslate(0,-e),void setTimeout(function(){t.setTranslate(t.speed,-(++t.index*e))},100)):void t.setTranslate(t.speed,-(++t.index*e))},this.autoplay)},stopAutoplay:function(){clearInterval(this.autoPlayTimer)},bindEvents:function(){var t=this,e=this.touchEvents();this.$el.addEventListener(e.start,this.touchStartHandler),this.$el.addEventListener(e.move,this.touchMoveHandler),this.$el.addEventListener(e.end,this.touchEndHandler),this.$el.addEventListener("click",function(e){t.touches.allowClick||e.preventDefault()}),window.addEventListener("resize",this.resizeSlides)},unbindEvents:function(){var t=this.touchEvents();this.$el.removeEventListener(t.start,this.touchStartHandler),this.$el.removeEventListener(t.move,this.touchMoveHandler),this.$el.removeEventListener(t.end,this.touchEndHandler),window.removeEventListener("resize",this.resizeSlides)},touchEvents:function(){var t=window.Modernizr&&!!window.Modernizr.touch||function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}();return{start:t?"touchstart":"mousedown",move:t?"touchmove":"mousemove",end:t?"touchend":"mouseup"}},setTranslate:function(t,e){this.dragStyleObject.transitionDuration=t+"ms","vertical"==this.direction?this.dragStyleObject.transform="translate3d(0, "+e+"px, 0)":this.dragStyleObject.transform="translate3d("+e+"px, 0, 0)"},resizeSlides:function(){if("vertical"==this.direction){var t=this.$el.clientHeight;this.dragStyleObject.transform="translate3d(0, "+-this.index*t+"px, 0)"}else{var e=this.$refs.warpper.offsetWidth;this.dragStyleObject.transform="translate3d("+-this.index*e+"px, 0, 0)"}}},watch:{index:function t(){var t=this.index,e=this.itemNums,n=(t-1)%e;this.paginationIndex=n<0?e-1:n}},mounted:function(){this.init()},destroyed:function(){this.unbindEvents(),this.stopAutoplay()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-spinner",data:function(){return{counter:0,tapParams:{timer:null,tapStartTime:0},parms:{max:0,min:-1}}},props:{unit:{default:1,validator:function(t){return/^([1-9]\d*)$/.test(t)}},max:{default:0,validator:function(t){return/^(([1-9]\d*)|0)$/.test(t)}},min:{default:-1,validator:function(t){return/^((-?([1-9]\d*))|0)$/.test(t)}},longpress:{type:Boolean,default:!0},readonly:{type:Boolean,default:!1},value:{validator:function(t){return/^(([1-9]\d*)|0)$/.test(t)}}},methods:{init:function(){this.checkParameters()&&(this.setDefalutValue(),this.bindEvents())},checkParameters:function(){var t=~~this.max,e=~~this.unit,n=~~this.min;return t=0?(console.error("[YDUI warn]: The parameter 'min'("+n+") and 'unit'("+e+") must be multiple."),!1):!(t0?void this.setValue(n):void(e<0?this.setValue(t):this.setValue(e))},calculation:function(t){var e=~~this.max,n=~~this.min<0?~~this.unit:~~this.min,a=~~this.unit;if(!this.readonly){var i=this.counter,s=void 0;if("add"==t){if(s=i+a,0!=e&&s>e)return}else if(s=i-a,se&&0!=e&&(t=e),t%a>0&&(t=t-t%a+a,t>e&&0!=e&&(t-=a)),t=40&&(i=100),this.tapParams.timer=setTimeout(function(){e.calculation(t)},1e3/i)},clearTapTimer:function(){clearTimeout(this.tapParams.timer)},bindEvents:function(){var t=this,e=this.$refs.add,n=this.$refs.minus,a={mousedownEvent:"touchstart",mouseupEvent:"touchend"},i=window.Modernizr&&!!window.Modernizr.touch||function(){return!!("ontouchstart"in window||window.DocumentTouch&&document instanceof DocumentTouch)}();i||(a.mousedownEvent="mousedown",a.mouseupEvent="mouseup"),e.addEventListener(a.mousedownEvent,function(n){ +t.longpress&&(n.preventDefault(),n.stopPropagation(),t.tapParams.tapStartTime=(new Date).getTime()/1e3,e.addEventListener(a.mouseupEvent,t.clearTapTimer)),t.calculation("add")}),n.addEventListener(a.mousedownEvent,function(e){t.longpress&&(e.preventDefault(),e.stopPropagation(),t.tapParams.tapStartTime=(new Date).getTime()/1e3,n.addEventListener(a.mouseupEvent,t.clearTapTimer)),t.calculation("minus")}),this.$refs.numInput.addEventListener("change",function(){t.setValue(t.counter)})}},mounted:function(){this.init()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-switch",data:function(){return{checked:!1}},props:{value:Boolean},watch:{checked:function(t){this.$emit("input",t)}},methods:{changeVal:function(){}},mounted:function(){this.checked=this.value}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-tab-panel",props:{label:String,active:Boolean},computed:{classes:function(){return this.$parent.activeIndex==this._uid?"tab-active":""}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-tab",data:function(){return{navList:[],activeIndex:0}},methods:{init:function(){var t=this,e=this.$children.filter(function(t){return"yd-tab-panel"===t.$options.name}),n=0;e.forEach(function(a){t.navList.push({label:a.label,_uid:a._uid}),a.active?t.activeIndex=a._uid:(++n,n>=e.length&&(t.activeIndex=e[0]._uid))})},changeHandler:function(t){this.activeIndex=t}},mounted:function(){this.init()}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-tabbar-item",props:{link:String,title:String,active:Boolean,dot:Boolean},computed:{classes:function(){return this.active?"tabbar-active":""}}}},function(t,e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default={name:"yd-tabbar",props:{fixed:Boolean},computed:{classes:function(){return this.fixed?"tabbar-fixed":""}}}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(29),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(5),s=a(i),r=n(30),o=a(r);s.default.BadgeRadius=o.default,e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(34),s=a(i),r=n(33),o=a(r),c={};c.CellGroup=o.default,c.CellItem=s.default,e.default=c},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(35),s=a(i);e.default=s.default},function(t,e,n){var a,i;!function(){var s=[{n:"北京",c:[{a:["城区","城区以外"],n:"密云区"},{a:["三环到四环之间","四环到五环之间","五环到六环之间","管庄","北苑","定福庄","三环以内"],n:"朝阳区"},{a:["六环以内","城区","城区以外"],n:"昌平区"},{a:["城区","城区以外"],n:"平谷区"},{a:["三环以内","三环到四环之间","四环到五环之间","五环到六环之间","六环以外","西三旗","西二旗"],n:"海淀区"},{a:["内环到二环里","二环到三环"],n:"西城区"},{a:["内环到三环里"],n:"东城区"},{a:["一环到二环","二环到三环"],n:"崇文区"},{a:["内环到三环里"],n:"宣武区"},{a:["四环到五环之间","二环到三环","三环到四环之间","五环到六环之间","六环之外"],n:"丰台区"},{a:["四环到五环内","石景山城区","八大处科技园区"],n:"石景山区"},{a:["城区","龙泉镇","永定镇","大台镇","潭柘寺镇","王平镇","军庄镇","妙峰山镇","雁翅镇","斋堂镇","清水镇"],n:"门头沟"},{a:["城区","大安山乡","大石窝镇","窦店镇","佛子庄乡","韩村河镇","河北镇","良乡镇","琉璃河镇","南窖乡","蒲洼乡","青龙湖镇","十渡镇","石楼镇","史家营乡","霞云岭乡","新镇","阎村镇","燕山地区","张坊镇","长沟镇","长阳镇","周口店镇"],n:"房山区"},{a:["六环内(马驹桥镇)","中仓街道","新华街道","玉桥街道","北苑街道","六环外(马驹桥镇)","永顺镇","梨园镇","宋庄镇","漷县镇","张家湾镇","西集镇","永乐店镇","潞城镇","台湖镇","于家务乡","次渠镇"],n:"通州区"},{a:["延庆镇","城区","康庄镇","八达岭镇","永宁镇","旧县镇","张山营镇","四海镇","千家店镇","沈家营镇","大榆树镇","井庄镇","大庄科乡","刘斌堡乡","香营乡","珍珠泉乡"],n:"延庆县"},{a:["四环至五环之间","五环至六环之间","六环以外","亦庄经济开发区"],n:"大兴区"},{a:["北石槽镇","北务镇","北小营镇","大孙各庄镇","高丽营镇","光明街道","后沙峪地区","空港街道","李桥镇","李遂镇","龙湾屯镇","马坡地区","木林镇","南彩镇","南法信地区","牛栏山地区","仁和地区","胜利街道","石园街道","双丰街道","天竺地区","旺泉街道","杨镇地区","张镇","赵全营镇"],n:"顺义区"},{a:["城区以内","郊区"],n:"怀柔区"}]},{n:"上海",c:[{a:["城区"],n:"静安区"},{a:["城区"],n:"闸北区"},{a:["城区"],n:"虹口区"},{a:["城区"],n:"杨浦区"},{a:["罗店镇","城区","大场镇","杨行镇","月浦镇","罗泾镇","顾村镇","高境镇","庙行镇","淞南镇","宝山城市工业园区"],n:"宝山区"},{a:["城区","莘庄镇","七宝镇","浦江镇","梅陇镇","虹桥镇","马桥镇","吴泾镇","华漕镇","颛桥镇"],n:"闵行区"},{a:["城区","南翔镇","马陆镇","华亭镇","江桥镇","菊园新区","安亭镇","徐行镇","外冈镇","嘉定工业区"],n:"嘉定区"},{a:["城区","川沙新镇","祝桥镇","新场镇","高桥镇","惠南镇","北蔡镇","合庆镇","唐镇","曹路镇","金桥镇","高行镇","高东镇","张江镇","三林镇","南汇新城镇","康桥镇","宣桥镇","书院镇","大团镇","周浦镇","芦潮港镇","泥城镇","航头镇","万祥镇","老港镇"],n:"浦东新区"},{a:["城区","赵巷镇","徐泾镇","华新镇","重固镇","白鹤镇","练塘镇","金泽镇","朱家角镇"],n:"青浦区"},{a:["城区","泗泾镇","佘山镇","车墩镇","新桥镇","洞泾镇","九亭镇","泖港镇","石湖荡镇","新浜镇","叶榭镇","小昆山镇"],n:"松江区"},{a:["城区","金山工业区","朱泾镇","枫泾镇","张堰镇","亭林镇","吕巷镇","廊下镇","金山卫镇","漕泾镇","山阳镇"],n:"金山区"},{a:["南桥镇","奉城镇","四团镇","柘林镇","庄行镇","金汇镇","青村镇","海湾镇"],n:"奉贤区"},{a:["城区"],n:"普陀区"},{a:["城区"],n:"黄浦区"},{a:["堡镇","庙镇","陈家镇","城桥镇","东平镇","港西镇","港沿镇","建设镇","绿华镇","三星镇","竖新镇","向化镇","新海镇","新河镇","中兴镇","长兴乡","横沙乡","新村乡"],n:"崇明县"},{a:["城区"],n:"徐汇区"},{a:["城区"],n:"长宁区"}]},{n:"天津",c:[{a:["全境"],n:"东丽区"},{a:["全境"],n:"和平区"},{a:["全境"],n:"河北区"},{a:["全境"],n:"河东区"},{a:["全境"],n:"河西区"},{a:["全境"],n:"红桥区"},{a:["全境"],n:"蓟县"},{a:["全境"],n:"静海县"},{a:["全境"],n:"南开区"},{a:["全境"],n:"塘沽区"},{a:["杨柳青,中北,精武,大寺镇,环外海泰及外环内","其它地区"],n:"西青区"},{a:["杨村镇、下朱庄内","其它地区"],n:"武清区"},{a:["双港,辛庄","咸水沽镇、海河教育园,海河科技园","其他地区"],n:"津南区"},{a:["汉沽区街里、汉沽开发区","其它地区"],n:"汉沽区"},{a:["大港油田","主城区内","主城区外"],n:"大港区"},{a:["外环外双街镇,河北工大新校,屈店工业园","外环内","外环外其它地区"],n:"北辰区"},{a:["城关镇、马家店开发区、天宝工业园","其它地区"],n:"宝坻区"},{a:["芦台镇、经济开发区、贸易开发区","其它地区"],n:"宁河县"}]},{n:"重庆",c:[{a:["县城内","青杠镇","来凤镇","丁家镇","大路镇","八塘镇","七塘镇","河边镇","福禄镇","大兴镇","正兴镇","广普镇","三合镇","健龙镇"],n:"璧山县"},{a:["县城内","广顺镇","安富镇","峰高镇","双河镇","直升镇","路孔镇","清江镇","仁义镇","河包镇","古昌镇","吴家镇","观胜镇","铜鼓镇","清流镇","盘龙镇","远觉镇","清升镇","荣隆镇","龙集镇"],n:"荣昌县"},{a:["县城内","土桥镇","二坪镇","水口镇","安居镇","白羊镇","平滩镇","石鱼镇","福果镇","维新镇","高楼镇","大庙镇","围龙镇","华兴镇","永嘉镇","安溪镇","西河镇","太平镇","旧县镇","虎峰镇","少云镇","蒲吕镇","侣俸镇","小林乡","双山乡","庆隆乡"],n:"铜梁县"},{a:["内环以内","寸滩镇","郭家沱镇","铁山坪镇","鱼嘴镇","复盛镇","五宝镇","大石坝镇"],n:"江北区"},{a:["城区","内环以内","茶园新区","鸡冠石镇","长生桥镇","峡口镇","广阳镇","迎龙镇"],n:"南岸区"},{a:["内环以内","白市驿镇","铜罐驿镇","华岩镇","巴福镇","含谷镇","金凤镇","石板镇","陶家镇","西彭镇","走马镇"],n:"九龙坡区"},{a:["内环以内","陈家桥镇","歌乐山镇","青木关镇","回龙坝镇","大学城","虎溪镇","西永镇","土主镇","井口镇","曾家镇","凤凰镇","中梁镇"],n:"沙坪坝区"},{a:["茄子溪镇","建胜镇","跳磴镇","内环以内"],n:"大渡口区"},{a:["城区","三江镇","安稳镇","打通镇","丁山镇","东溪镇","扶欢镇","赶水镇","郭扶镇","横山镇","隆盛镇","三角镇","石壕镇","石角镇","新盛镇","永城镇","永新镇","中峰镇","篆塘镇","丛林镇","关坝镇","黑山镇","金桥镇","南桐镇","青年镇","石林镇","万东镇"],n:"綦江区"},{a:["城区","草街镇","盐井镇","云门镇","大石镇","沙鱼镇","官渡镇","涞滩镇","肖家镇","古楼镇","三庙镇","二郎镇","龙凤镇","隆兴镇","铜溪镇","双凤镇","狮滩镇","清平镇","土场镇","小沔镇","三汇镇","香龙镇","钱塘镇","龙市镇","燕窝镇","太和镇","渭沱镇","双槐镇"],n:"合川区"},{a:["城区","南泉镇","一品镇","南彭镇","惠民镇","麻柳嘴镇","天星寺镇","双河口镇","界石镇","安澜镇","跳石镇","木洞镇","丰盛镇","二圣镇","东泉镇","姜家镇","接龙镇","石滩镇","石龙镇"],n:"巴南区"},{a:["城区","东阳镇","蔡家岗镇","童家溪镇","施家梁镇","金刀峡镇","澄江镇","水土镇","歇马镇","天府镇","复兴镇","静观镇","柳荫镇","三圣镇"],n:"北碚区"},{a:["城区","四面山镇","支坪镇","白沙镇","珞璜镇","柏林镇","蔡家镇","慈云镇","杜市镇","广兴镇","嘉平镇","贾嗣镇","李市镇","龙华镇","石蟆镇","石门镇","塘河镇","吴滩镇","西湖镇","夏坝镇","先锋镇","永兴镇","油溪镇","中山镇","朱杨镇"],n:"江津区"},{a:["城区","礼嘉镇","两路镇","王家镇","悦来镇","玉峰山镇","茨竹镇","大盛镇","大塆镇","古路镇","龙兴镇","洛碛镇","木耳镇","石船镇","统景镇","兴隆镇"],n:"渝北区"},{a:["城区","长寿湖镇","邻封镇","但渡镇","云集镇","双龙镇","龙河镇","石堰镇","云台镇","海棠镇","葛兰镇","新市镇","八颗镇","洪湖镇","万顺镇"],n:"长寿区"},{a:["城区","双竹镇","三教镇","大安镇","陈食镇","板桥镇","宝峰镇","临江镇","红炉镇","吉安镇","金龙镇","来苏镇","青峰镇","双石镇","松溉镇","五间镇","仙龙镇","永荣镇","朱沱镇","何埂镇"],n:"永川区"},{a:["全境"],n:"渝中区"},{a:["全境"],n:"高新区"},{a:["全境"],n:"北部新区"},{a:["城区","龙滩子镇","龙水镇","智凤镇","宝顶镇","中敖镇","三驱镇","宝兴镇","玉龙镇","石马镇","拾万镇","回龙镇","金山镇","万古镇","国梁镇","雍溪镇","珠溪镇","龙石镇","邮亭镇","铁山镇","高升镇","季家镇","古龙镇","高坪镇","双路镇","通桥镇"],n:"大足区"},{a:["城区","白土镇","白羊镇","大周镇","弹子镇","分水镇","甘宁镇","高峰镇","高梁镇","后山镇","李河镇","龙驹镇","龙沙镇","罗田镇","孙家镇","太安镇","太龙镇","天城镇","武陵镇","响水镇","小周镇","新田镇","新乡镇","熊家镇","余家镇","长岭镇","长坪镇","长滩镇","走马镇","瀼渡镇","茨竹乡","柱山乡","燕山乡","溪口乡","普子乡","地宝乡","铁峰乡","黄柏乡","九池乡","梨树乡","郭村乡","恒合乡"],n:"万州区"},{a:["城区","李渡镇","白涛镇","百胜镇","堡子镇","焦石镇","蔺市镇","龙桥镇","龙潭镇","马武镇","南沱镇","青羊镇","清溪镇","石沱镇","新妙镇","义和镇","增福乡","珍溪镇","镇安镇","致韩镇","土地坡乡","武陵山乡","中峰乡","梓里乡","丛林乡","大木乡","惠民乡","酒店乡","聚宝乡","卷洞乡","两汇乡","罗云乡","明家乡","仁义乡","山窝乡","石和乡","石龙乡","太和乡","天台乡","同乐乡","新村乡"],n:"涪陵区"},{a:["县城内","梁山镇","柏家镇","碧山镇","大观镇","福禄镇","合兴镇","和林镇","虎城镇","回龙镇","金带镇","聚奎镇","礼让镇","龙门镇","明达镇","蟠龙镇","屏锦镇","仁贤镇","石安镇","文化镇","新盛镇","荫平镇","袁驿镇","云龙镇","竹山镇","安胜乡","铁门乡","紫照乡","曲水乡","龙胜乡","城北乡","城东乡","复平乡"],n:"梁平县"},{a:["城区","头渡镇","兴隆镇","冷水关乡","德隆乡","峰岩乡","福寿乡","古花乡","河图乡","民主乡","木凉乡","乾丰乡","庆元乡","石莲乡","石溪乡","铁村乡","土溪乡","鱼泉乡","中桥乡","太平场镇","大观镇","大有镇","合溪镇","金山镇","鸣玉镇","南平镇","三泉镇","神童镇","石墙镇","水江镇"],n:"南川区"},{a:["县城内","柏梓镇","宝龙镇","崇龛镇","古溪镇","龙形镇","米心镇","群力镇","上和镇","双江镇","太安镇","塘坝镇","卧佛镇","五桂镇","小渡镇","新胜镇","玉溪镇","别口乡","田家乡","寿桥乡"],n:"潼南县"},{a:["城区","正阳镇","舟白镇","阿蓬江镇","小南海镇","鹅池镇","冯家镇","黑溪镇","黄溪镇","金溪镇","黎水镇","邻鄂镇","马喇镇","石会镇","石家镇","濯水镇","白石乡","白土乡","金洞乡","蓬东乡","沙坝乡","杉岭乡","水市乡","水田乡","太极乡","五里乡","新华乡","中塘乡"],n:"黔江区"},{a:["白桥镇","大德镇","金峰镇","谭家镇","天和镇","白泉乡","县城内","九龙山镇","大进镇","敦好镇","高桥镇","郭家镇","和谦镇","河堰镇","厚坝镇","临江镇","南门镇","南雅镇","渠口镇","铁桥镇","岳溪镇","温泉镇","义和镇","长沙镇","赵家镇","镇安镇","中和镇","竹溪镇","三汇口乡","白桥乡","大德乡","关面乡","金峰乡","麻柳乡","满月乡","谭家乡","天和乡","巫山镇","五通乡","紫水乡"],n:"开县"},{a:["县城内","云阳镇","巴阳镇","凤鸣镇","高阳镇","故陵镇","红狮镇","黄石镇","江口镇","龙角镇","路阳镇","南溪镇","农坝镇","盘龙镇","平安镇","渠马镇","人和镇","桑坪镇","沙市镇","双土镇","鱼泉镇","云安镇","洞鹿乡","后叶乡","龙洞乡","毛坝乡","泥溪乡","票草乡","普安乡","栖霞乡","清水乡","上坝乡","石门乡","双龙乡","水口乡","外郎乡","新津乡","堰坪乡","养鹿乡","耀灵乡","云硐乡"],n:"云阳县"},{a:["县城内","忠州镇","拔山镇","白石镇","东溪镇","复兴镇","官坝镇","花桥镇","黄金镇","金鸡镇","马灌镇","任家镇","汝溪镇","三汇镇","石宝镇","石黄镇","双桂镇","乌杨镇","新生镇","洋渡镇","野鹤镇","永丰镇","金声乡","磨子乡","善广乡","石子乡","涂井乡","兴峰乡","新立镇"],n:"忠县"},{a:["县城内","桂溪镇","澄溪镇","高安镇","高峰镇","鹤游镇","普顺镇","沙坪镇","太平镇","五洞镇","新民镇","砚台镇","永安镇","周嘉镇","白家乡","包家乡","曹回乡","大石乡","杠家乡","坪山镇","黄沙乡","裴兴乡","三溪乡","沙河乡","永平乡","长龙乡"],n:"垫江县"},{a:["县城内","葛城镇","巴山镇","高观镇","庙坝镇","明通镇","坪坝镇","修齐镇","北屏乡","东安乡","高楠乡","高燕乡","河鱼乡","厚坪乡","鸡鸣乡","岚天乡","蓼子乡","龙田乡","明中乡","双河乡","咸宜乡","沿河乡","治平乡","周溪乡","左岚乡"],n:"城口县"},{a:["县城内","仙女山镇","巷口镇","白马镇","火炉镇","江口镇","平桥镇","桐梓镇","土坎镇","鸭江镇","羊角镇","长坝镇","白云乡","沧沟乡","凤来乡","浩口乡","和顺乡","后坪乡","黄莺乡","接龙乡","庙垭乡","石桥乡","双河乡","铁矿乡","土地乡","文复乡","赵家乡"],n:"武隆县"},{a:["县城内","南天湖镇","许明寺镇","包鸾镇","董家镇","高家镇","虎威镇","江池镇","龙河镇","名山镇","三元镇","社坛镇","十直镇","树人镇","双路镇","武平镇","兴义镇","湛普镇","镇江镇","太平坝乡","双龙场乡","保合乡","崇兴乡","都督乡","暨龙乡","栗子乡","龙孔乡","青龙乡","仁沙乡","三坝乡","三建乡"],n:"丰都县"},{a:["永乐镇","县城内","永安镇","白帝镇","草堂镇","大树镇","汾河镇","公平镇","甲高镇","康乐镇","青龙镇","吐祥镇","新民镇","兴隆镇","羊市镇","朱衣镇","竹园镇","安坪乡","冯坪乡","鹤峰乡","红土乡","康坪乡","龙桥乡","平安乡","石岗乡","太和乡","五马乡","新政乡","岩湾乡","云雾乡","长安乡"],n:"奉节县"},{a:["县城内","城厢镇","凤凰镇","古路镇","尖山镇","宁厂镇","上磺镇","文峰镇","下堡镇","徐家镇","朝阳洞乡","大河乡","峰灵乡","花台乡","兰英乡","菱角乡","蒲莲乡","胜利乡","双阳乡","塘坊乡","天星乡","天元乡","田坝乡","通城乡","土城乡","乌龙乡","鱼鳞乡","长桂乡","中岗乡","中梁乡"],n:"巫溪县"},{a:["县城内","巫峡镇","大昌镇","福田镇","官渡镇","官阳镇","龙溪镇","骡坪镇","庙堂乡","庙宇镇","双龙镇","铜鼓镇","抱龙镇","大溪乡","当阳乡","邓家乡","笃坪乡","红椿乡","建平乡","金坪乡","两坪乡","龙井乡","培石乡","平河乡","曲尺乡","三溪乡","竹贤乡"],n:"巫山县"},{a:["王家乡","洗新乡","新乐乡","中益乡","县城内","南宾镇","黄水镇","临溪镇","龙沙镇","马武镇","沙子镇","王场镇","西沱镇","下路镇","沿溪镇","渔池镇","悦崃镇","大歇乡","枫木乡","河嘴乡","黄鹤乡","金铃乡","金竹乡","冷水乡","黎场乡","六塘乡","龙潭乡","桥头乡","三河乡","三益乡","石家乡","万朝乡"],n:"石柱县"},{a:["保家镇","高谷镇","黄家镇","连湖镇","龙射镇","鹿角镇","普子镇","桑柘镇","万足镇","郁山镇","梅子垭乡","鞍子乡","大垭乡","棣棠乡","靛水乡","朗溪乡","联合乡","龙塘乡","龙溪乡","芦塘乡","鹿鸣乡","平安乡","迁乔乡","乔梓乡","润溪乡","三义乡","善感乡","县城内","石柳乡","石盘乡","双龙乡","太原乡","桐楼乡","小厂乡","新田乡","岩东乡","长滩乡","诸佛乡","走马乡"],n:"彭水县"},{a:["县城内","钟多镇","苍岭镇","车田乡","大溪镇","丁市镇","泔溪镇","龚滩镇","黑水镇","后溪镇","李溪镇","龙潭镇","麻旺镇","小河镇","兴隆镇","酉酬镇","南腰界乡","后坪坝乡","板溪乡","官清乡","花田乡","江丰乡","可大乡","浪坪乡","两罾乡","毛坝乡","庙溪乡","木叶乡","楠木乡","偏柏乡","清泉乡","双泉乡","天馆乡","铜鼓乡","涂市乡","万木乡","五福乡","宜居乡","腴地乡","板桥乡"],n:"酉阳县"},{a:["县城内","清溪场镇","中和镇","隘口镇","峨溶镇","官庄镇","洪安镇","兰桥镇","龙池镇","梅江镇","平凯镇","溶溪镇","石堤镇","石耶镇","雅江镇","巴家乡","保安乡","岑溪乡","大溪乡","干川乡","膏田乡","官舟乡","海洋乡","里仁乡","妙泉乡","平马乡","宋农乡","溪口乡","孝溪乡","涌洞乡","中平乡","钟灵乡"],n:"秀山县"}]},{n:"河北",c:[{a:["路北区","路南区","迁安市","丰润区","古冶区","开平区","遵化市","丰南区","迁西县","滦南县","玉田县","曹妃甸区","乐亭县","滦县"],n:"唐山市"},{a:["沧县","泊头市","河间市","献县","肃宁县","青县","东光县","吴桥县","南皮县","盐山县","海兴县","孟村县","运河区","新华区","任丘市","黄骅市"],n:"沧州市"},{a:["三河市","广阳区","开发区","固安县","安次区","永清县","香河县","大城县","文安县","大厂县","霸州市"],n:"廊坊市"},{a:["冀州市","深州市","饶阳县","枣强县","桃城区","故城县","阜城县","安平县","武邑县","景县","武强县"],n:"衡水市"},{a:["藁城市","鹿泉市","正定县","新华区","桥西区","桥东区","裕华区","长安区","辛集市","晋州市","新乐市","平山县","井陉矿区","井陉县","栾城县","行唐县","灵寿县","高邑县","赵县","赞皇县","深泽县","无极县","元氏县"],n:"石家庄市"},{a:["丛台区","邯山区","复兴区","武安市","临漳县","永年县","邯郸县","峰峰矿区","曲周县","馆陶县","魏县","成安县","大名县","涉县","鸡泽县","邱县","广平县","肥乡县","磁县"],n:"邯郸市"},{a:["宁晋县","威县","桥西区","桥东区","邢台县","南宫市","沙河市","柏乡县","任县","清河县","隆尧县","临城县","广宗县","临西县","内丘县","平乡县","巨鹿县","新河县","南和县"],n:"邢台市"},{a:["涿州市","定州市","徐水县","高碑店市","新市区","北市区","南市区","安国市","安新县","满城县","清苑县","涞水县","阜平县","定兴县","唐县","高阳县","容城县","涞源县","望都县","易县","曲阳县","蠡县","顺平县","博野县","雄县"],n:"保定市"},{a:["怀安县","沽源县","宣化区","宣化县","康保县","张北县","阳原县","赤城县","崇礼县","尚义县","蔚县","涿鹿县","万全县","下花园区","桥西区","桥东区","怀来县"],n:"张家口市"},{a:["双滦区","鹰手营子矿区","隆化县","兴隆县","平泉县","滦平县","丰宁县","围场县","宽城县","双桥区","承德县"],n:"承德市"},{a:["卢龙县","青龙县","昌黎县","北戴河区","海港区","山海关区","抚宁县"],n:"秦皇岛市"}]},{n:"山西",c:[{a:["长治县","潞城市","郊区","襄垣县","屯留县","平顺县","黎城县","壶关县","长子县","武乡县","沁县","沁源县","城区"],n:"长治市"},{a:["小店区","迎泽区","晋源区","万柏林区","尖草坪区","杏花岭区","古交市","阳曲县","娄烦县","清徐县"],n:"太原市"},{a:["大同县","天镇县","灵丘县","阳高县","左云县","浑源县","广灵县","城区","新荣区","南郊区","矿区"],n:"大同市"},{a:["盂县","平定县","郊区","城区","矿区"],n:"阳泉市"},{a:["城区","高平市","阳城县","沁水县","陵川县","泽州县"],n:"晋城市"},{a:["平鲁区","山阴县","右玉县","应县","怀仁县","朔城区"],n:"朔州市"},{a:["介休市","昔阳县","祁县","左权县","寿阳县","太谷县","和顺县","灵石县","平遥县","榆社县","榆次区"],n:"晋中市"},{a:["原平市","代县","神池县","五寨县","五台县","偏关县","宁武县","静乐县","繁峙县","河曲县","保德县","定襄县","忻府区","岢岚县"],n:"忻州市"},{a:["离石区","孝义市","汾阳市","文水县","中阳县","兴县","临县","方山县","柳林县","岚县","交口县","交城县","石楼县"],n:"吕梁市"},{a:["曲沃县","侯马市","霍州市","汾西县","吉县","安泽县","浮山县","大宁县","古县","隰县","襄汾县","翼城县","永和县","乡宁县","洪洞县","蒲县","尧都区"],n:"临汾市"},{a:["盐湖区","河津市","永济市","新绛县","平陆县","垣曲县","绛县","稷山县","芮城县","夏县","临猗县","万荣县","闻喜县"],n:"运城市"}]},{n:"河南",c:[{a:["永城市","宁陵县","虞城县","民权县","夏邑县","柘城县","睢县","睢阳区","梁园区"],n:"商丘市"},{a:["项城市","商水县","淮阳县","太康县","鹿邑县","西华县","扶沟县","沈丘县","郸城县","川汇区","东新区","经济开发区"],n:"周口市"},{a:["确山县","新蔡县","上蔡县","泌阳县","西平县","遂平县","汝南县","平舆县","正阳县","驿城区"],n:"驻马店市"},{a:["潢川县","淮滨县","息县","新县","固始县","罗山县","光山县","商城县","平桥区","浉河区"],n:"信阳市"},{a:["二七区","中原区","郑东新区","管城区","金水区","经济开发区","高新技术开发区","新郑市","巩义市","荥阳市","中牟县","新密市","登封市","惠济区","上街区"],n:"郑州市"},{a:["金明区","龙亭区","顺河区","鼓楼区","禹王台区","通许县","开封县","杞县","兰考县","尉氏县"],n:"开封市"},{a:["涧西区","西工区","洛龙区","嵩县","偃师市","孟津县","汝阳县","伊川县","洛宁县","宜阳县","栾川县","新安县","伊滨区","吉利区","瀍河区","老城区"],n:"洛阳市"},{a:["湛河区","卫东区","新华区","汝州市","舞钢市","郏县","叶县","鲁山县","宝丰县","石龙区"],n:"平顶山市"},{a:["沁阳市","孟州市","修武县","温县","武陟县","博爱县","山阳区","解放区","马村区","中站区"],n:"焦作市"},{a:["淇滨区","浚县","淇县","鹤山区","山城区"],n:"鹤壁市"},{a:["牧野区","红旗区","卫滨区","卫辉市","辉县市","新乡县","获嘉县","原阳县","长垣县","延津县","封丘县","凤泉区"],n:"新乡市"},{a:["龙安区","殷都区","文峰区","开发区","北关区","林州市","安阳县","滑县","汤阴县","内黄县"],n:"安阳市"},{a:["濮阳县","南乐县","台前县","清丰县","范县","华龙区"],n:"濮阳市"},{a:["城区","五龙口镇","下冶镇","轵城镇","王屋镇","思礼镇","邵原镇","坡头镇","梨林镇","克井镇","大峪镇","承留镇"],n:"济源市"},{a:["魏都区","禹州市","长葛市","许昌县","鄢陵县","襄城县"],n:"许昌市"},{a:["郾城区","临颍县","召陵区","舞阳县","源汇区"],n:"漯河市"},{a:["渑池县","湖滨区","义马市","灵宝市","陕县","卢氏县"],n:"三门峡市"},{a:["社旗县","西峡县","卧龙区","宛城区","邓州市","桐柏县","方城县","淅川县","镇平县","唐河县","南召县","内乡县","新野县"],n:"南阳市"}]},{n:"辽宁",c:[{a:["苏家屯区","新民市","法库县","辽中县","康平县","皇姑区","铁西区","大东区","沈河区","东陵区","于洪区","和平区","浑南新区","沈北新区"],n:"沈阳市"},{a:["中山区","沙河口区","西岗区","甘井子区","高新园区","大连开发区","金州区","旅顺口区","普兰店市","瓦房店市","庄河市","长海县"],n:"大连市"},{a:["铁东区","立山区","台安县","海城市","岫岩县","铁西区","千山区"],n:"鞍山市"},{a:["望花区","东洲区","新抚区","顺城区","抚顺县","新宾县","清原县"],n:"抚顺市"},{a:["桓仁县","本溪县","平山区","溪湖区","明山区","南芬区"],n:"本溪市"},{a:["元宝区","振兴区","振安区","东港市","凤城市","宽甸县"],n:"丹东市"},{a:["凌河区","古塔区","太和区","义县","凌海市","北镇市","黑山县","经济技术开发区"],n:"锦州市"},{a:["龙港区","连山区","兴城市","绥中县","建昌县","南票区"],n:"葫芦岛市"},{a:["西市区","站前区","大石桥市","盖州市","老边区","鲅鱼圈区"],n:"营口市"},{a:["盘山县","大洼县","兴隆台区","双台子区"],n:"盘锦市"},{a:["阜新县","彰武县","海州区","太平区","细河区","清河门区","新邱区"],n:"阜新市"},{a:["辽阳县","白塔区","文圣区","灯塔市","太子河区","弓长岭区","宏伟区"],n:"辽阳市"},{a:["凌源市","北票市","喀喇沁左翼县","朝阳县","双塔区","建平县","龙城区"],n:"朝阳市"},{a:["银州区","清河区","开原市","铁岭县","西丰县","昌图县","调兵山市"],n:"铁岭市"}]},{n:"吉林",c:[{a:["德惠市","榆树市","九台市","农安县","朝阳区","南关区","宽城区","二道区","双阳区","绿园区","净月区","汽车产业开发区","高新技术开发区","经济技术开发区"],n:"长春市"},{a:["昌邑区","龙潭区","船营区","丰满区","舒兰市","桦甸市","蛟河市","磐石市","永吉县"],n:"吉林市"},{a:["铁东区","铁西区","公主岭市","双辽市","梨树县","伊通县"],n:"四平市"},{a:["东昌区","梅河口市","集安市","通化县","辉南县","柳河县","二道江区"],n:"通化市"},{a:["浑江区","临江市","江源区","靖宇县","抚松县","长白县"],n:"白山市"},{a:["宁江区","前郭县","乾安县","长岭县","扶余县"],n:"松原市"},{a:["大安市","洮南市","通榆县","镇赉县","洮北区"],n:"白城市"},{a:["延吉市","图们市","敦化市","珲春市","龙井市","和龙市","汪清县","安图县"],n:"延边州"},{a:["龙山区","西安区","东丰县","东辽县"],n:"辽源市"}]},{n:"黑龙江",c:[{a:["勃利县","桃山区","新兴区","茄子河区"],n:"七台河市"},{a:["北安市","五大连池市","逊克县","孙吴县","嫩江县","爱辉区"],n:"黑河市"},{a:["北林区","安达市","肇东市","海伦市","绥棱县","兰西县","明水县","青冈县","庆安县","望奎县"],n:"绥化市"},{a:["加格达奇区","松岭区","呼中区","呼玛县","塔河县","漠河县","新林区"],n:"大兴安岭地区"},{a:["阿城区","尚志市","双城市","五常市","方正县","宾县","依兰县","巴彦县","通河县","木兰县","延寿县","呼兰区","松北区","道里区","南岗区","道外区","香坊区","平房区"],n:"哈尔滨市"},{a:["建华区","龙沙区","铁锋区","梅里斯区","昂昂溪区","富拉尔基区","碾子山区","讷河市","富裕县","拜泉县","甘南县","依安县","克山县","龙江县","克东县","泰来县"],n:"齐齐哈尔市"},{a:["兴山区","向阳区","工农区","南山区","兴安区","东山区","萝北县","绥滨县"],n:"鹤岗市"},{a:["尖山区","岭东区","四方台区","宝山区","集贤县","宝清县","友谊县","饶河县"],n:"双鸭山市"},{a:["恒山区","滴道区","梨树区","城子河区","麻山区","鸡冠区","密山市","虎林市","鸡东县"],n:"鸡西市"},{a:["萨尔图区","龙凤区","让胡路区","红岗区","大同区","林甸县","肇州县","肇源县","杜尔伯特县"],n:"大庆市"},{a:["伊春区","南岔区","友好区","西林区","翠峦区","新青区","美溪区","金山屯区","五营区","乌马河区","汤旺河区","带岭区","乌伊岭区","红星区","上甘岭区","铁力市","嘉荫县"],n:"伊春市"},{a:["爱民区","东安区","阳明区","西安区","绥芬河市","海林市","宁安市","穆棱市","林口县","东宁县"],n:"牡丹江市"},{a:["桦川县","抚远县","桦南县","汤原县","前进区","向阳区","东风区","郊区","同江市","富锦市"],n:"佳木斯市"}]},{n:"内蒙古",c:[{a:["玉泉区","赛罕区","土默特左旗","和林格尔县","武川县","托克托县","清水河县","回民区","新城区"],n:"呼和浩特市"},{a:["固阳县","土默特右旗","达茂联合旗","东河区","九原区","青山区","昆都仑区","石拐区","白云矿区"],n:"包头市"},{a:["海勃湾区","海南区","乌达区"],n:"乌海市"},{a:["宁城县","敖汉旗","喀喇沁旗","翁牛特旗","巴林右旗","林西县","克什克腾旗","巴林左旗","阿鲁科尔沁旗","元宝山区","红山区","松山区"],n:"赤峰市"},{a:["集宁区","丰镇市","兴和县","卓资县","商都县","凉城县","化德县","察哈尔右翼前旗","察哈尔右翼中旗","察哈尔右翼后旗","四子王旗"],n:"乌兰察布市"},{a:["锡林浩特市","二连浩特市","多伦县","阿巴嘎旗","西乌珠穆沁旗","东乌珠穆沁旗","苏尼特右旗","苏尼特左旗","太仆寺旗","正镶白旗","正蓝旗","镶黄旗"],n:"锡林郭勒盟"},{a:["海拉尔区","满洲里市","牙克石市","扎兰屯市","根河市","额尔古纳市","陈巴尔虎旗","阿荣旗","新巴尔虎左旗","新巴尔虎右旗","鄂伦春旗","莫力达瓦旗","鄂温克族旗"],n:"呼伦贝尔市"},{a:["东胜区","准格尔旗","伊金霍洛旗","乌审旗","杭锦旗","鄂托克旗","鄂托克前旗","达拉特旗","康巴什新区"],n:"鄂尔多斯市"},{a:["临河区","五原县","磴口县","杭锦后旗","乌拉特中旗","乌拉特后旗 ","乌拉特前旗"],n:"巴彦淖尔市"},{a:["阿拉善右旗","阿拉善左旗","额济纳旗"],n:"阿拉善盟"},{a:["乌兰浩特市","阿尔山市","突泉县","扎赉特旗","科尔沁右翼前旗","科尔沁右翼中旗"],n:"兴安盟"},{a:["科尔沁区","霍林郭勒市","开鲁县","库伦旗","奈曼旗","扎鲁特旗","科尔沁左翼中旗","科尔沁左翼后旗"],n:"通辽市"}]},{n:"江苏",c:[{a:["玄武区","秦淮区","建邺区","鼓楼区","栖霞区","江宁区","六合区","雨花台区","高淳区","溧水区","浦口区"],n:"南京市"},{a:["贾汪区","金山桥开发区","铜山经济技术开发区","八段工业园区","鼓楼区","邳州市","泉山区","新沂市","云龙区","铜山区","睢宁县","沛县","丰县"],n:"徐州市"},{a:["海州区","赣榆区","连云区","灌云县","东海县","灌南县"],n:"连云港市"},{a:["经济开发区","楚州区","洪泽县","金湖县","盱眙县","清河区","淮阴区","清浦区","涟水县"],n:"淮安市"},{a:["宿城区","沭阳县","泗阳县","宿豫区","泗洪县","宿迁经济开发区"],n:"宿迁市"},{a:["射阳县","亭湖区","盐都区","东台市","大丰区","建湖县","响水县","阜宁县","滨海县"],n:"盐城市"},{a:["广陵区","邗江区","宝应县","仪征市","高邮市","江都区"],n:"扬州市"},{a:["海陵区","高港区","泰兴市","靖江市","兴化市","姜堰区"],n:"泰州市"},{a:["港闸区","崇川区","通州区","南通经济技术开发区","如东县","海安县","如皋市","海门市","启东市"],n:"南通市"},{a:["润州区","京口区","丹徒区","镇江新区","丹阳市","句容市","扬中市","丹徒新区"],n:"镇江市"},{a:["钟楼区","天宁区","武进区","新北区","金坛区","溧阳市"],n:"常州市"},{a:["崇安区","南长区","北塘区","锡山区","惠山区","新区","江阴市","宜兴市","滨湖区"],n:"无锡市"},{a:["常熟市","张家港市","太仓市","相城区","金阊区","虎丘区","平江区","沧浪区","工业园区","高新区","吴江区","吴中区","昆山市"],n:"苏州市"}]},{n:"山东",c:[{a:["河口区","广饶县","利津县","垦利区","东营区"],n:"东营市"},{a:["潍城区","奎文区","高新区","寒亭区","寿光市","青州市","诸城市","安丘市","高密市","昌邑市","昌乐县","临朐县","坊子区"],n:"潍坊市"},{a:["莱山区","芝罘区","开发区","福山区","牟平区","龙口市","莱州市","莱阳市","招远市","蓬莱市","栖霞市","海阳市","长岛县"],n:"烟台市"},{a:["荣成市","文登市","乳山市","环翠区"],n:"威海市"},{a:["莱城区","钢城区"],n:"莱芜市"},{a:["德城区","临邑县","齐河县","乐陵市","禹城市","陵县","宁津县","武城县","庆云县","平原县","夏津县"],n:"德州市"},{a:["兰陵县","兰山区","河东区","沂南县","沂水县","费县","平邑县","蒙阴县","临沭县","莒南县","郯城县","罗庄区"],n:"临沂市"},{a:["东昌府区","临清市","阳谷县","茌平县","莘县","东阿县","冠县","高唐县"],n:"聊城市"},{a:["北海新区","滨城区","邹平县","沾化县","惠民县","博兴县","阳信县","无棣县"],n:"滨州市"},{a:["牡丹区","单县","曹县","定陶县","巨野县","成武县","东明县","郓城县","鄄城县"],n:"菏泽市"},{a:["岚山区","新市区","五莲县","东港区","莒县"],n:"日照市"},{a:["梁山县","兖州市","微山县","汶上县","泗水县","嘉祥县","鱼台县","金乡县","邹城市","市中区","曲阜市","高新区","任城区"],n:"济宁市"},{a:["东平县","岱岳区","泰山区","肥城市","新泰市","宁阳县"],n:"泰安市"},{a:["高新区","长清区","历城区","天桥区","槐荫区","历下区","市中区","章丘市","平阴县","济阳县","商河县"],n:"济南市"},{a:["四方区","市北区","市南区","黄岛区","李沧区","即墨市","城阳区","崂山区","胶州市","平度市","莱西市"],n:"青岛市"},{a:["临淄区","张店区","周村区","淄川区","博山区","高青县","沂源县","桓台县"],n:"淄博市"},{a:["滕州市","山亭区","台儿庄区","峄城区","薛城区","市中区"],n:"枣庄市"}]},{n:"安徽",c:[{a:["铜官区","枞阳县","郊区","义安区"],n:"铜陵市"},{a:["包河区","蜀山区","瑶海区","庐阳区","滨湖新区","经济技术开发区","高新技术开发区","新站综合开发试验区","肥西县","政务文化新区","巢湖市","长丰县","肥东县","庐江县","北城新区"],n:"合肥市"},{a:["淮南高新技术开发区","田家庵区","大通区","谢家集区","八公山区","寿县","凤台县","潘集区"],n:"淮南市"},{a:["杜集区","烈山区","濉溪县","相山区"],n:"淮北市"},{a:["镜湖区","弋江区","无为县","芜湖县","繁昌县","南陵县","鸠江区","三山区"],n:"芜湖市"},{a:["蚌山区","怀远县","固镇县","五河县","淮上区","龙子湖区","禹会区"],n:"蚌埠市"},{a:["博望区","花山区","雨山区","当涂县","含山县","和县"],n:"马鞍山市"},{a:["桐城市","宿松县","太湖县","怀宁县","岳西县","望江县","潜山县","大观区","宜秀区","迎江区"],n:"安庆市"},{a:["徽州区","屯溪区","休宁县","歙县","黟县","祁门县","黄山区"],n:"黄山市"},{a:["琅琊区","天长市","明光市","全椒县","来安县","南谯区","定远县","凤阳县"],n:"滁州市"},{a:["经济开发区","界首市","太和县","阜南县","颍上县","临泉县","颍泉区","颍州区","颍东区"],n:"阜阳市"},{a:["利辛县","蒙城县","涡阳县","谯城区"],n:"亳州市"},{a:["旌德县","宁国市","郎溪县","广德县","绩溪县","泾县","宣州区"],n:"宣城市"},{a:["经济开发区","埇桥区","灵璧县","泗县","萧县","砀山县"],n:"宿州市"},{a:["贵池区","东至县","石台县","青阳县"],n:"池州市"},{a:["霍山县","金寨县","霍邱县","舒城县","金安区","裕安区"],n:"六安市"}]},{n:"浙江",c:[{a:["龙泉市","缙云县","遂昌县","松阳县","景宁县","云和县","青田县","莲都区","庆元县"],n:"丽水市"},{a:["临海市","三门县","天台县","仙居县","黄岩区","椒江区","路桥区","温岭市","玉环县"],n:"台州市"},{a:["岱山县","嵊泗县","普陀区","定海区"],n:"舟山市"},{a:["海曙区","江东区","高新科技开发区","慈溪市","北仑区","镇海区","鄞州区","江北区","余姚市","奉化市","宁海县","象山县"],n:"宁波市"},{a:["上城区","下城区","拱墅区","西湖区","江干区","下沙区","余杭区","萧山区","滨江区","临安市","富阳区","桐庐县","建德市","淳安县"],n:"杭州市"},{a:["龙湾区","茶山高教园区","瑞安市","乐清市","鹿城区","瓯海区","永嘉县","文成县","平阳县","泰顺县","洞头区","苍南县"],n:"温州市"},{a:["桐乡市","平湖市","嘉善县","南湖区","秀洲区","海宁市","海盐县"],n:"嘉兴市"},{a:["南浔区","吴兴区","长兴县","德清县","安吉县"],n:"湖州市"},{a:["柯桥区","越城区","诸暨市","上虞区","嵊州市","新昌县"],n:"绍兴市"},{a:["金东区","婺城区","兰溪市","武义县","浦江县","磐安县","义乌市","永康市","东阳市"],n:"金华市"},{a:["柯城区","衢江区","江山市","常山县","开化县","龙游县"],n:"衢州市"}]},{n:"福建",c:[{a:["台江区","鼓楼区","晋安区","仓山区","马尾区","福清市","闽侯县","长乐市","平潭县","连江县","罗源县","永泰县","闽清县"],n:"福州市"},{a:["思明区","湖里区","翔安区","海沧区","集美区","同安区"],n:"厦门市"},{a:["永安市","明溪县","将乐县","大田县","宁化县","建宁县","沙县","尤溪县","清流县","泰宁县","梅列区","三元区"],n:"三明市"},{a:["仙游县","城厢区","荔城区","秀屿区","涵江区"],n:"莆田市"},{a:["泉港区","石狮市","南安市","惠安县","安溪县","德化县","永春县","金门县","洛江区","鲤城区","丰泽区","晋江市"],n:"泉州市"},{a:["芗城区","龙文区","龙海市","平和县","南靖县","诏安县","漳浦县","华安县","云霄县","东山县","长泰县"],n:"漳州市"},{a:["建瓯市","邵武市","武夷山市","建阳市","松溪县","顺昌县","浦城县","政和县","光泽县","延平区"],n:"南平市"},{a:["新罗区","漳平市","长汀县","武平县","永定县","上杭县","连城县"],n:"龙岩市"},{a:["蕉城区","东侨开发区","福安市","福鼎市","寿宁县","霞浦县","柘荣县","屏南县","古田县","周宁县"],n:"宁德市"}]},{n:"湖北",c:[{a:["松柏镇","阳日镇","木鱼镇","红坪镇","新华镇","宋洛乡","九湖乡","下谷坪乡"],n:"神农架林区"},{a:["硚口区","武昌区","武汉经济技术开发区","江岸区","江汉区","蔡甸区","江夏区","新洲区","黄陂区","汉阳区","青山区","洪山区","汉南区","东西湖区"],n:"武汉市"},{a:["园林","杨市","周矶","广华","泰丰","竹根滩镇","高石碑镇","积玉口镇","渔洋镇","王场镇","熊口镇","老新镇","浩口镇","张金镇","龙湾镇","江汉石油管理局","潜江经济开发区","西大垸管理区","运粮湖管理区","周矶管理区","后湖管理区","熊口管理区","总口管理区","高场原种场","浩口原种场"],n:"潜江市"},{a:["黄石港区","下陆区","西塞山区","铁山区","大冶市","阳新县","经济技术开发区"],n:"黄石市"},{a:["老河口市","枣阳市","宜城市","南漳县","保康县","谷城县","樊城区","襄城区","襄州区"],n:"襄阳市"},{a:["丹江口市","房县","竹山县","竹溪县","郧县","郧西县","茅箭区","张湾区"],n:"十堰市"},{a:["沙市区","荆州区","江陵县","洪湖市","石首市","松滋市","监利县","公安县"],n:"荆州市"},{a:["伍家岗区","西陵区","宜都市","猇亭区","点军区","当阳市","枝江市","夷陵区","秭归县","兴山县","远安县","五峰土家族自治县","长阳土家族自治县"],n:"宜昌市"},{a:["汉川市","云梦县","大悟县","孝昌县","孝南区","应城市","安陆市"],n:"孝感市"},{a:["黄州区","蕲春县","麻城市","武穴市","浠水县","红安县","罗田县","黄梅县","英山县","团风县"],n:"黄冈市"},{a:["侨乡街道开发区","竟陵街道","杨林街道","佛子山镇","多宝镇","拖市镇","张港镇","蒋场镇","汪场镇","渔薪镇","黄潭镇","岳口镇","横林镇","彭市镇","麻洋镇","多祥镇","干驿镇","马湾镇","卢市镇","小板镇","九真镇","皂市镇","胡市镇","石河镇","净潭乡","蒋湖农场","白茅湖农场","沉湖管委会"],n:"天门市"},{a:["城区","郑场镇","毛嘴镇","豆河镇","三伏潭镇","胡场镇","长埫口镇","西流河镇","沙湖镇","杨林尾镇","彭场镇","张沟镇","郭河镇","沔城镇","通海口镇","陈场镇","工业园区","九合垸原种场","沙湖原种场","排湖渔场","五湖渔场","赵西垸林场","刘家垸林场","畜禽良种场"],n:"仙桃市"},{a:["咸安区","赤壁市","嘉鱼县","通山县","崇阳县","通城县"],n:"咸宁市"},{a:["恩施市","利川市","建始县","来凤县","巴东县","鹤峰县","宣恩县","咸丰县"],n:"恩施州"},{a:["梁子湖区","华容区","鄂城区"],n:"鄂州市"},{a:["东宝区","掇刀区","钟祥市","京山县","沙洋县"],n:"荆门市"},{a:["曾都区","广水市","随县"],n:"随州市"}]},{n:"湖南",c:[{a:["慈利县","桑植县","武陵源区","永定区"],n:"张家界市"},{a:["资兴市","宜章县","安仁县","汝城县","嘉禾县","临武县","桂东县","永兴县","桂阳县","北湖区","苏仙区"],n:"郴州市"},{a:["南县","桃江县","安化县","赫山区","资阳区","沅江市"],n:"益阳市"},{a:["冷水滩区","祁阳县","双牌县","道县","江永县","江华县","宁远县","新田县","蓝山县","东安县","零陵区"],n:"永州市"},{a:["鹤城区","洪江市","会同县","溆浦县","中方县","辰溪县","靖州县","通道县","芷江县","新晃县","麻阳县","沅陵县"],n:"怀化市"},{a:["娄星区","冷水江市","涟源市","新化县","双峰县"],n:"娄底市"},{a:["吉首市","古丈县","龙山县","永顺县","泸溪县","凤凰县","花垣县","保靖县"],n:"湘西州"},{a:["芙蓉区","岳麓区","雨花区","开福区","天心区","浏阳市","长沙县","宁乡县","望城区"],n:"长沙市"},{a:["天元区","石峰区","芦淞区","荷塘区","醴陵市","株洲县","攸县","茶陵县","炎陵县"],n:"株洲市"},{a:["雨湖区","岳塘区","湘乡市","湘潭县","韶山市"],n:"湘潭市"},{a:["蒸湘区","石鼓区","珠晖区","雁峰区","常宁市","衡阳县","耒阳市","衡东县","衡南县","衡山县","祁东县","南岳区"],n:"衡阳市"},{a:["大祥区","双清区","北塔区","武冈市","邵东县","洞口县","新邵县","绥宁县","新宁县","邵阳县","隆回县","城步县"],n:"邵阳市"},{a:["岳阳楼区","君山区","云溪区","临湘市","汨罗市","岳阳县","湘阴县","华容县","平江县"],n:"岳阳市"},{a:["汉寿县","石门县","安乡县","鼎城区","武陵区","津市市","澧县","临澧县","桃源县"],n:"常德市"}]},{n:"广东",c:[{a:["天河区","海珠区","荔湾区","越秀区","番禺区","花都区","萝岗区","白云区","南沙区","黄埔区","增城区","从化区","广州大学城"],n:"广州市"},{a:["罗湖区","福田区","南山区","宝安区","光明新区","龙岗区","坪山新区","盐田区","龙华新区","大鹏新区"],n:"深圳市"},{a:["斗门区","金湾区","香洲区"],n:"珠海市"},{a:["龙湖区","金平区","澄海区","潮阳区","潮南区","濠江区","南澳县"],n:"汕头市"},{a:["武江区","浈江区","南雄市","乐昌市","仁化县","始兴县","翁源县","新丰县","乳源瑶族自治县","曲江区"],n:"韶关市"},{a:["和平县","龙川县","紫金县","连平县","源城区","东源县"],n:"河源市"},{a:["梅江区","兴宁市","梅县","蕉岭县","大埔县","丰顺县","五华县","平远县"],n:"梅州市"},{a:["惠阳区","大亚湾区","惠城区","惠东县","博罗县","龙门县"],n:"惠州市"},{a:["城区","陆丰市","陆河县","海丰县"],n:"汕尾市"},{a:["长安镇","莞城区","南城区","寮步镇","大岭山镇","横沥镇","常平镇","厚街镇","万江区","樟木头镇","塘厦镇","凤岗镇","大朗镇","东坑镇","清溪镇","企石镇","茶山镇","东城区","虎门镇","黄江镇","石排镇","道滘镇","沙田镇","高埗镇","石龙镇","石碣镇","洪梅镇","麻涌镇","松山湖","桥头镇","望牛墩镇","中堂镇","谢岗镇"],n:"东莞市"},{a:["城区","火炬开发区","小榄镇","古镇","三乡镇","民众镇","东凤镇","板芙镇","神湾镇","横栏镇","港口镇","三角镇","大涌镇","南头镇","沙溪镇","坦洲镇","黄圃镇","五桂山镇","南朗镇","沙朗镇","阜沙镇","东升镇"],n:"中山市"},{a:["台山市","新会区","鹤山市","江海区","蓬江区","开平市","恩平市"],n:"江门市"},{a:["顺德区","禅城区","高明区","三水区","南海区"],n:"佛山市"},{a:["江城区","阳东县","阳春市","阳西县"],n:"阳江市"},{a:["赤坎区","霞山区","经济技术开发区","麻章区","遂溪县","廉江市","坡头区","雷州市","吴川市","徐闻县"],n:"湛江市"},{a:["茂南区","电白县","高州市","化州市","茂港区","信宜市"],n:"茂名市"},{a:["端州区","四会市","高要市","广宁县","德庆县","怀集县","封开县","鼎湖区"],n:"肇庆市"},{a:["云城区","罗定市","云安县","新兴县","郁南县"],n:"云浮市"},{a:["连州市","佛冈县","阳山县","清新县","连山县","连南县","清城区","英德市"],n:"清远市"},{a:["湘桥区","枫溪区","潮安区","饶平县"],n:"潮州市"},{a:["东山区","普宁市","榕城区","揭东县","揭西县","惠来县"],n:"揭阳市"}]},{n:"广西",c:[{a:["八步区","钟山县","昭平县","富川县","平桂管理区"],n:"贺州市"},{a:["右江区","平果县","乐业县","田阳县","西林县","田林县","德保县","靖西县","田东县","那坡县","隆林县","凌云县"],n:"百色市"},{a:["宜州市","天峨县","凤山县","南丹县","东兰县","巴马县","环江县","大化县","都安县","金城江区","罗城县"],n:"河池市"},{a:["江州区","凭祥市","扶绥县","大新县","天等县","宁明县","龙州县"],n:"崇左市"},{a:["良庆区","江南区","兴宁区","青秀区","西乡塘区","横县","上林县","隆安县","马山县","武鸣区","邕宁区","宾阳县"],n:"南宁市"},{a:["融安县","三江县","融水县","鱼峰区","城中区","柳南区","柳北区","柳江县","柳城县","鹿寨县"],n:"柳州市"},{a:["象山区","恭城县","秀峰区","叠彩区","七星区","雁山区","阳朔县","临桂县","灵川县","全州县","平乐县","兴安县","灌阳县","荔浦县","资源县","永福县","龙胜县"],n:"桂林市"},{a:["岑溪市","苍梧县","藤县","蒙山县","万秀区","蝶山区","长洲区"],n:"梧州市"},{a:["海城区","银海区","合浦县","铁山港区"],n:"北海市"},{a:["防城区","港口区","东兴市","上思县"],n:"防城港市"},{a:["钦南区","钦北区","浦北县","灵山县"],n:"钦州市"},{a:["港南区","港北区","桂平市","平南县","覃塘区"],n:"贵港市"},{a:["玉州区","北流市","容县","博白县","陆川县","兴业县"],n:"玉林市"},{a:["兴宾区","合山市","忻城县","武宣县","象州县","金秀县"],n:"来宾市"}]},{n:"江西",c:[{a:["青云谱区","西湖区","东湖区","昌北区","南昌县","进贤县","安义县","青山湖区","红谷滩新区","新建县","湾里区","高新区"],n:"南昌市"},{a:["珠山区","乐平市","浮梁县","昌江区"],n:"景德镇市"},{a:["湘东区","莲花县","上栗县","芦溪县","安源区"],n:"萍乡市"},{a:["分宜县","渝水区"],n:"新余市"},{a:["浔阳区","八里湖新区","经济技术开发区","修水县","瑞昌市","彭泽县","湖口县","共青城市","九江县","庐山区","德安县","都昌县","永修县","武宁县","星子县","庐山风景名胜区"],n:"九江市"},{a:["龙虎山风景旅游区","余江县","贵溪市","月湖区"],n:"鹰潭市"},{a:["德兴市","广丰县","鄱阳县","婺源县","余干县","横峰县","弋阳县","铅山县","玉山县","万年县","信州区","上饶县"],n:"上饶市"},{a:["丰城市","樟树市","袁州区","高安市","铜鼓县","靖安县","宜丰县","奉新县","万载县","上高县"],n:"宜春市"},{a:["南丰县","乐安县","金溪县","南城县","东乡县","资溪县","宜黄县","崇仁县","黎川县","广昌县","临川区"],n:"抚州市"},{a:["青原区","吉州区","井冈山市","吉安县","永丰县","永新县","新干县","泰和县","峡江县","遂川县","安福县","吉水县","万安县"],n:"吉安市"},{a:["章贡区","南康市","瑞金市","石城县","安远县","赣县","宁都县","寻乌县","兴国县","定南县","上犹县","于都县","龙南县","崇义县","大余县","信丰县","全南县","会昌县"],n:"赣州市"}]},{n:"四川",c:[{a:["仁寿县","彭山区","洪雅县","丹棱县","青神县","东坡区"],n:"眉山市"},{a:["雁江区","安岳县","乐至县","简阳市"],n:"资阳市"},{a:["马尔康县","九寨沟县","红原县","阿坝县","理县","若尔盖县","金川县","小金县","黑水县","松潘县","壤塘县","茂县","汶川县"],n:"阿坝州"},{a:["康定县","泸定县","九龙县","丹巴县","道孚县","炉霍县","色达县","甘孜县","新龙县","白玉县","德格县","石渠县","雅江县","理塘县","巴塘县","稻城县","乡城县","得荣县"],n:"甘孜州"},{a:["美姑县","昭觉县","会理县","会东县","普格县","宁南县","德昌县","冕宁县","盐源县","金阳县","布拖县","雷波县","越西县","喜德县","甘洛县","木里县","西昌市"],n:"凉山州"},{a:["武侯区","金牛区","青羊区","成华区","高新区","锦江区","郫县","双流县","高新西区","龙泉驿区","新都区","温江区","都江堰市","彭州市","青白江区","崇州市","金堂县","新津县","邛崃市","大邑县","蒲江县"],n:"成都市"},{a:["自流井区","沿滩区","荣县","富顺县","大安区","贡井区"],n:"自贡市"},{a:["仁和区","西区","东区","米易县","盐边县"],n:"攀枝花市"},{a:["纳溪区","江阳区","龙马潭区","泸县","合江县","叙永县","古蔺县"],n:"泸州市"},{a:["江油市","涪城区","游仙区","高新区","经开区","盐亭县","三台县","平武县","北川县","安县","梓潼县"],n:"绵阳市"},{a:["广汉市","什邡市","旌阳区","绵竹市","罗江县","中江县"],n:"德阳市"},{a:["昭化区","朝天区","利州区","青川县","旺苍县","剑阁县","苍溪县"],n:"广元市"},{a:["船山区","射洪县","蓬溪县","大英县","安居区"],n:"遂宁市"},{a:["东兴区","资中县","隆昌县","威远县","市中区"],n:"内江市"},{a:["市中区","峨眉山市","五通桥区","沙湾区","金口河区","夹江县","井研县","犍为县","沐川县","峨边县","马边县"],n:"乐山市"},{a:["宜宾县","南溪区","江安县","长宁县","兴文县","珙县","翠屏区","高县","屏山县","筠连县"],n:"宜宾市"},{a:["前锋区","岳池县","武胜县","邻水县","广安区","华蓥市"],n:"广安市"},{a:["顺庆区","高坪区","嘉陵区","西充县","阆中市","南部县","仪陇县","蓬安县","营山县"],n:"南充市"},{a:["通川区","达川区","大竹县","渠县","万源市","宣汉县","开江县"],n:"达州市"},{a:["巴州区","恩阳区","南江县","平昌县","通江县"],n:"巴中市"},{a:["芦山县","石棉县","名山区","天全县","荥经县","汉源县","宝兴县","雨城区"],n:"雅安市"}]},{n:"海南",c:[{a:["嘉积镇","万泉镇","石壁镇","中原镇","博鳌镇","阳江镇","龙江镇","潭门镇","塔洋镇","长坡镇","大路镇","会山镇","彬村山华侨农场","东太农场","东红农场","东升农场","南俸农场"],n:"琼海市"},{a:["兴隆镇","南林农场","万城镇","龙滚镇","和乐镇","后安镇","大茂镇","东澳镇","礼纪镇","长丰镇","山根镇","北大镇","南桥镇","三更罗镇","六连林场","东兴农场","东和农场","新中农场","兴隆华侨农场"],n:"万宁市"},{a:["秀英区","龙华区","琼山区","美兰区"],n:"海口市"},{a:["八所镇","东河镇","大田镇","感城镇","板桥镇","三家镇","四更镇","新龙镇","天安乡","江边乡","广坝农场","东方华侨农场"],n:"东方市"},{a:["崖城镇","海棠湾镇","吉阳镇","凤凰镇","天涯镇","育才镇","河西区","河东区","南田农场","南新农场","南岛农场","立才农场","南滨农场"],n:"三亚市"},{a:["文城镇","重兴镇","蓬莱镇","会文镇","东路镇","潭牛镇","东阁镇","文教镇","东郊镇","龙楼镇","昌洒镇","翁田镇","抱罗镇","冯坡镇","锦山镇","铺前镇","公坡镇","迈号镇","清谰镇","南阳镇","新桥镇","头苑镇","宝芳乡","龙马乡","湖山乡","东路农场","南阳农场","罗豆农场","橡胶研究所"],n:"文昌市"},{a:["通什镇","南圣镇","毛阳镇","番阳镇","畅好乡","毛道乡","水满乡","畅好农场"],n:"五指山市"},{a:["城区","临城镇","波莲镇","东英镇","博厚镇","皇桐镇","多文镇","和舍镇","南宝镇","新盈镇","调楼镇","加来镇","红华农场","加来农场"],n:"临高县"},{a:["城区","金江镇","老城镇","瑞溪镇","永发镇","加乐镇","文儒镇","中兴镇","仁兴镇","福山镇","桥头镇","大丰镇","红光农场","西达农场","金安农场"],n:"澄迈县"},{a:["黄竹镇","城区","定城镇","新竹镇","龙湖镇","雷鸣镇","龙门镇","龙河镇","岭口镇","翰林镇","富文镇","金鸡岭农场","中瑞农场","南海农场"],n:"定安县"},{a:["县城内","屯城镇","新兴镇","枫木镇","乌坡镇","南吕镇","南坤镇","中建农场","坡心镇","中坤农场","西昌镇"],n:"屯昌县"},{a:["红林农场","城区","石碌镇","叉河镇","十月田镇","乌烈镇","昌化镇","海尾镇","七叉镇","王下乡","海南矿业公司","霸王岭林场"],n:"昌江县"},{a:["南开乡","阜龙乡","青松乡","金波乡","荣邦乡","城区","白沙农场","牙叉镇","龙江农场","七坊镇","邦溪农场","邦溪镇","打安镇","细水乡","元门乡"],n:"白沙县"},{a:["吊罗山乡","黎母山林业公司","阳江农场","乌石农场","加钗农场","长征农场","营根镇","湾岭镇","黎母山镇","和平镇","长征镇","红毛镇","中平镇","上安乡","什运乡","城区"],n:"琼中县"},{a:["东华镇","南平镇","吊罗山林业公司","岭门农场","南平农场","椰林镇","光坡镇","三才镇","英州镇","隆广镇","文罗镇","本号镇","新村镇","黎安镇","提蒙乡","群英乡","城区"],n:"陵水县"},{a:["保亭研究所","新星农场","金江农场","三道农场","保城镇","什玲镇","加茂镇","响水镇","新政镇","三道镇","六弓乡","南林乡","毛感乡"],n:"保亭县"},{a:["尖峰岭林业公司","莺歌海盐场","山荣农场","乐光农场","抱由镇","保国农场","万冲镇","大安镇","志仲镇","千家镇","九所镇","利国镇","黄流镇","佛罗镇","尖峰镇","莺歌海镇","城区"],n:"乐东县"},{a:["中沙群岛","西沙群岛","南沙群岛"],n:"三沙市"},{a:["热作学院","那大镇","富克镇","和庆镇","南丰镇","大成镇","雅星镇","兰洋镇","光村镇","木棠镇","海头镇","峨蔓镇","三都镇","王五镇","白马井镇","中和镇","排浦镇","东成镇","新州镇","洋浦经济开发区","西培农场","西联农场","蓝洋农场","八一农场","西华农场","西庆农场","西流农场","新盈农场","龙山农场","红岭农场"],n:"儋州市"}]},{n:"贵州",c:[{a:["南明区","云岩区","花溪区","小河区","白云区","清镇市","开阳县","修文县","息烽县","乌当区","观山湖区"],n:"贵阳市"},{a:["盘县","六枝特区","水城县","钟山区"],n:"六盘水市"},{a:["红花岗区","汇川区","赤水市","仁怀市","遵义县","桐梓县","绥阳县","习水县","凤冈县","正安县","湄潭县","余庆县","道真县","务川县"], +n:"遵义市"},{a:["碧江区","德江县","江口县","思南县","万山区","石阡县","玉屏侗族自治县","松桃苗族自治县","印江土家族苗族自治县","沿河土家族自治县"],n:"铜仁市"},{a:["七星关区","黔西县","大方县","织金县","金沙县","赫章县","纳雍县","威宁彝族回族苗族自治县"],n:"毕节市"},{a:["西秀区","普定县","平坝县","镇宁布依族苗族自治县","关岭布依族苗族自治县","紫云苗族布依族自治县"],n:"安顺市"},{a:["兴义市","望谟县","兴仁县","普安县","册亨县","晴隆县","贞丰县","安龙县"],n:"黔西南州"},{a:["凯里市","施秉市","从江县","锦屏县","镇远县","麻江县","台江县","天柱县","黄平县","榕江县","剑河县","三穗县","雷山县","黎平县","岑巩县","丹寨县"],n:"黔东南州"},{a:["都匀市","福泉市","贵定县","惠水县","罗甸县","瓮安县","荔波县","龙里县","平塘县","长顺县","独山县","三都县"],n:"黔南州"}]},{n:"云南",c:[{a:["玉龙县","华坪县","永胜县","宁蒗县","古城区"],n:"丽江市"},{a:["文山市","麻栗坡县","砚山县","广南县","马关县","富宁县","西畴县","丘北县"],n:"文山州"},{a:["香格里拉县","德钦县","维西县"],n:"迪庆州"},{a:["个旧市","开远市","弥勒县","红河县","绿春县","蒙自市","泸西县","建水县","元阳县","石屏县","金平县","屏边县","河口县"],n:"红河州"},{a:["景洪市","勐海县","勐腊县"],n:"西双版纳州"},{a:["元谋县","南华县","牟定县","武定县","大姚县","双柏县","禄丰县","永仁县","姚安县","楚雄市"],n:"楚雄州"},{a:["剑川县","弥渡县","云龙县","洱源县","鹤庆县","宾川县","祥云县","永平县","巍山县","漾濞县","南涧县","大理市"],n:"大理州"},{a:["芒市","瑞丽市","盈江县","梁河县","陇川县"],n:"德宏州"},{a:["泸水县","福贡县","兰坪县","贡山县"],n:"怒江州"},{a:["盘龙区","五华区","西山区","官渡区","呈贡区","东川区","安宁市","富民县","嵩明县","晋宁县","宜良县","禄劝县","石林县","寻甸县"],n:"昆明市"},{a:["麒麟区","马龙县","宣威市","富源县","会泽县","陆良县","师宗县","罗平县","沾益县"],n:"曲靖市"},{a:["红塔区","华宁县","澄江县","易门县","通海县","江川县","元江县","新平县","峨山县"],n:"玉溪市"},{a:["鲁甸县","绥江县","昭阳区","镇雄县","永善县","大关县","盐津县","彝良县","水富县","巧家县","威信县"],n:"昭通市"},{a:["孟连县","思茅区","宁洱县","景东县","镇沅县","景谷县","墨江县","澜沧县","西盟县","江城县"],n:"普洱市"},{a:["双江县","沧源县","临翔区","镇康县","凤庆县","云县","永德县","耿马县"],n:"临沧市"},{a:["隆阳区","施甸县","昌宁县","龙陵县","腾冲县"],n:"保山市"}]},{n:"西藏",c:[{a:["双湖县","索县","那曲县","嘉黎县","比如县","聂荣县","安多县","申扎县","班戈县","巴青县","尼玛县"],n:"那曲地区"},{a:["贡嘎县","扎囊县","乃东县","桑日县","琼结县","曲松县","措美县","洛扎县","加查县","隆子县","错那县","浪卡子县"],n:"山南地区"},{a:["昌都县","江达县","贡觉县","类乌齐县","丁青县","察雅县","八宿县","左贡县","芒康县","洛隆县","边坝县"],n:"昌都地区"},{a:["聂拉木县","昂仁县","日喀则市","南木林县","江孜县","定日县","萨迦县 ","拉孜县","谢通门县","白朗县","仁布县","康马县","定结县","仲巴县","亚东县","吉隆县","萨嘎县","岗巴县"],n:"日喀则地区"},{a:["噶尔县","普兰县","札达县 ","日土县","革吉县","改则县","措勤县"],n:"阿里地区"},{a:["林芝县","工布江达县","米林县","墨脱县","波密县","察隅县","朗县"],n:"林芝地区"},{a:["城关区","林周县","当雄县","尼木县","曲水县","堆龙德庆县","达孜县","墨竹工卡县"],n:"拉萨市"}]},{n:"陕西",c:[{a:["新城区","雁塔区","未央区","长安区","灞桥区","碑林区","莲湖区","临潼区","阎良区","西安武警工程学院","高陵县","蓝田县","户县","周至县"],n:"西安市"},{a:["印台区","宜君县","王益区","耀州区"],n:"铜川市"},{a:["渭滨区","金台区","岐山县","太白县","凤翔县","陇县","麟游县","千阳县","扶风县","凤县","眉县","陈仓区"],n:"宝鸡市"},{a:["秦都区","渭城区","兴平市","礼泉县","泾阳县","永寿县","三原县","彬县","旬邑县","长武县","乾县","武功县","淳化县","杨陵区"],n:"咸阳市"},{a:["韩城市","华阴市","蒲城县","华县","潼关县","大荔县","澄城县","合阳县","白水县","富平县","临渭区"],n:"渭南市"},{a:["宝塔区","安塞县","洛川县","子长县","黄陵县","延长县","宜川县","延川县","甘泉县","富县","志丹县","黄龙县","吴起县"],n:"延安市"},{a:["经济开发区南区","汉台区","南郑县","城固县","洋县","佛坪县","留坝县","镇巴县","西乡县","勉县","略阳县","宁强县"],n:"汉中市"},{a:["清涧县","绥德县","佳县","神木县","府谷县","子洲县","横山县","米脂县","吴堡县","定边县","榆阳区","靖边县"],n:"榆林市"},{a:["商州区","镇安县","山阳县","洛南县","商南县","丹凤县","柞水县"],n:"商洛市"},{a:["汉滨区","紫阳县","岚皋县","旬阳县","镇坪县","平利县","宁陕县","汉阴县","石泉县","白河县"],n:"安康市"}]},{n:"甘肃",c:[{a:["合作市","夏河县","碌曲县","舟曲县","玛曲县","迭部县","临潭县","卓尼县"],n:"甘南州"},{a:["岷县","安定区","通渭县","临洮县","漳县","渭源县","陇西县"],n:"定西市"},{a:["临夏县","康乐县","永靖县","和政县","东乡族自治县","积石山县","临夏市","广河县"],n:"临夏州"},{a:["七里河区","安宁区","城关区","西固区","红古区","永登县","榆中县","皋兰县"],n:"兰州市"},{a:["永昌县","金川区"],n:"金昌市"},{a:["白银区","平川区","靖远县","景泰县","会宁县"],n:"白银市"},{a:["麦积区","秦州区","甘谷县","武山县","清水县","秦安县","张家川县"],n:"天水市"},{a:["长城区","镜铁区","雄关区"],n:"嘉峪关市"},{a:["静宁县","崆峒区","华亭县","崇信县","泾川县","灵台县","庄浪县"],n:"平凉市"},{a:["庆城县","西峰区","镇原县","合水县","华池县","环县","宁县","正宁县"],n:"庆阳市"},{a:["成县","礼县","康县","武都区","文县","两当县","徽县","宕昌县","西和县"],n:"陇南市"},{a:["凉州区","古浪县","天祝县","民勤县"],n:"武威市"},{a:["甘州区","山丹县","临泽县","高台县","肃南县","民乐县"],n:"张掖市"},{a:["金塔县","阿克塞县","肃北县","瓜州县","肃州区","玉门市","敦煌市"],n:"酒泉市"}]},{n:"青海",c:[{a:["湟中县","湟源县","大通县","城中区","城东区","城西区","城北区"],n:"西宁市"},{a:["平安县","乐都县","民和县","互助县","化隆县","循化县"],n:"海东地区"},{a:["海晏县","祁连县","刚察县","门源县"],n:"海北州"},{a:["尖扎县","同仁县","泽库县","河南县"],n:"黄南州"},{a:["共和县","同德县","贵德县","兴海县","贵南县"],n:"海南州"},{a:["玛沁县","甘德县","达日县","班玛县","久治县","玛多县"],n:"果洛州"},{a:["玉树县","称多县","囊谦县","杂多县","治多县","曲麻莱县"],n:"玉树州"},{a:["德令哈市","乌兰县","天峻县","都兰县","大柴旦行委","冷湖行委","茫崖行委","格尔木市"],n:"海西州"}]},{n:"宁夏",c:[{a:["灵武市","永宁县","贺兰县","兴庆区","金凤区","西夏区"],n:"银川市"},{a:["平罗县","惠农区","大武口区"],n:"石嘴山市"},{a:["青铜峡市","同心县","盐池县","红寺堡开发区","利通区"],n:"吴忠市"},{a:["西吉县","隆德县","泾源县","彭阳县","原州区"],n:"固原市"},{a:["中宁县","海原县","沙坡头区"],n:"中卫市"}]},{n:"新疆",c:[{a:["铁门关市"],n:"铁门关市"},{a:["五家渠市"],n:"五家渠市"},{a:["阿拉尔市"],n:"阿拉尔市"},{a:["图木舒克市"],n:"图木舒克市"},{a:["天山区","头屯河区","达坂城区","米东区","新市区","沙依巴克区","水磨沟区","乌鲁木齐县"],n:"乌鲁木齐市"},{a:["克拉玛依区","独山子区","乌尔禾区","白碱滩区"],n:"克拉玛依市"},{a:["石河子市"],n:"石河子市"},{a:["吐鲁番市","托克逊县","鄯善县"],n:"吐鲁番地区"},{a:["哈密市","巴里坤县","伊吾县"],n:"哈密地区"},{a:["和田县","和田市","墨玉县","洛浦县","策勒县","于田县","民丰县","皮山县"],n:"和田地区"},{a:["阿克苏市","温宿县","沙雅县","拜城县","阿瓦提县","库车县","柯坪县","新和县","乌什县"],n:"阿克苏地区"},{a:["喀什市","巴楚县","泽普县","伽师县","叶城县","岳普湖县","疏附县","疏勒县","英吉沙县","麦盖提县","莎车县","塔什库尔干县"],n:"喀什地区"},{a:["阿图什市","阿合奇县","乌恰县","阿克陶县"],n:"克孜勒苏州"},{a:["库尔勒市","尉犁县","和静县","博湖县","和硕县","轮台县","若羌县","且末县","焉耆县"],n:"巴音郭楞州"},{a:["昌吉市","阜康市","奇台县","玛纳斯县","吉木萨尔县","呼图壁县","木垒县"],n:"昌吉州"},{a:["阿拉山口市","博乐市","精河县","温泉县"],n:"博尔塔拉州"},{a:["伊宁县","伊宁市","特克斯县","尼勒克县","昭苏县","新源县","霍城县","察布查尔县","巩留县","奎屯市"],n:"伊犁州"},{a:["塔城市","乌苏市","额敏县","裕民县","沙湾县","托里县","和布克赛尔县"],n:"塔城地区"},{a:["北屯市","阿勒泰市","富蕴县","青河县","吉木乃县","布尔津县","福海县","哈巴河县"],n:"阿勒泰地区"}]},{n:"台湾",c:[{a:["台湾市区内"],n:"台湾"}]},{n:"钓鱼岛",c:[{a:[],n:"钓鱼岛"}]},{n:"港澳",c:[{a:["中西区","东区","九龙城区","观塘区","深水埗区","湾仔区","黄大仙区","油尖旺区","离岛区","葵青区","北区","西贡区","沙田区","屯门区","大埔区","荃湾区","元朗区","香港","九龙","新界"],n:"香港特别行政区"},{a:["澳门特别行政区","澳门半岛","凼仔","路凼城","路环"],n:"澳门特别行政区"}]}];a=s,i="function"==typeof a?a.call(e,n,e,t):a,!(void 0!==i&&(t.exports=i))}()},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(148),s=a(i),r=n(149),o=a(r),c=n(152),l=a(c),u=n(151),d=a(u),f=n(150),p=a(f);e.default={confirm:o.default,alert:s.default,toast:l.default,notify:d.default,loading:p.default}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),s=a(i),r=n(3),o=s.default.extend(n(36)),c=new o({el:document.createElement("div")});o.prototype.closeAlert=function(){r.pageScroll.unlock();var t=c.$el;t.parentNode&&t.parentNode.removeChild(t),"function"==typeof this.callback&&this.callback()};var l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c.mes=t.mes,c.callback=t.callback,document.body.appendChild(c.$el),r.pageScroll.lock()};e.default=l},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),s=a(i),r=n(3),o=s.default.extend(n(37)),c=new o({el:document.createElement("div")});o.prototype.closeConfirm=function(t,e){if("function"==typeof e&&e(),!t){r.pageScroll.unlock();var n=c.$el;n.parentNode&&n.parentNode.removeChild(n)}};var l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c.mes=t.mes||"",c.title=t.title||"提示",c.opts=t.opts,document.body.appendChild(c.$el),r.pageScroll.lock()};e.default=l},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),s=a(i),r=n(3),o=s.default.extend(n(38)),c=new o({el:document.createElement("div")});o.prototype.open=function(t){c.title=t||"正在加载",document.body.appendChild(c.$el),r.pageScroll.lock()},o.prototype.close=function(){var t=c.$el;t.parentNode&&t.parentNode.removeChild(t),r.pageScroll.unlock()},e.default={open:c.open,close:c.close}},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),s=a(i),r=s.default.extend(n(39)),o=new r({el:document.createElement("div")}),c=null,l=!1;r.prototype.closeNotify=function(){o.classes="notify-out",setTimeout(function(){var t=o.$el;t.parentNode&&t.parentNode.removeChild(t),l=!1},150),"function"==typeof this.callback&&this.callback()};var u=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};o.classes="",o.mes=t.mes,o.timeout=~~t.timeout||5e3,o.callback=t.callback,l||(l=!0,document.body.appendChild(o.$el),o.$el.addEventListener("click",function(){clearTimeout(c),o.closeNotify()}),c=setTimeout(function(){clearTimeout(c),o.closeNotify()},o.timeout))};e.default=u},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(4),s=a(i),r=n(3),o=s.default.extend(n(40)),c=new o({el:document.createElement("div")});o.prototype.closeToast=function(){var t=c.$el;t.parentNode&&t.parentNode.removeChild(t),r.pageScroll.unlock(),"function"==typeof this.callback&&this.callback()};var l=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};c.mes=t.mes,c.icon=t.icon,c.timeout=~~t.timeout||2e3,c.callback=t.callback,document.body.appendChild(c.$el),r.pageScroll.lock();var e=setTimeout(function(){clearTimeout(e),c.closeToast()},c.timeout+100)};e.default=l},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(42),s=a(i),r=n(41),o=a(r),c={};c.GridsGroup=o.default,c.GridsItem=s.default,e.default=c},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(43),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(44),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(45),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(46),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(49),s=a(i),r=n(47),o=a(r),c=n(48),l=a(c),u={};u.ListTheme=s.default,u.ListItem=o.default,u.ListOther=l.default,e.default=u},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(52),s=a(i),r=n(50),o=a(r),c=n(51),l=a(c);s.default.BackIcon=o.default,s.default.NextIcon=l.default,e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(53),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(54),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(56),s=a(i),r=n(55),o=a(r);s.default.ScrollTabPanel=o.default,e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(57),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(59),s=a(i),r=n(58),o=a(r);s.default.SliderItem=o.default,e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(60),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(61),s=a(i);e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(63),s=a(i),r=n(62),o=a(r);s.default.TabPanel=o.default,e.default=s.default},function(t,e,n){"use strict";function a(t){return t&&t.__esModule?t:{default:t}}Object.defineProperty(e,"__esModule",{value:!0});var i=n(65),s=a(i),r=n(64),o=a(r);s.default.TabBarItem=o.default,e.default=s.default}])}); \ No newline at end of file diff --git a/example/app.vue b/example/app.vue new file mode 100644 index 00000000..7328c6b3 --- /dev/null +++ b/example/app.vue @@ -0,0 +1,7 @@ + + + diff --git a/example/index.html b/example/index.html new file mode 100644 index 00000000..6a2a8b64 --- /dev/null +++ b/example/index.html @@ -0,0 +1,19 @@ + + + + + Vue YDUI + + + + + + + + +
+ + + + + diff --git a/example/main.js b/example/main.js new file mode 100644 index 00000000..f03754ac --- /dev/null +++ b/example/main.js @@ -0,0 +1,73 @@ +import Vue from 'vue'; +import VueRouter from 'vue-router'; +import Resource from 'vue-resource'; + +import YDUI from '../src/index'; +import Index from './routers/index.vue'; +import Button from './routers/button.vue'; +import Dialog from './routers/dialog.vue'; +import Cell from './routers/cell.vue'; +import Grids from './routers/grids.vue'; +import Icons from './routers/icons.vue'; +import List from './routers/list.vue'; +import ListTheme from './routers/list.theme.vue'; +import ListInfinitescroll from './routers/list.infinitescroll.vue'; +import ListPullRefresh from './routers/list.pullrefresh.vue'; +import Badge from './routers/badge.vue'; +import AsideBar from './routers/asidebar.vue'; +import TabBar from './routers/tabbar.vue'; +import NavBar from './routers/navbar.vue'; +import Tabs from './routers/tabs.vue'; +import Tab from './routers/tab.vue'; +import ScrollTab from './routers/scrolltab.vue'; +import ActionSheet from './routers/actionsheet.vue'; +import SendCode from './routers/sendcode.vue'; +import ProgressBar from './routers/progressbar.vue'; +import KeyBoard from './routers/keyboard.vue'; +import Slider from './routers/slider.vue'; +import Spinner from './routers/spinner.vue'; +import CitySelect from './routers/cityselect.vue'; + +import App from './app.vue'; + +Vue.use(VueRouter); +Vue.use(Resource); +Vue.use(YDUI); + +document.addEventListener('DOMContentLoaded', function() { + typeof FastClick == 'function' && FastClick.attach(document.body); +}, false); + +const router = new VueRouter({ + routes: [ + {path: '/', component: Index}, + {path: '/button', component: Button}, + {path: '/dialog', component: Dialog}, + {path: '/cell', component: Cell}, + {path: '/grids', component: Grids}, + {path: '/icons', component: Icons}, + {path: '/list', component: List}, + {path: '/list.theme/:id', component: ListTheme}, + {path: '/list.infinitescroll', component: ListInfinitescroll}, + {path: '/list.pullrefresh', component: ListPullRefresh}, + {path: '/badge', component: Badge}, + {path: '/asidebar', component: AsideBar}, + {path: '/tabbar', component: TabBar}, + {path: '/navbar', component: NavBar}, + {path: '/tabs', component: Tabs}, + {path: '/tab', component: Tab}, + {path: '/scrolltab', component: ScrollTab}, + {path: '/actionsheet', component: ActionSheet}, + {path: '/sendcode', component: SendCode}, + {path: '/progressbar', component: ProgressBar}, + {path: '/keyboard', component: KeyBoard}, + {path: '/slider', component: Slider}, + {path: '/spinner', component: Spinner}, + {path: '/cityselect', component: CitySelect} + ] +}); + +const app = new Vue({ + router: router, + render: v => v(App) +}).$mount('#app'); diff --git a/example/routers/actionsheet.vue b/example/routers/actionsheet.vue new file mode 100644 index 00000000..55b52044 --- /dev/null +++ b/example/routers/actionsheet.vue @@ -0,0 +1,57 @@ + + + diff --git a/example/routers/asidebar.vue b/example/routers/asidebar.vue new file mode 100644 index 00000000..3bb191fd --- /dev/null +++ b/example/routers/asidebar.vue @@ -0,0 +1,14 @@ + diff --git a/example/routers/badge.vue b/example/routers/badge.vue new file mode 100644 index 00000000..912ffc9b --- /dev/null +++ b/example/routers/badge.vue @@ -0,0 +1,48 @@ + diff --git a/example/routers/button.vue b/example/routers/button.vue new file mode 100644 index 00000000..de6c3392 --- /dev/null +++ b/example/routers/button.vue @@ -0,0 +1,21 @@ + diff --git a/example/routers/cell.vue b/example/routers/cell.vue new file mode 100644 index 00000000..01b45577 --- /dev/null +++ b/example/routers/cell.vue @@ -0,0 +1,162 @@ + + + diff --git a/example/routers/cityselect.vue b/example/routers/cityselect.vue new file mode 100644 index 00000000..e831f6d0 --- /dev/null +++ b/example/routers/cityselect.vue @@ -0,0 +1,44 @@ + + + diff --git a/example/routers/dialog.vue b/example/routers/dialog.vue new file mode 100644 index 00000000..f9a03d0e --- /dev/null +++ b/example/routers/dialog.vue @@ -0,0 +1,113 @@ + + + diff --git a/example/routers/grids.vue b/example/routers/grids.vue new file mode 100644 index 00000000..53e573e7 --- /dev/null +++ b/example/routers/grids.vue @@ -0,0 +1,34 @@ + diff --git a/example/routers/icons.vue b/example/routers/icons.vue new file mode 100644 index 00000000..6a2fcf1a --- /dev/null +++ b/example/routers/icons.vue @@ -0,0 +1,31 @@ + + + diff --git a/example/routers/index.vue b/example/routers/index.vue new file mode 100644 index 00000000..753c4fc3 --- /dev/null +++ b/example/routers/index.vue @@ -0,0 +1,40 @@ + + + diff --git a/example/routers/keyboard.vue b/example/routers/keyboard.vue new file mode 100644 index 00000000..cbff94b5 --- /dev/null +++ b/example/routers/keyboard.vue @@ -0,0 +1,44 @@ + + + diff --git a/example/routers/list.infinitescroll.vue b/example/routers/list.infinitescroll.vue new file mode 100644 index 00000000..6466c8fe --- /dev/null +++ b/example/routers/list.infinitescroll.vue @@ -0,0 +1,109 @@ + + + diff --git a/example/routers/list.pullrefresh.vue b/example/routers/list.pullrefresh.vue new file mode 100644 index 00000000..929513bf --- /dev/null +++ b/example/routers/list.pullrefresh.vue @@ -0,0 +1,95 @@ + + + diff --git a/example/routers/list.theme.vue b/example/routers/list.theme.vue new file mode 100644 index 00000000..ad37caf8 --- /dev/null +++ b/example/routers/list.theme.vue @@ -0,0 +1,63 @@ + + + diff --git a/example/routers/list.vue b/example/routers/list.vue new file mode 100644 index 00000000..6c59150f --- /dev/null +++ b/example/routers/list.vue @@ -0,0 +1,34 @@ + diff --git a/example/routers/navbar.vue b/example/routers/navbar.vue new file mode 100644 index 00000000..e69adeba --- /dev/null +++ b/example/routers/navbar.vue @@ -0,0 +1,51 @@ + diff --git a/example/routers/progressbar.vue b/example/routers/progressbar.vue new file mode 100644 index 00000000..4649f31b --- /dev/null +++ b/example/routers/progressbar.vue @@ -0,0 +1,39 @@ + + + diff --git a/example/routers/scrolltab.vue b/example/routers/scrolltab.vue new file mode 100644 index 00000000..071ae930 --- /dev/null +++ b/example/routers/scrolltab.vue @@ -0,0 +1,44 @@ + diff --git a/example/routers/sendcode.vue b/example/routers/sendcode.vue new file mode 100644 index 00000000..45c38a74 --- /dev/null +++ b/example/routers/sendcode.vue @@ -0,0 +1,58 @@ + + + diff --git a/example/routers/slider.vue b/example/routers/slider.vue new file mode 100644 index 00000000..b58ea938 --- /dev/null +++ b/example/routers/slider.vue @@ -0,0 +1,27 @@ + diff --git a/example/routers/spinner.vue b/example/routers/spinner.vue new file mode 100644 index 00000000..48289204 --- /dev/null +++ b/example/routers/spinner.vue @@ -0,0 +1,64 @@ + + + diff --git a/example/routers/tab.vue b/example/routers/tab.vue new file mode 100644 index 00000000..d52d91be --- /dev/null +++ b/example/routers/tab.vue @@ -0,0 +1,24 @@ + diff --git a/example/routers/tabbar.vue b/example/routers/tabbar.vue new file mode 100644 index 00000000..e62bcf1f --- /dev/null +++ b/example/routers/tabbar.vue @@ -0,0 +1,57 @@ + diff --git a/example/routers/tabs.vue b/example/routers/tabs.vue new file mode 100644 index 00000000..d5c0dd49 --- /dev/null +++ b/example/routers/tabs.vue @@ -0,0 +1,12 @@ + diff --git a/example/styles/demo.less b/example/styles/demo.less new file mode 100644 index 00000000..0ddc7c14 --- /dev/null +++ b/example/styles/demo.less @@ -0,0 +1,359 @@ +//微软雅黑字体 +@FONT-YAHEI: \5fae\8f6f\96c5\9ed1; + +.demo-logo { + text-align: center; + img { + display: inline-block; + height: 1.8rem; + padding: .5rem 0 .4rem; + } +} + +.demo-detail-title { + color: #888; + font-size: .28rem; + margin-bottom: .5rem; + font-weight: normal; + line-height: 0.42rem; + text-align: center; +} + +.demo-loading { + margin-bottom: 20px; + li { + a { + align-items: center; + justify-content: center; + display: flex; + overflow: hidden; + width: 100%; + height: 100%; + } + img { + width: .6rem; + height: .6rem; + display: inline-block; + } + } +} + +.demo-tip { + color: #B1B1B1; + font-size: .24rem; + padding: .2rem .24rem .4rem; + line-height: 18px; + font-family: @FONT-YAHEI; + position: relative; + &:after { + content: ''; + position: absolute; + bottom: .2rem; + left: 0; + width: 100%; + border-bottom: 1px dashed #B2B2B2; + transform: scaleY(.5); + transform-origin: 0 100%; + } + i { + margin-right: 3px; + } + a { + color: #5AA700; + } +} + +.demo-upload { + overflow: hidden; + li { + width: 1rem; + height: 1rem; + float: left; + margin-right: 0.2rem; + &:last-child { + margin-right: 0; + } + } +} + +.demo-upload-big { + width: 2rem; + height: 2rem; + margin-top: 0.4rem; +} + +.demo-upload-rectangle { + width: 4rem; + height: 2rem; + margin-top: 0.4rem; +} + +.demo-components { + background-color: #FFF; + padding: 10px; + margin-bottom: 10px; +} + +.demo-upload { + overflow: hidden; + li { + float: left; + img { + width: 1rem; + height: 1rem; + margin-right: .2rem; + } + } +} + +.demo-pitch { + margin-top: .5rem; +} + +.demo-small-pitch { + margin-top: .2rem; +} + +.demo-progressbar { + display: flex; + justify-content: space-around; + align-items: center; + padding: 0 .24rem; +} + +.demo-spinner { + background-color: #FFF; + padding: .24rem; +} + +.demo-spinner-tip { + font-size: .3rem; + display: inline-block; + vertical-align: top; + color: #999; + margin-left: .2rem; +} + +.demo-spinner-title { + font-size: .26rem; + color: #888; + display: block; + margin-bottom: .1rem; +} + +.demo-badege { + padding: 0 .24rem .5rem .24rem; + background-color: #FFF; + .demo-badege-title { + font-size: .26rem; + padding-top: .5rem; + padding-bottom: .15rem; + color: #777; + position: relative; + &:after { + content: ''; + position: absolute; + z-index: 2; + bottom: 0; + left: 0; + width: 100%; + height: 1px; + background-color: #D9D9D9; + border-bottom: 1px solid #D9D9D9; + transform: scaleY(.5); + transform-origin: 0 100%; + } + } + .badge { + margin-right: .1rem; + } +} + +.demo-icons { + [class^="icon-"]:before, [class*=" icon-"]:before { + font-size: .6rem; + color: #FF685D; + } +} + +.demo-progress-line { + width: 100%; +} + +.demo-progress-cricle { + width: 2rem; + height: 2rem; +} + +.nav-center .nav-title { + font-family: @FONT-YAHEI; +} + +@demo-icons: 'demo-icons'; + +@font-face { + font-family: @demo-icons; + src: url('http://at.alicdn.com/t/font_1474965703_1820433.ttf') format('truetype'); +} + +[class^="demo-icons-"]:before, [class*=" demo-icons-"]:before { + font-family: @demo-icons; + font-size: .54rem; +} + +.demo-icons-weixin:before { + content: '\e60b'; +} + +.demo-icons-me:before { + content: '\e610'; +} + +.demo-icons-contact:before { + content: '\e60c'; +} + +.demo-icons-discover:before { + content: '\e611'; +} + +.demo-icons-phone:before { + content: '\e60e'; +} + +.demo-icons-tel:before { + content: '\e616'; +} + +.demo-icons-like:before { + content: '\e60d'; +} + +.demo-icons-order:before { + content: '\e60f'; +} + +.demo-icons-button:before { + content: '\e602'; + color: #FF685E; +} + +.demo-icons-sendcode:before { + content: '\e60a'; + color: #8B78E2; +} + +.demo-icons-dialog:before { + content: '\e603'; + color: #3CC51E; +} + +.demo-icons-keyboard:before { + content: '\e613'; + color: #FC746C; +} + +.demo-icons-cell:before { + content: '\e600'; + color: #FC746C; +} + +.demo-icons-tabs:before { + content: '\e607'; + color: #FF8D20; +} + +.demo-icons-list:before { + content: '\e605'; + color: #FF8D20; +} + +.demo-icons-actionsheet:before { + content: '\e601'; + color: #3CCD1C; +} + +.demo-icons-progressbar:before { + content: '\e612'; + color: #FF8D20; +} + +.demo-icons-icons:before { + content: '\e604'; + color: #8B78E2; +} + +.demo-icons-tabbar:before { + content: '\e606'; + color: #3CC51E; +} + +.demo-icons-badge:before { + content: '\e608'; + color: #EF4F4F; +} + +.demo-icons-grids:before { + content: '\e609'; + color: #8B78E2; +} + +.demo-icons-slider:before { + content: '\e614'; + color: #8B78E2; +} + +.demo-icons-spinner:before { + content: '\e615'; + color: #FF8D20; +} + +.demo-icons-cityselect:before { + content: '\e617'; + color: #FF685E; +} + +@demo-category-icons: 'demo-category-icons'; + +@font-face { + font-family: @demo-category-icons; + src: url('http://at.alicdn.com/t/font_1477296366_4593668.ttf') format('truetype'); +} + +[class^="demo-icons-category"]:before, [class*=" demo-icons-category"]:before { + font-family: @demo-category-icons; + font-size: .48rem; + color: #5B5D5C; +} + +.demo-icons-category1:before { + content: '\E604'; +} + +.demo-icons-category2:before { + content: '\E602'; +} + +.demo-icons-category3:before { + content: '\E605'; +} + +.demo-icons-category4:before { + content: '\E603'; +} + +.demo-icons-category5:before { + content: '\E607'; +} + +.demo-icons-category6:before { + content: '\E600'; +} + +.demo-icons-category7:before { + content: '\E606'; +} + +.demo-icons-category8:before { + content: '\E601'; +} diff --git a/package.json b/package.json new file mode 100644 index 00000000..3b16236c --- /dev/null +++ b/package.json @@ -0,0 +1,53 @@ +{ + "name": "vue-ydui", + "description": "A mobile components Library with Vue2.js. - vue-ydui", + "version": "0.0.1", + "author": "", + "main": "dist/ydui.js", + "keywords": [ + "ydui", + "YDUI Touch", + "vue", + "vue.js", + "vue2.js", + "component", + "components", + "ui", + "framework", + "vue2 ui", + "vue2 components", + "mobile", + "mobile ui" + ], + "files": [ + "dist", + "src" + ], + "scripts": { + "dev": "webpack-dev-server --content-base example/ --port 4321 --inline --hot --config build/webpack.dev.conf.js", + "build": "webpack --config build/webpack.prod.conf.js" + }, + "dependencies": { + "vue": "^2.1.8" + }, + "devDependencies": { + "autoprefixer": "^6.6.1", + "babel-core": "^6.21.0", + "babel-loader": "^6.2.10", + "babel-preset-es2015": "^6.18.0", + "css-loader": "^0.26.1", + "extract-text-webpack-plugin": "^1.0.1", + "json-loader": "^0.5.4", + "less": "^2.7.2", + "less-loader": "^2.2.3", + "style-loader": "^0.13.1", + "vue-loader": "^10.0.2", + "vue-resource": "^1.0.3", + "vue-router": "^2.1.1", + "vue-template-compiler": "^2.1.8", + "webpack": "^1.14.0", + "webpack-dev-server": "^1.16.2", + "webpack-merge": "^2.4.0" + }, + "license": "MIT" +} diff --git a/src/components/actionsheet/index.js b/src/components/actionsheet/index.js new file mode 100644 index 00000000..a69a0e7d --- /dev/null +++ b/src/components/actionsheet/index.js @@ -0,0 +1,3 @@ +import ActionSheet from './src/actionsheet.vue'; + +export default ActionSheet; diff --git a/src/components/actionsheet/src/actionsheet.vue b/src/components/actionsheet/src/actionsheet.vue new file mode 100644 index 00000000..269342ac --- /dev/null +++ b/src/components/actionsheet/src/actionsheet.vue @@ -0,0 +1,54 @@ + + + + + diff --git a/src/components/badge/index.js b/src/components/badge/index.js new file mode 100644 index 00000000..f83690f3 --- /dev/null +++ b/src/components/badge/index.js @@ -0,0 +1,6 @@ +import Badge from './src/badge.vue'; +import BadgeRadius from './src/badge-radius.vue'; + +Badge.BadgeRadius = BadgeRadius; + +export default Badge; diff --git a/src/components/badge/src/badge-radius.vue b/src/components/badge/src/badge-radius.vue new file mode 100644 index 00000000..a14e8e36 --- /dev/null +++ b/src/components/badge/src/badge-radius.vue @@ -0,0 +1,14 @@ + + + diff --git a/src/components/badge/src/badge.vue b/src/components/badge/src/badge.vue new file mode 100644 index 00000000..2419e750 --- /dev/null +++ b/src/components/badge/src/badge.vue @@ -0,0 +1,43 @@ + + + + + diff --git a/src/components/button/index.js b/src/components/button/index.js new file mode 100644 index 00000000..2035ff7a --- /dev/null +++ b/src/components/button/index.js @@ -0,0 +1,6 @@ +import Button from './src/button.vue'; +import ButtonGroup from './src/button-group.vue'; + +Button.ButtonGroup = ButtonGroup; + +export default Button; diff --git a/src/components/button/src/button-group.vue b/src/components/button/src/button-group.vue new file mode 100644 index 00000000..22e53e94 --- /dev/null +++ b/src/components/button/src/button-group.vue @@ -0,0 +1,9 @@ + + + diff --git a/src/components/button/src/button.vue b/src/components/button/src/button.vue new file mode 100644 index 00000000..e77ec73e --- /dev/null +++ b/src/components/button/src/button.vue @@ -0,0 +1,59 @@ + + + + + diff --git a/src/components/cell/index.js b/src/components/cell/index.js new file mode 100644 index 00000000..ad21652e --- /dev/null +++ b/src/components/cell/index.js @@ -0,0 +1,9 @@ +import CellItem from './src/cell-item.vue'; +import CellGroup from './src/cell-group.vue'; + +const Cell = {}; + +Cell.CellGroup = CellGroup; +Cell.CellItem = CellItem; + +export default Cell; diff --git a/src/components/cell/src/cell-group.vue b/src/components/cell/src/cell-group.vue new file mode 100644 index 00000000..9f0a0b7e --- /dev/null +++ b/src/components/cell/src/cell-group.vue @@ -0,0 +1,15 @@ + + + diff --git a/src/components/cell/src/cell-item.vue b/src/components/cell/src/cell-item.vue new file mode 100644 index 00000000..9d9dd798 --- /dev/null +++ b/src/components/cell/src/cell-item.vue @@ -0,0 +1,59 @@ + + + + + diff --git a/src/components/cityselect/index.js b/src/components/cityselect/index.js new file mode 100644 index 00000000..f7708f4f --- /dev/null +++ b/src/components/cityselect/index.js @@ -0,0 +1,2 @@ +import CitySelect from './src/cityselect.vue'; +export default CitySelect; diff --git a/src/components/cityselect/src/cityselect.vue b/src/components/cityselect/src/cityselect.vue new file mode 100644 index 00000000..632e9a0f --- /dev/null +++ b/src/components/cityselect/src/cityselect.vue @@ -0,0 +1,202 @@ + + + + + diff --git a/src/components/cityselect/src/ydui.citys.js b/src/components/cityselect/src/ydui.citys.js new file mode 100644 index 00000000..27524eff --- /dev/null +++ b/src/components/cityselect/src/ydui.citys.js @@ -0,0 +1 @@ +!function(){var citys=[{"n":"北京","c":[{"a":["城区","城区以外"],"n":"密云区"},{"a":["三环到四环之间","四环到五环之间","五环到六环之间","管庄","北苑","定福庄","三环以内"],"n":"朝阳区"},{"a":["六环以内","城区","城区以外"],"n":"昌平区"},{"a":["城区","城区以外"],"n":"平谷区"},{"a":["三环以内","三环到四环之间","四环到五环之间","五环到六环之间","六环以外","西三旗","西二旗"],"n":"海淀区"},{"a":["内环到二环里","二环到三环"],"n":"西城区"},{"a":["内环到三环里"],"n":"东城区"},{"a":["一环到二环","二环到三环"],"n":"崇文区"},{"a":["内环到三环里"],"n":"宣武区"},{"a":["四环到五环之间","二环到三环","三环到四环之间","五环到六环之间","六环之外"],"n":"丰台区"},{"a":["四环到五环内","石景山城区","八大处科技园区"],"n":"石景山区"},{"a":["城区","龙泉镇","永定镇","大台镇","潭柘寺镇","王平镇","军庄镇","妙峰山镇","雁翅镇","斋堂镇","清水镇"],"n":"门头沟"},{"a":["城区","大安山乡","大石窝镇","窦店镇","佛子庄乡","韩村河镇","河北镇","良乡镇","琉璃河镇","南窖乡","蒲洼乡","青龙湖镇","十渡镇","石楼镇","史家营乡","霞云岭乡","新镇","阎村镇","燕山地区","张坊镇","长沟镇","长阳镇","周口店镇"],"n":"房山区"},{"a":["六环内(马驹桥镇)","中仓街道","新华街道","玉桥街道","北苑街道","六环外(马驹桥镇)","永顺镇","梨园镇","宋庄镇","漷县镇","张家湾镇","西集镇","永乐店镇","潞城镇","台湖镇","于家务乡","次渠镇"],"n":"通州区"},{"a":["延庆镇","城区","康庄镇","八达岭镇","永宁镇","旧县镇","张山营镇","四海镇","千家店镇","沈家营镇","大榆树镇","井庄镇","大庄科乡","刘斌堡乡","香营乡","珍珠泉乡"],"n":"延庆县"},{"a":["四环至五环之间","五环至六环之间","六环以外","亦庄经济开发区"],"n":"大兴区"},{"a":["北石槽镇","北务镇","北小营镇","大孙各庄镇","高丽营镇","光明街道","后沙峪地区","空港街道","李桥镇","李遂镇","龙湾屯镇","马坡地区","木林镇","南彩镇","南法信地区","牛栏山地区","仁和地区","胜利街道","石园街道","双丰街道","天竺地区","旺泉街道","杨镇地区","张镇","赵全营镇"],"n":"顺义区"},{"a":["城区以内","郊区"],"n":"怀柔区"}]},{"n":"上海","c":[{"a":["城区"],"n":"静安区"},{"a":["城区"],"n":"闸北区"},{"a":["城区"],"n":"虹口区"},{"a":["城区"],"n":"杨浦区"},{"a":["罗店镇","城区","大场镇","杨行镇","月浦镇","罗泾镇","顾村镇","高境镇","庙行镇","淞南镇","宝山城市工业园区"],"n":"宝山区"},{"a":["城区","莘庄镇","七宝镇","浦江镇","梅陇镇","虹桥镇","马桥镇","吴泾镇","华漕镇","颛桥镇"],"n":"闵行区"},{"a":["城区","南翔镇","马陆镇","华亭镇","江桥镇","菊园新区","安亭镇","徐行镇","外冈镇","嘉定工业区"],"n":"嘉定区"},{"a":["城区","川沙新镇","祝桥镇","新场镇","高桥镇","惠南镇","北蔡镇","合庆镇","唐镇","曹路镇","金桥镇","高行镇","高东镇","张江镇","三林镇","南汇新城镇","康桥镇","宣桥镇","书院镇","大团镇","周浦镇","芦潮港镇","泥城镇","航头镇","万祥镇","老港镇"],"n":"浦东新区"},{"a":["城区","赵巷镇","徐泾镇","华新镇","重固镇","白鹤镇","练塘镇","金泽镇","朱家角镇"],"n":"青浦区"},{"a":["城区","泗泾镇","佘山镇","车墩镇","新桥镇","洞泾镇","九亭镇","泖港镇","石湖荡镇","新浜镇","叶榭镇","小昆山镇"],"n":"松江区"},{"a":["城区","金山工业区","朱泾镇","枫泾镇","张堰镇","亭林镇","吕巷镇","廊下镇","金山卫镇","漕泾镇","山阳镇"],"n":"金山区"},{"a":["南桥镇","奉城镇","四团镇","柘林镇","庄行镇","金汇镇","青村镇","海湾镇"],"n":"奉贤区"},{"a":["城区"],"n":"普陀区"},{"a":["城区"],"n":"黄浦区"},{"a":["堡镇","庙镇","陈家镇","城桥镇","东平镇","港西镇","港沿镇","建设镇","绿华镇","三星镇","竖新镇","向化镇","新海镇","新河镇","中兴镇","长兴乡","横沙乡","新村乡"],"n":"崇明县"},{"a":["城区"],"n":"徐汇区"},{"a":["城区"],"n":"长宁区"}]},{"n":"天津","c":[{"a":["全境"],"n":"东丽区"},{"a":["全境"],"n":"和平区"},{"a":["全境"],"n":"河北区"},{"a":["全境"],"n":"河东区"},{"a":["全境"],"n":"河西区"},{"a":["全境"],"n":"红桥区"},{"a":["全境"],"n":"蓟县"},{"a":["全境"],"n":"静海县"},{"a":["全境"],"n":"南开区"},{"a":["全境"],"n":"塘沽区"},{"a":["杨柳青,中北,精武,大寺镇,环外海泰及外环内","其它地区"],"n":"西青区"},{"a":["杨村镇、下朱庄内","其它地区"],"n":"武清区"},{"a":["双港,辛庄","咸水沽镇、海河教育园,海河科技园","其他地区"],"n":"津南区"},{"a":["汉沽区街里、汉沽开发区","其它地区"],"n":"汉沽区"},{"a":["大港油田","主城区内","主城区外"],"n":"大港区"},{"a":["外环外双街镇,河北工大新校,屈店工业园","外环内","外环外其它地区"],"n":"北辰区"},{"a":["城关镇、马家店开发区、天宝工业园","其它地区"],"n":"宝坻区"},{"a":["芦台镇、经济开发区、贸易开发区","其它地区"],"n":"宁河县"}]},{"n":"重庆","c":[{"a":["县城内","青杠镇","来凤镇","丁家镇","大路镇","八塘镇","七塘镇","河边镇","福禄镇","大兴镇","正兴镇","广普镇","三合镇","健龙镇"],"n":"璧山县"},{"a":["县城内","广顺镇","安富镇","峰高镇","双河镇","直升镇","路孔镇","清江镇","仁义镇","河包镇","古昌镇","吴家镇","观胜镇","铜鼓镇","清流镇","盘龙镇","远觉镇","清升镇","荣隆镇","龙集镇"],"n":"荣昌县"},{"a":["县城内","土桥镇","二坪镇","水口镇","安居镇","白羊镇","平滩镇","石鱼镇","福果镇","维新镇","高楼镇","大庙镇","围龙镇","华兴镇","永嘉镇","安溪镇","西河镇","太平镇","旧县镇","虎峰镇","少云镇","蒲吕镇","侣俸镇","小林乡","双山乡","庆隆乡"],"n":"铜梁县"},{"a":["内环以内","寸滩镇","郭家沱镇","铁山坪镇","鱼嘴镇","复盛镇","五宝镇","大石坝镇"],"n":"江北区"},{"a":["城区","内环以内","茶园新区","鸡冠石镇","长生桥镇","峡口镇","广阳镇","迎龙镇"],"n":"南岸区"},{"a":["内环以内","白市驿镇","铜罐驿镇","华岩镇","巴福镇","含谷镇","金凤镇","石板镇","陶家镇","西彭镇","走马镇"],"n":"九龙坡区"},{"a":["内环以内","陈家桥镇","歌乐山镇","青木关镇","回龙坝镇","大学城","虎溪镇","西永镇","土主镇","井口镇","曾家镇","凤凰镇","中梁镇"],"n":"沙坪坝区"},{"a":["茄子溪镇","建胜镇","跳磴镇","内环以内"],"n":"大渡口区"},{"a":["城区","三江镇","安稳镇","打通镇","丁山镇","东溪镇","扶欢镇","赶水镇","郭扶镇","横山镇","隆盛镇","三角镇","石壕镇","石角镇","新盛镇","永城镇","永新镇","中峰镇","篆塘镇","丛林镇","关坝镇","黑山镇","金桥镇","南桐镇","青年镇","石林镇","万东镇"],"n":"綦江区"},{"a":["城区","草街镇","盐井镇","云门镇","大石镇","沙鱼镇","官渡镇","涞滩镇","肖家镇","古楼镇","三庙镇","二郎镇","龙凤镇","隆兴镇","铜溪镇","双凤镇","狮滩镇","清平镇","土场镇","小沔镇","三汇镇","香龙镇","钱塘镇","龙市镇","燕窝镇","太和镇","渭沱镇","双槐镇"],"n":"合川区"},{"a":["城区","南泉镇","一品镇","南彭镇","惠民镇","麻柳嘴镇","天星寺镇","双河口镇","界石镇","安澜镇","跳石镇","木洞镇","丰盛镇","二圣镇","东泉镇","姜家镇","接龙镇","石滩镇","石龙镇"],"n":"巴南区"},{"a":["城区","东阳镇","蔡家岗镇","童家溪镇","施家梁镇","金刀峡镇","澄江镇","水土镇","歇马镇","天府镇","复兴镇","静观镇","柳荫镇","三圣镇"],"n":"北碚区"},{"a":["城区","四面山镇","支坪镇","白沙镇","珞璜镇","柏林镇","蔡家镇","慈云镇","杜市镇","广兴镇","嘉平镇","贾嗣镇","李市镇","龙华镇","石蟆镇","石门镇","塘河镇","吴滩镇","西湖镇","夏坝镇","先锋镇","永兴镇","油溪镇","中山镇","朱杨镇"],"n":"江津区"},{"a":["城区","礼嘉镇","两路镇","王家镇","悦来镇","玉峰山镇","茨竹镇","大盛镇","大塆镇","古路镇","龙兴镇","洛碛镇","木耳镇","石船镇","统景镇","兴隆镇"],"n":"渝北区"},{"a":["城区","长寿湖镇","邻封镇","但渡镇","云集镇","双龙镇","龙河镇","石堰镇","云台镇","海棠镇","葛兰镇","新市镇","八颗镇","洪湖镇","万顺镇"],"n":"长寿区"},{"a":["城区","双竹镇","三教镇","大安镇","陈食镇","板桥镇","宝峰镇","临江镇","红炉镇","吉安镇","金龙镇","来苏镇","青峰镇","双石镇","松溉镇","五间镇","仙龙镇","永荣镇","朱沱镇","何埂镇"],"n":"永川区"},{"a":["全境"],"n":"渝中区"},{"a":["全境"],"n":"高新区"},{"a":["全境"],"n":"北部新区"},{"a":["城区","龙滩子镇","龙水镇","智凤镇","宝顶镇","中敖镇","三驱镇","宝兴镇","玉龙镇","石马镇","拾万镇","回龙镇","金山镇","万古镇","国梁镇","雍溪镇","珠溪镇","龙石镇","邮亭镇","铁山镇","高升镇","季家镇","古龙镇","高坪镇","双路镇","通桥镇"],"n":"大足区"},{"a":["城区","白土镇","白羊镇","大周镇","弹子镇","分水镇","甘宁镇","高峰镇","高梁镇","后山镇","李河镇","龙驹镇","龙沙镇","罗田镇","孙家镇","太安镇","太龙镇","天城镇","武陵镇","响水镇","小周镇","新田镇","新乡镇","熊家镇","余家镇","长岭镇","长坪镇","长滩镇","走马镇","瀼渡镇","茨竹乡","柱山乡","燕山乡","溪口乡","普子乡","地宝乡","铁峰乡","黄柏乡","九池乡","梨树乡","郭村乡","恒合乡"],"n":"万州区"},{"a":["城区","李渡镇","白涛镇","百胜镇","堡子镇","焦石镇","蔺市镇","龙桥镇","龙潭镇","马武镇","南沱镇","青羊镇","清溪镇","石沱镇","新妙镇","义和镇","增福乡","珍溪镇","镇安镇","致韩镇","土地坡乡","武陵山乡","中峰乡","梓里乡","丛林乡","大木乡","惠民乡","酒店乡","聚宝乡","卷洞乡","两汇乡","罗云乡","明家乡","仁义乡","山窝乡","石和乡","石龙乡","太和乡","天台乡","同乐乡","新村乡"],"n":"涪陵区"},{"a":["县城内","梁山镇","柏家镇","碧山镇","大观镇","福禄镇","合兴镇","和林镇","虎城镇","回龙镇","金带镇","聚奎镇","礼让镇","龙门镇","明达镇","蟠龙镇","屏锦镇","仁贤镇","石安镇","文化镇","新盛镇","荫平镇","袁驿镇","云龙镇","竹山镇","安胜乡","铁门乡","紫照乡","曲水乡","龙胜乡","城北乡","城东乡","复平乡"],"n":"梁平县"},{"a":["城区","头渡镇","兴隆镇","冷水关乡","德隆乡","峰岩乡","福寿乡","古花乡","河图乡","民主乡","木凉乡","乾丰乡","庆元乡","石莲乡","石溪乡","铁村乡","土溪乡","鱼泉乡","中桥乡","太平场镇","大观镇","大有镇","合溪镇","金山镇","鸣玉镇","南平镇","三泉镇","神童镇","石墙镇","水江镇"],"n":"南川区"},{"a":["县城内","柏梓镇","宝龙镇","崇龛镇","古溪镇","龙形镇","米心镇","群力镇","上和镇","双江镇","太安镇","塘坝镇","卧佛镇","五桂镇","小渡镇","新胜镇","玉溪镇","别口乡","田家乡","寿桥乡"],"n":"潼南县"},{"a":["城区","正阳镇","舟白镇","阿蓬江镇","小南海镇","鹅池镇","冯家镇","黑溪镇","黄溪镇","金溪镇","黎水镇","邻鄂镇","马喇镇","石会镇","石家镇","濯水镇","白石乡","白土乡","金洞乡","蓬东乡","沙坝乡","杉岭乡","水市乡","水田乡","太极乡","五里乡","新华乡","中塘乡"],"n":"黔江区"},{"a":["白桥镇","大德镇","金峰镇","谭家镇","天和镇","白泉乡","县城内","九龙山镇","大进镇","敦好镇","高桥镇","郭家镇","和谦镇","河堰镇","厚坝镇","临江镇","南门镇","南雅镇","渠口镇","铁桥镇","岳溪镇","温泉镇","义和镇","长沙镇","赵家镇","镇安镇","中和镇","竹溪镇","三汇口乡","白桥乡","大德乡","关面乡","金峰乡","麻柳乡","满月乡","谭家乡","天和乡","巫山镇","五通乡","紫水乡"],"n":"开县"},{"a":["县城内","云阳镇","巴阳镇","凤鸣镇","高阳镇","故陵镇","红狮镇","黄石镇","江口镇","龙角镇","路阳镇","南溪镇","农坝镇","盘龙镇","平安镇","渠马镇","人和镇","桑坪镇","沙市镇","双土镇","鱼泉镇","云安镇","洞鹿乡","后叶乡","龙洞乡","毛坝乡","泥溪乡","票草乡","普安乡","栖霞乡","清水乡","上坝乡","石门乡","双龙乡","水口乡","外郎乡","新津乡","堰坪乡","养鹿乡","耀灵乡","云硐乡"],"n":"云阳县"},{"a":["县城内","忠州镇","拔山镇","白石镇","东溪镇","复兴镇","官坝镇","花桥镇","黄金镇","金鸡镇","马灌镇","任家镇","汝溪镇","三汇镇","石宝镇","石黄镇","双桂镇","乌杨镇","新生镇","洋渡镇","野鹤镇","永丰镇","金声乡","磨子乡","善广乡","石子乡","涂井乡","兴峰乡","新立镇"],"n":"忠县"},{"a":["县城内","桂溪镇","澄溪镇","高安镇","高峰镇","鹤游镇","普顺镇","沙坪镇","太平镇","五洞镇","新民镇","砚台镇","永安镇","周嘉镇","白家乡","包家乡","曹回乡","大石乡","杠家乡","坪山镇","黄沙乡","裴兴乡","三溪乡","沙河乡","永平乡","长龙乡"],"n":"垫江县"},{"a":["县城内","葛城镇","巴山镇","高观镇","庙坝镇","明通镇","坪坝镇","修齐镇","北屏乡","东安乡","高楠乡","高燕乡","河鱼乡","厚坪乡","鸡鸣乡","岚天乡","蓼子乡","龙田乡","明中乡","双河乡","咸宜乡","沿河乡","治平乡","周溪乡","左岚乡"],"n":"城口县"},{"a":["县城内","仙女山镇","巷口镇","白马镇","火炉镇","江口镇","平桥镇","桐梓镇","土坎镇","鸭江镇","羊角镇","长坝镇","白云乡","沧沟乡","凤来乡","浩口乡","和顺乡","后坪乡","黄莺乡","接龙乡","庙垭乡","石桥乡","双河乡","铁矿乡","土地乡","文复乡","赵家乡"],"n":"武隆县"},{"a":["县城内","南天湖镇","许明寺镇","包鸾镇","董家镇","高家镇","虎威镇","江池镇","龙河镇","名山镇","三元镇","社坛镇","十直镇","树人镇","双路镇","武平镇","兴义镇","湛普镇","镇江镇","太平坝乡","双龙场乡","保合乡","崇兴乡","都督乡","暨龙乡","栗子乡","龙孔乡","青龙乡","仁沙乡","三坝乡","三建乡"],"n":"丰都县"},{"a":["永乐镇","县城内","永安镇","白帝镇","草堂镇","大树镇","汾河镇","公平镇","甲高镇","康乐镇","青龙镇","吐祥镇","新民镇","兴隆镇","羊市镇","朱衣镇","竹园镇","安坪乡","冯坪乡","鹤峰乡","红土乡","康坪乡","龙桥乡","平安乡","石岗乡","太和乡","五马乡","新政乡","岩湾乡","云雾乡","长安乡"],"n":"奉节县"},{"a":["县城内","城厢镇","凤凰镇","古路镇","尖山镇","宁厂镇","上磺镇","文峰镇","下堡镇","徐家镇","朝阳洞乡","大河乡","峰灵乡","花台乡","兰英乡","菱角乡","蒲莲乡","胜利乡","双阳乡","塘坊乡","天星乡","天元乡","田坝乡","通城乡","土城乡","乌龙乡","鱼鳞乡","长桂乡","中岗乡","中梁乡"],"n":"巫溪县"},{"a":["县城内","巫峡镇","大昌镇","福田镇","官渡镇","官阳镇","龙溪镇","骡坪镇","庙堂乡","庙宇镇","双龙镇","铜鼓镇","抱龙镇","大溪乡","当阳乡","邓家乡","笃坪乡","红椿乡","建平乡","金坪乡","两坪乡","龙井乡","培石乡","平河乡","曲尺乡","三溪乡","竹贤乡"],"n":"巫山县"},{"a":["王家乡","洗新乡","新乐乡","中益乡","县城内","南宾镇","黄水镇","临溪镇","龙沙镇","马武镇","沙子镇","王场镇","西沱镇","下路镇","沿溪镇","渔池镇","悦崃镇","大歇乡","枫木乡","河嘴乡","黄鹤乡","金铃乡","金竹乡","冷水乡","黎场乡","六塘乡","龙潭乡","桥头乡","三河乡","三益乡","石家乡","万朝乡"],"n":"石柱县"},{"a":["保家镇","高谷镇","黄家镇","连湖镇","龙射镇","鹿角镇","普子镇","桑柘镇","万足镇","郁山镇","梅子垭乡","鞍子乡","大垭乡","棣棠乡","靛水乡","朗溪乡","联合乡","龙塘乡","龙溪乡","芦塘乡","鹿鸣乡","平安乡","迁乔乡","乔梓乡","润溪乡","三义乡","善感乡","县城内","石柳乡","石盘乡","双龙乡","太原乡","桐楼乡","小厂乡","新田乡","岩东乡","长滩乡","诸佛乡","走马乡"],"n":"彭水县"},{"a":["县城内","钟多镇","苍岭镇","车田乡","大溪镇","丁市镇","泔溪镇","龚滩镇","黑水镇","后溪镇","李溪镇","龙潭镇","麻旺镇","小河镇","兴隆镇","酉酬镇","南腰界乡","后坪坝乡","板溪乡","官清乡","花田乡","江丰乡","可大乡","浪坪乡","两罾乡","毛坝乡","庙溪乡","木叶乡","楠木乡","偏柏乡","清泉乡","双泉乡","天馆乡","铜鼓乡","涂市乡","万木乡","五福乡","宜居乡","腴地乡","板桥乡"],"n":"酉阳县"},{"a":["县城内","清溪场镇","中和镇","隘口镇","峨溶镇","官庄镇","洪安镇","兰桥镇","龙池镇","梅江镇","平凯镇","溶溪镇","石堤镇","石耶镇","雅江镇","巴家乡","保安乡","岑溪乡","大溪乡","干川乡","膏田乡","官舟乡","海洋乡","里仁乡","妙泉乡","平马乡","宋农乡","溪口乡","孝溪乡","涌洞乡","中平乡","钟灵乡"],"n":"秀山县"}]},{"n":"河北","c":[{"a":["路北区","路南区","迁安市","丰润区","古冶区","开平区","遵化市","丰南区","迁西县","滦南县","玉田县","曹妃甸区","乐亭县","滦县"],"n":"唐山市"},{"a":["沧县","泊头市","河间市","献县","肃宁县","青县","东光县","吴桥县","南皮县","盐山县","海兴县","孟村县","运河区","新华区","任丘市","黄骅市"],"n":"沧州市"},{"a":["三河市","广阳区","开发区","固安县","安次区","永清县","香河县","大城县","文安县","大厂县","霸州市"],"n":"廊坊市"},{"a":["冀州市","深州市","饶阳县","枣强县","桃城区","故城县","阜城县","安平县","武邑县","景县","武强县"],"n":"衡水市"},{"a":["藁城市","鹿泉市","正定县","新华区","桥西区","桥东区","裕华区","长安区","辛集市","晋州市","新乐市","平山县","井陉矿区","井陉县","栾城县","行唐县","灵寿县","高邑县","赵县","赞皇县","深泽县","无极县","元氏县"],"n":"石家庄市"},{"a":["丛台区","邯山区","复兴区","武安市","临漳县","永年县","邯郸县","峰峰矿区","曲周县","馆陶县","魏县","成安县","大名县","涉县","鸡泽县","邱县","广平县","肥乡县","磁县"],"n":"邯郸市"},{"a":["宁晋县","威县","桥西区","桥东区","邢台县","南宫市","沙河市","柏乡县","任县","清河县","隆尧县","临城县","广宗县","临西县","内丘县","平乡县","巨鹿县","新河县","南和县"],"n":"邢台市"},{"a":["涿州市","定州市","徐水县","高碑店市","新市区","北市区","南市区","安国市","安新县","满城县","清苑县","涞水县","阜平县","定兴县","唐县","高阳县","容城县","涞源县","望都县","易县","曲阳县","蠡县","顺平县","博野县","雄县"],"n":"保定市"},{"a":["怀安县","沽源县","宣化区","宣化县","康保县","张北县","阳原县","赤城县","崇礼县","尚义县","蔚县","涿鹿县","万全县","下花园区","桥西区","桥东区","怀来县"],"n":"张家口市"},{"a":["双滦区","鹰手营子矿区","隆化县","兴隆县","平泉县","滦平县","丰宁县","围场县","宽城县","双桥区","承德县"],"n":"承德市"},{"a":["卢龙县","青龙县","昌黎县","北戴河区","海港区","山海关区","抚宁县"],"n":"秦皇岛市"}]},{"n":"山西","c":[{"a":["长治县","潞城市","郊区","襄垣县","屯留县","平顺县","黎城县","壶关县","长子县","武乡县","沁县","沁源县","城区"],"n":"长治市"},{"a":["小店区","迎泽区","晋源区","万柏林区","尖草坪区","杏花岭区","古交市","阳曲县","娄烦县","清徐县"],"n":"太原市"},{"a":["大同县","天镇县","灵丘县","阳高县","左云县","浑源县","广灵县","城区","新荣区","南郊区","矿区"],"n":"大同市"},{"a":["盂县","平定县","郊区","城区","矿区"],"n":"阳泉市"},{"a":["城区","高平市","阳城县","沁水县","陵川县","泽州县"],"n":"晋城市"},{"a":["平鲁区","山阴县","右玉县","应县","怀仁县","朔城区"],"n":"朔州市"},{"a":["介休市","昔阳县","祁县","左权县","寿阳县","太谷县","和顺县","灵石县","平遥县","榆社县","榆次区"],"n":"晋中市"},{"a":["原平市","代县","神池县","五寨县","五台县","偏关县","宁武县","静乐县","繁峙县","河曲县","保德县","定襄县","忻府区","岢岚县"],"n":"忻州市"},{"a":["离石区","孝义市","汾阳市","文水县","中阳县","兴县","临县","方山县","柳林县","岚县","交口县","交城县","石楼县"],"n":"吕梁市"},{"a":["曲沃县","侯马市","霍州市","汾西县","吉县","安泽县","浮山县","大宁县","古县","隰县","襄汾县","翼城县","永和县","乡宁县","洪洞县","蒲县","尧都区"],"n":"临汾市"},{"a":["盐湖区","河津市","永济市","新绛县","平陆县","垣曲县","绛县","稷山县","芮城县","夏县","临猗县","万荣县","闻喜县"],"n":"运城市"}]},{"n":"河南","c":[{"a":["永城市","宁陵县","虞城县","民权县","夏邑县","柘城县","睢县","睢阳区","梁园区"],"n":"商丘市"},{"a":["项城市","商水县","淮阳县","太康县","鹿邑县","西华县","扶沟县","沈丘县","郸城县","川汇区","东新区","经济开发区"],"n":"周口市"},{"a":["确山县","新蔡县","上蔡县","泌阳县","西平县","遂平县","汝南县","平舆县","正阳县","驿城区"],"n":"驻马店市"},{"a":["潢川县","淮滨县","息县","新县","固始县","罗山县","光山县","商城县","平桥区","浉河区"],"n":"信阳市"},{"a":["二七区","中原区","郑东新区","管城区","金水区","经济开发区","高新技术开发区","新郑市","巩义市","荥阳市","中牟县","新密市","登封市","惠济区","上街区"],"n":"郑州市"},{"a":["金明区","龙亭区","顺河区","鼓楼区","禹王台区","通许县","开封县","杞县","兰考县","尉氏县"],"n":"开封市"},{"a":["涧西区","西工区","洛龙区","嵩县","偃师市","孟津县","汝阳县","伊川县","洛宁县","宜阳县","栾川县","新安县","伊滨区","吉利区","瀍河区","老城区"],"n":"洛阳市"},{"a":["湛河区","卫东区","新华区","汝州市","舞钢市","郏县","叶县","鲁山县","宝丰县","石龙区"],"n":"平顶山市"},{"a":["沁阳市","孟州市","修武县","温县","武陟县","博爱县","山阳区","解放区","马村区","中站区"],"n":"焦作市"},{"a":["淇滨区","浚县","淇县","鹤山区","山城区"],"n":"鹤壁市"},{"a":["牧野区","红旗区","卫滨区","卫辉市","辉县市","新乡县","获嘉县","原阳县","长垣县","延津县","封丘县","凤泉区"],"n":"新乡市"},{"a":["龙安区","殷都区","文峰区","开发区","北关区","林州市","安阳县","滑县","汤阴县","内黄县"],"n":"安阳市"},{"a":["濮阳县","南乐县","台前县","清丰县","范县","华龙区"],"n":"濮阳市"},{"a":["城区","五龙口镇","下冶镇","轵城镇","王屋镇","思礼镇","邵原镇","坡头镇","梨林镇","克井镇","大峪镇","承留镇"],"n":"济源市"},{"a":["魏都区","禹州市","长葛市","许昌县","鄢陵县","襄城县"],"n":"许昌市"},{"a":["郾城区","临颍县","召陵区","舞阳县","源汇区"],"n":"漯河市"},{"a":["渑池县","湖滨区","义马市","灵宝市","陕县","卢氏县"],"n":"三门峡市"},{"a":["社旗县","西峡县","卧龙区","宛城区","邓州市","桐柏县","方城县","淅川县","镇平县","唐河县","南召县","内乡县","新野县"],"n":"南阳市"}]},{"n":"辽宁","c":[{"a":["苏家屯区","新民市","法库县","辽中县","康平县","皇姑区","铁西区","大东区","沈河区","东陵区","于洪区","和平区","浑南新区","沈北新区"],"n":"沈阳市"},{"a":["中山区","沙河口区","西岗区","甘井子区","高新园区","大连开发区","金州区","旅顺口区","普兰店市","瓦房店市","庄河市","长海县"],"n":"大连市"},{"a":["铁东区","立山区","台安县","海城市","岫岩县","铁西区","千山区"],"n":"鞍山市"},{"a":["望花区","东洲区","新抚区","顺城区","抚顺县","新宾县","清原县"],"n":"抚顺市"},{"a":["桓仁县","本溪县","平山区","溪湖区","明山区","南芬区"],"n":"本溪市"},{"a":["元宝区","振兴区","振安区","东港市","凤城市","宽甸县"],"n":"丹东市"},{"a":["凌河区","古塔区","太和区","义县","凌海市","北镇市","黑山县","经济技术开发区"],"n":"锦州市"},{"a":["龙港区","连山区","兴城市","绥中县","建昌县","南票区"],"n":"葫芦岛市"},{"a":["西市区","站前区","大石桥市","盖州市","老边区","鲅鱼圈区"],"n":"营口市"},{"a":["盘山县","大洼县","兴隆台区","双台子区"],"n":"盘锦市"},{"a":["阜新县","彰武县","海州区","太平区","细河区","清河门区","新邱区"],"n":"阜新市"},{"a":["辽阳县","白塔区","文圣区","灯塔市","太子河区","弓长岭区","宏伟区"],"n":"辽阳市"},{"a":["凌源市","北票市","喀喇沁左翼县","朝阳县","双塔区","建平县","龙城区"],"n":"朝阳市"},{"a":["银州区","清河区","开原市","铁岭县","西丰县","昌图县","调兵山市"],"n":"铁岭市"}]},{"n":"吉林","c":[{"a":["德惠市","榆树市","九台市","农安县","朝阳区","南关区","宽城区","二道区","双阳区","绿园区","净月区","汽车产业开发区","高新技术开发区","经济技术开发区"],"n":"长春市"},{"a":["昌邑区","龙潭区","船营区","丰满区","舒兰市","桦甸市","蛟河市","磐石市","永吉县"],"n":"吉林市"},{"a":["铁东区","铁西区","公主岭市","双辽市","梨树县","伊通县"],"n":"四平市"},{"a":["东昌区","梅河口市","集安市","通化县","辉南县","柳河县","二道江区"],"n":"通化市"},{"a":["浑江区","临江市","江源区","靖宇县","抚松县","长白县"],"n":"白山市"},{"a":["宁江区","前郭县","乾安县","长岭县","扶余县"],"n":"松原市"},{"a":["大安市","洮南市","通榆县","镇赉县","洮北区"],"n":"白城市"},{"a":["延吉市","图们市","敦化市","珲春市","龙井市","和龙市","汪清县","安图县"],"n":"延边州"},{"a":["龙山区","西安区","东丰县","东辽县"],"n":"辽源市"}]},{"n":"黑龙江","c":[{"a":["勃利县","桃山区","新兴区","茄子河区"],"n":"七台河市"},{"a":["北安市","五大连池市","逊克县","孙吴县","嫩江县","爱辉区"],"n":"黑河市"},{"a":["北林区","安达市","肇东市","海伦市","绥棱县","兰西县","明水县","青冈县","庆安县","望奎县"],"n":"绥化市"},{"a":["加格达奇区","松岭区","呼中区","呼玛县","塔河县","漠河县","新林区"],"n":"大兴安岭地区"},{"a":["阿城区","尚志市","双城市","五常市","方正县","宾县","依兰县","巴彦县","通河县","木兰县","延寿县","呼兰区","松北区","道里区","南岗区","道外区","香坊区","平房区"],"n":"哈尔滨市"},{"a":["建华区","龙沙区","铁锋区","梅里斯区","昂昂溪区","富拉尔基区","碾子山区","讷河市","富裕县","拜泉县","甘南县","依安县","克山县","龙江县","克东县","泰来县"],"n":"齐齐哈尔市"},{"a":["兴山区","向阳区","工农区","南山区","兴安区","东山区","萝北县","绥滨县"],"n":"鹤岗市"},{"a":["尖山区","岭东区","四方台区","宝山区","集贤县","宝清县","友谊县","饶河县"],"n":"双鸭山市"},{"a":["恒山区","滴道区","梨树区","城子河区","麻山区","鸡冠区","密山市","虎林市","鸡东县"],"n":"鸡西市"},{"a":["萨尔图区","龙凤区","让胡路区","红岗区","大同区","林甸县","肇州县","肇源县","杜尔伯特县"],"n":"大庆市"},{"a":["伊春区","南岔区","友好区","西林区","翠峦区","新青区","美溪区","金山屯区","五营区","乌马河区","汤旺河区","带岭区","乌伊岭区","红星区","上甘岭区","铁力市","嘉荫县"],"n":"伊春市"},{"a":["爱民区","东安区","阳明区","西安区","绥芬河市","海林市","宁安市","穆棱市","林口县","东宁县"],"n":"牡丹江市"},{"a":["桦川县","抚远县","桦南县","汤原县","前进区","向阳区","东风区","郊区","同江市","富锦市"],"n":"佳木斯市"}]},{"n":"内蒙古","c":[{"a":["玉泉区","赛罕区","土默特左旗","和林格尔县","武川县","托克托县","清水河县","回民区","新城区"],"n":"呼和浩特市"},{"a":["固阳县","土默特右旗","达茂联合旗","东河区","九原区","青山区","昆都仑区","石拐区","白云矿区"],"n":"包头市"},{"a":["海勃湾区","海南区","乌达区"],"n":"乌海市"},{"a":["宁城县","敖汉旗","喀喇沁旗","翁牛特旗","巴林右旗","林西县","克什克腾旗","巴林左旗","阿鲁科尔沁旗","元宝山区","红山区","松山区"],"n":"赤峰市"},{"a":["集宁区","丰镇市","兴和县","卓资县","商都县","凉城县","化德县","察哈尔右翼前旗","察哈尔右翼中旗","察哈尔右翼后旗","四子王旗"],"n":"乌兰察布市"},{"a":["锡林浩特市","二连浩特市","多伦县","阿巴嘎旗","西乌珠穆沁旗","东乌珠穆沁旗","苏尼特右旗","苏尼特左旗","太仆寺旗","正镶白旗","正蓝旗","镶黄旗"],"n":"锡林郭勒盟"},{"a":["海拉尔区","满洲里市","牙克石市","扎兰屯市","根河市","额尔古纳市","陈巴尔虎旗","阿荣旗","新巴尔虎左旗","新巴尔虎右旗","鄂伦春旗","莫力达瓦旗","鄂温克族旗"],"n":"呼伦贝尔市"},{"a":["东胜区","准格尔旗","伊金霍洛旗","乌审旗","杭锦旗","鄂托克旗","鄂托克前旗","达拉特旗","康巴什新区"],"n":"鄂尔多斯市"},{"a":["临河区","五原县","磴口县","杭锦后旗","乌拉特中旗","乌拉特后旗 ","乌拉特前旗"],"n":"巴彦淖尔市"},{"a":["阿拉善右旗","阿拉善左旗","额济纳旗"],"n":"阿拉善盟"},{"a":["乌兰浩特市","阿尔山市","突泉县","扎赉特旗","科尔沁右翼前旗","科尔沁右翼中旗"],"n":"兴安盟"},{"a":["科尔沁区","霍林郭勒市","开鲁县","库伦旗","奈曼旗","扎鲁特旗","科尔沁左翼中旗","科尔沁左翼后旗"],"n":"通辽市"}]},{"n":"江苏","c":[{"a":["玄武区","秦淮区","建邺区","鼓楼区","栖霞区","江宁区","六合区","雨花台区","高淳区","溧水区","浦口区"],"n":"南京市"},{"a":["贾汪区","金山桥开发区","铜山经济技术开发区","八段工业园区","鼓楼区","邳州市","泉山区","新沂市","云龙区","铜山区","睢宁县","沛县","丰县"],"n":"徐州市"},{"a":["海州区","赣榆区","连云区","灌云县","东海县","灌南县"],"n":"连云港市"},{"a":["经济开发区","楚州区","洪泽县","金湖县","盱眙县","清河区","淮阴区","清浦区","涟水县"],"n":"淮安市"},{"a":["宿城区","沭阳县","泗阳县","宿豫区","泗洪县","宿迁经济开发区"],"n":"宿迁市"},{"a":["射阳县","亭湖区","盐都区","东台市","大丰区","建湖县","响水县","阜宁县","滨海县"],"n":"盐城市"},{"a":["广陵区","邗江区","宝应县","仪征市","高邮市","江都区"],"n":"扬州市"},{"a":["海陵区","高港区","泰兴市","靖江市","兴化市","姜堰区"],"n":"泰州市"},{"a":["港闸区","崇川区","通州区","南通经济技术开发区","如东县","海安县","如皋市","海门市","启东市"],"n":"南通市"},{"a":["润州区","京口区","丹徒区","镇江新区","丹阳市","句容市","扬中市","丹徒新区"],"n":"镇江市"},{"a":["钟楼区","天宁区","武进区","新北区","金坛区","溧阳市"],"n":"常州市"},{"a":["崇安区","南长区","北塘区","锡山区","惠山区","新区","江阴市","宜兴市","滨湖区"],"n":"无锡市"},{"a":["常熟市","张家港市","太仓市","相城区","金阊区","虎丘区","平江区","沧浪区","工业园区","高新区","吴江区","吴中区","昆山市"],"n":"苏州市"}]},{"n":"山东","c":[{"a":["河口区","广饶县","利津县","垦利区","东营区"],"n":"东营市"},{"a":["潍城区","奎文区","高新区","寒亭区","寿光市","青州市","诸城市","安丘市","高密市","昌邑市","昌乐县","临朐县","坊子区"],"n":"潍坊市"},{"a":["莱山区","芝罘区","开发区","福山区","牟平区","龙口市","莱州市","莱阳市","招远市","蓬莱市","栖霞市","海阳市","长岛县"],"n":"烟台市"},{"a":["荣成市","文登市","乳山市","环翠区"],"n":"威海市"},{"a":["莱城区","钢城区"],"n":"莱芜市"},{"a":["德城区","临邑县","齐河县","乐陵市","禹城市","陵县","宁津县","武城县","庆云县","平原县","夏津县"],"n":"德州市"},{"a":["兰陵县","兰山区","河东区","沂南县","沂水县","费县","平邑县","蒙阴县","临沭县","莒南县","郯城县","罗庄区"],"n":"临沂市"},{"a":["东昌府区","临清市","阳谷县","茌平县","莘县","东阿县","冠县","高唐县"],"n":"聊城市"},{"a":["北海新区","滨城区","邹平县","沾化县","惠民县","博兴县","阳信县","无棣县"],"n":"滨州市"},{"a":["牡丹区","单县","曹县","定陶县","巨野县","成武县","东明县","郓城县","鄄城县"],"n":"菏泽市"},{"a":["岚山区","新市区","五莲县","东港区","莒县"],"n":"日照市"},{"a":["梁山县","兖州市","微山县","汶上县","泗水县","嘉祥县","鱼台县","金乡县","邹城市","市中区","曲阜市","高新区","任城区"],"n":"济宁市"},{"a":["东平县","岱岳区","泰山区","肥城市","新泰市","宁阳县"],"n":"泰安市"},{"a":["高新区","长清区","历城区","天桥区","槐荫区","历下区","市中区","章丘市","平阴县","济阳县","商河县"],"n":"济南市"},{"a":["四方区","市北区","市南区","黄岛区","李沧区","即墨市","城阳区","崂山区","胶州市","平度市","莱西市"],"n":"青岛市"},{"a":["临淄区","张店区","周村区","淄川区","博山区","高青县","沂源县","桓台县"],"n":"淄博市"},{"a":["滕州市","山亭区","台儿庄区","峄城区","薛城区","市中区"],"n":"枣庄市"}]},{"n":"安徽","c":[{"a":["铜官区","枞阳县","郊区","义安区"],"n":"铜陵市"},{"a":["包河区","蜀山区","瑶海区","庐阳区","滨湖新区","经济技术开发区","高新技术开发区","新站综合开发试验区","肥西县","政务文化新区","巢湖市","长丰县","肥东县","庐江县","北城新区"],"n":"合肥市"},{"a":["淮南高新技术开发区","田家庵区","大通区","谢家集区","八公山区","寿县","凤台县","潘集区"],"n":"淮南市"},{"a":["杜集区","烈山区","濉溪县","相山区"],"n":"淮北市"},{"a":["镜湖区","弋江区","无为县","芜湖县","繁昌县","南陵县","鸠江区","三山区"],"n":"芜湖市"},{"a":["蚌山区","怀远县","固镇县","五河县","淮上区","龙子湖区","禹会区"],"n":"蚌埠市"},{"a":["博望区","花山区","雨山区","当涂县","含山县","和县"],"n":"马鞍山市"},{"a":["桐城市","宿松县","太湖县","怀宁县","岳西县","望江县","潜山县","大观区","宜秀区","迎江区"],"n":"安庆市"},{"a":["徽州区","屯溪区","休宁县","歙县","黟县","祁门县","黄山区"],"n":"黄山市"},{"a":["琅琊区","天长市","明光市","全椒县","来安县","南谯区","定远县","凤阳县"],"n":"滁州市"},{"a":["经济开发区","界首市","太和县","阜南县","颍上县","临泉县","颍泉区","颍州区","颍东区"],"n":"阜阳市"},{"a":["利辛县","蒙城县","涡阳县","谯城区"],"n":"亳州市"},{"a":["旌德县","宁国市","郎溪县","广德县","绩溪县","泾县","宣州区"],"n":"宣城市"},{"a":["经济开发区","埇桥区","灵璧县","泗县","萧县","砀山县"],"n":"宿州市"},{"a":["贵池区","东至县","石台县","青阳县"],"n":"池州市"},{"a":["霍山县","金寨县","霍邱县","舒城县","金安区","裕安区"],"n":"六安市"}]},{"n":"浙江","c":[{"a":["龙泉市","缙云县","遂昌县","松阳县","景宁县","云和县","青田县","莲都区","庆元县"],"n":"丽水市"},{"a":["临海市","三门县","天台县","仙居县","黄岩区","椒江区","路桥区","温岭市","玉环县"],"n":"台州市"},{"a":["岱山县","嵊泗县","普陀区","定海区"],"n":"舟山市"},{"a":["海曙区","江东区","高新科技开发区","慈溪市","北仑区","镇海区","鄞州区","江北区","余姚市","奉化市","宁海县","象山县"],"n":"宁波市"},{"a":["上城区","下城区","拱墅区","西湖区","江干区","下沙区","余杭区","萧山区","滨江区","临安市","富阳区","桐庐县","建德市","淳安县"],"n":"杭州市"},{"a":["龙湾区","茶山高教园区","瑞安市","乐清市","鹿城区","瓯海区","永嘉县","文成县","平阳县","泰顺县","洞头区","苍南县"],"n":"温州市"},{"a":["桐乡市","平湖市","嘉善县","南湖区","秀洲区","海宁市","海盐县"],"n":"嘉兴市"},{"a":["南浔区","吴兴区","长兴县","德清县","安吉县"],"n":"湖州市"},{"a":["柯桥区","越城区","诸暨市","上虞区","嵊州市","新昌县"],"n":"绍兴市"},{"a":["金东区","婺城区","兰溪市","武义县","浦江县","磐安县","义乌市","永康市","东阳市"],"n":"金华市"},{"a":["柯城区","衢江区","江山市","常山县","开化县","龙游县"],"n":"衢州市"}]},{"n":"福建","c":[{"a":["台江区","鼓楼区","晋安区","仓山区","马尾区","福清市","闽侯县","长乐市","平潭县","连江县","罗源县","永泰县","闽清县"],"n":"福州市"},{"a":["思明区","湖里区","翔安区","海沧区","集美区","同安区"],"n":"厦门市"},{"a":["永安市","明溪县","将乐县","大田县","宁化县","建宁县","沙县","尤溪县","清流县","泰宁县","梅列区","三元区"],"n":"三明市"},{"a":["仙游县","城厢区","荔城区","秀屿区","涵江区"],"n":"莆田市"},{"a":["泉港区","石狮市","南安市","惠安县","安溪县","德化县","永春县","金门县","洛江区","鲤城区","丰泽区","晋江市"],"n":"泉州市"},{"a":["芗城区","龙文区","龙海市","平和县","南靖县","诏安县","漳浦县","华安县","云霄县","东山县","长泰县"],"n":"漳州市"},{"a":["建瓯市","邵武市","武夷山市","建阳市","松溪县","顺昌县","浦城县","政和县","光泽县","延平区"],"n":"南平市"},{"a":["新罗区","漳平市","长汀县","武平县","永定县","上杭县","连城县"],"n":"龙岩市"},{"a":["蕉城区","东侨开发区","福安市","福鼎市","寿宁县","霞浦县","柘荣县","屏南县","古田县","周宁县"],"n":"宁德市"}]},{"n":"湖北","c":[{"a":["松柏镇","阳日镇","木鱼镇","红坪镇","新华镇","宋洛乡","九湖乡","下谷坪乡"],"n":"神农架林区"},{"a":["硚口区","武昌区","武汉经济技术开发区","江岸区","江汉区","蔡甸区","江夏区","新洲区","黄陂区","汉阳区","青山区","洪山区","汉南区","东西湖区"],"n":"武汉市"},{"a":["园林","杨市","周矶","广华","泰丰","竹根滩镇","高石碑镇","积玉口镇","渔洋镇","王场镇","熊口镇","老新镇","浩口镇","张金镇","龙湾镇","江汉石油管理局","潜江经济开发区","西大垸管理区","运粮湖管理区","周矶管理区","后湖管理区","熊口管理区","总口管理区","高场原种场","浩口原种场"],"n":"潜江市"},{"a":["黄石港区","下陆区","西塞山区","铁山区","大冶市","阳新县","经济技术开发区"],"n":"黄石市"},{"a":["老河口市","枣阳市","宜城市","南漳县","保康县","谷城县","樊城区","襄城区","襄州区"],"n":"襄阳市"},{"a":["丹江口市","房县","竹山县","竹溪县","郧县","郧西县","茅箭区","张湾区"],"n":"十堰市"},{"a":["沙市区","荆州区","江陵县","洪湖市","石首市","松滋市","监利县","公安县"],"n":"荆州市"},{"a":["伍家岗区","西陵区","宜都市","猇亭区","点军区","当阳市","枝江市","夷陵区","秭归县","兴山县","远安县","五峰土家族自治县","长阳土家族自治县"],"n":"宜昌市"},{"a":["汉川市","云梦县","大悟县","孝昌县","孝南区","应城市","安陆市"],"n":"孝感市"},{"a":["黄州区","蕲春县","麻城市","武穴市","浠水县","红安县","罗田县","黄梅县","英山县","团风县"],"n":"黄冈市"},{"a":["侨乡街道开发区","竟陵街道","杨林街道","佛子山镇","多宝镇","拖市镇","张港镇","蒋场镇","汪场镇","渔薪镇","黄潭镇","岳口镇","横林镇","彭市镇","麻洋镇","多祥镇","干驿镇","马湾镇","卢市镇","小板镇","九真镇","皂市镇","胡市镇","石河镇","净潭乡","蒋湖农场","白茅湖农场","沉湖管委会"],"n":"天门市"},{"a":["城区","郑场镇","毛嘴镇","豆河镇","三伏潭镇","胡场镇","长埫口镇","西流河镇","沙湖镇","杨林尾镇","彭场镇","张沟镇","郭河镇","沔城镇","通海口镇","陈场镇","工业园区","九合垸原种场","沙湖原种场","排湖渔场","五湖渔场","赵西垸林场","刘家垸林场","畜禽良种场"],"n":"仙桃市"},{"a":["咸安区","赤壁市","嘉鱼县","通山县","崇阳县","通城县"],"n":"咸宁市"},{"a":["恩施市","利川市","建始县","来凤县","巴东县","鹤峰县","宣恩县","咸丰县"],"n":"恩施州"},{"a":["梁子湖区","华容区","鄂城区"],"n":"鄂州市"},{"a":["东宝区","掇刀区","钟祥市","京山县","沙洋县"],"n":"荆门市"},{"a":["曾都区","广水市","随县"],"n":"随州市"}]},{"n":"湖南","c":[{"a":["慈利县","桑植县","武陵源区","永定区"],"n":"张家界市"},{"a":["资兴市","宜章县","安仁县","汝城县","嘉禾县","临武县","桂东县","永兴县","桂阳县","北湖区","苏仙区"],"n":"郴州市"},{"a":["南县","桃江县","安化县","赫山区","资阳区","沅江市"],"n":"益阳市"},{"a":["冷水滩区","祁阳县","双牌县","道县","江永县","江华县","宁远县","新田县","蓝山县","东安县","零陵区"],"n":"永州市"},{"a":["鹤城区","洪江市","会同县","溆浦县","中方县","辰溪县","靖州县","通道县","芷江县","新晃县","麻阳县","沅陵县"],"n":"怀化市"},{"a":["娄星区","冷水江市","涟源市","新化县","双峰县"],"n":"娄底市"},{"a":["吉首市","古丈县","龙山县","永顺县","泸溪县","凤凰县","花垣县","保靖县"],"n":"湘西州"},{"a":["芙蓉区","岳麓区","雨花区","开福区","天心区","浏阳市","长沙县","宁乡县","望城区"],"n":"长沙市"},{"a":["天元区","石峰区","芦淞区","荷塘区","醴陵市","株洲县","攸县","茶陵县","炎陵县"],"n":"株洲市"},{"a":["雨湖区","岳塘区","湘乡市","湘潭县","韶山市"],"n":"湘潭市"},{"a":["蒸湘区","石鼓区","珠晖区","雁峰区","常宁市","衡阳县","耒阳市","衡东县","衡南县","衡山县","祁东县","南岳区"],"n":"衡阳市"},{"a":["大祥区","双清区","北塔区","武冈市","邵东县","洞口县","新邵县","绥宁县","新宁县","邵阳县","隆回县","城步县"],"n":"邵阳市"},{"a":["岳阳楼区","君山区","云溪区","临湘市","汨罗市","岳阳县","湘阴县","华容县","平江县"],"n":"岳阳市"},{"a":["汉寿县","石门县","安乡县","鼎城区","武陵区","津市市","澧县","临澧县","桃源县"],"n":"常德市"}]},{"n":"广东","c":[{"a":["天河区","海珠区","荔湾区","越秀区","番禺区","花都区","萝岗区","白云区","南沙区","黄埔区","增城区","从化区","广州大学城"],"n":"广州市"},{"a":["罗湖区","福田区","南山区","宝安区","光明新区","龙岗区","坪山新区","盐田区","龙华新区","大鹏新区"],"n":"深圳市"},{"a":["斗门区","金湾区","香洲区"],"n":"珠海市"},{"a":["龙湖区","金平区","澄海区","潮阳区","潮南区","濠江区","南澳县"],"n":"汕头市"},{"a":["武江区","浈江区","南雄市","乐昌市","仁化县","始兴县","翁源县","新丰县","乳源瑶族自治县","曲江区"],"n":"韶关市"},{"a":["和平县","龙川县","紫金县","连平县","源城区","东源县"],"n":"河源市"},{"a":["梅江区","兴宁市","梅县","蕉岭县","大埔县","丰顺县","五华县","平远县"],"n":"梅州市"},{"a":["惠阳区","大亚湾区","惠城区","惠东县","博罗县","龙门县"],"n":"惠州市"},{"a":["城区","陆丰市","陆河县","海丰县"],"n":"汕尾市"},{"a":["长安镇","莞城区","南城区","寮步镇","大岭山镇","横沥镇","常平镇","厚街镇","万江区","樟木头镇","塘厦镇","凤岗镇","大朗镇","东坑镇","清溪镇","企石镇","茶山镇","东城区","虎门镇","黄江镇","石排镇","道滘镇","沙田镇","高埗镇","石龙镇","石碣镇","洪梅镇","麻涌镇","松山湖","桥头镇","望牛墩镇","中堂镇","谢岗镇"],"n":"东莞市"},{"a":["城区","火炬开发区","小榄镇","古镇","三乡镇","民众镇","东凤镇","板芙镇","神湾镇","横栏镇","港口镇","三角镇","大涌镇","南头镇","沙溪镇","坦洲镇","黄圃镇","五桂山镇","南朗镇","沙朗镇","阜沙镇","东升镇"],"n":"中山市"},{"a":["台山市","新会区","鹤山市","江海区","蓬江区","开平市","恩平市"],"n":"江门市"},{"a":["顺德区","禅城区","高明区","三水区","南海区"],"n":"佛山市"},{"a":["江城区","阳东县","阳春市","阳西县"],"n":"阳江市"},{"a":["赤坎区","霞山区","经济技术开发区","麻章区","遂溪县","廉江市","坡头区","雷州市","吴川市","徐闻县"],"n":"湛江市"},{"a":["茂南区","电白县","高州市","化州市","茂港区","信宜市"],"n":"茂名市"},{"a":["端州区","四会市","高要市","广宁县","德庆县","怀集县","封开县","鼎湖区"],"n":"肇庆市"},{"a":["云城区","罗定市","云安县","新兴县","郁南县"],"n":"云浮市"},{"a":["连州市","佛冈县","阳山县","清新县","连山县","连南县","清城区","英德市"],"n":"清远市"},{"a":["湘桥区","枫溪区","潮安区","饶平县"],"n":"潮州市"},{"a":["东山区","普宁市","榕城区","揭东县","揭西县","惠来县"],"n":"揭阳市"}]},{"n":"广西","c":[{"a":["八步区","钟山县","昭平县","富川县","平桂管理区"],"n":"贺州市"},{"a":["右江区","平果县","乐业县","田阳县","西林县","田林县","德保县","靖西县","田东县","那坡县","隆林县","凌云县"],"n":"百色市"},{"a":["宜州市","天峨县","凤山县","南丹县","东兰县","巴马县","环江县","大化县","都安县","金城江区","罗城县"],"n":"河池市"},{"a":["江州区","凭祥市","扶绥县","大新县","天等县","宁明县","龙州县"],"n":"崇左市"},{"a":["良庆区","江南区","兴宁区","青秀区","西乡塘区","横县","上林县","隆安县","马山县","武鸣区","邕宁区","宾阳县"],"n":"南宁市"},{"a":["融安县","三江县","融水县","鱼峰区","城中区","柳南区","柳北区","柳江县","柳城县","鹿寨县"],"n":"柳州市"},{"a":["象山区","恭城县","秀峰区","叠彩区","七星区","雁山区","阳朔县","临桂县","灵川县","全州县","平乐县","兴安县","灌阳县","荔浦县","资源县","永福县","龙胜县"],"n":"桂林市"},{"a":["岑溪市","苍梧县","藤县","蒙山县","万秀区","蝶山区","长洲区"],"n":"梧州市"},{"a":["海城区","银海区","合浦县","铁山港区"],"n":"北海市"},{"a":["防城区","港口区","东兴市","上思县"],"n":"防城港市"},{"a":["钦南区","钦北区","浦北县","灵山县"],"n":"钦州市"},{"a":["港南区","港北区","桂平市","平南县","覃塘区"],"n":"贵港市"},{"a":["玉州区","北流市","容县","博白县","陆川县","兴业县"],"n":"玉林市"},{"a":["兴宾区","合山市","忻城县","武宣县","象州县","金秀县"],"n":"来宾市"}]},{"n":"江西","c":[{"a":["青云谱区","西湖区","东湖区","昌北区","南昌县","进贤县","安义县","青山湖区","红谷滩新区","新建县","湾里区","高新区"],"n":"南昌市"},{"a":["珠山区","乐平市","浮梁县","昌江区"],"n":"景德镇市"},{"a":["湘东区","莲花县","上栗县","芦溪县","安源区"],"n":"萍乡市"},{"a":["分宜县","渝水区"],"n":"新余市"},{"a":["浔阳区","八里湖新区","经济技术开发区","修水县","瑞昌市","彭泽县","湖口县","共青城市","九江县","庐山区","德安县","都昌县","永修县","武宁县","星子县","庐山风景名胜区"],"n":"九江市"},{"a":["龙虎山风景旅游区","余江县","贵溪市","月湖区"],"n":"鹰潭市"},{"a":["德兴市","广丰县","鄱阳县","婺源县","余干县","横峰县","弋阳县","铅山县","玉山县","万年县","信州区","上饶县"],"n":"上饶市"},{"a":["丰城市","樟树市","袁州区","高安市","铜鼓县","靖安县","宜丰县","奉新县","万载县","上高县"],"n":"宜春市"},{"a":["南丰县","乐安县","金溪县","南城县","东乡县","资溪县","宜黄县","崇仁县","黎川县","广昌县","临川区"],"n":"抚州市"},{"a":["青原区","吉州区","井冈山市","吉安县","永丰县","永新县","新干县","泰和县","峡江县","遂川县","安福县","吉水县","万安县"],"n":"吉安市"},{"a":["章贡区","南康市","瑞金市","石城县","安远县","赣县","宁都县","寻乌县","兴国县","定南县","上犹县","于都县","龙南县","崇义县","大余县","信丰县","全南县","会昌县"],"n":"赣州市"}]},{"n":"四川","c":[{"a":["仁寿县","彭山区","洪雅县","丹棱县","青神县","东坡区"],"n":"眉山市"},{"a":["雁江区","安岳县","乐至县","简阳市"],"n":"资阳市"},{"a":["马尔康县","九寨沟县","红原县","阿坝县","理县","若尔盖县","金川县","小金县","黑水县","松潘县","壤塘县","茂县","汶川县"],"n":"阿坝州"},{"a":["康定县","泸定县","九龙县","丹巴县","道孚县","炉霍县","色达县","甘孜县","新龙县","白玉县","德格县","石渠县","雅江县","理塘县","巴塘县","稻城县","乡城县","得荣县"],"n":"甘孜州"},{"a":["美姑县","昭觉县","会理县","会东县","普格县","宁南县","德昌县","冕宁县","盐源县","金阳县","布拖县","雷波县","越西县","喜德县","甘洛县","木里县","西昌市"],"n":"凉山州"},{"a":["武侯区","金牛区","青羊区","成华区","高新区","锦江区","郫县","双流县","高新西区","龙泉驿区","新都区","温江区","都江堰市","彭州市","青白江区","崇州市","金堂县","新津县","邛崃市","大邑县","蒲江县"],"n":"成都市"},{"a":["自流井区","沿滩区","荣县","富顺县","大安区","贡井区"],"n":"自贡市"},{"a":["仁和区","西区","东区","米易县","盐边县"],"n":"攀枝花市"},{"a":["纳溪区","江阳区","龙马潭区","泸县","合江县","叙永县","古蔺县"],"n":"泸州市"},{"a":["江油市","涪城区","游仙区","高新区","经开区","盐亭县","三台县","平武县","北川县","安县","梓潼县"],"n":"绵阳市"},{"a":["广汉市","什邡市","旌阳区","绵竹市","罗江县","中江县"],"n":"德阳市"},{"a":["昭化区","朝天区","利州区","青川县","旺苍县","剑阁县","苍溪县"],"n":"广元市"},{"a":["船山区","射洪县","蓬溪县","大英县","安居区"],"n":"遂宁市"},{"a":["东兴区","资中县","隆昌县","威远县","市中区"],"n":"内江市"},{"a":["市中区","峨眉山市","五通桥区","沙湾区","金口河区","夹江县","井研县","犍为县","沐川县","峨边县","马边县"],"n":"乐山市"},{"a":["宜宾县","南溪区","江安县","长宁县","兴文县","珙县","翠屏区","高县","屏山县","筠连县"],"n":"宜宾市"},{"a":["前锋区","岳池县","武胜县","邻水县","广安区","华蓥市"],"n":"广安市"},{"a":["顺庆区","高坪区","嘉陵区","西充县","阆中市","南部县","仪陇县","蓬安县","营山县"],"n":"南充市"},{"a":["通川区","达川区","大竹县","渠县","万源市","宣汉县","开江县"],"n":"达州市"},{"a":["巴州区","恩阳区","南江县","平昌县","通江县"],"n":"巴中市"},{"a":["芦山县","石棉县","名山区","天全县","荥经县","汉源县","宝兴县","雨城区"],"n":"雅安市"}]},{"n":"海南","c":[{"a":["嘉积镇","万泉镇","石壁镇","中原镇","博鳌镇","阳江镇","龙江镇","潭门镇","塔洋镇","长坡镇","大路镇","会山镇","彬村山华侨农场","东太农场","东红农场","东升农场","南俸农场"],"n":"琼海市"},{"a":["兴隆镇","南林农场","万城镇","龙滚镇","和乐镇","后安镇","大茂镇","东澳镇","礼纪镇","长丰镇","山根镇","北大镇","南桥镇","三更罗镇","六连林场","东兴农场","东和农场","新中农场","兴隆华侨农场"],"n":"万宁市"},{"a":["秀英区","龙华区","琼山区","美兰区"],"n":"海口市"},{"a":["八所镇","东河镇","大田镇","感城镇","板桥镇","三家镇","四更镇","新龙镇","天安乡","江边乡","广坝农场","东方华侨农场"],"n":"东方市"},{"a":["崖城镇","海棠湾镇","吉阳镇","凤凰镇","天涯镇","育才镇","河西区","河东区","南田农场","南新农场","南岛农场","立才农场","南滨农场"],"n":"三亚市"},{"a":["文城镇","重兴镇","蓬莱镇","会文镇","东路镇","潭牛镇","东阁镇","文教镇","东郊镇","龙楼镇","昌洒镇","翁田镇","抱罗镇","冯坡镇","锦山镇","铺前镇","公坡镇","迈号镇","清谰镇","南阳镇","新桥镇","头苑镇","宝芳乡","龙马乡","湖山乡","东路农场","南阳农场","罗豆农场","橡胶研究所"],"n":"文昌市"},{"a":["通什镇","南圣镇","毛阳镇","番阳镇","畅好乡","毛道乡","水满乡","畅好农场"],"n":"五指山市"},{"a":["城区","临城镇","波莲镇","东英镇","博厚镇","皇桐镇","多文镇","和舍镇","南宝镇","新盈镇","调楼镇","加来镇","红华农场","加来农场"],"n":"临高县"},{"a":["城区","金江镇","老城镇","瑞溪镇","永发镇","加乐镇","文儒镇","中兴镇","仁兴镇","福山镇","桥头镇","大丰镇","红光农场","西达农场","金安农场"],"n":"澄迈县"},{"a":["黄竹镇","城区","定城镇","新竹镇","龙湖镇","雷鸣镇","龙门镇","龙河镇","岭口镇","翰林镇","富文镇","金鸡岭农场","中瑞农场","南海农场"],"n":"定安县"},{"a":["县城内","屯城镇","新兴镇","枫木镇","乌坡镇","南吕镇","南坤镇","中建农场","坡心镇","中坤农场","西昌镇"],"n":"屯昌县"},{"a":["红林农场","城区","石碌镇","叉河镇","十月田镇","乌烈镇","昌化镇","海尾镇","七叉镇","王下乡","海南矿业公司","霸王岭林场"],"n":"昌江县"},{"a":["南开乡","阜龙乡","青松乡","金波乡","荣邦乡","城区","白沙农场","牙叉镇","龙江农场","七坊镇","邦溪农场","邦溪镇","打安镇","细水乡","元门乡"],"n":"白沙县"},{"a":["吊罗山乡","黎母山林业公司","阳江农场","乌石农场","加钗农场","长征农场","营根镇","湾岭镇","黎母山镇","和平镇","长征镇","红毛镇","中平镇","上安乡","什运乡","城区"],"n":"琼中县"},{"a":["东华镇","南平镇","吊罗山林业公司","岭门农场","南平农场","椰林镇","光坡镇","三才镇","英州镇","隆广镇","文罗镇","本号镇","新村镇","黎安镇","提蒙乡","群英乡","城区"],"n":"陵水县"},{"a":["保亭研究所","新星农场","金江农场","三道农场","保城镇","什玲镇","加茂镇","响水镇","新政镇","三道镇","六弓乡","南林乡","毛感乡"],"n":"保亭县"},{"a":["尖峰岭林业公司","莺歌海盐场","山荣农场","乐光农场","抱由镇","保国农场","万冲镇","大安镇","志仲镇","千家镇","九所镇","利国镇","黄流镇","佛罗镇","尖峰镇","莺歌海镇","城区"],"n":"乐东县"},{"a":["中沙群岛","西沙群岛","南沙群岛"],"n":"三沙市"},{"a":["热作学院","那大镇","富克镇","和庆镇","南丰镇","大成镇","雅星镇","兰洋镇","光村镇","木棠镇","海头镇","峨蔓镇","三都镇","王五镇","白马井镇","中和镇","排浦镇","东成镇","新州镇","洋浦经济开发区","西培农场","西联农场","蓝洋农场","八一农场","西华农场","西庆农场","西流农场","新盈农场","龙山农场","红岭农场"],"n":"儋州市"}]},{"n":"贵州","c":[{"a":["南明区","云岩区","花溪区","小河区","白云区","清镇市","开阳县","修文县","息烽县","乌当区","观山湖区"],"n":"贵阳市"},{"a":["盘县","六枝特区","水城县","钟山区"],"n":"六盘水市"},{"a":["红花岗区","汇川区","赤水市","仁怀市","遵义县","桐梓县","绥阳县","习水县","凤冈县","正安县","湄潭县","余庆县","道真县","务川县"],"n":"遵义市"},{"a":["碧江区","德江县","江口县","思南县","万山区","石阡县","玉屏侗族自治县","松桃苗族自治县","印江土家族苗族自治县","沿河土家族自治县"],"n":"铜仁市"},{"a":["七星关区","黔西县","大方县","织金县","金沙县","赫章县","纳雍县","威宁彝族回族苗族自治县"],"n":"毕节市"},{"a":["西秀区","普定县","平坝县","镇宁布依族苗族自治县","关岭布依族苗族自治县","紫云苗族布依族自治县"],"n":"安顺市"},{"a":["兴义市","望谟县","兴仁县","普安县","册亨县","晴隆县","贞丰县","安龙县"],"n":"黔西南州"},{"a":["凯里市","施秉市","从江县","锦屏县","镇远县","麻江县","台江县","天柱县","黄平县","榕江县","剑河县","三穗县","雷山县","黎平县","岑巩县","丹寨县"],"n":"黔东南州"},{"a":["都匀市","福泉市","贵定县","惠水县","罗甸县","瓮安县","荔波县","龙里县","平塘县","长顺县","独山县","三都县"],"n":"黔南州"}]},{"n":"云南","c":[{"a":["玉龙县","华坪县","永胜县","宁蒗县","古城区"],"n":"丽江市"},{"a":["文山市","麻栗坡县","砚山县","广南县","马关县","富宁县","西畴县","丘北县"],"n":"文山州"},{"a":["香格里拉县","德钦县","维西县"],"n":"迪庆州"},{"a":["个旧市","开远市","弥勒县","红河县","绿春县","蒙自市","泸西县","建水县","元阳县","石屏县","金平县","屏边县","河口县"],"n":"红河州"},{"a":["景洪市","勐海县","勐腊县"],"n":"西双版纳州"},{"a":["元谋县","南华县","牟定县","武定县","大姚县","双柏县","禄丰县","永仁县","姚安县","楚雄市"],"n":"楚雄州"},{"a":["剑川县","弥渡县","云龙县","洱源县","鹤庆县","宾川县","祥云县","永平县","巍山县","漾濞县","南涧县","大理市"],"n":"大理州"},{"a":["芒市","瑞丽市","盈江县","梁河县","陇川县"],"n":"德宏州"},{"a":["泸水县","福贡县","兰坪县","贡山县"],"n":"怒江州"},{"a":["盘龙区","五华区","西山区","官渡区","呈贡区","东川区","安宁市","富民县","嵩明县","晋宁县","宜良县","禄劝县","石林县","寻甸县"],"n":"昆明市"},{"a":["麒麟区","马龙县","宣威市","富源县","会泽县","陆良县","师宗县","罗平县","沾益县"],"n":"曲靖市"},{"a":["红塔区","华宁县","澄江县","易门县","通海县","江川县","元江县","新平县","峨山县"],"n":"玉溪市"},{"a":["鲁甸县","绥江县","昭阳区","镇雄县","永善县","大关县","盐津县","彝良县","水富县","巧家县","威信县"],"n":"昭通市"},{"a":["孟连县","思茅区","宁洱县","景东县","镇沅县","景谷县","墨江县","澜沧县","西盟县","江城县"],"n":"普洱市"},{"a":["双江县","沧源县","临翔区","镇康县","凤庆县","云县","永德县","耿马县"],"n":"临沧市"},{"a":["隆阳区","施甸县","昌宁县","龙陵县","腾冲县"],"n":"保山市"}]},{"n":"西藏","c":[{"a":["双湖县","索县","那曲县","嘉黎县","比如县","聂荣县","安多县","申扎县","班戈县","巴青县","尼玛县"],"n":"那曲地区"},{"a":["贡嘎县","扎囊县","乃东县","桑日县","琼结县","曲松县","措美县","洛扎县","加查县","隆子县","错那县","浪卡子县"],"n":"山南地区"},{"a":["昌都县","江达县","贡觉县","类乌齐县","丁青县","察雅县","八宿县","左贡县","芒康县","洛隆县","边坝县"],"n":"昌都地区"},{"a":["聂拉木县","昂仁县","日喀则市","南木林县","江孜县","定日县","萨迦县 ","拉孜县","谢通门县","白朗县","仁布县","康马县","定结县","仲巴县","亚东县","吉隆县","萨嘎县","岗巴县"],"n":"日喀则地区"},{"a":["噶尔县","普兰县","札达县 ","日土县","革吉县","改则县","措勤县"],"n":"阿里地区"},{"a":["林芝县","工布江达县","米林县","墨脱县","波密县","察隅县","朗县"],"n":"林芝地区"},{"a":["城关区","林周县","当雄县","尼木县","曲水县","堆龙德庆县","达孜县","墨竹工卡县"],"n":"拉萨市"}]},{"n":"陕西","c":[{"a":["新城区","雁塔区","未央区","长安区","灞桥区","碑林区","莲湖区","临潼区","阎良区","西安武警工程学院","高陵县","蓝田县","户县","周至县"],"n":"西安市"},{"a":["印台区","宜君县","王益区","耀州区"],"n":"铜川市"},{"a":["渭滨区","金台区","岐山县","太白县","凤翔县","陇县","麟游县","千阳县","扶风县","凤县","眉县","陈仓区"],"n":"宝鸡市"},{"a":["秦都区","渭城区","兴平市","礼泉县","泾阳县","永寿县","三原县","彬县","旬邑县","长武县","乾县","武功县","淳化县","杨陵区"],"n":"咸阳市"},{"a":["韩城市","华阴市","蒲城县","华县","潼关县","大荔县","澄城县","合阳县","白水县","富平县","临渭区"],"n":"渭南市"},{"a":["宝塔区","安塞县","洛川县","子长县","黄陵县","延长县","宜川县","延川县","甘泉县","富县","志丹县","黄龙县","吴起县"],"n":"延安市"},{"a":["经济开发区南区","汉台区","南郑县","城固县","洋县","佛坪县","留坝县","镇巴县","西乡县","勉县","略阳县","宁强县"],"n":"汉中市"},{"a":["清涧县","绥德县","佳县","神木县","府谷县","子洲县","横山县","米脂县","吴堡县","定边县","榆阳区","靖边县"],"n":"榆林市"},{"a":["商州区","镇安县","山阳县","洛南县","商南县","丹凤县","柞水县"],"n":"商洛市"},{"a":["汉滨区","紫阳县","岚皋县","旬阳县","镇坪县","平利县","宁陕县","汉阴县","石泉县","白河县"],"n":"安康市"}]},{"n":"甘肃","c":[{"a":["合作市","夏河县","碌曲县","舟曲县","玛曲县","迭部县","临潭县","卓尼县"],"n":"甘南州"},{"a":["岷县","安定区","通渭县","临洮县","漳县","渭源县","陇西县"],"n":"定西市"},{"a":["临夏县","康乐县","永靖县","和政县","东乡族自治县","积石山县","临夏市","广河县"],"n":"临夏州"},{"a":["七里河区","安宁区","城关区","西固区","红古区","永登县","榆中县","皋兰县"],"n":"兰州市"},{"a":["永昌县","金川区"],"n":"金昌市"},{"a":["白银区","平川区","靖远县","景泰县","会宁县"],"n":"白银市"},{"a":["麦积区","秦州区","甘谷县","武山县","清水县","秦安县","张家川县"],"n":"天水市"},{"a":["长城区","镜铁区","雄关区"],"n":"嘉峪关市"},{"a":["静宁县","崆峒区","华亭县","崇信县","泾川县","灵台县","庄浪县"],"n":"平凉市"},{"a":["庆城县","西峰区","镇原县","合水县","华池县","环县","宁县","正宁县"],"n":"庆阳市"},{"a":["成县","礼县","康县","武都区","文县","两当县","徽县","宕昌县","西和县"],"n":"陇南市"},{"a":["凉州区","古浪县","天祝县","民勤县"],"n":"武威市"},{"a":["甘州区","山丹县","临泽县","高台县","肃南县","民乐县"],"n":"张掖市"},{"a":["金塔县","阿克塞县","肃北县","瓜州县","肃州区","玉门市","敦煌市"],"n":"酒泉市"}]},{"n":"青海","c":[{"a":["湟中县","湟源县","大通县","城中区","城东区","城西区","城北区"],"n":"西宁市"},{"a":["平安县","乐都县","民和县","互助县","化隆县","循化县"],"n":"海东地区"},{"a":["海晏县","祁连县","刚察县","门源县"],"n":"海北州"},{"a":["尖扎县","同仁县","泽库县","河南县"],"n":"黄南州"},{"a":["共和县","同德县","贵德县","兴海县","贵南县"],"n":"海南州"},{"a":["玛沁县","甘德县","达日县","班玛县","久治县","玛多县"],"n":"果洛州"},{"a":["玉树县","称多县","囊谦县","杂多县","治多县","曲麻莱县"],"n":"玉树州"},{"a":["德令哈市","乌兰县","天峻县","都兰县","大柴旦行委","冷湖行委","茫崖行委","格尔木市"],"n":"海西州"}]},{"n":"宁夏","c":[{"a":["灵武市","永宁县","贺兰县","兴庆区","金凤区","西夏区"],"n":"银川市"},{"a":["平罗县","惠农区","大武口区"],"n":"石嘴山市"},{"a":["青铜峡市","同心县","盐池县","红寺堡开发区","利通区"],"n":"吴忠市"},{"a":["西吉县","隆德县","泾源县","彭阳县","原州区"],"n":"固原市"},{"a":["中宁县","海原县","沙坡头区"],"n":"中卫市"}]},{"n":"新疆","c":[{"a":["铁门关市"],"n":"铁门关市"},{"a":["五家渠市"],"n":"五家渠市"},{"a":["阿拉尔市"],"n":"阿拉尔市"},{"a":["图木舒克市"],"n":"图木舒克市"},{"a":["天山区","头屯河区","达坂城区","米东区","新市区","沙依巴克区","水磨沟区","乌鲁木齐县"],"n":"乌鲁木齐市"},{"a":["克拉玛依区","独山子区","乌尔禾区","白碱滩区"],"n":"克拉玛依市"},{"a":["石河子市"],"n":"石河子市"},{"a":["吐鲁番市","托克逊县","鄯善县"],"n":"吐鲁番地区"},{"a":["哈密市","巴里坤县","伊吾县"],"n":"哈密地区"},{"a":["和田县","和田市","墨玉县","洛浦县","策勒县","于田县","民丰县","皮山县"],"n":"和田地区"},{"a":["阿克苏市","温宿县","沙雅县","拜城县","阿瓦提县","库车县","柯坪县","新和县","乌什县"],"n":"阿克苏地区"},{"a":["喀什市","巴楚县","泽普县","伽师县","叶城县","岳普湖县","疏附县","疏勒县","英吉沙县","麦盖提县","莎车县","塔什库尔干县"],"n":"喀什地区"},{"a":["阿图什市","阿合奇县","乌恰县","阿克陶县"],"n":"克孜勒苏州"},{"a":["库尔勒市","尉犁县","和静县","博湖县","和硕县","轮台县","若羌县","且末县","焉耆县"],"n":"巴音郭楞州"},{"a":["昌吉市","阜康市","奇台县","玛纳斯县","吉木萨尔县","呼图壁县","木垒县"],"n":"昌吉州"},{"a":["阿拉山口市","博乐市","精河县","温泉县"],"n":"博尔塔拉州"},{"a":["伊宁县","伊宁市","特克斯县","尼勒克县","昭苏县","新源县","霍城县","察布查尔县","巩留县","奎屯市"],"n":"伊犁州"},{"a":["塔城市","乌苏市","额敏县","裕民县","沙湾县","托里县","和布克赛尔县"],"n":"塔城地区"},{"a":["北屯市","阿勒泰市","富蕴县","青河县","吉木乃县","布尔津县","福海县","哈巴河县"],"n":"阿勒泰地区"}]},{"n":"台湾","c":[{"a":["台湾市区内"],"n":"台湾"}]},{"n":"钓鱼岛","c":[{"a":[],"n":"钓鱼岛"}]},{"n":"港澳","c":[{"a":["中西区","东区","九龙城区","观塘区","深水埗区","湾仔区","黄大仙区","油尖旺区","离岛区","葵青区","北区","西贡区","沙田区","屯门区","大埔区","荃湾区","元朗区","香港","九龙","新界"],"n":"香港特别行政区"},{"a":["澳门特别行政区","澳门半岛","凼仔","路凼城","路环"],"n":"澳门特别行政区"}]}];if(typeof define==="function"){define(citys)}else{window.YDUI_CITYS=citys}}(); \ No newline at end of file diff --git a/src/components/dialog/index.js b/src/components/dialog/index.js new file mode 100644 index 00000000..06bef3c8 --- /dev/null +++ b/src/components/dialog/index.js @@ -0,0 +1,13 @@ +import Alert from './src/alert'; +import Confirm from './src/confirm'; +import Toast from './src/toast'; +import Notify from './src/notify'; +import Loading from './src/loading'; + +export default { + confirm: Confirm, + alert: Alert, + toast: Toast, + notify: Notify, + loading: Loading +}; diff --git a/src/components/dialog/src/alert/alert.vue b/src/components/dialog/src/alert/alert.vue new file mode 100644 index 00000000..c6683c15 --- /dev/null +++ b/src/components/dialog/src/alert/alert.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/src/components/dialog/src/alert/index.js b/src/components/dialog/src/alert/index.js new file mode 100644 index 00000000..60a51a29 --- /dev/null +++ b/src/components/dialog/src/alert/index.js @@ -0,0 +1,28 @@ +import Vue from 'vue'; +import {pageScroll} from '../../../../utils/assist'; + +const AlertConstructor = Vue.extend(require('./alert.vue')); + +const instance = new AlertConstructor({ + el: document.createElement('div') +}); + +AlertConstructor.prototype.closeAlert = function () { + pageScroll.unlock(); + + const el = instance.$el; + el.parentNode && el.parentNode.removeChild(el); + + typeof this.callback == 'function' && this.callback(); +}; + +const Alert = (options = {}) => { + instance.mes = options.mes; + instance.callback = options.callback; + + document.body.appendChild(instance.$el); + + pageScroll.lock(); +}; + +export default Alert; diff --git a/src/components/dialog/src/confirm/confirm.vue b/src/components/dialog/src/confirm/confirm.vue new file mode 100644 index 00000000..2102cbe2 --- /dev/null +++ b/src/components/dialog/src/confirm/confirm.vue @@ -0,0 +1,38 @@ + + + diff --git a/src/components/dialog/src/confirm/index.js b/src/components/dialog/src/confirm/index.js new file mode 100644 index 00000000..375c93b5 --- /dev/null +++ b/src/components/dialog/src/confirm/index.js @@ -0,0 +1,31 @@ +import Vue from 'vue'; +import {pageScroll} from '../../../../utils/assist'; + +const ConfirmConstructor = Vue.extend(require('./confirm.vue')); + +const instance = new ConfirmConstructor({ + el: document.createElement('div') +}); + +ConfirmConstructor.prototype.closeConfirm = function (stay, callback) { + typeof callback == 'function' && callback(); + + if (stay)return; + + pageScroll.unlock(); + + const el = instance.$el; + el.parentNode && el.parentNode.removeChild(el); +}; + +const Confirm = (options = {}) => { + instance.mes = options.mes || ''; + instance.title = options.title || '提示'; + instance.opts = options.opts; + + document.body.appendChild(instance.$el); + + pageScroll.lock(); +}; + +export default Confirm; diff --git a/src/components/dialog/src/loading/index.js b/src/components/dialog/src/loading/index.js new file mode 100644 index 00000000..a9027abd --- /dev/null +++ b/src/components/dialog/src/loading/index.js @@ -0,0 +1,29 @@ +import Vue from 'vue'; +import {pageScroll} from '../../../../utils/assist'; + +const LoadingConstructor = Vue.extend(require('./loading.vue')); + +const instance = new LoadingConstructor({ + el: document.createElement('div') +}); + +LoadingConstructor.prototype.open = (title) => { + instance.title = title || '正在加载'; + + document.body.appendChild(instance.$el); + + pageScroll.lock(); +}; + +LoadingConstructor.prototype.close = function () { + const el = instance.$el; + el.parentNode && el.parentNode.removeChild(el); + + pageScroll.unlock(); +}; + +export default { + open: instance.open, + close: instance.close +}; + diff --git a/src/components/dialog/src/loading/loading.vue b/src/components/dialog/src/loading/loading.vue new file mode 100644 index 00000000..c3561fae --- /dev/null +++ b/src/components/dialog/src/loading/loading.vue @@ -0,0 +1,16 @@ + + + diff --git a/src/components/dialog/src/notify/index.js b/src/components/dialog/src/notify/index.js new file mode 100644 index 00000000..7fa5ca6f --- /dev/null +++ b/src/components/dialog/src/notify/index.js @@ -0,0 +1,46 @@ +import Vue from 'vue'; + +const NotifyConstructor = Vue.extend(require('./notify.vue')); + +const instance = new NotifyConstructor({ + el: document.createElement('div') +}); + +let timer = null; +let lock = false; + +NotifyConstructor.prototype.closeNotify = function () { + instance.classes = 'notify-out'; + + setTimeout(() => { + const el = instance.$el; + el.parentNode && el.parentNode.removeChild(el); + lock = false; + }, 150); + + typeof this.callback == 'function' && this.callback(); +}; + +const Notify = (options = {}) => { + instance.classes = ''; + instance.mes = options.mes; + instance.timeout = ~~options.timeout || 5000; + instance.callback = options.callback; + + if (lock)return; + lock = true; + + document.body.appendChild(instance.$el); + + instance.$el.addEventListener('click', () => { + clearTimeout(timer); + instance.closeNotify(); + }); + + timer = setTimeout(() => { + clearTimeout(timer); + instance.closeNotify(); + }, instance.timeout); +}; + +export default Notify; diff --git a/src/components/dialog/src/notify/notify.vue b/src/components/dialog/src/notify/notify.vue new file mode 100644 index 00000000..1fd07126 --- /dev/null +++ b/src/components/dialog/src/notify/notify.vue @@ -0,0 +1,18 @@ + + + diff --git a/src/components/dialog/src/toast/index.js b/src/components/dialog/src/toast/index.js new file mode 100644 index 00000000..456c6021 --- /dev/null +++ b/src/components/dialog/src/toast/index.js @@ -0,0 +1,35 @@ +import Vue from 'vue'; +import {pageScroll} from '../../../../utils/assist'; + +const ToastConstructor = Vue.extend(require('./toast.vue')); + +const instance = new ToastConstructor({ + el: document.createElement('div') +}); + +ToastConstructor.prototype.closeToast = function () { + const el = instance.$el; + el.parentNode && el.parentNode.removeChild(el); + + pageScroll.unlock(); + + typeof this.callback == 'function' && this.callback(); +}; + +const Toast = (options = {}) => { + instance.mes = options.mes; + instance.icon = options.icon; + instance.timeout = ~~options.timeout || 2000; + instance.callback = options.callback; + + document.body.appendChild(instance.$el); + + pageScroll.lock(); + + const timer = setTimeout(() => { + clearTimeout(timer); + instance.closeToast(); + }, instance.timeout + 100); +}; + +export default Toast; diff --git a/src/components/dialog/src/toast/toast.vue b/src/components/dialog/src/toast/toast.vue new file mode 100644 index 00000000..179f6312 --- /dev/null +++ b/src/components/dialog/src/toast/toast.vue @@ -0,0 +1,28 @@ + + + diff --git a/src/components/grids/index.js b/src/components/grids/index.js new file mode 100644 index 00000000..24949572 --- /dev/null +++ b/src/components/grids/index.js @@ -0,0 +1,9 @@ +import GridsItem from './src/grids-item.vue'; +import GridsGroup from './src/grids-group.vue'; + +const Grids = {}; + +Grids.GridsGroup = GridsGroup; +Grids.GridsItem = GridsItem; + +export default Grids; diff --git a/src/components/grids/src/grids-group.vue b/src/components/grids/src/grids-group.vue new file mode 100644 index 00000000..e15a2718 --- /dev/null +++ b/src/components/grids/src/grids-group.vue @@ -0,0 +1,29 @@ + + + diff --git a/src/components/grids/src/grids-item.vue b/src/components/grids/src/grids-item.vue new file mode 100644 index 00000000..4ea7db6c --- /dev/null +++ b/src/components/grids/src/grids-item.vue @@ -0,0 +1,31 @@ + + + + + diff --git a/src/components/icons/index.js b/src/components/icons/index.js new file mode 100644 index 00000000..66e1412b --- /dev/null +++ b/src/components/icons/index.js @@ -0,0 +1,2 @@ +import Icons from './src/icons.vue'; +export default Icons; diff --git a/src/components/icons/src/icons.vue b/src/components/icons/src/icons.vue new file mode 100644 index 00000000..6ba085b8 --- /dev/null +++ b/src/components/icons/src/icons.vue @@ -0,0 +1,50 @@ + + + + + diff --git a/src/components/infinitescroll/index.js b/src/components/infinitescroll/index.js new file mode 100644 index 00000000..79c2a7a0 --- /dev/null +++ b/src/components/infinitescroll/index.js @@ -0,0 +1,2 @@ +import InfiniteScroll from './src/infinitescroll.vue'; +export default InfiniteScroll; diff --git a/src/components/infinitescroll/src/infinitescroll.vue b/src/components/infinitescroll/src/infinitescroll.vue new file mode 100644 index 00000000..2ce31e55 --- /dev/null +++ b/src/components/infinitescroll/src/infinitescroll.vue @@ -0,0 +1,86 @@ + + + diff --git a/src/components/keyboard/index.js b/src/components/keyboard/index.js new file mode 100644 index 00000000..578c3ee0 --- /dev/null +++ b/src/components/keyboard/index.js @@ -0,0 +1,3 @@ +import KeyBoard from './src/keyboard.vue'; + +export default KeyBoard; diff --git a/src/components/keyboard/src/keyboard.vue b/src/components/keyboard/src/keyboard.vue new file mode 100644 index 00000000..4f683a12 --- /dev/null +++ b/src/components/keyboard/src/keyboard.vue @@ -0,0 +1,126 @@ + + + + + diff --git a/src/components/layout/index.js b/src/components/layout/index.js new file mode 100644 index 00000000..05a98ad3 --- /dev/null +++ b/src/components/layout/index.js @@ -0,0 +1,2 @@ +import Layout from './src/layout.vue'; +export default Layout; diff --git a/src/components/layout/src/layout.vue b/src/components/layout/src/layout.vue new file mode 100644 index 00000000..f0090998 --- /dev/null +++ b/src/components/layout/src/layout.vue @@ -0,0 +1,31 @@ + + + diff --git a/src/components/list/index.js b/src/components/list/index.js new file mode 100644 index 00000000..95b17191 --- /dev/null +++ b/src/components/list/index.js @@ -0,0 +1,11 @@ +import ListTheme from './src/list-theme.vue'; +import ListItem from './src/list-item.vue'; +import ListOther from './src/list-other.vue'; + +const List = {}; + +List.ListTheme = ListTheme; +List.ListItem = ListItem; +List.ListOther = ListOther; + +export default List; diff --git a/src/components/list/src/list-item.vue b/src/components/list/src/list-item.vue new file mode 100644 index 00000000..7e80235e --- /dev/null +++ b/src/components/list/src/list-item.vue @@ -0,0 +1,19 @@ + + + diff --git a/src/components/list/src/list-other.vue b/src/components/list/src/list-other.vue new file mode 100644 index 00000000..64be9e0d --- /dev/null +++ b/src/components/list/src/list-other.vue @@ -0,0 +1,11 @@ + + + diff --git a/src/components/list/src/list-theme.vue b/src/components/list/src/list-theme.vue new file mode 100644 index 00000000..c9021f60 --- /dev/null +++ b/src/components/list/src/list-theme.vue @@ -0,0 +1,27 @@ + + + + + diff --git a/src/components/navbar/index.js b/src/components/navbar/index.js new file mode 100644 index 00000000..78f66969 --- /dev/null +++ b/src/components/navbar/index.js @@ -0,0 +1,8 @@ +import NavBar from './src/navbar.vue'; +import BackIcon from './src/navbar-back-icon.vue'; +import NextIcon from './src/navbar-next-icon.vue'; + +NavBar.BackIcon = BackIcon; +NavBar.NextIcon = NextIcon; + +export default NavBar; diff --git a/src/components/navbar/src/navbar-back-icon.vue b/src/components/navbar/src/navbar-back-icon.vue new file mode 100644 index 00000000..d4b7011f --- /dev/null +++ b/src/components/navbar/src/navbar-back-icon.vue @@ -0,0 +1,9 @@ + + + diff --git a/src/components/navbar/src/navbar-next-icon.vue b/src/components/navbar/src/navbar-next-icon.vue new file mode 100644 index 00000000..391ea9c8 --- /dev/null +++ b/src/components/navbar/src/navbar-next-icon.vue @@ -0,0 +1,9 @@ + + + diff --git a/src/components/navbar/src/navbar.vue b/src/components/navbar/src/navbar.vue new file mode 100644 index 00000000..3c0da6ee --- /dev/null +++ b/src/components/navbar/src/navbar.vue @@ -0,0 +1,34 @@ + + + + + diff --git a/src/components/progressbar/index.js b/src/components/progressbar/index.js new file mode 100644 index 00000000..6d7bc228 --- /dev/null +++ b/src/components/progressbar/index.js @@ -0,0 +1,2 @@ +import ProgressBar from './src/progressbar.vue'; +export default ProgressBar; \ No newline at end of file diff --git a/src/components/progressbar/src/progressbar.vue b/src/components/progressbar/src/progressbar.vue new file mode 100644 index 00000000..6f087cb9 --- /dev/null +++ b/src/components/progressbar/src/progressbar.vue @@ -0,0 +1,162 @@ + + + + + diff --git a/src/components/pullrefresh/index.js b/src/components/pullrefresh/index.js new file mode 100644 index 00000000..8d680025 --- /dev/null +++ b/src/components/pullrefresh/index.js @@ -0,0 +1,2 @@ +import PullRefresh from './src/pullrefresh.vue'; +export default PullRefresh; diff --git a/src/components/pullrefresh/src/pullrefresh.vue b/src/components/pullrefresh/src/pullrefresh.vue new file mode 100644 index 00000000..3c427cec --- /dev/null +++ b/src/components/pullrefresh/src/pullrefresh.vue @@ -0,0 +1,187 @@ + + + diff --git a/src/components/scrolltab/index.js b/src/components/scrolltab/index.js new file mode 100644 index 00000000..05134c19 --- /dev/null +++ b/src/components/scrolltab/index.js @@ -0,0 +1,6 @@ +import ScrollTab from './src/scrolltab.vue'; +import ScrollTabPanel from './src/scrolltab-panel.vue'; + +ScrollTab.ScrollTabPanel = ScrollTabPanel; + +export default ScrollTab; diff --git a/src/components/scrolltab/src/scrolltab-panel.vue b/src/components/scrolltab/src/scrolltab-panel.vue new file mode 100644 index 00000000..48621eb6 --- /dev/null +++ b/src/components/scrolltab/src/scrolltab-panel.vue @@ -0,0 +1,17 @@ + + + diff --git a/src/components/scrolltab/src/scrolltab.vue b/src/components/scrolltab/src/scrolltab.vue new file mode 100644 index 00000000..94e30ab0 --- /dev/null +++ b/src/components/scrolltab/src/scrolltab.vue @@ -0,0 +1,115 @@ + + + + + diff --git a/src/components/sendcode/index.js b/src/components/sendcode/index.js new file mode 100644 index 00000000..98103cba --- /dev/null +++ b/src/components/sendcode/index.js @@ -0,0 +1,2 @@ +import SendCode from './src/sendcode.vue'; +export default SendCode; diff --git a/src/components/sendcode/src/sendcode.vue b/src/components/sendcode/src/sendcode.vue new file mode 100644 index 00000000..1570d909 --- /dev/null +++ b/src/components/sendcode/src/sendcode.vue @@ -0,0 +1,78 @@ + + + diff --git a/src/components/slider/index.js b/src/components/slider/index.js new file mode 100644 index 00000000..98ed09cd --- /dev/null +++ b/src/components/slider/index.js @@ -0,0 +1,6 @@ +import Slider from './src/slider.vue'; +import SliderItem from './src/slider-item.vue'; + +Slider.SliderItem = SliderItem; + +export default Slider; diff --git a/src/components/slider/src/slider-item.vue b/src/components/slider/src/slider-item.vue new file mode 100644 index 00000000..6645c626 --- /dev/null +++ b/src/components/slider/src/slider-item.vue @@ -0,0 +1,11 @@ + + + diff --git a/src/components/slider/src/slider.vue b/src/components/slider/src/slider.vue new file mode 100644 index 00000000..ae74bcdb --- /dev/null +++ b/src/components/slider/src/slider.vue @@ -0,0 +1,277 @@ + + + + + diff --git a/src/components/spinner/index.js b/src/components/spinner/index.js new file mode 100644 index 00000000..c248a9d4 --- /dev/null +++ b/src/components/spinner/index.js @@ -0,0 +1,2 @@ +import Spinner from './src/spinner.vue'; +export default Spinner; diff --git a/src/components/spinner/src/spinner.vue b/src/components/spinner/src/spinner.vue new file mode 100644 index 00000000..312e0bf6 --- /dev/null +++ b/src/components/spinner/src/spinner.vue @@ -0,0 +1,226 @@ + + + + + diff --git a/src/components/switch/index.js b/src/components/switch/index.js new file mode 100644 index 00000000..0f63529f --- /dev/null +++ b/src/components/switch/index.js @@ -0,0 +1,2 @@ +import Switch from './src/switch.vue'; +export default Switch; diff --git a/src/components/switch/src/switch.vue b/src/components/switch/src/switch.vue new file mode 100644 index 00000000..1dee5ba2 --- /dev/null +++ b/src/components/switch/src/switch.vue @@ -0,0 +1,36 @@ + + + + + diff --git a/src/components/tab/index.js b/src/components/tab/index.js new file mode 100644 index 00000000..d350f1d5 --- /dev/null +++ b/src/components/tab/index.js @@ -0,0 +1,6 @@ +import Tab from './src/tab.vue'; +import TabPanel from './src/tab-panel.vue'; + +Tab.TabPanel = TabPanel; + +export default Tab; diff --git a/src/components/tab/src/tab-panel.vue b/src/components/tab/src/tab-panel.vue new file mode 100644 index 00000000..b781a147 --- /dev/null +++ b/src/components/tab/src/tab-panel.vue @@ -0,0 +1,20 @@ + + + diff --git a/src/components/tab/src/tab.vue b/src/components/tab/src/tab.vue new file mode 100644 index 00000000..bf83ef99 --- /dev/null +++ b/src/components/tab/src/tab.vue @@ -0,0 +1,58 @@ + + + + + diff --git a/src/components/tabbar/index.js b/src/components/tabbar/index.js new file mode 100644 index 00000000..4454c4f8 --- /dev/null +++ b/src/components/tabbar/index.js @@ -0,0 +1,6 @@ +import TabBar from './src/tabbar.vue'; +import TabBarItem from './src/tabbar-item.vue'; + +TabBar.TabBarItem = TabBarItem; + +export default TabBar; diff --git a/src/components/tabbar/src/tabbar-item.vue b/src/components/tabbar/src/tabbar-item.vue new file mode 100644 index 00000000..3b80ebc3 --- /dev/null +++ b/src/components/tabbar/src/tabbar-item.vue @@ -0,0 +1,29 @@ + + + diff --git a/src/components/tabbar/src/tabbar.vue b/src/components/tabbar/src/tabbar.vue new file mode 100644 index 00000000..5f0afbbc --- /dev/null +++ b/src/components/tabbar/src/tabbar.vue @@ -0,0 +1,23 @@ + + + + + diff --git a/src/index.js b/src/index.js new file mode 100644 index 00000000..861fdc19 --- /dev/null +++ b/src/index.js @@ -0,0 +1,98 @@ +import './styles/index.less'; + +import Dialog from './components/dialog'; +import Layout from './components/layout'; +import Button from './components/button'; +import Navbar from './components/navbar'; +import Cell from './components/cell'; +import Switch from './components/switch'; +import Grids from './components/grids'; +import Icons from './components/icons'; +import List from './components/list'; +import InfiniteScroll from './components/infinitescroll'; +import PullRefresh from './components/pullrefresh'; +import Badge from './components/badge'; +import TabBar from './components/tabbar'; +import Tab from './components/tab'; +import ScrollTab from './components/scrolltab'; +import ActionSheet from './components/actionsheet'; +import SendCode from './components/sendcode'; +import KeyBoard from './components/keyboard'; +import Slider from './components/slider'; +import Spinner from './components/spinner'; +import CitySelect from './components/cityselect'; +import ProgressBar from './components/progressbar'; + +window.document.addEventListener('touchstart', function (event) { + /* Do Nothing */ +}, false); + +const install = function (Vue) { + Vue.component(Layout.name, Layout); + Vue.component(Button.name, Button); + Vue.component(Button.ButtonGroup.name, Button.ButtonGroup); + Vue.component(Navbar.name, Navbar); + Vue.component(Navbar.BackIcon.name, Navbar.BackIcon); + Vue.component(Navbar.NextIcon.name, Navbar.NextIcon); + Vue.component(Cell.CellGroup.name, Cell.CellGroup); + Vue.component(Cell.CellItem.name, Cell.CellItem); + Vue.component(Switch.name, Switch); + Vue.component(Grids.GridsGroup.name, Grids.GridsGroup); + Vue.component(Grids.GridsItem.name, Grids.GridsItem); + Vue.component(Icons.name, Icons); + Vue.component(List.ListTheme.name, List.ListTheme); + Vue.component(List.ListItem.name, List.ListItem); + Vue.component(List.ListOther.name, List.ListOther); + Vue.component(InfiniteScroll.name, InfiniteScroll); + Vue.component(PullRefresh.name, PullRefresh); + Vue.component(Badge.name, Badge); + Vue.component(Badge.BadgeRadius.name, Badge.BadgeRadius); + Vue.component(TabBar.name, TabBar); + Vue.component(TabBar.TabBarItem.name, TabBar.TabBarItem); + Vue.component(Tab.name, Tab); + Vue.component(Tab.TabPanel.name, Tab.TabPanel); + Vue.component(ScrollTab.name, ScrollTab); + Vue.component(ScrollTab.ScrollTabPanel.name, ScrollTab.ScrollTabPanel); + Vue.component(ActionSheet.name, ActionSheet); + Vue.component(SendCode.name, SendCode); + Vue.component(KeyBoard.name, KeyBoard); + Vue.component(Slider.name, Slider); + Vue.component(Slider.SliderItem.name, Slider.SliderItem); + Vue.component(Spinner.name, Spinner); + Vue.component(CitySelect.name, CitySelect); + Vue.component(ProgressBar.name, ProgressBar); + + Vue.prototype.$yduiBus = new Vue(); + Vue.prototype.$dialog = Dialog; +}; + +if (typeof window !== 'undefined' && window.Vue) { + install(window.Vue); +} + +export default { + install, + version: '0.0.1', + Dialog, + Layout, + Button, + Navbar, + Cell, + Switch, + Grids, + Icons, + List, + InfiniteScroll, + PullRefresh, + Badge, + TabBar, + Tab, + ScrollTab, + ActionSheet, + SendCode, + KeyBoard, + Slider, + Spinner, + CitySelect, + ProgressBar +}; diff --git a/src/styles/common/iconfont.less b/src/styles/common/iconfont.less new file mode 100644 index 00000000..ec041ed9 --- /dev/null +++ b/src/styles/common/iconfont.less @@ -0,0 +1,4 @@ +@font-face { + font-family: @iconfont-inlay; + src: url(data:application/x-font-ttf;base64,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) format('truetype'); +} diff --git a/src/styles/common/mixins.less b/src/styles/common/mixins.less new file mode 100644 index 00000000..c2d90702 --- /dev/null +++ b/src/styles/common/mixins.less @@ -0,0 +1,134 @@ +// 按下去背景颜色 +// ----------------------------------------------------------------------------- +.tap-color(@color, @opacity: .9) { + background-color: @color; + &:active { + background-color: @color * @opacity; + } +} + +// 遮罩层 +// ----------------------------------------------------------------------------- +.mask(@bgcolor: rgba(0, 0, 0, .4), @z-index: @base-zindex * 1500) { + background-color: @bgcolor; + position: fixed; + z-index: @z-index; + bottom: 0; + right: 0; + left: 0; + top: 0; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-pack: center; + -webkit-justify-content: center; + -ms-flex-pack: center; + justify-content: center; + -webkit-box-align: center; + -webkit-align-items: center; + -ms-flex-align: center; + align-items: center; +} + +// 多行文本溢出显示省略号 +// ----------------------------------------------------------------------------- +.line-clamp(@line: 2, @line-height: .38rem) { + overflow: hidden; + display: -webkit-box; + -webkit-line-clamp: @line; + -webkit-box-orient: vertical; + word-break: break-all; + text-overflow: ellipsis; + line-height: @line-height; + max-height: @line-height * @line + .2rem; +} + +// 单行文本溢出显示省略号 +// ----------------------------------------------------------------------------- +.text-overflow(@align: justify) { + word-wrap: normal; + text-overflow: ellipsis; + white-space: nowrap; + overflow: hidden; + text-align: @align; +} + +// 三角形箭头 +// ----------------------------------------------------------------------------- +// @deg: 45deg - right +// 135deg - down +// -45deg - up +// -135deg - left +// ------------------------------------------------------------------------ +.arrow(@color: #DDD, @width: .2rem, @border-width: 2px, @deg: 45deg) { + content: ''; + display: inline-block; + width: @width; + height: @width; + border-style: solid; + border-color: @color; + border-width: @border-width @border-width 0 0; + -webkit-transform: rotate(@deg); + transform: rotate(@deg); +} + +// 一像素边框 +// ----------------------------------------------------------------------------- +.top-line(@color, @zindex: 0) { + content: ''; + position: absolute; + z-index: @zindex; + top: 0; + left: 0; + width: 100%; + height: 1px; + border-top: 1px solid @color; + -webkit-transform: scaleY(.5); + transform: scaleY(.5); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; +} + +.bottom-line(@color, @zindex: 0) { + content: ''; + position: absolute; + z-index: @zindex; + bottom: 0; + left: 0; + width: 100%; + height: 1px; + border-bottom: 1px solid @color; + -webkit-transform: scaleY(.5); + transform: scaleY(.5); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; +} + +.left-line(@color, @zindex: 0) { + content: ''; + position: absolute; + z-index: @zindex; + top: 0; + left: 0; + height: 100%; + border-left: 1px solid @color; + -webkit-transform: scaleX(.5); + transform: scaleX(.5); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; +} + +.right-line(@color, @zindex: 0) { + content: ''; + position: absolute; + z-index: @zindex; + top: 0; + right: 0; + height: 100%; + border-right: 1px solid @color; + -webkit-transform: scaleX(.5); + transform: scaleX(.5); + -webkit-transform-origin: 0 0; + transform-origin: 0 0; +} diff --git a/src/styles/common/public.less b/src/styles/common/public.less new file mode 100644 index 00000000..4254801f --- /dev/null +++ b/src/styles/common/public.less @@ -0,0 +1,94 @@ +.g-view { + margin: 0 auto; + max-width: @max-width; + min-width: @min-width; + &:before { + content: ''; + display: block; + width: 100%; + height: @navbar-height; + } + &:after { + content: ''; + display: block; + width: 100%; + height: @body-padding-bottom * 3; + } +} + +.g-flexview { + height: 100%; + display: -webkit-box; + display: -webkit-flex; + display: -ms-flexbox; + display: flex; + -webkit-box-orient: vertical; + -webkit-box-direction: normal; + -webkit-flex-direction: column; + -ms-flex-direction: column; + flex-direction: column; + margin: 0 auto; + max-width: @max-width; + min-width: @min-width; +} + +.g-scrollview { + width: 100%; + height: 100%; + -webkit-box-flex: 1; + -webkit-flex: 1; + -ms-flex: 1; + flex: 1; + overflow-y: auto; + overflow-x: hidden; + -webkit-overflow-scrolling: touch; + position: relative; + margin-bottom: -1px; + &:after { + content: ''; + display: block; + width: 100%; + height: @body-padding-bottom; + } +} + +.g-linetitle { + padding: .15rem + .2rem @body-padding-vertical .1rem; + font-size: @cell-title-fontsize; + text-align: left; + color: @cell-title-color; + position: relative; + z-index: 1; + background-color: @body-bg; + &:after { + .bottom-line(@line-color, 3); + } +} + +.ios .g-scrollview { + margin-top: 1px; +} + +.hairline .g-scrollview { + margin-top: 0.5px; +} + +.g-fix-ios-overflow-scrolling-bug { + -webkit-overflow-scrolling: auto; +} + +.mask-black-dialog { + .mask(rgba(0, 0, 0, .4), @base-zindex * 1500); +} + +.mask-black { + .mask(rgba(0, 0, 0, .4), @base-zindex * 500); +} + +.mask-white-dialog { + .mask(rgba(0, 0, 0, 0), @base-zindex * 1500); +} + +.mask-white { + .mask(rgba(0, 0, 0, 0), @base-zindex * 500); +} diff --git a/src/styles/common/reset.less b/src/styles/common/reset.less new file mode 100644 index 00000000..1eb60a21 --- /dev/null +++ b/src/styles/common/reset.less @@ -0,0 +1,103 @@ +*, *:before, *:after { + box-sizing: border-box; + outline: none; +} + +html, body { + height: 100%; +} + +body { + background-color: @body-bg; + font-size: 12px; + -webkit-font-smoothing: antialiased; + font-family: arial, sans-serif; +} + +body, h1, h2, h3, h4, h5, h6, hr, p, blockquote, dl, dt, dd, ul, ol, li, pre, form, fieldset, legend, button, input, textarea, th, td, iframe { + margin: 0; + padding: 0; +} + +img, article, aside, details, figcaption, figure, footer, header, menu, nav, section, summary, time, mark, audio, video { + display: block; + margin: 0; + padding: 0; +} + +h1, h2, h3, h4, h5, h6 { + font-size: 100%; +} + +fieldset, img { + border: 0; +} + +address, caption, cite, dfn, em, th, var, i, em { + font-style: normal; + font-weight: normal; +} + +ol, ul { + list-style: none; +} + +a { + text-decoration: none; + color: inherit; +} + +a:hover { + text-decoration: none +} + +a, label, button, input, select { + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); +} + +input, select, button { + font: 100% tahoma, \5b8b\4f53, arial; + vertical-align: baseline; + border-radius: 0; + background-color: transparent; + -webkit-appearance: none; + -moz-appearance: none; +} + +button::-moz-focus-inner, +input[type="reset"]::-moz-focus-inner, +input[type="button"]::-moz-focus-inner, +input[type="submit"]::-moz-focus-inner, +input[type="file"] > input[type="button"]::-moz-focus-inner { + border: none +} + +input[type=checkbox], input[type=radio] { + vertical-align: middle; +} + +input::-webkit-outer-spin-button, +input::-webkit-inner-spin-button { + -webkit-appearance: none !important; + -moz-appearance: none !important; + margin: 0; +} + +input:-webkit-autofill { + -webkit-box-shadow: 0 0 0 1000px white inset; +} + +textarea { + outline: none; + border-radius: 0; + -webkit-appearance: none; + -moz-appearance: none; + overflow: auto; + resize: none; + font: 100% tahoma, \5b8b\4f53, arial; +} + +table { + border-collapse: collapse; + border-spacing: 0; +} diff --git a/src/styles/common/variables.less b/src/styles/common/variables.less new file mode 100644 index 00000000..53ea7e29 --- /dev/null +++ b/src/styles/common/variables.less @@ -0,0 +1,109 @@ +/** + * Component: Variables + * Description: Define all variables +*/ +//======== 【iconfont】 ======== +@iconfont-inlay: 'YDUI-INLAY'; + +//======== 【global】 ======== +@base-zindex: 1; +@body-bg: #F5F5F5; +@body-padding-vertical: .24rem; +@body-padding-bottom: .5rem; +@line-color: #D9D9D9; +@line-high-color: #B2B2B2; +@max-width: 750px; +@min-width: 300px; + +//======== 【button】 ======== +@btn-radius: 3px; +@btn-fontsize: .26rem; +@btn-height: .7rem; +@btn-default-color: #FFF; +@btn-block-radius: 3px; +@btn-block-fontsize: .36rem; +@btn-block-height: 1rem; +@btn-block-margin-top: .5rem; +@btn-primary-bg: #04BE02; +@btn-danger-bg: #EF4F4F; +@btn-warning-bg: #FFB400; +@btn-disabled-bg: #CCC; +@btn-disabled-color: #F0F0F0; +@btn-hollow-bg: #FFF; +@btn-hollow-color: #454545; +@btn-hollow-border-color: #EAEAEA; + +//======== 【cell】 ======== +@cell-title-fontsize: .3rem; +@cell-title-color: #888; +@cell-height: 1rem; +@cell-left-color: #333; +@cell-left-fontsize: .3rem; +@cell-right-color: #525252; +@cell-right-fontsize: .26rem; +@cell-input-color: #555; +@cell-input-fontsize: .3rem; +@cell-icon-fontsize: .42rem; +@cell-select-color: #A9A9A9; +@cell-select-fontsize: @cell-left-fontsize; +@cell-arrow-color: #C9C9C9; +@cell-arrow-fontsize: .34rem; + +//======== 【grids】 ======== +@grids-fontsize: .28rem; +@grids-color: #333; +@grids-bg: #FFF; +@grids-padding-horizontal: .35rem; +@grids-line-color: @line-color; +@grids-line-high-color: @line-high-color; + +//======== 【navbar】 ======== +@navbar-height: .9rem; +@navbar-bg: rgba(255, 255, 255, .98); +@navbar-center-width: 50%; +@navbar-center-fontsize: .4rem; +@navbar-center-color: #5C5C5C; +@navbar-item-fontsize: .3rem; +@navbar-item-color: #5C5C5C; +@navbar-icon-color: @navbar-item-color; +@navbar-icon-fontsize: .36rem; +@navbar-border-color: #B2B2B2; + +//======== 【tabbar】 ======== +@tabbar-bg: rgba(255, 255, 255, .96); +@tabbar-border-color: #B2B2B2; +@tabbar-color: #979797; +@tabbar-active-color: #09BB07; +@tabbar-text-fontsize: .24rem; +@tabbar-icon-color: @tabbar-color; +@tabbar-icon-fontsize: .54rem; + +//======== 【actionsheet】 ======== +@actionsheet-bg: #EFEFF4; +@actionsheet-item-height: 1rem; +@actionsheet-item-bg: #FFF; +@actionsheet-item-fontsize: .28rem; +@actionsheet-item-color: #555; +@actionsheet-item-border-color: @line-color; +@actionsheet-action-height: 1rem; +@actionsheet-action-bg: @actionsheet-item-bg; +@actionsheet-action-fontsize: @actionsheet-item-fontsize; +@actionsheet-action-color: @actionsheet-item-color; + +//======== 【tab】 ======== +@tab-bg: #FFF; +@tab-height: .85rem; +@tab-fontsize: .28rem; +@tab-color: #585858; +@tab-active-color: #FF5E53; +@tab-break-color: @line-color; +@tab-bottom-border-color: @line-high-color; + +//======== 【badge】 ======== +@badge-default-bg: #D0D0D0; +@badge-default-color: #FFF; +@badge-primary-bg: #04BE02; +@badge-danger-bg: #EF4F4F; +@badge-warning-bg: #FFB400; +@badge-hollow-bg: #FBFBFB; +@badge-hollow-color: #B2B2B2; diff --git a/src/styles/components/actionsheet.less b/src/styles/components/actionsheet.less new file mode 100644 index 00000000..8ff6ed83 --- /dev/null +++ b/src/styles/components/actionsheet.less @@ -0,0 +1,41 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-actionsheet { + text-align: center; + position: fixed; + bottom: 0; + left: 0; + width: 100%; + z-index: @base-zindex * 1000; + background-color: @actionsheet-bg; + transform: translate(0, 100%); + transition: transform .3s; +} + +.actionsheet-item { + display: block; + position: relative; + font-size: @actionsheet-item-fontsize; + color: @actionsheet-item-color; + height: @actionsheet-item-height; + line-height: @actionsheet-item-height; + background-color: @actionsheet-item-bg; + &:after { + .bottom-line(@actionsheet-item-border-color, 2); + } +} + +.actionsheet-action { + display: block; + margin-top: .15rem; + font-size: @actionsheet-action-fontsize; + color: @actionsheet-action-color; + height: @actionsheet-action-height; + line-height: @actionsheet-action-height; + background-color: @actionsheet-action-bg; +} + +.actionsheet-active { + transform: translate(0, 0); +} diff --git a/src/styles/components/badge.less b/src/styles/components/badge.less new file mode 100644 index 00000000..375a5340 --- /dev/null +++ b/src/styles/components/badge.less @@ -0,0 +1,57 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.badge { + color: @badge-default-color; + font-size: 12px; + position: relative; + display: inline-block; + border-radius: 1000px; + line-height: 1; + padding: 3px 6px; + white-space: nowrap; + background-color: @badge-default-bg; +} + +.badge-radius { + border-radius: 2px; + &:after { + border-radius: 2px; + } +} + +.badge-primary { + background-color: @badge-primary-bg; + color: #FFF; +} + +.badge-danger { + background-color: @badge-danger-bg; + color: #FFF; +} + +.badge-warning { + background-color: @badge-warning-bg; + color: #FFF; +} + +.badge-hollow { + background-color: @badge-hollow-bg; + color: @badge-hollow-color; + &:after { + content: ''; + width: 200%; + height: 200%; + border: 1px solid @badge-hollow-color; + position: absolute; + top: 0; + left: 0; + border-radius: 1rem; + transform-origin: 0 0; + transform: scale(.5); + } +} + +.badge-radius:after { + border-radius: 2px; +} \ No newline at end of file diff --git a/src/styles/components/button.less b/src/styles/components/button.less new file mode 100644 index 00000000..a115a2d0 --- /dev/null +++ b/src/styles/components/button.less @@ -0,0 +1,64 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-button { + padding: 0 @body-padding-vertical; +} + +.btn-variant() { + text-align: center; + position: relative; + border: none; + pointer-events: auto; +} + +.btn { + .btn-variant(); + height: @btn-height; + font-size: @btn-fontsize; + display: inline-block; + padding: 0 .2rem; + box-sizing: content-box; + border-radius: @btn-radius; +} + +.btn-block { + .btn-variant(); + width: 100%; + display: block; + font-size: @btn-block-fontsize; + height: @btn-block-height; + margin-top: @btn-block-margin-top; + border-radius: @btn-block-radius; +} + +.btn-primary { + .tap-color(@btn-primary-bg); + color: @btn-default-color; +} + +.btn-danger { + .tap-color(@btn-danger-bg); + color: @btn-default-color; +} + +.btn-warning { + .tap-color(@btn-warning-bg); + color: @btn-default-color; +} + +.btn-disabled { + .tap-color(@btn-disabled-bg); + color: @btn-disabled-color; + pointer-events: none; +} + +.btn-hollow { + .tap-color(@btn-hollow-bg, .97); + color: @btn-hollow-color; + border: 1px solid @btn-hollow-border-color; +} + +.hairline .btn-hollow { + border: .5px solid @btn-hollow-border-color * 0.95; +} diff --git a/src/styles/components/cell.less b/src/styles/components/cell.less new file mode 100644 index 00000000..e6db378a --- /dev/null +++ b/src/styles/components/cell.less @@ -0,0 +1,146 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-cell { + background-color: #FFF; + position: relative; + z-index: 5; + &:after { + .bottom-line(@line-high-color); + } + a.cell-item, + label.cell-item { + .tap-color(#FFF, .96); + } +} + +.cell-item { + display: flex; + position: relative; + padding-left: @body-padding-vertical; + overflow: hidden; + &:not(:last-child):after { + margin-left: @body-padding-vertical; + .bottom-line(@line-color); + } +} + +.cell-left { + color: @cell-left-color; + font-size: @cell-left-fontsize; + white-space: nowrap; + display: flex; + align-items: center; +} + +.cell-right { + flex: 1; + width: 100%; + min-height: @cell-height; + color: @cell-right-color; + text-align: right; + font-size: @cell-right-fontsize; + padding-right: @body-padding-vertical; + display: flex; + align-items: center; + justify-content: flex-end; + input[type="datetime-local"], + input[type="date"], + input[type="time"] { + line-height: @cell-height; + -webkit-appearance: none; + -moz-appearance: none; + } + input[type="radio"], + input[type="checkbox"]:not(.m-switch) { + -webkit-appearance: none; + -moz-appearance: none; + position: absolute; + left: -9999em; + & + .cell-radio-icon:after, + & + .cell-checkbox-icon:after { + font-family: @iconfont-inlay; + font-size: .44rem; + } + & + .cell-radio-icon:after { + content: '\e600'; + color: #4CD864; + display: none; + } + & + .cell-checkbox-icon:after { + content: '\e604'; + color: #D9D9D9; + } + &:checked { + & + .cell-radio-icon:after { + display: inline-block; + } + & + .cell-checkbox-icon:after { + color: #4CD864; + content: '\e601'; + } + } + } + &:active { + background: none; /* for firefox */ + } +} + +.cell-right { + input[type="text"], + input[type="number"], + input[type="datetime-local"], + input[type="date"], + input[type="time"] { + flex: 1; + height: @cell-height; + border: none; + font-size: @cell-input-fontsize; + background: transparent; + color: @cell-input-color; + display: flex; + justify-content: flex-start; + text-align: left; /* fuck UC */ + } + textarea { + width: 100%; + border: none; + display: block; /* for old android */ + height: 1.5rem; + padding: .2rem 0; + } + select { + flex: 1; + height: @cell-height; + border: none; + display: block; + color: @cell-select-color; + font-size: @cell-select-fontsize; + margin-left: -.08rem; /* 去除select默认缩进 */ + } +} + +.cell-icon { + display: block; + &:before, &:after { + color: #A6A5A5; + font-size: @cell-icon-fontsize !important; + margin-right: .1rem; + } + img { + height: 0.4rem; + margin-right: .1rem; + } +} + +.cell-arrow { + &:after { + margin-left: .05rem; + margin-right: -.08rem; + display: block; + font-family: @iconfont-inlay; + font-size: @cell-arrow-fontsize; + color: @cell-arrow-color; + content: '\e608'; + } +} diff --git a/src/styles/components/cityselect.less b/src/styles/components/cityselect.less new file mode 100644 index 00000000..e768c995 --- /dev/null +++ b/src/styles/components/cityselect.less @@ -0,0 +1,142 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-cityselect { + position: fixed; + bottom: 0; + left: 0; + width: 100%; + height: 75%; + background-color: #fff; + z-index: @base-zindex * 1000; + transform: translate(0, 100%); + transition: transform .3s; + &.cityselect-active { + transform: translate(0, 0); + } +} + +.cityselect-header { + position: absolute; + top: 0; + left: 0; + width: 100%; + z-index: 1; + &:after { + .bottom-line(@line-color); + } +} + +.cityselect-title { + width: 100%; + font-size: .3rem; + text-align: center; + height: 45px; + line-height: 45px; + position: relative; + &:after { + .bottom-line(@line-high-color); + } +} + +.cityselect-nav { + width: 100%; + padding-left: .2rem; + overflow: hidden; + display: flex; + > a { + font-size: .26rem; + color: #222; + display: block; + height: 40px; + line-height: 46px; + padding: 0 .2rem; + position: relative; + margin-right: .15rem; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + max-width: 40%; + &.cityselect-nav-active { + color: #F23030; + &:after { + content: ''; + width: 100%; + height: 2px; + background-color: #F23030; + position: absolute; + bottom: 0; + left: 0; + z-index: 2; + } + } + } +} + +.cityselect-content { + height: 100%; + padding-top: 85px; + width: 100%; + display: flex; + &.cityselect-move-animate { + transition: transform .3s; + } + &.cityselect-next { + transform: translate(-50%, 0); + } + &.cityselect-prev { + transform: translate(0, 0); + } + > .cityselect-item { + display: block; + height: inherit; + width: 50%; /* for old android */ + flex: 0 0 50%; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + background-color: #FFF; + &::-webkit-scrollbar { + width: 0; + } + &:nth-child(2n) { + background-color: #F5F5F5; + } + } +} + +.cityselect-item-box { + width: 100%; + height: inherit; + display: block; + padding: 0 .4rem; + > a { + color: #333; + font-size: .26rem; + height: 40px; + line-height: 40px; + overflow: hidden; + display: flex; + align-items: center; + width: 100%; + position: relative; + z-index: 1; + &:before { + .bottom-line(@line-color); + } + &:active { + background: none; /* for firefox */ + } + span { + flex: 1; + display: block; + } + &.cityselect-item-active { + color: #F23030; + &:after { + display: block; + content: '\E600'; + font-family: @iconfont-inlay; + } + } + } +} diff --git a/src/styles/components/dialog.less b/src/styles/components/dialog.less new file mode 100644 index 00000000..e7c8af28 --- /dev/null +++ b/src/styles/components/dialog.less @@ -0,0 +1,222 @@ +@import "../common/variables"; +@import "../common/mixins"; + +@icon-success: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABSCAMAAACVH4HWAAACH1BMVEX////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////9O2oTAAAAtHRSTlMAAQIEBQYHCAkKCw0ODxAREhQVFhcYGRobHB0gISIkJSYnKCkqKy4vMDM1Nzg5Ojw+QEJDREZHSElKTE9VVldYWltdXl9gYWJlZmdoaWprbG5zd3h6e3x9fn+AgoOFhoiJiouNjpCSlJWYmZqbnJ2eoKKjpKaoqausrq+wtLa3ubq7vL2+wcLFxsfIy83Oz9DR0tPV19jZ2tvc3d7f4OHm5+jp6uvs7e7v8PL19/j5+vv8/f6CNheHAAACzElEQVQYGbXBCVtMUQAG4G9KJUok2cmSCNkqIbIURbRIlrIrRAhZUgoJpc1ehKK0yGR8P9CD1F3O3Lkzc877QqlFJTV7A6BUeMkgyYYYKBT3ln81h0CZjYMcVQJVNo/wvyoospvjjkGNPI57MRFKFFNjH5Qoo8YdKFFJjTdhUCD0PjU+L4MC0Y3UcG6AAvM6qbUNCqz4QK0jUGD1ELUuQ4HkAWrVTYB8O35Rqy0c8uVQp38J5DtFneFEyFdGvQxI57hDvQJIN/Eu9cohXVgT9aoh3bwm6rVMg2yxPdTrnQvZ1vdSz5UC2Tb/oMF2yJZBowLIlkOjS5DtEI3qIdtZGrXMgFwBN2j0aT7kCrpHI1ci5Ip+QpNMWAieG+WAdyLbaVIE9yafeD3wpX4LvLH8PU0uwL0FzfzrSjBsS/hKkzoH3Apq5aj2xbBpk5Mm7dPg3n6O6U+BLalOmnTHwcJNapyGDbk0+5kAK1epdXsKPMmjQBYsZVDnXQysXaBAPqxFfqRO31ZYuUaBCnhykAZH4VZoDQVq4Nl9GlSFQSy8gQKdEfBszhcadKyCyMwWCnyMhR2pNBpOhdnCVxRwrYc952hS6oBBfC9FdsGmwGc0eRQFnaQBihTDtqW9NOlaCY2dFLoCL2TQ7HsmxhygUHUAvFFCgVKMKqTQyzB4JeQpBR7OwR9nKNQXBy/F9VOgJwFAOYWcSfBaGoXSUUmxHfDBRYoMtI5Q6DB8EdJIL1yHb5YN0bb6YPgom3Y9j4DPymlPfwx8N+kN7XBthD/WOWnDHvgni54Vwl+V9OQq/BbeTGu1kCB+hFZaoiFDLi18i4EcFXQvGZJM7aA76ZAmmW4UQaJ8CpVDqloKPA6EVLM6adI2HZIl0ag7FtIVUc+1FgrcpU42VJjdRY3jUGMDx12EKof4X50DyhTzn4YIKJTWTdJ1MghKzTj/4NYa+Os3kb93+haplFoAAAAASUVORK5CYII='; +@icon-error: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAGQAAABkCAMAAABHPGVmAAACWFBMVEX///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////+SCbtoAAAAx3RSTlMAAQIDBAUGBwgKDA4PEBESExQVFhcYGRobHB4fICEiIyQlJikqLC0uLzAxMjM0NTY3ODo7PD0/QEFCREVGSElLTE1OT1BRUlNUVVlaW1xdXl9iY2RlZ2hpamttbnBxc3R1dnh5fYCBhIeIiouMj5CRk5SVlpeYmZqbnJ2eoKGjpKaoqaqrrLCxsrS1tre4ubq8vb7AwsPFxsfIycrOz9HS09TV1tjZ2tvd3t/g4uPk5efo6err7e7v8PHy8/T19vf4+fr7/P3+xMlmOwAABJZJREFUGBntwf1jTWUAB/Dv2d2u7W5ZjcXMYuJWGFuaSFmW0SIKIRkaFauksCQieemFNBOmWKWZl43ptnXNLp3tOt9/K8bmPM9z7rnnnHv6zeeDhx56yI3w2TVB/M9md5OtVfBLKBeqVXHedbIMfgiu7KiHLH0b7zPqhyJVaa+1kn3FEOX8yAeuLUBqnv+Vd30NQdHvFBwdA+9G7ec9RgnMPqPk5to0eBOsjXHAUQhqein5eQy8KD9Hk3IIpl2hpGe5Breytxs02TYEorxjlB0eAXdmtdEk9joUgTrKIrPhQqjeoEnLBFhZcJMS48MMODWlhWYHs2FtUhtlp4vgSNr6XpoY72lIZNhxyqJz4cCoRpp1vwIbwS8oMz4IIJmKTpq1joe9dXHKDufCVmCTQbPGXCQzt4eyC8/ARv4xCnZkILnJHZTFqpFQeQfNbq+DI4V/UGZs0GBteS/NeirhUO5xKvZmwkLGdgquTYVjmQeoOJkPRd5xClqegAtpn1BxeTwk4csUnHgU7tQalHWVQ/BSNwXfZsKtZXHKbs2HyfI+Cr5Kh3vVOmW338GAtDqKtmjwYlYPFZs09Ms8QNH78Kisi4rPA7jjkUYKjNXwbOLfVOwLAo+fpSD+BlIwvoOKI1njLlHw71ykZFwbFb9EKLgxEykafZFJXJ+GlBVepK1oGXxQeJE2/pkCXxReYkJdk+CTwktMIDoZvilqp6XoVPiouIMWup+FryZEqKqGzyZGqWh+DD77iKrTOfDVUoMWGrPgo0VxWvo+CN/MjzOBbwLwSYXOhL7U4IsXbtHGx/BDeYy2apG6iVHaMxYiVcURJqPPRGoK2imKtFPRU4pU5J2jKFYa7qYiMhbeZTVRZMwDKuNUtObBq2ADJbW4YyVVTVnwRttDyTb020rVoQA82UhJQxD9AoeoqoMXtZT8loP7cpqpWgH3FhoUdY7FoNERKuKVcGumTlF8Fkxm9FHRHYY74SglNRCsoqp9JNwoaKdkFyQ7qWrKgnM5zZQ0DYEkeIqqvRqcCjZQcnUkFCOuULUBDml7KOl9Dham6VQY1XBmI2U1sFRDVawETqygbL8GS9p+qtqHI7nKOCUt2Uggu4WqE0EkUxqjJBZGQuEYVTuQRFGEskWwsZgW3oatnGbKdsHWbqr06bARbKDszxBshc5TFSlEQtoeyvRJSGKyTtWZLCSykYrVSGoNLezTYG0FFd9pSEo7QgvrYakyTlnHMDgw/C+q4hWwUBqjzKiAI1W0EH0SirERKurh0G5aaM2FpKCVigshODS0nRYaAhDkNFNhTIdjLxq08CnMQiep2gwXttLKW3ggq5GqyyG4EGqjBX0GBh2ihdlw5WWq+jY/jUFTrlKxFy7to+xCGcwKzlDSOQwu5XdR9EM2RKGDFC2Ba8so2BKALK2OZqc0uKad4gPGGlhZqnPQ7RJ4UGJwQHwJrE3v5ICd8GQX79OrkUhxC++5ng9P8q+znz4PiQ39if3WwqN3eZdeBTsZO3hHWyY8ymwjqVchiZo4uQSevUnqVUhqzo3WdHiWfj7+Khx4ag5SsGgxVP8B5afAD5V2CgcAAAAASUVORK5CYII='; +@icon-loading: 'data:image/png;base64,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'; + +@keyframes zoomIn { + from { + opacity: 0; + transform: scale3d(.3, .3, .3); + } + 50% { + opacity: 1; + } +} + +// Confirm & Alert ================= +.m-confirm { + width: 85%; + background-color: #FAFAFA; + border-radius: 3px; + font-size: 15px; + animation: zoomIn .15s ease forwards; +} + +.m-alert { + animation: zoomIn .15s ease forwards; + .confirm-bd { + text-align: center; + padding: 20px 20px 0 20px; + } + .confirm-ft { + margin-top: 14px; + } +} + +.confirm-hd { + text-align: left; + padding: 15px 20px 5px; + .confirm-title { + font-weight: normal; + color: #444; + word-break: break-all; + } +} + +.confirm-bd { + text-align: left; + padding: 0 20px; + font-size: 14px; + color: #888; + line-height: 20px; + word-break: break-all; +} + +.confirm-ft { + position: relative; + line-height: 40px; + margin-top: 14px; + display: flex; + &:after { + .top-line(@line-color); + } + > a { + position: relative; + text-align: center; + display: block; + flex: 1; + padding: 0 2px; + &:not(:last-child):after { + .right-line(@line-color); + } + &.confirm-btn.default { + color: #353535; + } + &.confirm-btn.primary { + color: #0BB20C; + } + } +} + +@media screen and (min-width: 768px) { + .m-confirm { + width: 40%; + } +} + +// Toast ================= +.m-toast { + min-width: 130px; + max-width: 80%; + padding-top: 20px; + background: rgba(40, 40, 40, .8); + text-align: center; + border-radius: 4px; + color: #FFF; + animation: zoomIn .06s ease forwards; + &.toast-none-icon { + padding-top: 10px; + border-radius: 3px; + .toast-content { + padding: 0 36px 10px 36px; + } + } +} + +.toast-content { + font-size: 15px; + padding: 0 15px 15px 15px; + line-height: 22px; + word-break: break-all; +} + +.toast-success-icon, .toast-error-icon { + display: block; + margin-bottom: 10px; + &:after { + display: inline-block; + content: ''; + } +} + +.toast-success-icon:after { + width: 43px; + height: 35px; + background: url(@icon-success) no-repeat; + background-size: 43px 35px; +} + +.toast-error-icon:after { + width: 35px; + height: 35px; + background: url(@icon-error) no-repeat; + background-size: 35px 35px; +} + +// Notify ================= +@keyframes notify-downin { + 0% { + opacity: 0; + transform: translate3d(0, -50px, 0); + } + 50% { + opacity: .5; + } + 100% { + opacity: 1; + transform: translate3d(0, 0, 0); + } +} + +@keyframes notify-upout { + 0% { + opacity: 1; + transform: translate3d(0, 0, 0); + } + 50% { + opacity: 1; + } + 100% { + opacity: 0; + transform: translate3d(0, -50px, 0); + } +} + +.m-notify { + position: fixed; + top: 0; + left: 0; + width: 100%; + background-color: rgba(40, 40, 40, .8); + line-height: .28rem; + font-size: .26rem; + color: #FFF; + padding: .3rem .24rem; + opacity: 0; + animation: notify-downin .2s linear forwards; + word-break: break-all; + text-align: center; + &.notify-out { + opacity: 1; + animation: notify-upout .15s linear forwards; + } +} + +// Loading ================= +@keyframes rotate-loading { + 0% { + transform: rotate(0); + } + 100% { + transform: rotate(360deg); + } +} + +.m-loading { + border-radius: 5px; + color: #FFF; + background-color: rgba(40, 40, 40, .8); + animation: zoomIn .1s ease forwards; + display: flex; + align-items: center; + padding: 0 23px 0 24px; + height: 48px; + .loading-icon { + width: 28px; + height: 28px; + background: url(@icon-loading) no-repeat; + background-size: 28px 28px; + animation: rotate-loading .45s linear forwards infinite; + margin-right: 10px; + } + .loading-txt { + font-size: 15px; + color: #FFF; + max-width: 140px; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + } +} diff --git a/src/styles/components/grids.less b/src/styles/components/grids.less new file mode 100644 index 00000000..144e8ce0 --- /dev/null +++ b/src/styles/components/grids.less @@ -0,0 +1,79 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-grids() { + overflow: hidden; + position: relative; + background-color: @grids-bg; + &:before { + .bottom-line(@grids-line-high-color, 1); + } +} + +.m-grids-2 { + .m-grids(); + .grids-item { + width: 50%; + &:not(:nth-child(2n)):before { + .right-line(@grids-line-color); + } + } +} + +.m-grids-3 { + .m-grids(); + .grids-item { + width: 33.333333%; + &:not(:nth-child(3n)):before { + .right-line(@grids-line-color); + } + } +} + +.m-grids-4 { + .m-grids(); + .grids-item { + width: 25%; + &:not(:nth-child(4n)):before { + .right-line(@grids-line-color); + } + } +} + +.m-grids-5 { + .m-grids(); + .grids-item { + width: 20%; + &:not(:nth-child(5n)):before { + .right-line(@grids-line-color); + } + } +} + +.grids-item { + width: 25%; + float: left; + position: relative; + z-index: 0; + padding: @grids-padding-horizontal 0; + font-size: @grids-fontsize; + &:after { + .bottom-line(@grids-line-color); + } +} + +.grids-icon { + height: .68rem; + display: flex; + justify-content: center; + align-items: center; + img { + height: 70%; + } +} + +.grids-txt { + .text-overflow(center); + color: @grids-color; + padding: 0 .2rem; +} diff --git a/src/styles/components/icons.less b/src/styles/components/icons.less new file mode 100644 index 00000000..14b7ef02 --- /dev/null +++ b/src/styles/components/icons.less @@ -0,0 +1,234 @@ +@import "../common/variables"; +@import "../common/mixins"; + +@iconfont-icons: 'YDUI-ICONS'; + +@font-face { + font-family: @iconfont-icons; + src: url('http://at.alicdn.com/t/font_1461139240_0312312.ttf') format('truetype'); +} + +[class^="icon-"]:before, [class*=" icon-"]:before { + font-family: @iconfont-icons; + font-size: inherit; +} + +.icon-footmark:before { + content: '\e636'; +} + +.icon-discount:before { + content: '\e633'; +} + +.icon-verifycode:before { + content: '\e632'; +} + +.icon-star-outline:before { + content: '\e630'; +} + +.icon-star:before { + content: '\e631'; +} + +.icon-weibo:before { + content: '\e62f'; +} + +.icon-download:before { + content: '\e62e'; +} + +.icon-next:before { + content: '\e62d'; +} + +.icon-home-outline:before { + content: '\e62c'; +} + +.icon-home:before { + content: '\e63d'; +} + +.icon-weixin:before { + content: '\e629'; +} + +.icon-refresh:before { + content: '\e628'; +} + +.icon-tencent-weibo:before { + content: '\e627'; +} + +.icon-search:before { + content: '\e626'; +} + +.icon-time:before { + content: '\e625'; +} + +.icon-prev:before { + content: '\e624'; +} + +.icon-like-outline:before { + content: '\e639'; +} + +.icon-like:before { + content: '\e63a'; +} + +.icon-setting:before { + content: '\e623'; +} + +.icon-delete:before { + content: '\e622'; +} + +.icon-sortlist:before { + content: '\e621'; +} + +.icon-sortlarger:before { + content: '\e620'; +} + +.icon-sortlargest:before { + content: '\e61f'; +} + +.icon-qq:before { + content: '\e62a'; +} + +.icon-more:before { + content: '\e618'; +} + +.icon-shopcart-outline:before { + content: '\e61a'; +} + +.icon-shopcart:before { + content: '\e619'; +} + +.icon-checkoff:before { + content: '\e617'; +} + +.icon-bad:before { + content: '\e61c'; +} + +.icon-video:before { + content: '\e61d'; +} + +.icon-clock:before { + content: '\e61e'; +} + +.icon-ucenter-outline:before { + content: '\e616'; +} + +.icon-ucenter:before { + content: '\e615'; +} + +.icon-warn-outline:before { + content: '\e613'; +} + +.icon-warn:before { + content: '\e614'; +} + +.icon-share1:before { + content: '\e610'; +} + +.icon-share2:before { + content: '\e60e'; +} + +.icon-share3:before { + content: '\e60d'; +} + +.icon-feedback:before { + content: '\e60f'; +} + +.icon-type:before { + content: '\e60c'; +} + +.icon-discover:before { + content: '\e60b'; +} + +.icon-good:before { + content: '\e61b'; +} + +.icon-shield-outline:before { + content: '\e608'; +} + +.icon-shield:before { + content: '\e60a'; +} + +.icon-qrscan:before { + content: '\e609'; +} + +.icon-location:before { + content: '\e607'; +} + +.icon-phone1:before { + content: '\e606'; +} + +.icon-phone2:before { + content: '\e637'; +} + +.icon-phone3:before { + content: '\e63b'; +} + +.icon-error-outline:before { + content: '\e602'; +} + +.icon-error:before { + content: '\e603'; +} + +.icon-play:before { + content: '\e601'; +} + +.icon-compose:before { + content: '\e600'; +} + +.icon-question:before { + content: '\e62b'; +} + +.icon-order:before { + content: '\e638'; +} diff --git a/src/styles/components/keyboard.less b/src/styles/components/keyboard.less new file mode 100644 index 00000000..210ac9c6 --- /dev/null +++ b/src/styles/components/keyboard.less @@ -0,0 +1,149 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-keyboard { + position: fixed; + bottom: 0; + left: 0; + width: 100%; + z-index: @base-zindex * 1000; + transform: translate(0, 100%); + transition: transform .3s; + background-color: #F7F7F7; + &.keyboard-active { + transform: translate(0, 0); + } +} + +.keyboard-content { + background-color: #FFF; + margin-top: .3rem; + position: relative; + &:before { + .top-line(@line-color); + } +} + +.keyboard-title { + overflow: hidden; + padding: .2rem 0 .12rem; + color: #222; + margin-bottom: 1px; /* for old android */ + font-size: .24rem; + text-align: center; + background-color: #FFF; + &:before { + font-family: @iconfont-inlay; + content: '\e60a'; + font-size: .26rem; + color: #FF2424; + line-height: 1; + margin-right: .06rem; + } +} + +.keyboard-numbers { + font-size: .48rem; + background-color: #FFF; + > li { + width: 100%; + display: flex; + > a { + width: 1%; /* for old android */ + flex: 1; + color: #222; + height: 1rem; + position: relative; + display: flex; + justify-content: center; + align-items: center; + .tap-color(#FFF, .95); + &:not(:last-child):after { + .right-line(@line-color); + } + &:before { + .top-line(@line-color); + } + } + &:last-child { + > a:last-child, + > a:nth-last-child(3) { + background-color: #F7F7F7; + font-size: .3rem; + color: #686868; + } + > a:last-child { + &:after { + font-family: @iconfont-inlay; + content: '\e609'; + font-size: .6rem; + } + } + } + } +} + +.keyboard-head { + height: .8rem; + display: flex; + justify-content: center; + align-items: center; + color: #1F2324; + font-size: .3rem; + position: relative; + &:after { + .bottom-line(@line-color); + } +} + +.keyboard-password { + margin: 0 .8rem; + display: flex; + position: relative; + background-color: #FFF; + &:after { + content: ''; + width: 200%; + height: 200%; + transform: scale(.5); + position: absolute; + border: 1px solid @line-color; + top: 0; + left: 0; + transform-origin: 0 0; + border-radius: 4px; + } + li { + flex: 1; + position: relative; + display: flex; + justify-content: center; + align-items: center; + height: 1rem; + &:not(:last-child):after { + content: ''; + width: 1px; + height: 50%; + position: absolute; + right: 0; + top: 25%; + background-color: @line-color; + transform: scaleX(.5); + } + i { + width: 6px; + height: 6px; + border-radius: 50%; + background-color: #000; + } + } +} + +.keyboard-error { + padding: 2px .8rem; + color: #F00; + overflow: hidden; + height: .5rem; + line-height: .5rem; + font-size: .24rem; +} diff --git a/src/styles/components/list.less b/src/styles/components/list.less new file mode 100644 index 00000000..994b01bc --- /dev/null +++ b/src/styles/components/list.less @@ -0,0 +1,313 @@ +@import "../common/variables"; +@import "../common/mixins"; + +@pullrefresh: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAABa1BMVEVTfvH///9TfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFAPDq2AAAAeHRSTlMAAAECAwQGBwkLDQ8QERMUFRkiIyYnLS4vMjM1Njc4OTpAQUJDREVGTVJWXmBiZmdoaWpxc3V8f4GCg4SGiIyNj5aXmZqbnJ+go6SlpqmqrK+wub2/wMHCxMXJzM3P0tPU1djd3t/n6Orr7O7w8fP09fb3+Pn6/f5+D/4+AAABqklEQVQ4y43V+T8CQRQA8GklUeQmhESuHBHJUY5EIWeHECGrcpVV++eb2Z3Y2d22eT+9mfm2n880894AQIRpKnDxVCh/sanD+c7/aS8PdDoCOqPfvCRu3c1VKaOOFC+P3LJBlAQ1h3m1uB8UpJRan/FaOX3i39jaj5fw+OeIJ6nzQ1y4crXhGeP43qfk63/UwQnjxDCxS4ufU9DeNzQqLTBAFn1y2vKIBi9WoAivnAZR/tqtJTG1lWFaHNKUmF6i1K0tRWpDWZLRliINoWykjhRo0ztMYqBuQGpHv3FR0TV07q1U9AzSO0BFM5BG6GgO0nU6ikpkhY5y9DQPqY9+W2E6ek7/Z/noj2CM/mCF6xKnouIlHKWiwtW+ZmqjGV8XpmLBLNWUHXm+Ep+VlGHJVkMaYuhLO/WKG4b+GC2yZqJlsCotAxhPhcqaBrJGtKjYW39akAEA6rS3dr/YxCN6CQWTuGkmXBY802gP4bndBiClYKDaiisP0e3NwEGyWG3NqwwgKWzwFbUGn52QnJbms+ExAjWqeIwyHhN5BxRPXLbAc+xNcK5Hdl1+ASkP8ND4fLD1AAAAAElFTkSuQmCC'; +@pullrefreshLoading: 'data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAABcVBMVEVTfvH///9TfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvFTfvG7eWgbAAAAenRSTlMAAAECAwQGBwkKCw0PEBETFBUZIiMmJy0uLzIzNTY3ODk6QEFCQ0RFRktNUlZeYGJmZ2hpanFzdXyBgoOEhoiMjY+Wl5mam5yfoKOkpqmqrK+wuLm6vb/AwcLExcnMzc/S09TV2N3e3+fo6uvs7vDx8/T19vf4+fr9/naKfqcAAAGISURBVDjLjZVVW0JBEEBXDLC7FbsVuzDAwO7E7sAORDi/3od7/T72Ajrztjvn4c7dmTNKaZHV7t2+eQ5/BI4Xewq1TFKSdmxZ+yIqTvszEqCNx1jjcTAtDpq9RLy4qIpBK27NXPh81TM+OecPmufvNgva8mYk9ly55o2jafYdYMuuo40hAA5qtCrzPCF20vUPKH0BCPbalCXKfOl6WZnXAPcV6q8wUB/AQ7H6H3WGgc9qJUB3AfqVAHUCHNok6DxArRKg9ldgX0nQegCXCB0FwjkidAM4UyL0CliWoY/AmAz9AoZlaEiOPgFueVlLMnRT/rPc8idokD+s/RXwi1CjCeuUuLWP/mjtTneRNjADCcmCJyL+rqgxDDoTkGn7ANOC4U5ZAQhka8oIxFOGYx2ADquI+mJqKz8HwPuv3vI9hsSXU6Kl2WpK88CVZ96k1s+bdzPJuoorf1UcuVybmvAuHH7+qnnEFiv4SDzB3zVL18aQQ7aMroayEu4tY8XdPRMKnPi6Syzt8gMGxsBO8KgZSQAAAABJRU5ErkJggg=='; + +.m-list { + overflow: hidden; + position: relative; + .list-item:active { + background: none; /* for firefox */ + } +} + +.list-img { + height: 0; + width: 100%; + padding: 50% 0; + overflow: hidden; + img { + width: 100%; + margin-top: -50%; + background-color: #FFF; + border: none; + } +} + +.list-mes { + background-color: #FFF; + .list-title { + color: #505050; + font-size: .26rem; + text-align: justify; + } + .list-other { + padding-top: .06rem; + overflow: hidden; + display: flex; + align-items: flex-end; + justify-content: space-between; + color: #999; + } +} + +.list-price { + font-size: .3rem; + color: #EB5211; + > em { + font-size: .22rem; + } +} + +.list-del-price { + padding-left: .06rem; + font-size: .2rem; + margin-left: .02rem; + position: relative; + color: #8C8C8C; + &:after { + .top-line(#8C8C8C); + top: auto; + bottom: 50%; + } +} + +.list-theme1 { + padding: 0 2px 0; + .list-item { + width: 50%; + float: left; + padding: 0 2px; + margin-top: 4px; + .list-mes { + padding: .1rem; + .list-title { + font-weight: bold; + .text-overflow(); + height: .32rem; + } + } + } +} + +.list-theme2 { + .list-item { + width: 50%; + float: left; + padding-top: 4px; + &:nth-child(odd) { + padding-right: 2px; + } + &:nth-child(even) { + padding-left: 2px; + } + .list-mes { + padding: .1rem; + .list-title { + .text-overflow(); + height: .36rem; + } + } + } +} + +.list-theme3 { + .list-item { + width: 50%; + float: left; + padding: .2rem; + position: relative; + z-index: 0; + background-color: #FFF; + &:before { + .bottom-line(@line-color); + } + &:nth-child(odd):after { + .right-line(@line-color); + } + .list-mes { + padding-top: .1rem; + .list-title { + .text-overflow(); + height: .3rem; + } + .list-other { + padding-top: 4px; + } + } + &:active { + background: #FFF; /* for old android */ + } + } +} + +.list-theme4 { + padding: 0 7px; + background-color: #FFF; + .list-item { + overflow: hidden; + display: flex; + padding: 7px 0 8px 0; + position: relative; + &:not(:last-child):after { + .bottom-line(@line-color); + } + .list-img { + width: 2rem; + padding: 1rem 0; + } + .list-mes { + flex: 1; + padding-left: 7px; + .list-title { + .line-clamp(3, .38rem); + } + .list-other { + padding-top: .1rem; + } + } + } +} + +.list-theme5 { + background-color: #FFF; + .list-item { + display: block; + position: relative; + z-index: 1; + padding: .2rem .2rem 0 .2rem; + &:after { + .bottom-line(@line-color); + } + .list-mes { + padding: .2rem 0 .15rem; + .list-other { + padding-top: .1rem; + } + } + } +} + +@media screen and (min-width: 768px) { + .list-theme1 { + padding: 0 4px; + .list-item { + padding: 0 4px; + margin-top: 8px; + } + } + + .list-theme2 { + .list-item { + padding-top: 8px; + &:nth-child(odd) { + padding-right: 4px; + } + &:nth-child(even) { + padding-left: 4px; + } + } + } + + .list-theme4 { + padding: 0 9px; + .list-item { + padding: 9px 0 10px 0; + .list-mes { + padding-left: 9px; + } + } + } +} + +.list-loading { + margin-top: .1rem; + text-align: center; + font-size: .26rem; + color: #999; + height: .66rem; + line-height: .66rem; + img { + height: inherit; + display: inline-block; + } +} + +.list-donetip { + font-size: .24rem; + text-align: center; + padding: .25rem 0; + color: #777; +} + +.pullrefresh-animation-timing { + transition: transform 150ms; +} + +@keyframes backRotateAnimation { + 0% { + transform: rotate(0deg); + } + 100% { + transform: rotate(-360deg); + } +} + +.pullrefresh-dragtip { + position: absolute; + top: -46px; + left: 50%; + z-index: 996; + transform: translate3d(0px, 0px, 0px); + width: 42px; + height: 42px; + line-height: 42px; + margin-left: -21px; + border-radius: 50%; + text-align: center; + background-color: #FFF; + box-shadow: 0 1px 4px rgba(0, 0, 0, .25); + > span { + display: flex; + justify-content: center; + align-items: center; + height: inherit; + &:after { + content: ''; + display: block; + width: 20px; + height: 20px; + background: url(@pullrefresh) no-repeat; + background-size: 20px 20px; + } + &.pullrefresh-loading:after { + background: url(@pullrefreshLoading) no-repeat; + background-size: 20px 20px; + animation: backRotateAnimation .4s linear infinite; + } + } +} + +.pullrefresh-draghelp { + width: 100%; + height: 100%; + position: fixed; + top: 0; + left: 0; + z-index: @base-zindex * 1000; + display: flex; + justify-content: center; + align-items: center; + > div { + width: 2.3rem; + height: 2.3rem; + background-color: rgba(0, 0, 0, .8); + &:before { + content: '\e60d'; + font-family: @iconfont-inlay; + font-size: .88rem; + text-align: center; + color: #FFF; + display: block; + padding-top: .36rem; + } + > span { + text-align: center; + color: #FFF; + font-size: .28rem; + display: block; + padding-top: .2rem; + } + } +} diff --git a/src/styles/components/navbar.less b/src/styles/components/navbar.less new file mode 100644 index 00000000..83de1bac --- /dev/null +++ b/src/styles/components/navbar.less @@ -0,0 +1,87 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-navbar { + height: @navbar-height; + position: relative; + display: flex; + background-color: @navbar-bg; + &:after { + .bottom-line(@navbar-border-color, 2); + } + &.navbar-fixed { + position: fixed; + top: 0; + left: 0; + width: 100%; + z-index: @base-zindex * 100; + } +} + +.navbar-item { + flex: 0 0 (100% - @navbar-center-width) / 2; + padding: 0 @body-padding-vertical / 1.2; + font-size: @navbar-item-fontsize; + white-space: nowrap; + overflow: hidden; + display: flex; + align-items: center; + color: @navbar-item-color; + &:first-child { + order: 1; + margin-right: -(100% - @navbar-center-width) / 2; + } + &:last-child { + order: 3; + justify-content: flex-end; + > a { + justify-content: flex-end; + } + } + > a { + display: flex; + align-items: center; + height: @navbar-height; + min-width: (100% - @navbar-center-width) / 2; /* for low version android */ + flex: 1; + } +} + +.navbar-center-box { + order: 2; + height: @navbar-height; + width: @navbar-center-width; + margin-left: (100% - @navbar-center-width) / 2; + .navbar-center { + width: 100%; + display: flex; + justify-content: center; + align-items: center; + height: inherit; + .center-title { + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + font-size: @navbar-center-fontsize; + color: @navbar-center-color; + } + img { + height: 60%; + } + } +} + +.back-icon:before, .next-icon:before { + display: inline-block; + font-family: @iconfont-inlay; + font-size: @navbar-icon-fontsize; + color: @navbar-icon-color; +} + +.back-icon:before { + content: '\e607'; +} + +.next-icon:before { + content: '\e608'; +} diff --git a/src/styles/components/progressbar.less b/src/styles/components/progressbar.less new file mode 100644 index 00000000..b5f16a4f --- /dev/null +++ b/src/styles/components/progressbar.less @@ -0,0 +1,23 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-progressbar { + position: relative; + color: #333; + width: 100%; + height: 100%; + > svg { + width: 100%; + > path { + transition: all .8s linear; + } + } +} + +.progressbar-content { + position: absolute; + top: 50%; + left: 50%; + font-size: .3rem; + transform: translate(-50%, -50%); +} \ No newline at end of file diff --git a/src/styles/components/scrolltab.less b/src/styles/components/scrolltab.less new file mode 100644 index 00000000..47985605 --- /dev/null +++ b/src/styles/components/scrolltab.less @@ -0,0 +1,96 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-scrolltab { + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + display: flex; +} + +.scrolltab-nav { + height: 100%; + background-color: #F5F5F5; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + position: relative; + z-index: 1; + &:after { + .right-line(#DFDFDF); + } +} + +.scrolltab-item { + padding: 0 .3rem; + height: 1rem; + display: flex; + align-items: center; + position: relative; + z-index: 1; + &.scrolltab-active { + background-color: #FFF; + &:before { + .right-line(#FFF); + } + &:active { + background-color: #FFF; + } + } + &:after { + .bottom-line(#DFDFDF); + } + &:before { + .right-line(#DFDFDF); + } + &:active { + background: none; /* for firefox */ + } +} + +.scrolltab-icon { + margin-right: .2rem; + font-size: .32rem; + display: flex; + align-items: center; + justify-content: center; + > img { + height: .4rem; + display: inline-block; + } +} + +.scrolltab-title { + font-size: .3rem; + color: #666; + overflow-x: hidden; + text-overflow: ellipsis; + white-space: nowrap; + max-width: 1.6rem; +} + +.scrolltab-content { + height: 100%; + background-color: #FFF; + overflow-y: auto; + -webkit-overflow-scrolling: touch; + flex: 1; + padding: 0 .24rem .24rem .24rem; + position: relative; +} + +.scrolltab-content-title { + font-size: .3rem; + font-weight: normal; + color: #555; + display: block; + padding-bottom: .1rem; + padding-top: .32rem; + margin-bottom: .2rem; + position: relative; + z-index: 1; + &:after { + .bottom-line(@line-high-color); + } +} diff --git a/src/styles/components/slider.less b/src/styles/components/slider.less new file mode 100644 index 00000000..dda8cd1f --- /dev/null +++ b/src/styles/components/slider.less @@ -0,0 +1,76 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-slider { + width: 100%; + overflow: hidden; + position: relative; +} + +.slider-wrapper { + display: flex; + width: 100%; + height: 100%; + transform: translate3d(0px, 0px, 0px); + position: relative; + z-index: 1; + transition-property: transform; + &.slider-wrapper-vertical { + flex-direction: column; + } +} + +.slider-item { + width: 100%; + height: 100%; + flex-shrink: 0; + a { + display: block; + } + img { + width: 100%; + } +} + +@keyframes slider-pagination-opacity { + 0% { + opacity: 0; + } + 100% { + opacity: 1; + } +} + +.slider-pagination { + position: absolute; + width: 100%; + z-index: 2; + left: 0; + bottom: .1rem; + pointer-events: none; + display: flex; + align-items: flex-end; + justify-content: center; + opacity: 0; + animation: slider-pagination-opacity .3s linear .4s forwards; + &.slider-pagination-vertical { + width: 0; + height: 100%; + flex-direction: column; + bottom: 0; + left: auto; + right: .1rem; + justify-content: center; + } + > .slider-pagination-item { + margin: .05rem; + width: 6px; + height: 6px; + display: inline-block; + border-radius: 100%; + background-color: #B7D0E1; + &.slider-pagination-item-active { + background-color: #FF0005; + } + } +} diff --git a/src/styles/components/spinner.less b/src/styles/components/spinner.less new file mode 100644 index 00000000..81ee005a --- /dev/null +++ b/src/styles/components/spinner.less @@ -0,0 +1,44 @@ +@import "../common/variables"; +@import "../common/mixins"; +@import "../common/iconfont"; + +.m-spinner { + border: 1px solid #EAE8E8; + border-radius: 1px; + display: inline-block; + overflow: hidden; + > a { + float: left; + width: .6rem; + height: .6rem; + line-height: .62rem; + text-align: center; + font-weight: bold; + color: #666; + letter-spacing: 0; + .tap-color(#F8F8F8, .95); + &:after { + font-family: @iconfont-inlay; + color: #777; + font-size: .18rem; + } + &:first-child:after { + content: '\E60B'; + } + &:last-child:after { + content: '\E602' + } + } + > input { + letter-spacing: 0; + float: left; + width: .85rem; + height: .6rem; + line-height: 2.7; + text-align: center; + color: #666; + border: none; + font-size: .26rem; + background-color: #FFF; + } +} diff --git a/src/styles/components/switch.less b/src/styles/components/switch.less new file mode 100644 index 00000000..094ff927 --- /dev/null +++ b/src/styles/components/switch.less @@ -0,0 +1,40 @@ +.m-switch { + -webkit-appearance: none; + -moz-appearance: none; + position: relative; + display: block; + width: 52px; + height: 32px; + left: 0; + border: 1px solid #DFDFDF; + border-radius: 16px; + background-color: #DFDFDF; + &:before, &:after { + content: ''; + position: absolute; + top: 0; + left: 0; + height: 30px; + border-radius: 15px; + transition: transform .3s; + } + &:before { + width: 50px; + background-color: #FDFDFD; + } + &:after { + width: 30px; + background-color: #FFF; + box-shadow: 0 1px 3px rgba(0, 0, 0, .4); + } + &:checked { + border-color: #4CD864; + background-color: #4CD864; + &:before { + transform: scale(0); + } + &:after { + transform: translateX(20px); + } + } +} diff --git a/src/styles/components/tab.less b/src/styles/components/tab.less new file mode 100644 index 00000000..8d75d28c --- /dev/null +++ b/src/styles/components/tab.less @@ -0,0 +1,78 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-tab { +} + +.tab-nav { + display: flex; + position: relative; + z-index: 0; + &:after { + .bottom-line(@tab-bottom-border-color, 3); + } +} + +.tab-nav-item { + width: 1%; + flex: 1; + position: relative; + text-align: center; + color: @tab-color; + font-size: @tab-fontsize; + line-height: @tab-height; + display: block; + &.tab-active { + .tap-color(@tab-bg, 1); + } + .tap-color(@tab-bg, .97); + a { + display: inherit; + color: inherit; + } + &:not(:last-child):after { + position: absolute; + top: 35%; + right: 0; + content: ''; + width: 1px; + height: 30%; + transform: scaleX(.5); + border-right: 1px solid @tab-break-color; + } + &.tab-active { + color: @tab-active-color; + &:before { + content: ''; + width: 70%; + height: 2px; + position: absolute; + left: 50%; + bottom: 0; + margin-left: -35%; + z-index: 4; + background-color: currentColor; + } + } +} + +.tab-panel { + position: relative; + overflow: hidden; + background-color: #FFF; + .tab-panel-item { + width: 100%; + position: absolute; + top: 0; + padding: @body-padding-vertical; + transform: translateX(-100%); + &.tab-active { + position: relative; + transition: transform .15s; + transform: translateX(0); + & ~ .tab-panel-item { + transform: translateX(100%); + } + } + } +} diff --git a/src/styles/components/tabbar.less b/src/styles/components/tabbar.less new file mode 100644 index 00000000..1211896f --- /dev/null +++ b/src/styles/components/tabbar.less @@ -0,0 +1,75 @@ +@import "../common/variables"; +@import "../common/mixins"; + +.m-tabbar { + width: 100%; + position: relative; + z-index: @base-zindex * 100; + display: flex; + align-items: center; + padding: .104rem 0 .07rem; + background-color: @tabbar-bg; + &:after { + .top-line(@tabbar-border-color); + } +} + +.tabbar-fixed { + position: fixed; + bottom: 0; + left: 0; + z-index: 49; +} + +.tabbar-item { + flex: 1; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + color: @tabbar-color; +} + +.tabbar-active { + color: @tabbar-active-color; + .tabbar-icon { + color: inherit; + } +} + +.tabbar-badge { + position: absolute; + top: -.02rem; + left: 100%; + z-index: 999; + margin-left: -.15rem; +} + +.tabbar-dot { + display: block; + width: 10px; + height: 10px; + background-color: #EF4F4F; + border-radius: 50%; + position: absolute; + top: .02rem; + left: 100%; + z-index: 999; + margin-left: -.11rem; +} + +.tabbar-icon { + height: @tabbar-icon-fontsize * 1.08; + color: @tabbar-icon-color; + display: flex; + align-items: center; + position: relative; + img { + height: 70%; + } +} + +.tabbar-txt { + display: inline-block; + font-size: @tabbar-text-fontsize; +} diff --git a/src/styles/index.less b/src/styles/index.less new file mode 100644 index 00000000..e2f8fc8b --- /dev/null +++ b/src/styles/index.less @@ -0,0 +1,4 @@ +@import "./common/variables"; +@import "./common/reset"; +@import "./common/mixins"; +@import "./common/public"; diff --git a/src/utils/assist.js b/src/utils/assist.js new file mode 100644 index 00000000..8667893c --- /dev/null +++ b/src/utils/assist.js @@ -0,0 +1,29 @@ +const pageScroll = (function () { + const fn = function (e) { + e.preventDefault(); + e.stopPropagation(); + }; + let islock = false; + + return { + lock: function () { + if (islock)return; + islock = true; + document.addEventListener('touchmove', fn); + }, + unlock: function () { + islock = false; + document.removeEventListener('touchmove', fn); + } + }; +})(); + +const isColor = function(value) { + const colorReg = /^#([a-fA-F0-9]){3}(([a-fA-F0-9]){3})?$/; + const rgbaReg = /^[rR][gG][bB][aA]\(\s*((25[0-5]|2[0-4]\d|1?\d{1,2})\s*,\s*){3}\s*(\.|\d+\.)?\d+\s*\)$/; + const rgbReg = /^[rR][gG][bB]\(\s*((25[0-5]|2[0-4]\d|1?\d{1,2})\s*,\s*){2}(25[0-5]|2[0-4]\d|1?\d{1,2})\s*\)$/; + + return colorReg.test(value) || rgbaReg.test(value) || rgbReg.test(value); +}; + +export {pageScroll, isColor};