├── .babelrc
├── .editorconfig
├── .eslintignore
├── .eslintrc.js
├── .gitignore
├── .postcssrc.js
├── README.md
├── build
├── build.js
├── check-versions.js
├── utils.js
├── vue-loader.conf.js
├── webpack.base.conf.js
├── webpack.dev.conf.js
└── webpack.prod.conf.js
├── config
├── dev.env.js
├── index.js
└── prod.env.js
├── dist
├── hg-vcomponents.min.css
└── hg-vcomponents.min.js
├── index.html
├── package-lock.json
├── package.json
├── src
├── App.vue
├── components
│ ├── Banner
│ │ ├── README.md
│ │ └── banner.vue
│ ├── FixedTitle
│ │ ├── README.md
│ │ └── fixed-title.vue
│ ├── Gallery
│ │ ├── README.md
│ │ └── gallery.vue
│ ├── Hint
│ │ ├── README.md
│ │ └── hint.vue
│ ├── HollowArrow
│ │ ├── README.md
│ │ └── hollow-arrow.vue
│ ├── Loading
│ │ ├── README.md
│ │ └── loading.vue
│ ├── MultTextInput
│ │ ├── README.md
│ │ └── mult-text-input.vue
│ ├── OmitText
│ │ ├── README.md
│ │ └── omit-text.vue
│ ├── ProgressBar
│ │ ├── README.md
│ │ └── progress-bar.vue
│ ├── Round
│ │ ├── README.md
│ │ └── round.vue
│ ├── SlidDelete
│ │ ├── README.md
│ │ └── slid-delete.vue
│ ├── SolidArrow
│ │ ├── README.md
│ │ └── solid-arrow.vue
│ ├── ToTop
│ │ ├── README.md
│ │ └── to-top.vue
│ └── index.js
├── examples
│ ├── arrows.vue
│ ├── banner.vue
│ ├── fixedtitle.vue
│ ├── gallery.vue
│ ├── hint.vue
│ ├── index.vue
│ ├── loading.vue
│ ├── multtextinput.vue
│ ├── omittext.vue
│ ├── progressbar.vue
│ ├── round.vue
│ └── sliddelete.vue
├── main.js
└── router
│ └── index.js
└── static
└── .gitkeep
/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": [
3 | ["env", {
4 | "modules": false,
5 | "targets": {
6 | "browsers": ["> 1%", "last 2 versions", "not ie <= 8"]
7 | }
8 | }],
9 | "stage-2"
10 | ],
11 | "plugins": ["transform-vue-jsx", "transform-runtime"]
12 | }
13 |
--------------------------------------------------------------------------------
/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | charset = utf-8
5 | indent_style = space
6 | indent_size = 2
7 | end_of_line = lf
8 | insert_final_newline = true
9 | trim_trailing_whitespace = true
10 |
--------------------------------------------------------------------------------
/.eslintignore:
--------------------------------------------------------------------------------
1 | /build/
2 | /config/
3 | /dist/
4 | /*.js
5 |
--------------------------------------------------------------------------------
/.eslintrc.js:
--------------------------------------------------------------------------------
1 | // https://eslint.org/docs/user-guide/configuring
2 |
3 | module.exports = {
4 | root: true,
5 | parser: 'babel-eslint',
6 | parserOptions: {
7 | sourceType: 'module'
8 | },
9 | env: {
10 | browser: true,
11 | },
12 | // https://github.com/standard/standard/blob/master/docs/RULES-en.md
13 | extends: 'standard',
14 | // required to lint *.vue files
15 | plugins: [
16 | 'html'
17 | ],
18 | // add your custom rules here
19 | 'rules': {
20 | 'comma-dangle': 0,
21 | // allow paren-less arrow functions
22 | 'arrow-parens': 0,
23 | // allow async-await
24 | 'generator-star-spacing': 0,
25 | // allow debugger during development
26 | 'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
27 | 'semi': ['error', 'always'],
28 | 'no-unused-vars': 0,
29 | 'one-var': 0
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules/
3 | dist/
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 |
8 | # Editor directories and files
9 | .idea
10 | .vscode
11 | *.suo
12 | *.ntvs*
13 | *.njsproj
14 | *.sln
15 |
--------------------------------------------------------------------------------
/.postcssrc.js:
--------------------------------------------------------------------------------
1 | // https://github.com/michael-ciniawsky/postcss-load-config
2 |
3 | module.exports = {
4 | "plugins": {
5 | "postcss-import": {},
6 | "postcss-url": {},
7 | // to edit target browsers: use "browserslist" field in package.json
8 | "autoprefixer": {}
9 | }
10 | }
11 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # hg-vcomponents
2 | Hanger's vue-components.
3 |
4 | ## Installation
5 | ```
6 | npm install hg-vcomponents
7 | ```
8 |
9 | ## Import
10 | ```
11 | import 'hg-vcomponents/dist/hg-vcomponents.min.css';
12 | import { Loading, SolidArrow... } from 'hg-vcomponents';
13 | ```
14 |
15 | ## Content
16 | [SlidDelete 滑动删除组件](./src/components/SlidDelete)
17 |
18 | [Hint 透明提示组件](./src/components/Hint)
19 |
20 | [Loading 加载状态组件](./src/components/Loading)
21 |
22 | [FixedTitle 表头固定组件](./src/components/FixedTitle)
23 |
24 | [ToTop 页面置顶组件](./src/components/ToTop)
25 |
26 | [HollowArrow 空心箭头组件](./src/components/HollowArrow)
27 |
28 | [SolidArrow 实心箭头组件](./src/components/SolidArrow)
29 |
30 | [Round 圆形组件](./src/components/Round)
31 |
32 | [ProgressBar 进度条组件](./src/components/ProgressBar)
33 |
34 | [OmitText 文本省略组件](./src/components/OmitText)
35 |
36 | [Banner 横幅组件](./src/components/Banner)
37 |
38 | [MultTextInput 多项文本输入组件](./src/components/MultTextInput)
39 |
40 | ## Demo
41 | 下载该项目,在文件根目录下依次输入命令行:
42 | ```
43 | npm install
44 | npm run dev
45 | ```
46 | 然后在浏览器里输入`http://localhost:8089`,即可看到组件 demo。
47 |
48 | ## Changelog
49 | ### 2018.10.22
50 | > v0.1.10 * 页面置顶组件添加置底配置
51 |
52 | ### 2018.9.30
53 | > v0.1.9 * 修复横幅组件时常无法滑动问题
54 |
55 | ### 2018.9.26
56 | > v0.1.8 * 多项文本输入组件
57 |
58 | ### 2018.5.3
59 | > v0.1.7 * 表头固定组件添加 scrollTop 和 top 属性
60 |
61 | ### 2018.5.3
62 | > v0.1.7 * 表头固定组件添加 scrollTop 和 top 属性
63 |
64 | ### 2018.4.21
65 | > v0.1.6 * 添加滑动删除组件的删除按钮自定义
66 |
67 | ### 2018.4.17
68 | > v0.1.4 * 取消圆形组件、空心和实心箭头组件的绝对定位设置
69 |
70 | > v0.1.3 * 修改进度条组件高度设置,并去除多余样式
71 |
72 | ### 2018.3.26
73 | > v0.1.1 * 添加横幅组件
74 |
75 | ### 2018.3.11
76 | > v0.1.0 * 添加圆形组件、空心和实心箭头组件的激活状态
77 |
78 | ### 2018.2.28
79 | > v0.0.30 * 创建文本省略组件
80 |
81 | ### 2018.2.26
82 | > v0.0.29 * 删除原箭头组件,创建空心箭头和实心箭头组件
83 |
84 | ### 2018.2.9
85 | > v0.0.28 * 创建 README.md、进度条和圆形组件
86 |
87 | ### 2018.1.14
88 | > v0.0.27 * 创建箭头组件
89 |
90 | ### 2018.1.10
91 | > v0.0.25 * 初始化项目,创建滑动删除、透明提示、加载状态、表头固定、页面置顶组件
--------------------------------------------------------------------------------
/build/build.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | require('./check-versions')()
3 |
4 | process.env.NODE_ENV = 'production'
5 |
6 | const ora = require('ora')
7 | const rm = require('rimraf')
8 | const path = require('path')
9 | const chalk = require('chalk')
10 | const webpack = require('webpack')
11 | const config = require('../config')
12 | const webpackConfig = require('./webpack.prod.conf')
13 |
14 | const spinner = ora('building for production...')
15 | spinner.start()
16 |
17 | rm(path.join(config.build.assetsRoot, config.build.assetsSubDirectory), err => {
18 | if (err) throw err
19 | webpack(webpackConfig, (err, stats) => {
20 | spinner.stop()
21 | if (err) throw err
22 | process.stdout.write(stats.toString({
23 | colors: true,
24 | modules: false,
25 | children: false, // If you are using ts-loader, setting this to true will make TypeScript errors show up during build.
26 | chunks: false,
27 | chunkModules: false
28 | }) + '\n\n')
29 |
30 | if (stats.hasErrors()) {
31 | console.log(chalk.red(' Build failed with errors.\n'))
32 | process.exit(1)
33 | }
34 |
35 | console.log(chalk.cyan(' Build complete.\n'))
36 | console.log(chalk.yellow(
37 | ' Tip: built files are meant to be served over an HTTP server.\n' +
38 | ' Opening index.html over file:// won\'t work.\n'
39 | ))
40 | })
41 | })
42 |
--------------------------------------------------------------------------------
/build/check-versions.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const chalk = require('chalk')
3 | const semver = require('semver')
4 | const packageConfig = require('../package.json')
5 | const shell = require('shelljs')
6 |
7 | function exec (cmd) {
8 | return require('child_process').execSync(cmd).toString().trim()
9 | }
10 |
11 | const versionRequirements = [
12 | {
13 | name: 'node',
14 | currentVersion: semver.clean(process.version),
15 | versionRequirement: packageConfig.engines.node
16 | }
17 | ]
18 |
19 | if (shell.which('npm')) {
20 | versionRequirements.push({
21 | name: 'npm',
22 | currentVersion: exec('npm --version'),
23 | versionRequirement: packageConfig.engines.npm
24 | })
25 | }
26 |
27 | module.exports = function () {
28 | const warnings = []
29 |
30 | for (let i = 0; i < versionRequirements.length; i++) {
31 | const mod = versionRequirements[i]
32 |
33 | if (!semver.satisfies(mod.currentVersion, mod.versionRequirement)) {
34 | warnings.push(mod.name + ': ' +
35 | chalk.red(mod.currentVersion) + ' should be ' +
36 | chalk.green(mod.versionRequirement)
37 | )
38 | }
39 | }
40 |
41 | if (warnings.length) {
42 | console.log('')
43 | console.log(chalk.yellow('To use this template, you must update following to modules:'))
44 | console.log()
45 |
46 | for (let i = 0; i < warnings.length; i++) {
47 | const warning = warnings[i]
48 | console.log(' ' + warning)
49 | }
50 |
51 | console.log()
52 | process.exit(1)
53 | }
54 | }
55 |
--------------------------------------------------------------------------------
/build/utils.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const config = require('../config')
4 | const ExtractTextPlugin = require('extract-text-webpack-plugin')
5 | const packageConfig = require('../package.json')
6 |
7 | exports.assetsPath = function (_path) {
8 | const assetsSubDirectory = process.env.NODE_ENV === 'production'
9 | ? config.build.assetsSubDirectory
10 | : config.dev.assetsSubDirectory
11 |
12 | return path.posix.join(assetsSubDirectory, _path)
13 | }
14 |
15 | exports.cssLoaders = function (options) {
16 | options = options || {}
17 |
18 | const cssLoader = {
19 | loader: 'css-loader',
20 | options: {
21 | sourceMap: options.sourceMap
22 | }
23 | }
24 |
25 | const postcssLoader = {
26 | loader: 'postcss-loader',
27 | options: {
28 | sourceMap: options.sourceMap
29 | }
30 | }
31 |
32 | // generate loader string to be used with extract text plugin
33 | function generateLoaders (loader, loaderOptions) {
34 | const loaders = options.usePostCSS ? [cssLoader, postcssLoader] : [cssLoader]
35 |
36 | if (loader) {
37 | loaders.push({
38 | loader: loader + '-loader',
39 | options: Object.assign({}, loaderOptions, {
40 | sourceMap: options.sourceMap
41 | })
42 | })
43 | }
44 |
45 | // Extract CSS when that option is specified
46 | // (which is the case during production build)
47 | if (options.extract) {
48 | return ExtractTextPlugin.extract({
49 | use: loaders,
50 | fallback: 'vue-style-loader'
51 | })
52 | } else {
53 | return ['vue-style-loader'].concat(loaders)
54 | }
55 | }
56 |
57 | // https://vue-loader.vuejs.org/en/configurations/extract-css.html
58 | return {
59 | css: generateLoaders(),
60 | postcss: generateLoaders(),
61 | less: generateLoaders('less'),
62 | sass: generateLoaders('sass', { indentedSyntax: true }),
63 | scss: generateLoaders('sass'),
64 | stylus: generateLoaders('stylus'),
65 | styl: generateLoaders('stylus')
66 | }
67 | }
68 |
69 | // Generate loaders for standalone style files (outside of .vue)
70 | exports.styleLoaders = function (options) {
71 | const output = []
72 | const loaders = exports.cssLoaders(options)
73 |
74 | for (const extension in loaders) {
75 | const loader = loaders[extension]
76 | output.push({
77 | test: new RegExp('\\.' + extension + '$'),
78 | use: loader
79 | })
80 | }
81 |
82 | return output
83 | }
84 |
85 | exports.createNotifierCallback = () => {
86 | const notifier = require('node-notifier')
87 |
88 | return (severity, errors) => {
89 | if (severity !== 'error') return
90 |
91 | const error = errors[0]
92 | const filename = error.file && error.file.split('!').pop()
93 |
94 | notifier.notify({
95 | title: packageConfig.name,
96 | message: severity + ': ' + error.name,
97 | subtitle: filename || '',
98 | icon: path.join(__dirname, 'logo.png')
99 | })
100 | }
101 | }
102 |
--------------------------------------------------------------------------------
/build/vue-loader.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const config = require('../config')
4 | const isProduction = process.env.NODE_ENV === 'production'
5 | const sourceMapEnabled = isProduction
6 | ? config.build.productionSourceMap
7 | : config.dev.cssSourceMap
8 |
9 | module.exports = {
10 | loaders: utils.cssLoaders({
11 | sourceMap: sourceMapEnabled,
12 | extract: isProduction
13 | }),
14 | cssSourceMap: sourceMapEnabled,
15 | cacheBusting: config.dev.cacheBusting,
16 | transformToRequire: {
17 | video: ['src', 'poster'],
18 | source: 'src',
19 | img: 'src',
20 | image: 'xlink:href'
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/build/webpack.base.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const utils = require('./utils')
4 | const config = require('../config')
5 | const vueLoaderConfig = require('./vue-loader.conf')
6 |
7 | function resolve (dir) {
8 | return path.join(__dirname, '..', dir)
9 | }
10 |
11 | const createLintingRule = () => ({
12 | test: /\.(js|vue)$/,
13 | loader: 'eslint-loader',
14 | enforce: 'pre',
15 | include: [resolve('src'), resolve('test')],
16 | options: {
17 | formatter: require('eslint-friendly-formatter'),
18 | emitWarning: !config.dev.showEslintErrorsInOverlay
19 | }
20 | })
21 |
22 | module.exports = {
23 | context: path.resolve(__dirname, '../'),
24 | entry: {
25 | app: process.env.NODE_ENV === 'production'
26 | ? './src/components/index.js'
27 | : './src/main.js'
28 | },
29 | output: {
30 | path: config.build.assetsRoot,
31 | filename: '[name].js',
32 | publicPath: process.env.NODE_ENV === 'production'
33 | ? config.build.assetsPublicPath
34 | : config.dev.assetsPublicPath
35 | },
36 | resolve: {
37 | extensions: ['.js', '.vue', '.json'],
38 | alias: {
39 | 'vue$': 'vue/dist/vue.esm.js',
40 | '@': resolve('src')
41 | }
42 | },
43 | module: {
44 | rules: [
45 | ...(config.dev.useEslint ? [createLintingRule()] : []),
46 | {
47 | test: /\.vue$/,
48 | loader: 'vue-loader',
49 | options: vueLoaderConfig
50 | },
51 | {
52 | test: /\.js$/,
53 | loader: 'babel-loader',
54 | include: [resolve('src'), resolve('test'), resolve('node_modules/webpack-dev-server/client')]
55 | },
56 | {
57 | test: /\.(png|jpe?g|gif|svg)(\?.*)?$/,
58 | loader: 'url-loader',
59 | options: {
60 | limit: 10000,
61 | name: utils.assetsPath('img/[name].[hash:7].[ext]')
62 | }
63 | },
64 | {
65 | test: /\.(mp4|webm|ogg|mp3|wav|flac|aac)(\?.*)?$/,
66 | loader: 'url-loader',
67 | options: {
68 | limit: 10000,
69 | name: utils.assetsPath('media/[name].[hash:7].[ext]')
70 | }
71 | },
72 | {
73 | test: /\.(woff2?|eot|ttf|otf)(\?.*)?$/,
74 | loader: 'url-loader',
75 | options: {
76 | limit: 10000,
77 | name: utils.assetsPath('fonts/[name].[hash:7].[ext]')
78 | }
79 | }
80 | ]
81 | },
82 | node: {
83 | // prevent webpack from injecting useless setImmediate polyfill because Vue
84 | // source contains it (although only uses it if it's native).
85 | setImmediate: false,
86 | // prevent webpack from injecting mocks to Node native modules
87 | // that does not make sense for the client
88 | dgram: 'empty',
89 | fs: 'empty',
90 | net: 'empty',
91 | tls: 'empty',
92 | child_process: 'empty'
93 | }
94 | }
95 |
--------------------------------------------------------------------------------
/build/webpack.dev.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const utils = require('./utils')
3 | const webpack = require('webpack')
4 | const config = require('../config')
5 | const merge = require('webpack-merge')
6 | const path = require('path')
7 | const baseWebpackConfig = require('./webpack.base.conf')
8 | const CopyWebpackPlugin = require('copy-webpack-plugin')
9 | const HtmlWebpackPlugin = require('html-webpack-plugin')
10 | const FriendlyErrorsPlugin = require('friendly-errors-webpack-plugin')
11 | const portfinder = require('portfinder')
12 |
13 | const HOST = process.env.HOST
14 | const PORT = process.env.PORT && Number(process.env.PORT)
15 |
16 | const devWebpackConfig = merge(baseWebpackConfig, {
17 | module: {
18 | rules: utils.styleLoaders({ sourceMap: config.dev.cssSourceMap, usePostCSS: true })
19 | },
20 | // cheap-module-eval-source-map is faster for development
21 | devtool: config.dev.devtool,
22 |
23 | // these devServer options should be customized in /config/index.js
24 | devServer: {
25 | clientLogLevel: 'warning',
26 | historyApiFallback: {
27 | rewrites: [
28 | { from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },
29 | ],
30 | },
31 | hot: true,
32 | contentBase: false, // since we use CopyWebpackPlugin.
33 | compress: true,
34 | host: HOST || config.dev.host,
35 | port: PORT || config.dev.port,
36 | open: config.dev.autoOpenBrowser,
37 | overlay: config.dev.errorOverlay
38 | ? { warnings: false, errors: true }
39 | : false,
40 | publicPath: config.dev.assetsPublicPath,
41 | proxy: config.dev.proxyTable,
42 | quiet: true, // necessary for FriendlyErrorsPlugin
43 | watchOptions: {
44 | poll: config.dev.poll,
45 | }
46 | },
47 | plugins: [
48 | new webpack.DefinePlugin({
49 | 'process.env': require('../config/dev.env')
50 | }),
51 | new webpack.HotModuleReplacementPlugin(),
52 | new webpack.NamedModulesPlugin(), // HMR shows correct file names in console on update.
53 | new webpack.NoEmitOnErrorsPlugin(),
54 | // https://github.com/ampedandwired/html-webpack-plugin
55 | new HtmlWebpackPlugin({
56 | filename: 'index.html',
57 | template: 'index.html',
58 | inject: true
59 | }),
60 | // copy custom static assets
61 | new CopyWebpackPlugin([
62 | {
63 | from: path.resolve(__dirname, '../static'),
64 | to: config.dev.assetsSubDirectory,
65 | ignore: ['.*']
66 | }
67 | ])
68 | ]
69 | })
70 |
71 | module.exports = new Promise((resolve, reject) => {
72 | portfinder.basePort = process.env.PORT || config.dev.port
73 | portfinder.getPort((err, port) => {
74 | if (err) {
75 | reject(err)
76 | } else {
77 | // publish the new Port, necessary for e2e tests
78 | process.env.PORT = port
79 | // add port to devServer config
80 | devWebpackConfig.devServer.port = port
81 |
82 | // Add FriendlyErrorsPlugin
83 | devWebpackConfig.plugins.push(new FriendlyErrorsPlugin({
84 | compilationSuccessInfo: {
85 | messages: [`Your application is running here: http://${devWebpackConfig.devServer.host}:${port}`],
86 | },
87 | onErrors: config.dev.notifyOnErrors
88 | ? utils.createNotifierCallback()
89 | : undefined
90 | }))
91 |
92 | resolve(devWebpackConfig)
93 | }
94 | })
95 | })
96 |
--------------------------------------------------------------------------------
/build/webpack.prod.conf.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const path = require('path')
3 | const utils = require('./utils')
4 | const webpack = require('webpack')
5 | const config = require('../config')
6 | const merge = require('webpack-merge')
7 | const baseWebpackConfig = require('./webpack.base.conf')
8 | const CopyWebpackPlugin = require('copy-webpack-plugin')
9 | const HtmlWebpackPlugin = require('html-webpack-plugin')
10 | const ExtractTextPlugin = require('extract-text-webpack-plugin')
11 | const OptimizeCSSPlugin = require('optimize-css-assets-webpack-plugin')
12 | const UglifyJsPlugin = require('uglifyjs-webpack-plugin')
13 |
14 | const env = require('../config/prod.env')
15 |
16 | const webpackConfig = merge(baseWebpackConfig, {
17 | module: {
18 | rules: utils.styleLoaders({
19 | sourceMap: config.build.productionSourceMap,
20 | extract: true,
21 | usePostCSS: true
22 | })
23 | },
24 | devtool: config.build.productionSourceMap ? config.build.devtool : false,
25 | output: {
26 | path: config.build.assetsRoot,
27 | publicPath: config.build.assetsPublicPath,
28 | filename: 'hg-vcomponents.min.js',
29 | library: 'hg-vcomponents',
30 | libraryTarget: 'umd'
31 | },
32 | plugins: [
33 | // http://vuejs.github.io/vue-loader/en/workflow/production.html
34 | new webpack.DefinePlugin({
35 | 'process.env': env
36 | }),
37 | new webpack.optimize.UglifyJsPlugin({
38 | compress: {
39 | warnings: false
40 | },
41 | sourceMap: true
42 | }),
43 | // extract css into its own file
44 | new ExtractTextPlugin({
45 | // filename: utils.assetsPath('css/[name].[contenthash].css')
46 | filename: 'hg-vcomponents.min.css'
47 | }),
48 | new OptimizeCSSPlugin()
49 | ]
50 | })
51 |
52 | if (config.build.productionGzip) {
53 | const CompressionWebpackPlugin = require('compression-webpack-plugin')
54 |
55 | webpackConfig.plugins.push(
56 | new CompressionWebpackPlugin({
57 | asset: '[path].gz[query]',
58 | algorithm: 'gzip',
59 | test: new RegExp(
60 | '\\.(' +
61 | config.build.productionGzipExtensions.join('|') +
62 | ')$'
63 | ),
64 | threshold: 10240,
65 | minRatio: 0.8
66 | })
67 | )
68 | }
69 |
70 | if (config.build.bundleAnalyzerReport) {
71 | const BundleAnalyzerPlugin = require('webpack-bundle-analyzer').BundleAnalyzerPlugin
72 | webpackConfig.plugins.push(new BundleAnalyzerPlugin())
73 | }
74 |
75 | module.exports = webpackConfig
76 |
--------------------------------------------------------------------------------
/config/dev.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | const merge = require('webpack-merge')
3 | const prodEnv = require('./prod.env')
4 |
5 | module.exports = merge(prodEnv, {
6 | NODE_ENV: '"development"'
7 | })
8 |
--------------------------------------------------------------------------------
/config/index.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | // Template version: 1.2.8
3 | // see http://vuejs-templates.github.io/webpack for documentation.
4 |
5 | const path = require('path')
6 |
7 | module.exports = {
8 | dev: {
9 | assetsSubDirectory: 'static',
10 | assetsPublicPath: '/',
11 | proxyTable: {},
12 | host: 'localhost',
13 | port: 8089,
14 | autoOpenBrowser: false,
15 | errorOverlay: true,
16 | notifyOnErrors: true,
17 | poll: false,
18 | showEslintErrorsInOverlay: false,
19 | devtool: 'cheap-module-eval-source-map',
20 | cacheBusting: true,
21 | cssSourceMap: true,
22 | },
23 | build: {
24 | env: require('./prod.env'),
25 | assetsRoot: path.resolve(__dirname, '../dist'),
26 | assetsPublicPath: '/',
27 | assetsSubDirectory: '/',
28 | productionSourceMap: true,
29 | productionGzip: false,
30 | productionGzipExtensions: ['js', 'css'],
31 | bundleAnalyzerReport: process.env.npm_config_report
32 | }
33 | }
34 |
--------------------------------------------------------------------------------
/config/prod.env.js:
--------------------------------------------------------------------------------
1 | 'use strict'
2 | module.exports = {
3 | NODE_ENV: '"production"'
4 | }
5 |
--------------------------------------------------------------------------------
/dist/hg-vcomponents.min.css:
--------------------------------------------------------------------------------
1 | .leftdel-wrapper[data-v-b40cae3e]{position:relative}.leftdel-wrapper .leftdel-move[data-v-b40cae3e]{position:absolute;width:100%;height:100%;background-color:#fff;z-index:1}.leftdel-wrapper .leftdel-delete[data-v-b40cae3e]{position:absolute;right:0;top:0;height:100%;overflow:hidden}.leftdel-wrapper .leftdel-delete .leftdel-default-text[data-v-b40cae3e]{display:-ms-flexbox;display:flex;color:#fff;height:100%;width:100%;background:#ff3631;text-align:center;-ms-flex-pack:center;justify-content:center;-ms-flex-align:center;align-items:center}.hg-hint-wrap[data-v-1a2bfa3b]{position:absolute;top:50%;left:50%;z-index:3;text-align:center}.hg-hint-wrap .hg-hint-content[data-v-1a2bfa3b]{position:absolute;top:50%;left:50%;margin-top:-37px;margin-left:-32px}.hg-hint-wrap .hg-hint-content span[data-v-1a2bfa3b]{position:relative;display:inline-block;height:40px;width:40px;border-radius:40px;border:2px solid #fff}.hg-hint-wrap .hg-hint-content span em[data-v-1a2bfa3b]{display:inline-block;height:17px;width:10px;border-right:2px solid #fff;border-bottom:2px solid #fff;position:absolute;top:9px;left:14px;transform:rotate(45deg)}.hg-hint-wrap .hg-hint-content p[data-v-1a2bfa3b]{padding-top:5px;color:#fff}.hg-loading-wrapper[data-v-26102743]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;background-color:#fff}.hg-cssload-container[data-v-26102743]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;margin:auto;text-align:center}.hg-cssload-speeding-wheel[data-v-26102743]{margin:0 auto;border-radius:50%;animation:a 575ms infinite linear}@keyframes a{to{transform:rotate(1turn)}}#hg-fixed-title[data-v-3f022111]{display:none;position:fixed;left:0;z-index:2;width:100%}#hg-to-top[data-v-aedc6d98]{display:none;position:fixed;background-color:rgba(70,70,70,.5);z-index:2}#hg-to-top .hg-to-top-arrows[data-v-aedc6d98]{top:13px;transform:rotate(45deg)}#hg-to-top .hg-to-bottom-arrows[data-v-aedc6d98],#hg-to-top .hg-to-top-arrows[data-v-aedc6d98]{display:inline-block;height:12px;width:12px;border-left:2px solid #fff;border-top:2px solid #fff;position:absolute;left:9px}#hg-to-top .hg-to-bottom-arrows[data-v-aedc6d98]{top:7px;transform:rotate(-135deg)}.hollow-arrow[data-v-4026f254]{background-color:transparent;transform:rotate(-45deg)}.solid-arrow[data-v-65c85b1a]{width:0;height:0}.hg-progress-bar-wrap[data-v-20c23cd4]{overflow:hidden}.hg-round[data-v-33228b02]{background-clip:padding-box;border-radius:50%}.banner-view[data-v-49fb2fe8]{position:relative;overflow:hidden;font-size:0}.banner-view .wrap[data-v-49fb2fe8]{white-space:nowrap;width:auto;transition:transform .2s ease-out}.banner-view .wrap>div[data-v-49fb2fe8]{display:inline-block;height:100%;width:100%}.banner-view .point[data-v-49fb2fe8]{position:absolute;z-index:1;left:0;right:0;bottom:8px;text-align:center}.banner-view .point>li[data-v-49fb2fe8]{display:inline-block;width:8px;height:8px;border-radius:50%;margin:0 3px;background-color:hsla(0,0%,94%,.4)}.mult-text-wrap>div[data-v-c0164f06]:first-child{position:relative;margin-bottom:20px}.mult-text-wrap>div:first-child .mult-text-input[data-v-c0164f06]{min-height:38px;border-radius:4px;width:calc(100% - 40px);overflow:hidden;border:1px solid #dcdfe6}.mult-text-wrap>div:first-child .mult-text-input ul[data-v-c0164f06]{list-style:none;margin:0 0 8px;padding:0 5px;display:inline-block;overflow:hidden;padding-left:8px;text-overflow:ellipsis;white-space:nowrap}.mult-text-wrap>div:first-child .mult-text-input ul li[data-v-c0164f06]{line-height:31px;cursor:pointer;float:left;margin-right:6px;margin-top:8px;list-style:none;border-radius:4px;overflow:hidden}.mult-text-wrap>div:first-child .mult-text-input ul .text-li[data-v-c0164f06]{padding:0 5px;background-color:#f3f2f2;border:1px solid #aaa}.mult-text-wrap>div:first-child .mult-text-input ul .text-li .remove[data-v-c0164f06]{cursor:pointer;color:#cacaca}.mult-text-wrap>div:first-child .mult-text-input ul .input-li[data-v-c0164f06]{padding:0}.mult-text-wrap>div:first-child .mult-text-input ul .input-li input[data-v-c0164f06]{height:33px;width:8em;background:transparent;outline:0;box-shadow:none;-webkit-appearance:textfield;box-sizing:border-box;border:none;font-size:100%;padding:0}.mult-text-wrap>div:first-child .mult-text-add[data-v-c0164f06]{cursor:pointer;position:absolute;top:9px;right:0;width:24px;height:24px;border-radius:50%;line-height:20px;font-size:18px;color:#444;border:1px solid #777;text-align:center}.mult-text-wrap>div[data-v-c0164f06]:last-child{width:147px;margin:10px auto}.mult-text-wrap>div:last-child button[data-v-c0164f06]{padding:5px 10px;font-size:14px;border-radius:4px;outline:0;cursor:pointer;border:1px solid #dcdfe6;text-align:center;margin:0 10px}.mult-text-wrap>div:last-child .mult-text-cancel[data-v-c0164f06]{color:#444;background-color:#fff}.mult-text-wrap>div:last-child .mult-text-sure[data-v-c0164f06]{color:#fff;background-color:#409eff}
--------------------------------------------------------------------------------
/dist/hg-vcomponents.min.js:
--------------------------------------------------------------------------------
1 | !function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports["hg-vcomponents"]=e():t["hg-vcomponents"]=e()}("undefined"!=typeof self?self:this,function(){return function(t){function e(n){if(i[n])return i[n].exports;var r=i[n]={i:n,l:!1,exports:{}};return t[n].call(r.exports,r,r.exports,e),r.l=!0,r.exports}var i={};return e.m=t,e.c=i,e.d=function(t,i,n){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},e.p="/",e(e.s=13)}([function(t,e){t.exports=function(t,e,i,n,r,o){var s,a=t=t||{},u=typeof t.default;"object"!==u&&"function"!==u||(s=t,a=t.default);var l="function"==typeof a?a.options:a;e&&(l.render=e.render,l.staticRenderFns=e.staticRenderFns,l._compiled=!0),i&&(l.functional=!0),r&&(l._scopeId=r);var c;if(o?(c=function(t){t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext,t||"undefined"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),n&&n.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(o)},l._ssrRegister=c):n&&(c=n),c){var d=l.functional,f=d?l.render:l.beforeCreate;d?(l._injectStyles=c,l.render=function(t,e){return c.call(e),f(t,e)}):l.beforeCreate=f?[].concat(f,c):[c]}return{esModule:s,exports:a,options:l}}},function(t,e,i){"use strict";var n={deteleClicked:"deteleClicked"};e.a={name:"slid-delete",props:{height:{type:String,default:"70px"},delWidth:{type:Number,default:70}},data:function(){return{startX:0,disX:0,leftSlide:1}},methods:{_touchstart:function(t){this.startX=t.touches[0].clientX,0===this.disX&&(this.leftSlide=1),this.disX===-1*this.delWidth&&(this.leftSlide=0)},_touchmove:function(t){var e=t.touches[0].clientX,i=e-this.startX;this.leftSlide?(i<-1*this.delWidth&&(i=-1*this.delWidth),i>0&&(i=0),this.disX=i):(i<0&&(i=0),i>this.delWidth&&(i=this.delWidth),this.disX=-1*this.delWidth+i)},_touchend:function(t){var e=t.changedTouches[0].clientX-this.startX;this.leftSlide?Math.abs(e)>=.5*this.delWidth?this.disX=-1*this.delWidth:this.disX=0:Math.abs(e)>=.5*this.delWidth?this.disX=0:this.disX=-1*this.delWidth},_delete:function(){this.$emit(n.deteleClicked)}}}},function(t,e,i){"use strict";e.a={name:"hint",props:{height:{type:Number,default:108},width:{type:Number,default:140},bgColor:{type:String,default:"rgba(70, 70, 70, 0.5)"},radius:{type:String,default:"6px"}}}},function(t,e,i){"use strict";e.a={name:"loading",props:{color:{type:String,default:"#2a8ee3"},diam:{type:Number,default:50},size:{type:Number,default:3}}}},function(t,e,i){"use strict";e.a={name:"fixed-title",props:{top:{type:String,default:"0px"},scrollTop:{type:Number,default:0}},mounted:function(){var t=this,e=document.getElementById("hg-fixed-title");window.addEventListener("scroll",function(i){(document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop)>t.scrollTop?e.style.display="block":e.style.display="none"})}}},function(t,e,i){"use strict";e.a={name:"to-top",data:function(){return{}},props:{direction:{type:String,default:"top"},position:{type:Number,default:0},scrollTop:{type:Number,default:667},bottom:{type:String,default:"20px"},right:{type:String,default:"20px"},height:{type:String,default:"30px"},width:{type:String,default:"30px"},borderRadius:{type:String,default:"6px"}},methods:{toTop:function(){window.scroll(0,this.position)}},mounted:function(){var t=this,e=document.getElementById("hg-to-top");window.addEventListener("scroll",function(i){(document.documentElement.scrollTop||window.pageYOffset||document.body.scrollTop)>t.scrollTop?e.style.display="block":e.style.display="none"})}}},function(t,e,i){"use strict";e.a={name:"hollow-arrow",props:{size:{type:String,default:"10px"},bdSize:{type:String,default:"1px"},color:{type:String,default:"#666"},direction:{type:String,default:"right"},active:{type:Boolean,default:!1}},computed:{leftBdSize:function(){return"right"===this.direction||"top"===this.direction?0:this.getStyle(this.bdSize)},rightBdSize:function(){return"left"===this.direction||"bottom"===this.direction?0:this.getStyle(this.bdSize)},topBdSize:function(){return"right"===this.direction||"bottom"===this.direction?0:this.getStyle(this.bdSize)},bottomBdSize:function(){return"left"===this.direction||"top"===this.direction?0:this.getStyle(this.bdSize)}},methods:{getStyle:function(t){return t?this.active?t.split("@")[1]||t.split("@")[0]:t.split("@")[0]:t}}}},function(t,e,i){"use strict";e.a={name:"solid-arrow",props:{size:{type:String,default:"8px"},color:{type:String,default:"#666"},direction:{type:String,default:"right"},active:{type:Boolean,default:!1}},computed:{leftBdColor:function(){return"right"===this.direction?this.getStyle(this.color):"transparent"},rightBdColor:function(){return"left"===this.direction?this.getStyle(this.color):"transparent"},topBdColor:function(){return"bottom"===this.direction?this.getStyle(this.color):"transparent"},bottomBdColor:function(){return"top"===this.direction?this.getStyle(this.color):"transparent"}},methods:{getStyle:function(t){return t?this.active?t.split("@")[1]||t.split("@")[0]:t.split("@")[0]:t}}}},function(t,e,i){"use strict";e.a={name:"progress-bar",props:{height:{type:String,default:"20px"},width:{type:String,default:"100%"},unfinishColor:{type:String,default:"#f1f1f1"},finishColor:{type:String,default:"#2a8ee3"},finishWidth:{type:String,default:"40%"},radius:{type:String,default:void 0}}}},function(t,e,i){"use strict";e.a={name:"round",props:{size:{type:String,default:"20px"},bdSize:{type:String,default:"1px"},bgColor:{type:String,default:"#2a8ee3"},bdColor:{type:String,default:"#2a8ee3"},active:{type:Boolean,default:!1}},methods:{getStyle:function(t){return t?this.active?t.split("@")[1]||t.split("@")[0]:t.split("@")[0]:t}}}},function(t,e,i){"use strict";e.a={name:"omit-text",props:{text:{type:String,default:""},limit:{type:Number,default:70},color:{type:String,default:"#4a9fef"},showTip:{type:String,default:"更多"},hideTip:{type:String,default:"收起"}},data:function(){return{all:!1}},computed:{shortText:function(){return this.text.substr(0,this.limit)}}}},function(t,e,i){"use strict";e.a={name:"banner",props:{showPoint:{type:Boolean,default:!0}},data:function(){return{startX:0,curPos:0,disX:0,itemWidth:0,itemAmount:0,itemIndex:0}},methods:{_touchstart:function(t){this.startX=t.touches[0].clientX,this.curPos=this.disX},_touchmove:function(t){var e=t.touches[0].clientX-this.startX;e>0&&this.disX>=0?this.disX=0:e<0&&this.disX<=-1*this.itemWidth*(this.itemAmount-1)?this.disX=-1*this.itemWidth*(this.itemAmount-1):this.disX=this.curPos+e},_touchend:function(t){this.itemIndex=-1*Math.round(this.disX/this.itemWidth),this.disX=-1*this.itemIndex*this.itemWidth}},mounted:function(){var t=this;this.$nextTick(function(){t.itemAmount=t.$slots.item.length,t.itemWidth=t.$refs.bannerView.clientWidth})}}},function(t,e,i){"use strict";var n={sure:"sure",cancel:"cancel"};e.a={name:"mult-text-input",props:{data:{type:Array,default:[]}},data:function(){return{curText:"",isInput:!1}},methods:{clickInput:function(){this.isInput=!0,this.$refs.textInput.focus()},delItem:function(t){this.data.splice(t,1)},addItem:function(){if(""===this.curText.trim())return void alert("输入不能为空");this.data.push(this.curText),this.curText=""},sure2:function(){this.$emit(n.sure,this.data)},cancel2:function(){this.$emit(n.cancel)}}}},function(t,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(14),r=i(17),o=i(20),s=i(23),a=i(26),u=i(29),l=i(32),c=i(35),d=i(38),f=i(41),h=i(44),p=i(47);i.d(e,"SlidDelete",function(){return n.a}),i.d(e,"Hint",function(){return r.a}),i.d(e,"Loading",function(){return o.a}),i.d(e,"FixedTitle",function(){return s.a}),i.d(e,"ToTop",function(){return a.a}),i.d(e,"HollowArrow",function(){return u.a}),i.d(e,"SolidArrow",function(){return l.a}),i.d(e,"ProgressBar",function(){return c.a}),i.d(e,"Round",function(){return d.a}),i.d(e,"OmitText",function(){return f.a}),i.d(e,"Banner",function(){return h.a}),i.d(e,"MultTextInput",function(){return p.a})},function(t,e,i){"use strict";function n(t){i(15)}var r=i(1),o=i(16),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-b40cae3e",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"leftdel-wrapper",style:{height:t.height}},[i("div",{staticClass:"leftdel-move",style:"transform:translate3d("+t.disX+"px, 0, 0)",on:{touchstart:t._touchstart,touchmove:t._touchmove,touchend:t._touchend}},[t._t("default")],2),t._v(" "),i("div",{staticClass:"leftdel-delete",style:{width:t.delWidth+"px"},on:{click:t._delete}},[t._t("delete-btn",[i("div",{staticClass:"leftdel-default-text"},[t._v("删除")])])],2)])},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(18)}var r=i(2),o=i(19),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-1a2bfa3b",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{staticClass:"hg-hint-wrap",style:{height:t.height+"px",width:t.width+"px","margin-top":-1*t.height/2+"px","margin-left":-1*t.width/2+"px","border-radius":t.radius,"background-color":t.bgColor}},[t._t("default",[t._m(0)])],2)},r=[function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"hg-hint-content"},[i("span",[i("em")]),t._v(" "),i("p",[t._v("修改成功")])])}],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(21)}var r=i(3),o=i(22),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-26102743",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"hg-loading-wrapper"},[i("div",{staticClass:"hg-cssload-container",style:{height:t.diam+2*t.size+"px"}},[i("div",{staticClass:"hg-cssload-speeding-wheel",style:{width:t.diam+"px",height:t.diam+"px",border:t.size+"px solid "+t.color,"border-left-color":"transparent","border-right-color":"transparent"}})])])},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(24)}var r=i(4),o=i(25),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-3f022111",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{style:{top:t.top},attrs:{id:"hg-fixed-title"}},[t._t("default")],2)},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(27)}var r=i(5),o=i(28),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-aedc6d98",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{style:{height:t.height,width:t.width,"border-radius":t.borderRadius,bottom:t.bottom,right:t.right},attrs:{id:"hg-to-top"},on:{click:t.toTop}},[t._t("default",["top"===t.direction?i("span",{staticClass:"hg-to-top-arrows"}):t._e(),t._v(" "),"bottom"===t.direction?i("span",{staticClass:"hg-to-bottom-arrows"}):t._e()])],2)},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(30)}var r=i(6),o=i(31),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-4026f254",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{staticClass:"hollow-arrow",style:{height:t.getStyle(t.size),width:t.getStyle(t.size),"border-top":t.topBdSize+" solid "+t.getStyle(t.color),"border-left":t.leftBdSize+" solid "+t.getStyle(t.color),"border-bottom":t.bottomBdSize+" solid "+t.getStyle(t.color),"border-right":t.rightBdSize+" solid "+t.getStyle(t.color)}})},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(33)}var r=i(7),o=i(34),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-65c85b1a",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{staticClass:"solid-arrow",style:{"border-top":t.getStyle(t.size)+" solid "+t.topBdColor,"border-left":t.getStyle(t.size)+" solid "+t.leftBdColor,"border-bottom":t.getStyle(t.size)+" solid "+t.bottomBdColor,"border-right":t.getStyle(t.size)+" solid "+t.rightBdColor}})},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(36)}var r=i(8),o=i(37),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-20c23cd4",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"hg-progress-bar-wrap",style:{width:t.width,"background-color":t.unfinishColor,"border-radius":t.radius}},[i("div",{staticClass:"hg-progress-bar-inner",style:{height:t.height,width:t.finishWidth,"background-color":t.finishColor}})])},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(39)}var r=i(9),o=i(40),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-33228b02",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement;return(t._self._c||e)("div",{staticClass:"hg-round",style:{height:t.getStyle(t.size),width:t.getStyle(t.size),"background-color":t.getStyle(t.bgColor),border:t.getStyle(t.bdSize)+" solid "+t.getStyle(t.bdColor)}})},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(42)}var r=i(10),o=i(43),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-3bc46312",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("p",[t._v("\n "+t._s(t.all?t.text:t.shortText)+"\n "),t.text.length>t.limit?i("span",{style:{color:t.color},on:{click:function(e){t.all=!t.all}}},[t._v(t._s(t.all?t.hideTip:t.showTip))]):t._e()])},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(45)}var r=i(11),o=i(46),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-49fb2fe8",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{ref:"bannerView",staticClass:"banner-view"},[i("div",{staticClass:"wrap",style:{transform:"translate3d("+t.disX+"px, 0, 0)"},on:{touchstart:t._touchstart,touchmove:t._touchmove,touchend:t._touchend}},[t._t("item")],2),t._v(" "),t.showPoint?i("ul",{staticClass:"point"},t._l(new Array(t.itemAmount),function(e,n){return i("li",{key:n,style:{"background-color":n===t.itemIndex?"rgba(240, 240, 240, 0.9)":""}})})):t._e()])},r=[],o={render:n,staticRenderFns:r};e.a=o},function(t,e,i){"use strict";function n(t){i(48)}var r=i(12),o=i(49),s=i(0),a=n,u=s(r.a,o.a,!1,a,"data-v-c0164f06",null);e.a=u.exports},function(t,e){},function(t,e,i){"use strict";var n=function(){var t=this,e=t.$createElement,i=t._self._c||e;return i("div",{staticClass:"mult-text-wrap"},[i("div",[i("div",{staticClass:"mult-text-input",on:{click:t.clickInput}},[i("ul",[t._l(t.data,function(e,n){return i("li",{key:n,staticClass:"text-li"},[t._v("\r\n "+t._s(e)+"\r\n "),i("span",{staticClass:"remove",on:{click:function(e){t.delItem(n)}}},[t._v("×")])])}),t._v(" "),i("li",{directives:[{name:"show",rawName:"v-show",value:t.isInput,expression:"isInput"}],staticClass:"input-li"},[i("input",{directives:[{name:"model",rawName:"v-model",value:t.curText,expression:"curText"}],ref:"textInput",staticClass:"mult-text-input",attrs:{type:"text"},domProps:{value:t.curText},on:{keyup:function(e){return"button"in e||!t._k(e.keyCode,"enter",13,e.key,"Enter")?t.addItem(e):null},input:function(e){e.target.composing||(t.curText=e.target.value)}}})])],2)]),t._v(" "),i("div",{staticClass:"mult-text-add",on:{click:t.addItem}},[t._v("+")])]),t._v(" "),i("div",[i("button",{staticClass:"mult-text-cancel",on:{click:t.cancel2}},[t._v("取消")]),t._v(" "),i("button",{staticClass:"mult-text-sure",on:{click:t.sure2}},[t._v("确定")])])])},r=[],o={render:n,staticRenderFns:r};e.a=o}])});
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | hg-vcomponents
7 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/package-lock.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hg-vcomponents",
3 | "version": "0.1.7",
4 | "lockfileVersion": 1,
5 | "requires": true,
6 | "dependencies": {
7 | "acorn": {
8 | "version": "5.7.3",
9 | "resolved": "https://registry.npmjs.org/acorn/-/acorn-5.7.3.tgz",
10 | "integrity": "sha512-T/zvzYRfbVojPWahDsE5evJdHb3oJoQfFbsrKM7w5Zcs++Tr257tia3BmMP8XYVjp1S9RZXQMh7gao96BlqZOw==",
11 | "dev": true
12 | },
13 | "acorn-jsx": {
14 | "version": "3.0.1",
15 | "resolved": "http://registry.npmjs.org/acorn-jsx/-/acorn-jsx-3.0.1.tgz",
16 | "integrity": "sha1-r9+UiPsezvyDSPb7IvRk4ypYs2s=",
17 | "dev": true,
18 | "requires": {
19 | "acorn": "^3.0.4"
20 | },
21 | "dependencies": {
22 | "acorn": {
23 | "version": "3.3.0",
24 | "resolved": "http://registry.npmjs.org/acorn/-/acorn-3.3.0.tgz",
25 | "integrity": "sha1-ReN/s56No/JbruP/U2niu18iAXo=",
26 | "dev": true
27 | }
28 | }
29 | },
30 | "ajv": {
31 | "version": "4.11.8",
32 | "resolved": "https://registry.npmjs.org/ajv/-/ajv-4.11.8.tgz",
33 | "integrity": "sha1-gv+wKynmYq5TvcIK8VlHcGc5xTY=",
34 | "dev": true,
35 | "requires": {
36 | "co": "^4.6.0",
37 | "json-stable-stringify": "^1.0.1"
38 | }
39 | },
40 | "ajv-keywords": {
41 | "version": "1.5.1",
42 | "resolved": "https://registry.npmjs.org/ajv-keywords/-/ajv-keywords-1.5.1.tgz",
43 | "integrity": "sha1-MU3QpLM2j609/NxU7eYXG4htrzw=",
44 | "dev": true
45 | },
46 | "ansi-escapes": {
47 | "version": "1.4.0",
48 | "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-1.4.0.tgz",
49 | "integrity": "sha1-06ioOzGapneTZisT52HHkRQiMG4=",
50 | "dev": true
51 | },
52 | "ansi-regex": {
53 | "version": "2.1.1",
54 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
55 | "integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
56 | "dev": true
57 | },
58 | "ansi-styles": {
59 | "version": "2.2.1",
60 | "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
61 | "integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
62 | "dev": true
63 | },
64 | "argparse": {
65 | "version": "1.0.10",
66 | "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
67 | "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
68 | "dev": true,
69 | "requires": {
70 | "sprintf-js": "~1.0.2"
71 | }
72 | },
73 | "array-union": {
74 | "version": "1.0.2",
75 | "resolved": "https://registry.npmjs.org/array-union/-/array-union-1.0.2.tgz",
76 | "integrity": "sha1-mjRBDk9OPaI96jdb5b5w8kd47Dk=",
77 | "dev": true,
78 | "requires": {
79 | "array-uniq": "^1.0.1"
80 | }
81 | },
82 | "array-uniq": {
83 | "version": "1.0.3",
84 | "resolved": "https://registry.npmjs.org/array-uniq/-/array-uniq-1.0.3.tgz",
85 | "integrity": "sha1-r2rId6Jcx/dOBYiUdThY39sk/bY=",
86 | "dev": true
87 | },
88 | "arrify": {
89 | "version": "1.0.1",
90 | "resolved": "https://registry.npmjs.org/arrify/-/arrify-1.0.1.tgz",
91 | "integrity": "sha1-iYUI2iIm84DfkEcoRWhJwVAaSw0=",
92 | "dev": true
93 | },
94 | "babel-code-frame": {
95 | "version": "6.26.0",
96 | "resolved": "https://registry.npmjs.org/babel-code-frame/-/babel-code-frame-6.26.0.tgz",
97 | "integrity": "sha1-Y/1D99weO7fONZR9uP42mj9Yx0s=",
98 | "dev": true,
99 | "requires": {
100 | "chalk": "^1.1.3",
101 | "esutils": "^2.0.2",
102 | "js-tokens": "^3.0.2"
103 | },
104 | "dependencies": {
105 | "chalk": {
106 | "version": "1.1.3",
107 | "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
108 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
109 | "dev": true,
110 | "requires": {
111 | "ansi-styles": "^2.2.1",
112 | "escape-string-regexp": "^1.0.2",
113 | "has-ansi": "^2.0.0",
114 | "strip-ansi": "^3.0.0",
115 | "supports-color": "^2.0.0"
116 | }
117 | }
118 | }
119 | },
120 | "balanced-match": {
121 | "version": "1.0.0",
122 | "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.0.tgz",
123 | "integrity": "sha1-ibTRmasr7kneFk6gK4nORi1xt2c=",
124 | "dev": true
125 | },
126 | "brace-expansion": {
127 | "version": "1.1.11",
128 | "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
129 | "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
130 | "dev": true,
131 | "requires": {
132 | "balanced-match": "^1.0.0",
133 | "concat-map": "0.0.1"
134 | }
135 | },
136 | "buffer-from": {
137 | "version": "1.1.1",
138 | "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz",
139 | "integrity": "sha512-MQcXEUbCKtEo7bhqEs6560Hyd4XaovZlO/k9V3hjVUF/zwW7KBVdSK4gIt/bzwS9MbR5qob+F5jusZsb0YQK2A==",
140 | "dev": true
141 | },
142 | "caller-path": {
143 | "version": "0.1.0",
144 | "resolved": "https://registry.npmjs.org/caller-path/-/caller-path-0.1.0.tgz",
145 | "integrity": "sha1-lAhe9jWB7NPaqSREqP6U6CV3dR8=",
146 | "dev": true,
147 | "requires": {
148 | "callsites": "^0.2.0"
149 | }
150 | },
151 | "callsites": {
152 | "version": "0.2.0",
153 | "resolved": "https://registry.npmjs.org/callsites/-/callsites-0.2.0.tgz",
154 | "integrity": "sha1-r6uWJikQp/M8GaV3WCXGnzTjUMo=",
155 | "dev": true
156 | },
157 | "circular-json": {
158 | "version": "0.3.3",
159 | "resolved": "https://registry.npmjs.org/circular-json/-/circular-json-0.3.3.tgz",
160 | "integrity": "sha512-UZK3NBx2Mca+b5LsG7bY183pHWt5Y1xts4P3Pz7ENTwGVnJOUWbRb3ocjvX7hx9tq/yTAdclXm9sZ38gNuem4A==",
161 | "dev": true
162 | },
163 | "cli-cursor": {
164 | "version": "1.0.2",
165 | "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-1.0.2.tgz",
166 | "integrity": "sha1-ZNo/fValRBLll5S9Ytw1KV6PKYc=",
167 | "dev": true,
168 | "requires": {
169 | "restore-cursor": "^1.0.1"
170 | }
171 | },
172 | "cli-width": {
173 | "version": "2.2.0",
174 | "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-2.2.0.tgz",
175 | "integrity": "sha1-/xnt6Kml5XkyQUewwR8PvLq+1jk=",
176 | "dev": true
177 | },
178 | "co": {
179 | "version": "4.6.0",
180 | "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz",
181 | "integrity": "sha1-bqa989hTrlTMuOR7+gvz+QMfsYQ=",
182 | "dev": true
183 | },
184 | "code-point-at": {
185 | "version": "1.1.0",
186 | "resolved": "https://registry.npmjs.org/code-point-at/-/code-point-at-1.1.0.tgz",
187 | "integrity": "sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=",
188 | "dev": true
189 | },
190 | "concat-map": {
191 | "version": "0.0.1",
192 | "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
193 | "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
194 | "dev": true
195 | },
196 | "concat-stream": {
197 | "version": "1.6.2",
198 | "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
199 | "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
200 | "dev": true,
201 | "requires": {
202 | "buffer-from": "^1.0.0",
203 | "inherits": "^2.0.3",
204 | "readable-stream": "^2.2.2",
205 | "typedarray": "^0.0.6"
206 | }
207 | },
208 | "core-util-is": {
209 | "version": "1.0.2",
210 | "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.2.tgz",
211 | "integrity": "sha1-tf1UIgqivFq1eqtxQMlAdUUDwac=",
212 | "dev": true
213 | },
214 | "d": {
215 | "version": "1.0.0",
216 | "resolved": "https://registry.npmjs.org/d/-/d-1.0.0.tgz",
217 | "integrity": "sha1-dUu1v+VUUdpppYuU1F9MWwRi1Y8=",
218 | "dev": true,
219 | "requires": {
220 | "es5-ext": "^0.10.9"
221 | }
222 | },
223 | "debug": {
224 | "version": "2.6.9",
225 | "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
226 | "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
227 | "dev": true,
228 | "requires": {
229 | "ms": "2.0.0"
230 | }
231 | },
232 | "deep-is": {
233 | "version": "0.1.3",
234 | "resolved": "https://registry.npmjs.org/deep-is/-/deep-is-0.1.3.tgz",
235 | "integrity": "sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=",
236 | "dev": true
237 | },
238 | "del": {
239 | "version": "2.2.2",
240 | "resolved": "https://registry.npmjs.org/del/-/del-2.2.2.tgz",
241 | "integrity": "sha1-wSyYHQZ4RshLyvhiz/kw2Qf/0ag=",
242 | "dev": true,
243 | "requires": {
244 | "globby": "^5.0.0",
245 | "is-path-cwd": "^1.0.0",
246 | "is-path-in-cwd": "^1.0.0",
247 | "object-assign": "^4.0.1",
248 | "pify": "^2.0.0",
249 | "pinkie-promise": "^2.0.0",
250 | "rimraf": "^2.2.8"
251 | }
252 | },
253 | "doctrine": {
254 | "version": "2.1.0",
255 | "resolved": "https://registry.npmjs.org/doctrine/-/doctrine-2.1.0.tgz",
256 | "integrity": "sha512-35mSku4ZXK0vfCuHEDAwt55dg2jNajHZ1odvF+8SSr82EsZY4QmXfuWso8oEd8zRhVObSN18aM0CjSdoBX7zIw==",
257 | "dev": true,
258 | "requires": {
259 | "esutils": "^2.0.2"
260 | }
261 | },
262 | "es5-ext": {
263 | "version": "0.10.46",
264 | "resolved": "https://registry.npmjs.org/es5-ext/-/es5-ext-0.10.46.tgz",
265 | "integrity": "sha512-24XxRvJXNFwEMpJb3nOkiRJKRoupmjYmOPVlI65Qy2SrtxwOTB+g6ODjBKOtwEHbYrhWRty9xxOWLNdClT2djw==",
266 | "dev": true,
267 | "requires": {
268 | "es6-iterator": "~2.0.3",
269 | "es6-symbol": "~3.1.1",
270 | "next-tick": "1"
271 | }
272 | },
273 | "es6-iterator": {
274 | "version": "2.0.3",
275 | "resolved": "https://registry.npmjs.org/es6-iterator/-/es6-iterator-2.0.3.tgz",
276 | "integrity": "sha1-p96IkUGgWpSwhUQDstCg+/qY87c=",
277 | "dev": true,
278 | "requires": {
279 | "d": "1",
280 | "es5-ext": "^0.10.35",
281 | "es6-symbol": "^3.1.1"
282 | }
283 | },
284 | "es6-map": {
285 | "version": "0.1.5",
286 | "resolved": "https://registry.npmjs.org/es6-map/-/es6-map-0.1.5.tgz",
287 | "integrity": "sha1-kTbgUD3MBqMBaQ8LsU/042TpSfA=",
288 | "dev": true,
289 | "requires": {
290 | "d": "1",
291 | "es5-ext": "~0.10.14",
292 | "es6-iterator": "~2.0.1",
293 | "es6-set": "~0.1.5",
294 | "es6-symbol": "~3.1.1",
295 | "event-emitter": "~0.3.5"
296 | }
297 | },
298 | "es6-set": {
299 | "version": "0.1.5",
300 | "resolved": "https://registry.npmjs.org/es6-set/-/es6-set-0.1.5.tgz",
301 | "integrity": "sha1-0rPsXU2ADO2BjbU40ol02wpzzLE=",
302 | "dev": true,
303 | "requires": {
304 | "d": "1",
305 | "es5-ext": "~0.10.14",
306 | "es6-iterator": "~2.0.1",
307 | "es6-symbol": "3.1.1",
308 | "event-emitter": "~0.3.5"
309 | }
310 | },
311 | "es6-symbol": {
312 | "version": "3.1.1",
313 | "resolved": "https://registry.npmjs.org/es6-symbol/-/es6-symbol-3.1.1.tgz",
314 | "integrity": "sha1-vwDvT9q2uhtG7Le2KbTH7VcVzHc=",
315 | "dev": true,
316 | "requires": {
317 | "d": "1",
318 | "es5-ext": "~0.10.14"
319 | }
320 | },
321 | "es6-weak-map": {
322 | "version": "2.0.2",
323 | "resolved": "https://registry.npmjs.org/es6-weak-map/-/es6-weak-map-2.0.2.tgz",
324 | "integrity": "sha1-XjqzIlH/0VOKH45f+hNXdy+S2W8=",
325 | "dev": true,
326 | "requires": {
327 | "d": "1",
328 | "es5-ext": "^0.10.14",
329 | "es6-iterator": "^2.0.1",
330 | "es6-symbol": "^3.1.1"
331 | }
332 | },
333 | "escape-string-regexp": {
334 | "version": "1.0.5",
335 | "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
336 | "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
337 | "dev": true
338 | },
339 | "escope": {
340 | "version": "3.6.0",
341 | "resolved": "https://registry.npmjs.org/escope/-/escope-3.6.0.tgz",
342 | "integrity": "sha1-4Bl16BJ4GhY6ba392AOY3GTIicM=",
343 | "dev": true,
344 | "requires": {
345 | "es6-map": "^0.1.3",
346 | "es6-weak-map": "^2.0.1",
347 | "esrecurse": "^4.1.0",
348 | "estraverse": "^4.1.1"
349 | }
350 | },
351 | "eslint": {
352 | "version": "3.19.0",
353 | "resolved": "https://registry.npmjs.org/eslint/-/eslint-3.19.0.tgz",
354 | "integrity": "sha1-yPxiAcf0DdCJQbh8CFdnOGpnmsw=",
355 | "dev": true,
356 | "requires": {
357 | "babel-code-frame": "^6.16.0",
358 | "chalk": "^1.1.3",
359 | "concat-stream": "^1.5.2",
360 | "debug": "^2.1.1",
361 | "doctrine": "^2.0.0",
362 | "escope": "^3.6.0",
363 | "espree": "^3.4.0",
364 | "esquery": "^1.0.0",
365 | "estraverse": "^4.2.0",
366 | "esutils": "^2.0.2",
367 | "file-entry-cache": "^2.0.0",
368 | "glob": "^7.0.3",
369 | "globals": "^9.14.0",
370 | "ignore": "^3.2.0",
371 | "imurmurhash": "^0.1.4",
372 | "inquirer": "^0.12.0",
373 | "is-my-json-valid": "^2.10.0",
374 | "is-resolvable": "^1.0.0",
375 | "js-yaml": "^3.5.1",
376 | "json-stable-stringify": "^1.0.0",
377 | "levn": "^0.3.0",
378 | "lodash": "^4.0.0",
379 | "mkdirp": "^0.5.0",
380 | "natural-compare": "^1.4.0",
381 | "optionator": "^0.8.2",
382 | "path-is-inside": "^1.0.1",
383 | "pluralize": "^1.2.1",
384 | "progress": "^1.1.8",
385 | "require-uncached": "^1.0.2",
386 | "shelljs": "^0.7.5",
387 | "strip-bom": "^3.0.0",
388 | "strip-json-comments": "~2.0.1",
389 | "table": "^3.7.8",
390 | "text-table": "~0.2.0",
391 | "user-home": "^2.0.0"
392 | },
393 | "dependencies": {
394 | "chalk": {
395 | "version": "1.1.3",
396 | "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
397 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
398 | "dev": true,
399 | "requires": {
400 | "ansi-styles": "^2.2.1",
401 | "escape-string-regexp": "^1.0.2",
402 | "has-ansi": "^2.0.0",
403 | "strip-ansi": "^3.0.0",
404 | "supports-color": "^2.0.0"
405 | }
406 | }
407 | }
408 | },
409 | "espree": {
410 | "version": "3.5.4",
411 | "resolved": "https://registry.npmjs.org/espree/-/espree-3.5.4.tgz",
412 | "integrity": "sha512-yAcIQxtmMiB/jL32dzEp2enBeidsB7xWPLNiw3IIkpVds1P+h7qF9YwJq1yUNzp2OKXgAprs4F61ih66UsoD1A==",
413 | "dev": true,
414 | "requires": {
415 | "acorn": "^5.5.0",
416 | "acorn-jsx": "^3.0.0"
417 | }
418 | },
419 | "esprima": {
420 | "version": "4.0.1",
421 | "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
422 | "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
423 | "dev": true
424 | },
425 | "esquery": {
426 | "version": "1.0.1",
427 | "resolved": "https://registry.npmjs.org/esquery/-/esquery-1.0.1.tgz",
428 | "integrity": "sha512-SmiyZ5zIWH9VM+SRUReLS5Q8a7GxtRdxEBVZpm98rJM7Sb+A9DVCndXfkeFUd3byderg+EbDkfnevfCwynWaNA==",
429 | "dev": true,
430 | "requires": {
431 | "estraverse": "^4.0.0"
432 | }
433 | },
434 | "esrecurse": {
435 | "version": "4.2.1",
436 | "resolved": "https://registry.npmjs.org/esrecurse/-/esrecurse-4.2.1.tgz",
437 | "integrity": "sha512-64RBB++fIOAXPw3P9cy89qfMlvZEXZkqqJkjqqXIvzP5ezRZjW+lPWjw35UX/3EhUPFYbg5ER4JYgDw4007/DQ==",
438 | "dev": true,
439 | "requires": {
440 | "estraverse": "^4.1.0"
441 | }
442 | },
443 | "estraverse": {
444 | "version": "4.2.0",
445 | "resolved": "https://registry.npmjs.org/estraverse/-/estraverse-4.2.0.tgz",
446 | "integrity": "sha1-De4/7TH81GlhjOc0IJn8GvoL2xM=",
447 | "dev": true
448 | },
449 | "esutils": {
450 | "version": "2.0.2",
451 | "resolved": "https://registry.npmjs.org/esutils/-/esutils-2.0.2.tgz",
452 | "integrity": "sha1-Cr9PHKpbyx96nYrMbepPqqBLrJs=",
453 | "dev": true
454 | },
455 | "event-emitter": {
456 | "version": "0.3.5",
457 | "resolved": "https://registry.npmjs.org/event-emitter/-/event-emitter-0.3.5.tgz",
458 | "integrity": "sha1-34xp7vFkeSPHFXuc6DhAYQsCzDk=",
459 | "dev": true,
460 | "requires": {
461 | "d": "1",
462 | "es5-ext": "~0.10.14"
463 | }
464 | },
465 | "exit-hook": {
466 | "version": "1.1.1",
467 | "resolved": "https://registry.npmjs.org/exit-hook/-/exit-hook-1.1.1.tgz",
468 | "integrity": "sha1-8FyiM7SMBdVP/wd2XfhQfpXAL/g=",
469 | "dev": true
470 | },
471 | "fast-levenshtein": {
472 | "version": "2.0.6",
473 | "resolved": "https://registry.npmjs.org/fast-levenshtein/-/fast-levenshtein-2.0.6.tgz",
474 | "integrity": "sha1-PYpcZog6FqMMqGQ+hR8Zuqd5eRc=",
475 | "dev": true
476 | },
477 | "figures": {
478 | "version": "1.7.0",
479 | "resolved": "https://registry.npmjs.org/figures/-/figures-1.7.0.tgz",
480 | "integrity": "sha1-y+Hjr/zxzUS4DK3+0o3Hk6lwHS4=",
481 | "dev": true,
482 | "requires": {
483 | "escape-string-regexp": "^1.0.5",
484 | "object-assign": "^4.1.0"
485 | }
486 | },
487 | "file-entry-cache": {
488 | "version": "2.0.0",
489 | "resolved": "https://registry.npmjs.org/file-entry-cache/-/file-entry-cache-2.0.0.tgz",
490 | "integrity": "sha1-w5KZDD5oR4PYOLjISkXYoEhFg2E=",
491 | "dev": true,
492 | "requires": {
493 | "flat-cache": "^1.2.1",
494 | "object-assign": "^4.0.1"
495 | }
496 | },
497 | "flat-cache": {
498 | "version": "1.3.0",
499 | "resolved": "https://registry.npmjs.org/flat-cache/-/flat-cache-1.3.0.tgz",
500 | "integrity": "sha1-0wMLMrOBVPTjt+nHCfSQ9++XxIE=",
501 | "dev": true,
502 | "requires": {
503 | "circular-json": "^0.3.1",
504 | "del": "^2.0.2",
505 | "graceful-fs": "^4.1.2",
506 | "write": "^0.2.1"
507 | }
508 | },
509 | "fs.realpath": {
510 | "version": "1.0.0",
511 | "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
512 | "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
513 | "dev": true
514 | },
515 | "generate-function": {
516 | "version": "2.3.1",
517 | "resolved": "https://registry.npmjs.org/generate-function/-/generate-function-2.3.1.tgz",
518 | "integrity": "sha512-eeB5GfMNeevm/GRYq20ShmsaGcmI81kIX2K9XQx5miC8KdHaC6Jm0qQ8ZNeGOi7wYB8OsdxKs+Y2oVuTFuVwKQ==",
519 | "dev": true,
520 | "requires": {
521 | "is-property": "^1.0.2"
522 | }
523 | },
524 | "generate-object-property": {
525 | "version": "1.2.0",
526 | "resolved": "https://registry.npmjs.org/generate-object-property/-/generate-object-property-1.2.0.tgz",
527 | "integrity": "sha1-nA4cQDCM6AT0eDYYuTf6iPmdUNA=",
528 | "dev": true,
529 | "requires": {
530 | "is-property": "^1.0.0"
531 | }
532 | },
533 | "glob": {
534 | "version": "7.1.3",
535 | "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.3.tgz",
536 | "integrity": "sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==",
537 | "dev": true,
538 | "requires": {
539 | "fs.realpath": "^1.0.0",
540 | "inflight": "^1.0.4",
541 | "inherits": "2",
542 | "minimatch": "^3.0.4",
543 | "once": "^1.3.0",
544 | "path-is-absolute": "^1.0.0"
545 | }
546 | },
547 | "globals": {
548 | "version": "9.18.0",
549 | "resolved": "https://registry.npmjs.org/globals/-/globals-9.18.0.tgz",
550 | "integrity": "sha512-S0nG3CLEQiY/ILxqtztTWH/3iRRdyBLw6KMDxnKMchrtbj2OFmehVh0WUCfW3DUrIgx/qFrJPICrq4Z4sTR9UQ==",
551 | "dev": true
552 | },
553 | "globby": {
554 | "version": "5.0.0",
555 | "resolved": "https://registry.npmjs.org/globby/-/globby-5.0.0.tgz",
556 | "integrity": "sha1-69hGZ8oNuzMLmbz8aOrCvFQ3Dg0=",
557 | "dev": true,
558 | "requires": {
559 | "array-union": "^1.0.1",
560 | "arrify": "^1.0.0",
561 | "glob": "^7.0.3",
562 | "object-assign": "^4.0.1",
563 | "pify": "^2.0.0",
564 | "pinkie-promise": "^2.0.0"
565 | }
566 | },
567 | "graceful-fs": {
568 | "version": "4.1.11",
569 | "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.1.11.tgz",
570 | "integrity": "sha1-Dovf5NHduIVNZOBOp8AOKgJuVlg=",
571 | "dev": true
572 | },
573 | "has-ansi": {
574 | "version": "2.0.0",
575 | "resolved": "https://registry.npmjs.org/has-ansi/-/has-ansi-2.0.0.tgz",
576 | "integrity": "sha1-NPUEnOHs3ysGSa8+8k5F7TVBbZE=",
577 | "dev": true,
578 | "requires": {
579 | "ansi-regex": "^2.0.0"
580 | }
581 | },
582 | "ignore": {
583 | "version": "3.3.10",
584 | "resolved": "https://registry.npmjs.org/ignore/-/ignore-3.3.10.tgz",
585 | "integrity": "sha512-Pgs951kaMm5GXP7MOvxERINe3gsaVjUWFm+UZPSq9xYriQAksyhg0csnS0KXSNRD5NmNdapXEpjxG49+AKh/ug==",
586 | "dev": true
587 | },
588 | "imurmurhash": {
589 | "version": "0.1.4",
590 | "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz",
591 | "integrity": "sha1-khi5srkoojixPcT7a21XbyMUU+o=",
592 | "dev": true
593 | },
594 | "inflight": {
595 | "version": "1.0.6",
596 | "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
597 | "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
598 | "dev": true,
599 | "requires": {
600 | "once": "^1.3.0",
601 | "wrappy": "1"
602 | }
603 | },
604 | "inherits": {
605 | "version": "2.0.3",
606 | "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
607 | "integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=",
608 | "dev": true
609 | },
610 | "inquirer": {
611 | "version": "0.12.0",
612 | "resolved": "http://registry.npmjs.org/inquirer/-/inquirer-0.12.0.tgz",
613 | "integrity": "sha1-HvK/1jUE3wvHV4X/+MLEHfEvB34=",
614 | "dev": true,
615 | "requires": {
616 | "ansi-escapes": "^1.1.0",
617 | "ansi-regex": "^2.0.0",
618 | "chalk": "^1.0.0",
619 | "cli-cursor": "^1.0.1",
620 | "cli-width": "^2.0.0",
621 | "figures": "^1.3.5",
622 | "lodash": "^4.3.0",
623 | "readline2": "^1.0.1",
624 | "run-async": "^0.1.0",
625 | "rx-lite": "^3.1.2",
626 | "string-width": "^1.0.1",
627 | "strip-ansi": "^3.0.0",
628 | "through": "^2.3.6"
629 | },
630 | "dependencies": {
631 | "chalk": {
632 | "version": "1.1.3",
633 | "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
634 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
635 | "dev": true,
636 | "requires": {
637 | "ansi-styles": "^2.2.1",
638 | "escape-string-regexp": "^1.0.2",
639 | "has-ansi": "^2.0.0",
640 | "strip-ansi": "^3.0.0",
641 | "supports-color": "^2.0.0"
642 | }
643 | }
644 | }
645 | },
646 | "interpret": {
647 | "version": "1.1.0",
648 | "resolved": "https://registry.npmjs.org/interpret/-/interpret-1.1.0.tgz",
649 | "integrity": "sha1-ftGxQQxqDg94z5XTuEQMY/eLhhQ=",
650 | "dev": true
651 | },
652 | "is-fullwidth-code-point": {
653 | "version": "1.0.0",
654 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
655 | "integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
656 | "dev": true,
657 | "requires": {
658 | "number-is-nan": "^1.0.0"
659 | }
660 | },
661 | "is-my-ip-valid": {
662 | "version": "1.0.0",
663 | "resolved": "https://registry.npmjs.org/is-my-ip-valid/-/is-my-ip-valid-1.0.0.tgz",
664 | "integrity": "sha512-gmh/eWXROncUzRnIa1Ubrt5b8ep/MGSnfAUI3aRp+sqTCs1tv1Isl8d8F6JmkN3dXKc3ehZMrtiPN9eL03NuaQ==",
665 | "dev": true
666 | },
667 | "is-my-json-valid": {
668 | "version": "2.19.0",
669 | "resolved": "https://registry.npmjs.org/is-my-json-valid/-/is-my-json-valid-2.19.0.tgz",
670 | "integrity": "sha512-mG0f/unGX1HZ5ep4uhRaPOS8EkAY8/j6mDRMJrutq4CqhoJWYp7qAlonIPy3TV7p3ju4TK9fo/PbnoksWmsp5Q==",
671 | "dev": true,
672 | "requires": {
673 | "generate-function": "^2.0.0",
674 | "generate-object-property": "^1.1.0",
675 | "is-my-ip-valid": "^1.0.0",
676 | "jsonpointer": "^4.0.0",
677 | "xtend": "^4.0.0"
678 | }
679 | },
680 | "is-path-cwd": {
681 | "version": "1.0.0",
682 | "resolved": "https://registry.npmjs.org/is-path-cwd/-/is-path-cwd-1.0.0.tgz",
683 | "integrity": "sha1-0iXsIxMuie3Tj9p2dHLmLmXxEG0=",
684 | "dev": true
685 | },
686 | "is-path-in-cwd": {
687 | "version": "1.0.1",
688 | "resolved": "https://registry.npmjs.org/is-path-in-cwd/-/is-path-in-cwd-1.0.1.tgz",
689 | "integrity": "sha512-FjV1RTW48E7CWM7eE/J2NJvAEEVektecDBVBE5Hh3nM1Jd0kvhHtX68Pr3xsDf857xt3Y4AkwVULK1Vku62aaQ==",
690 | "dev": true,
691 | "requires": {
692 | "is-path-inside": "^1.0.0"
693 | }
694 | },
695 | "is-path-inside": {
696 | "version": "1.0.1",
697 | "resolved": "https://registry.npmjs.org/is-path-inside/-/is-path-inside-1.0.1.tgz",
698 | "integrity": "sha1-jvW33lBDej/cprToZe96pVy0gDY=",
699 | "dev": true,
700 | "requires": {
701 | "path-is-inside": "^1.0.1"
702 | }
703 | },
704 | "is-property": {
705 | "version": "1.0.2",
706 | "resolved": "https://registry.npmjs.org/is-property/-/is-property-1.0.2.tgz",
707 | "integrity": "sha1-V/4cTkhHTt1lsJkR8msc1Ald2oQ=",
708 | "dev": true
709 | },
710 | "is-resolvable": {
711 | "version": "1.1.0",
712 | "resolved": "https://registry.npmjs.org/is-resolvable/-/is-resolvable-1.1.0.tgz",
713 | "integrity": "sha512-qgDYXFSR5WvEfuS5dMj6oTMEbrrSaM0CrFk2Yiq/gXnBvD9pMa2jGXxyhGLfvhZpuMZe18CJpFxAt3CRs42NMg==",
714 | "dev": true
715 | },
716 | "isarray": {
717 | "version": "1.0.0",
718 | "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
719 | "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
720 | "dev": true
721 | },
722 | "js-tokens": {
723 | "version": "3.0.2",
724 | "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-3.0.2.tgz",
725 | "integrity": "sha1-mGbfOVECEw449/mWvOtlRDIJwls=",
726 | "dev": true
727 | },
728 | "js-yaml": {
729 | "version": "3.12.0",
730 | "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.12.0.tgz",
731 | "integrity": "sha512-PIt2cnwmPfL4hKNwqeiuz4bKfnzHTBv6HyVgjahA6mPLwPDzjDWrplJBMjHUFxku/N3FlmrbyPclad+I+4mJ3A==",
732 | "dev": true,
733 | "requires": {
734 | "argparse": "^1.0.7",
735 | "esprima": "^4.0.0"
736 | }
737 | },
738 | "json-stable-stringify": {
739 | "version": "1.0.1",
740 | "resolved": "https://registry.npmjs.org/json-stable-stringify/-/json-stable-stringify-1.0.1.tgz",
741 | "integrity": "sha1-mnWdOcXy/1A/1TAGRu1EX4jE+a8=",
742 | "dev": true,
743 | "requires": {
744 | "jsonify": "~0.0.0"
745 | }
746 | },
747 | "jsonify": {
748 | "version": "0.0.0",
749 | "resolved": "https://registry.npmjs.org/jsonify/-/jsonify-0.0.0.tgz",
750 | "integrity": "sha1-LHS27kHZPKUbe1qu6PUDYx0lKnM=",
751 | "dev": true
752 | },
753 | "jsonpointer": {
754 | "version": "4.0.1",
755 | "resolved": "https://registry.npmjs.org/jsonpointer/-/jsonpointer-4.0.1.tgz",
756 | "integrity": "sha1-T9kss04OnbPInIYi7PUfm5eMbLk=",
757 | "dev": true
758 | },
759 | "levn": {
760 | "version": "0.3.0",
761 | "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
762 | "integrity": "sha1-OwmSTt+fCDwEkP3UwLxEIeBHZO4=",
763 | "dev": true,
764 | "requires": {
765 | "prelude-ls": "~1.1.2",
766 | "type-check": "~0.3.2"
767 | }
768 | },
769 | "lodash": {
770 | "version": "4.17.11",
771 | "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.11.tgz",
772 | "integrity": "sha512-cQKh8igo5QUhZ7lg38DYWAxMvjSAKG0A8wGSVimP07SIUEK2UO+arSRKbRZWtelMtN5V0Hkwh5ryOto/SshYIg==",
773 | "dev": true
774 | },
775 | "minimatch": {
776 | "version": "3.0.4",
777 | "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
778 | "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
779 | "dev": true,
780 | "requires": {
781 | "brace-expansion": "^1.1.7"
782 | }
783 | },
784 | "minimist": {
785 | "version": "0.0.8",
786 | "resolved": "http://registry.npmjs.org/minimist/-/minimist-0.0.8.tgz",
787 | "integrity": "sha1-hX/Kv8M5fSYluCKCYuhqp6ARsF0=",
788 | "dev": true
789 | },
790 | "mkdirp": {
791 | "version": "0.5.1",
792 | "resolved": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.5.1.tgz",
793 | "integrity": "sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=",
794 | "dev": true,
795 | "requires": {
796 | "minimist": "0.0.8"
797 | }
798 | },
799 | "ms": {
800 | "version": "2.0.0",
801 | "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
802 | "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
803 | "dev": true
804 | },
805 | "mute-stream": {
806 | "version": "0.0.5",
807 | "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.5.tgz",
808 | "integrity": "sha1-j7+rsKmKJT0xhDMfno3rc3L6xsA=",
809 | "dev": true
810 | },
811 | "natural-compare": {
812 | "version": "1.4.0",
813 | "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz",
814 | "integrity": "sha1-Sr6/7tdUHywnrPspvbvRXI1bpPc=",
815 | "dev": true
816 | },
817 | "next-tick": {
818 | "version": "1.0.0",
819 | "resolved": "https://registry.npmjs.org/next-tick/-/next-tick-1.0.0.tgz",
820 | "integrity": "sha1-yobR/ogoFpsBICCOPchCS524NCw=",
821 | "dev": true
822 | },
823 | "number-is-nan": {
824 | "version": "1.0.1",
825 | "resolved": "https://registry.npmjs.org/number-is-nan/-/number-is-nan-1.0.1.tgz",
826 | "integrity": "sha1-CXtgK1NCKlIsGvuHkDGDNpQaAR0=",
827 | "dev": true
828 | },
829 | "object-assign": {
830 | "version": "4.1.1",
831 | "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
832 | "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=",
833 | "dev": true
834 | },
835 | "once": {
836 | "version": "1.4.0",
837 | "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
838 | "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
839 | "dev": true,
840 | "requires": {
841 | "wrappy": "1"
842 | }
843 | },
844 | "onetime": {
845 | "version": "1.1.0",
846 | "resolved": "http://registry.npmjs.org/onetime/-/onetime-1.1.0.tgz",
847 | "integrity": "sha1-ofeDj4MUxRbwXs78vEzP4EtO14k=",
848 | "dev": true
849 | },
850 | "optionator": {
851 | "version": "0.8.2",
852 | "resolved": "https://registry.npmjs.org/optionator/-/optionator-0.8.2.tgz",
853 | "integrity": "sha1-NkxeQJ0/TWMB1sC0wFu6UBgK62Q=",
854 | "dev": true,
855 | "requires": {
856 | "deep-is": "~0.1.3",
857 | "fast-levenshtein": "~2.0.4",
858 | "levn": "~0.3.0",
859 | "prelude-ls": "~1.1.2",
860 | "type-check": "~0.3.2",
861 | "wordwrap": "~1.0.0"
862 | }
863 | },
864 | "os-homedir": {
865 | "version": "1.0.2",
866 | "resolved": "https://registry.npmjs.org/os-homedir/-/os-homedir-1.0.2.tgz",
867 | "integrity": "sha1-/7xJiDNuDoM94MFox+8VISGqf7M=",
868 | "dev": true
869 | },
870 | "path-is-absolute": {
871 | "version": "1.0.1",
872 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
873 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
874 | "dev": true
875 | },
876 | "path-is-inside": {
877 | "version": "1.0.2",
878 | "resolved": "https://registry.npmjs.org/path-is-inside/-/path-is-inside-1.0.2.tgz",
879 | "integrity": "sha1-NlQX3t5EQw0cEa9hAn+s8HS9/FM=",
880 | "dev": true
881 | },
882 | "path-parse": {
883 | "version": "1.0.6",
884 | "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.6.tgz",
885 | "integrity": "sha512-GSmOT2EbHrINBf9SR7CDELwlJ8AENk3Qn7OikK4nFYAu3Ote2+JYNVvkpAEQm3/TLNEJFD/xZJjzyxg3KBWOzw==",
886 | "dev": true
887 | },
888 | "pify": {
889 | "version": "2.3.0",
890 | "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
891 | "integrity": "sha1-7RQaasBDqEnqWISY59yosVMw6Qw=",
892 | "dev": true
893 | },
894 | "pinkie": {
895 | "version": "2.0.4",
896 | "resolved": "https://registry.npmjs.org/pinkie/-/pinkie-2.0.4.tgz",
897 | "integrity": "sha1-clVrgM+g1IqXToDnckjoDtT3+HA=",
898 | "dev": true
899 | },
900 | "pinkie-promise": {
901 | "version": "2.0.1",
902 | "resolved": "https://registry.npmjs.org/pinkie-promise/-/pinkie-promise-2.0.1.tgz",
903 | "integrity": "sha1-ITXW36ejWMBprJsXh3YogihFD/o=",
904 | "dev": true,
905 | "requires": {
906 | "pinkie": "^2.0.0"
907 | }
908 | },
909 | "pluralize": {
910 | "version": "1.2.1",
911 | "resolved": "https://registry.npmjs.org/pluralize/-/pluralize-1.2.1.tgz",
912 | "integrity": "sha1-0aIUg/0iu0HlihL6NCGCMUCJfEU=",
913 | "dev": true
914 | },
915 | "prelude-ls": {
916 | "version": "1.1.2",
917 | "resolved": "https://registry.npmjs.org/prelude-ls/-/prelude-ls-1.1.2.tgz",
918 | "integrity": "sha1-IZMqVJ9eUv/ZqCf1cOBL5iqX2lQ=",
919 | "dev": true
920 | },
921 | "process-nextick-args": {
922 | "version": "2.0.0",
923 | "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.0.tgz",
924 | "integrity": "sha512-MtEC1TqN0EU5nephaJ4rAtThHtC86dNN9qCuEhtshvpVBkAW5ZO7BASN9REnF9eoXGcRub+pFuKEpOHE+HbEMw==",
925 | "dev": true
926 | },
927 | "progress": {
928 | "version": "1.1.8",
929 | "resolved": "https://registry.npmjs.org/progress/-/progress-1.1.8.tgz",
930 | "integrity": "sha1-4mDHj2Fhzdmw5WzD4Khd4Xx6V74=",
931 | "dev": true
932 | },
933 | "readable-stream": {
934 | "version": "2.3.6",
935 | "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-2.3.6.tgz",
936 | "integrity": "sha512-tQtKA9WIAhBF3+VLAseyMqZeBjW0AHJoxOtYqSUZNJxauErmLbVm2FW1y+J/YA9dUrAC39ITejlZWhVIwawkKw==",
937 | "dev": true,
938 | "requires": {
939 | "core-util-is": "~1.0.0",
940 | "inherits": "~2.0.3",
941 | "isarray": "~1.0.0",
942 | "process-nextick-args": "~2.0.0",
943 | "safe-buffer": "~5.1.1",
944 | "string_decoder": "~1.1.1",
945 | "util-deprecate": "~1.0.1"
946 | }
947 | },
948 | "readline2": {
949 | "version": "1.0.1",
950 | "resolved": "https://registry.npmjs.org/readline2/-/readline2-1.0.1.tgz",
951 | "integrity": "sha1-QQWWCP/BVHV7cV2ZidGZ/783LjU=",
952 | "dev": true,
953 | "requires": {
954 | "code-point-at": "^1.0.0",
955 | "is-fullwidth-code-point": "^1.0.0",
956 | "mute-stream": "0.0.5"
957 | }
958 | },
959 | "rechoir": {
960 | "version": "0.6.2",
961 | "resolved": "https://registry.npmjs.org/rechoir/-/rechoir-0.6.2.tgz",
962 | "integrity": "sha1-hSBLVNuoLVdC4oyWdW70OvUOM4Q=",
963 | "dev": true,
964 | "requires": {
965 | "resolve": "^1.1.6"
966 | }
967 | },
968 | "require-uncached": {
969 | "version": "1.0.3",
970 | "resolved": "https://registry.npmjs.org/require-uncached/-/require-uncached-1.0.3.tgz",
971 | "integrity": "sha1-Tg1W1slmL9MeQwEcS5WqSZVUIdM=",
972 | "dev": true,
973 | "requires": {
974 | "caller-path": "^0.1.0",
975 | "resolve-from": "^1.0.0"
976 | }
977 | },
978 | "resolve": {
979 | "version": "1.8.1",
980 | "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.8.1.tgz",
981 | "integrity": "sha512-AicPrAC7Qu1JxPCZ9ZgCZlY35QgFnNqc+0LtbRNxnVw4TXvjQ72wnuL9JQcEBgXkI9JM8MsT9kaQoHcpCRJOYA==",
982 | "dev": true,
983 | "requires": {
984 | "path-parse": "^1.0.5"
985 | }
986 | },
987 | "resolve-from": {
988 | "version": "1.0.1",
989 | "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-1.0.1.tgz",
990 | "integrity": "sha1-Jsv+k10a7uq7Kbw/5a6wHpPUQiY=",
991 | "dev": true
992 | },
993 | "restore-cursor": {
994 | "version": "1.0.1",
995 | "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-1.0.1.tgz",
996 | "integrity": "sha1-NGYfRohjJ/7SmRR5FSJS35LapUE=",
997 | "dev": true,
998 | "requires": {
999 | "exit-hook": "^1.0.0",
1000 | "onetime": "^1.0.0"
1001 | }
1002 | },
1003 | "rimraf": {
1004 | "version": "2.6.2",
1005 | "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.6.2.tgz",
1006 | "integrity": "sha512-lreewLK/BlghmxtfH36YYVg1i8IAce4TI7oao75I1g245+6BctqTVQiBP3YUJ9C6DQOXJmkYR9X9fCLtCOJc5w==",
1007 | "dev": true,
1008 | "requires": {
1009 | "glob": "^7.0.5"
1010 | }
1011 | },
1012 | "run-async": {
1013 | "version": "0.1.0",
1014 | "resolved": "https://registry.npmjs.org/run-async/-/run-async-0.1.0.tgz",
1015 | "integrity": "sha1-yK1KXhEGYeQCp9IbUw4AnyX444k=",
1016 | "dev": true,
1017 | "requires": {
1018 | "once": "^1.3.0"
1019 | }
1020 | },
1021 | "rx-lite": {
1022 | "version": "3.1.2",
1023 | "resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-3.1.2.tgz",
1024 | "integrity": "sha1-Gc5QLKVyZl87ZHsQk5+X/RYV8QI=",
1025 | "dev": true
1026 | },
1027 | "safe-buffer": {
1028 | "version": "5.1.2",
1029 | "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
1030 | "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
1031 | "dev": true
1032 | },
1033 | "shelljs": {
1034 | "version": "0.7.8",
1035 | "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.7.8.tgz",
1036 | "integrity": "sha1-3svPh0sNHl+3LhSxZKloMEjprLM=",
1037 | "dev": true,
1038 | "requires": {
1039 | "glob": "^7.0.0",
1040 | "interpret": "^1.0.0",
1041 | "rechoir": "^0.6.2"
1042 | }
1043 | },
1044 | "slice-ansi": {
1045 | "version": "0.0.4",
1046 | "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-0.0.4.tgz",
1047 | "integrity": "sha1-7b+JA/ZvfOL46v1s7tZeJkyDGzU=",
1048 | "dev": true
1049 | },
1050 | "sprintf-js": {
1051 | "version": "1.0.3",
1052 | "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
1053 | "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
1054 | "dev": true
1055 | },
1056 | "string-width": {
1057 | "version": "1.0.2",
1058 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
1059 | "integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
1060 | "dev": true,
1061 | "requires": {
1062 | "code-point-at": "^1.0.0",
1063 | "is-fullwidth-code-point": "^1.0.0",
1064 | "strip-ansi": "^3.0.0"
1065 | }
1066 | },
1067 | "string_decoder": {
1068 | "version": "1.1.1",
1069 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
1070 | "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
1071 | "dev": true,
1072 | "requires": {
1073 | "safe-buffer": "~5.1.0"
1074 | }
1075 | },
1076 | "strip-ansi": {
1077 | "version": "3.0.1",
1078 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
1079 | "integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
1080 | "dev": true,
1081 | "requires": {
1082 | "ansi-regex": "^2.0.0"
1083 | }
1084 | },
1085 | "strip-bom": {
1086 | "version": "3.0.0",
1087 | "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
1088 | "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
1089 | "dev": true
1090 | },
1091 | "strip-json-comments": {
1092 | "version": "2.0.1",
1093 | "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-2.0.1.tgz",
1094 | "integrity": "sha1-PFMZQukIwml8DsNEhYwobHygpgo=",
1095 | "dev": true
1096 | },
1097 | "supports-color": {
1098 | "version": "2.0.0",
1099 | "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
1100 | "integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
1101 | "dev": true
1102 | },
1103 | "table": {
1104 | "version": "3.8.3",
1105 | "resolved": "http://registry.npmjs.org/table/-/table-3.8.3.tgz",
1106 | "integrity": "sha1-K7xULw/amGGnVdOUf+/Ys/UThV8=",
1107 | "dev": true,
1108 | "requires": {
1109 | "ajv": "^4.7.0",
1110 | "ajv-keywords": "^1.0.0",
1111 | "chalk": "^1.1.1",
1112 | "lodash": "^4.0.0",
1113 | "slice-ansi": "0.0.4",
1114 | "string-width": "^2.0.0"
1115 | },
1116 | "dependencies": {
1117 | "ansi-regex": {
1118 | "version": "3.0.0",
1119 | "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-3.0.0.tgz",
1120 | "integrity": "sha1-7QMXwyIGT3lGbAKWa922Bas32Zg=",
1121 | "dev": true
1122 | },
1123 | "chalk": {
1124 | "version": "1.1.3",
1125 | "resolved": "http://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
1126 | "integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
1127 | "dev": true,
1128 | "requires": {
1129 | "ansi-styles": "^2.2.1",
1130 | "escape-string-regexp": "^1.0.2",
1131 | "has-ansi": "^2.0.0",
1132 | "strip-ansi": "^3.0.0",
1133 | "supports-color": "^2.0.0"
1134 | }
1135 | },
1136 | "is-fullwidth-code-point": {
1137 | "version": "2.0.0",
1138 | "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
1139 | "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
1140 | "dev": true
1141 | },
1142 | "string-width": {
1143 | "version": "2.1.1",
1144 | "resolved": "https://registry.npmjs.org/string-width/-/string-width-2.1.1.tgz",
1145 | "integrity": "sha512-nOqH59deCq9SRHlxq1Aw85Jnt4w6KvLKqWVik6oA9ZklXLNIOlqg4F2yrT1MVaTjAqvVwdfeZ7w7aCvJD7ugkw==",
1146 | "dev": true,
1147 | "requires": {
1148 | "is-fullwidth-code-point": "^2.0.0",
1149 | "strip-ansi": "^4.0.0"
1150 | },
1151 | "dependencies": {
1152 | "strip-ansi": {
1153 | "version": "4.0.0",
1154 | "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-4.0.0.tgz",
1155 | "integrity": "sha1-qEeQIusaw2iocTibY1JixQXuNo8=",
1156 | "dev": true,
1157 | "requires": {
1158 | "ansi-regex": "^3.0.0"
1159 | }
1160 | }
1161 | }
1162 | }
1163 | }
1164 | },
1165 | "text-table": {
1166 | "version": "0.2.0",
1167 | "resolved": "https://registry.npmjs.org/text-table/-/text-table-0.2.0.tgz",
1168 | "integrity": "sha1-f17oI66AUgfACvLfSoTsP8+lcLQ=",
1169 | "dev": true
1170 | },
1171 | "through": {
1172 | "version": "2.3.8",
1173 | "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz",
1174 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
1175 | "dev": true
1176 | },
1177 | "type-check": {
1178 | "version": "0.3.2",
1179 | "resolved": "https://registry.npmjs.org/type-check/-/type-check-0.3.2.tgz",
1180 | "integrity": "sha1-WITKtRLPHTVeP7eE8wgEsrUg23I=",
1181 | "dev": true,
1182 | "requires": {
1183 | "prelude-ls": "~1.1.2"
1184 | }
1185 | },
1186 | "typedarray": {
1187 | "version": "0.0.6",
1188 | "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
1189 | "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
1190 | "dev": true
1191 | },
1192 | "user-home": {
1193 | "version": "2.0.0",
1194 | "resolved": "https://registry.npmjs.org/user-home/-/user-home-2.0.0.tgz",
1195 | "integrity": "sha1-nHC/2Babwdy/SGBODwS4tJzenp8=",
1196 | "dev": true,
1197 | "requires": {
1198 | "os-homedir": "^1.0.0"
1199 | }
1200 | },
1201 | "util-deprecate": {
1202 | "version": "1.0.2",
1203 | "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
1204 | "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
1205 | "dev": true
1206 | },
1207 | "wordwrap": {
1208 | "version": "1.0.0",
1209 | "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz",
1210 | "integrity": "sha1-J1hIEIkUVqQXHI0CJkQa3pDLyus=",
1211 | "dev": true
1212 | },
1213 | "wrappy": {
1214 | "version": "1.0.2",
1215 | "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
1216 | "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
1217 | "dev": true
1218 | },
1219 | "write": {
1220 | "version": "0.2.1",
1221 | "resolved": "https://registry.npmjs.org/write/-/write-0.2.1.tgz",
1222 | "integrity": "sha1-X8A4KOJkzqP+kUVUdvejxWbLB1c=",
1223 | "dev": true,
1224 | "requires": {
1225 | "mkdirp": "^0.5.1"
1226 | }
1227 | },
1228 | "xtend": {
1229 | "version": "4.0.1",
1230 | "resolved": "https://registry.npmjs.org/xtend/-/xtend-4.0.1.tgz",
1231 | "integrity": "sha1-pcbVMr5lbiPbgg77lDofBJmNY68=",
1232 | "dev": true
1233 | }
1234 | }
1235 | }
1236 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "hg-vcomponents",
3 | "version": "0.1.10",
4 | "author": "Hanger <2313303800@qq.com> (https://hamger.github.io)",
5 | "description": "Hanger‘s vue components",
6 | "keywords": [
7 | "hanger",
8 | "vue",
9 | "components"
10 | ],
11 | "homepage": "https://github.com/hamger/hg-vcomponents",
12 | "bugs": {
13 | "url": "https://github.com/hamger/hg-vcomponents/issues"
14 | },
15 | "license": "MIT",
16 | "repository": {
17 | "type": "git",
18 | "url": "https://github.com/hamger/hg-vcomponents.git"
19 | },
20 | "private": false,
21 | "main": "dist/hg-vcomponents.min.js",
22 | "scripts": {
23 | "dev": "webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",
24 | "start": "npm run dev",
25 | "lint": "eslint --ext .js,.vue src",
26 | "build": "node build/build.js",
27 | "tonpm": "npm run build && npm version patch && npm publish"
28 | },
29 | "dependencies": {
30 | "vue": "^2.5.2",
31 | "vue-router": "^3.0.1",
32 | "hg-vcomponents": "0.1.3"
33 | },
34 | "devDependencies": {
35 | "autoprefixer": "^7.1.2",
36 | "babel-core": "^6.22.1",
37 | "babel-eslint": "^7.1.1",
38 | "babel-helper-vue-jsx-merge-props": "^2.0.3",
39 | "babel-loader": "^7.1.1",
40 | "babel-plugin-syntax-dynamic-import": "^6.18.0",
41 | "babel-plugin-syntax-jsx": "^6.18.0",
42 | "babel-plugin-transform-runtime": "^6.22.0",
43 | "babel-plugin-transform-vue-jsx": "^3.5.0",
44 | "babel-preset-env": "^1.3.2",
45 | "babel-preset-stage-2": "^6.22.0",
46 | "chalk": "^2.0.1",
47 | "copy-webpack-plugin": "^4.0.1",
48 | "css-loader": "^0.28.0",
49 | "eslint": "^3.19.0",
50 | "eslint-config-standard": "^10.2.1",
51 | "eslint-friendly-formatter": "^3.0.0",
52 | "eslint-loader": "^1.7.1",
53 | "eslint-plugin-html": "^3.0.0",
54 | "eslint-plugin-import": "^2.7.0",
55 | "eslint-plugin-node": "^5.2.0",
56 | "eslint-plugin-promise": "^3.4.0",
57 | "eslint-plugin-standard": "^3.0.1",
58 | "extract-text-webpack-plugin": "^3.0.0",
59 | "file-loader": "^1.1.4",
60 | "friendly-errors-webpack-plugin": "^1.6.1",
61 | "html-webpack-plugin": "^2.30.1",
62 | "node-notifier": "^5.1.2",
63 | "node-sass": "^4.5.3",
64 | "optimize-css-assets-webpack-plugin": "^3.2.0",
65 | "ora": "^1.2.0",
66 | "portfinder": "^1.0.13",
67 | "postcss-import": "^11.0.0",
68 | "postcss-loader": "^2.0.8",
69 | "postcss-url": "^7.2.1",
70 | "rimraf": "^2.6.0",
71 | "sass-loader": "^6.0.6",
72 | "semver": "^5.3.0",
73 | "shelljs": "^0.7.6",
74 | "uglifyjs-webpack-plugin": "^1.1.1",
75 | "url-loader": "^0.5.8",
76 | "vue-loader": "^13.3.0",
77 | "vue-style-loader": "^3.0.1",
78 | "vue-template-compiler": "^2.5.2",
79 | "webpack": "^3.6.0",
80 | "webpack-bundle-analyzer": "^2.9.0",
81 | "webpack-dev-server": "^2.9.1",
82 | "webpack-merge": "^4.1.0"
83 | },
84 | "engines": {
85 | "node": ">= 6.0.0",
86 | "npm": ">= 3.0.0"
87 | },
88 | "browserslist": [
89 | "> 1%",
90 | "last 2 versions",
91 | "not ie <= 8"
92 | ]
93 | }
94 |
--------------------------------------------------------------------------------
/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
15 |
16 |
18 |
--------------------------------------------------------------------------------
/src/components/Banner/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 横幅组件用于展示最新上架或广告等横幅形式的内容。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
23 | ```
24 | 具体使用可参考[该文件](../../examples/banner.vue)。
25 |
26 | ## Options
27 | 配置项 | 值类型 | 描述
28 | --- | --- | ---
29 | showPoint | Boolean | 规定是否显示底部小园点,默认`true`
30 | `` | HTML | `item`具名插槽规定子元素内容
--------------------------------------------------------------------------------
/src/components/Banner/banner.vue:
--------------------------------------------------------------------------------
1 |
2 |
15 |
16 |
17 |
65 |
66 |
--------------------------------------------------------------------------------
/src/components/FixedTitle/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 表头固定组件用于表头需要固定在某处的情况,需要在`slot`中插入表头的`html`,插槽中的内容是独立与原表头的。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 | -
11 |
name
12 | sex
13 | age
14 |
15 |
16 |
17 |
18 | -
19 |
name
20 | sex
21 | age
22 |
23 | -
24 |
{{item.name}}
25 | {{item.sex}}
26 | {{item.age}}
27 |
28 |
29 |
30 |
40 | ```
41 | 具体使用可参考[该文件](../../examples/fixedtitle.vue)。
42 |
43 | ## Options
44 | 配置项 | 值类型 | 描述
45 | --- | --- | ---
46 | top | String | 显示时距离页面顶部的高度,默认`0px`
47 | scrollTop | Number | 规定页面滚动多少距离(px)时显示表头,默认`0`
48 | `` | HTML | 表头内容,必填
--------------------------------------------------------------------------------
/src/components/FixedTitle/fixed-title.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
8 |
9 |
33 |
--------------------------------------------------------------------------------
/src/components/Gallery/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 画廊组件用于以画廊的形式展示图片。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
21 | ```
22 | 具体使用可参考[该文件](../../examples/gallery.vue)。
23 |
24 | ## Options
25 | 配置项 | 值类型 | 描述
26 | --- | --- | ---
27 | visible | Boolean | 是否显示
28 | imgList | Array | 图片地址的字符串
29 | initIndex | Number | 初始显示的图片索引
30 | closeCallback | Fuction | 关闭的回调函数,需要在这里变更 visible 的值
--------------------------------------------------------------------------------
/src/components/Gallery/gallery.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
6 |
17 |
![]()
{}" :src="item" />
18 |
19 |
20 |
21 |
‹
22 |
›
23 |
×
24 |
35 |
36 |
37 |
38 |
39 |
99 |
100 |
--------------------------------------------------------------------------------
/src/components/Hint/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 透明提示组件用于显示的半透明提示框,提示内容可自定义,用函数控制其显示时间。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
21 | ```
22 | 具体使用可参考[该文件](../../examples/hint.vue)。
23 |
24 | ## Options
25 | 配置项 | 值类型 | 描述
26 | --- | --- | ---
27 | height | Number | 提示框高度,默认`108`(px)
28 | width | Number | 提示框宽度,默认`140`(px)
29 | bgColor | String | 提示框背景色,默认`rgba(70, 70, 70, 0.5)`
30 | radius | String | 提示框圆角,默认`6px`
31 | `` | HTML | 提示内容,默认为‘修改成功’
--------------------------------------------------------------------------------
/src/components/Hint/hint.vue:
--------------------------------------------------------------------------------
1 |
2 |
17 |
18 |
19 |
42 |
43 |
--------------------------------------------------------------------------------
/src/components/HollowArrow/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 空心箭头组件用于绘制页面中空心的小箭头。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
16 |
17 |
18 |
19 |
29 | ```
30 | 具体使用可参考[该文件](../../examples/arrows.vue)。
31 |
32 | ## Options
33 | 配置项 | 值类型 | 描述
34 | --- | --- | ---
35 | size | String | 规定箭头大小,默认`10px`
36 | bdSize | String | 规定箭头粗细,默认`1px`
37 | color | String | 规定箭头颜色,默认`#666`
38 | direction | `left` `top` `right` `bottom` | 规定箭头指向,默认`right`
39 | active | Boolean | 规定箭头组件是否处于激活状态,若处于激活状态,会渲染`@`后的样式(若`@`后没有内容,则不改变样式),默认`false`
--------------------------------------------------------------------------------
/src/components/HollowArrow/hollow-arrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
10 |
11 |
12 |
64 |
65 |
--------------------------------------------------------------------------------
/src/components/Loading/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 加载状态组件用于页面加载时显示。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
21 | ```
22 | 具体使用可参考[该文件](../../examples/loading.vue)。
23 |
24 | ## Options
25 | 配置项 | 值类型 | 描述
26 | --- | --- | ---
27 | color | String | 加载环颜色,默认`#2a8ee3`
28 | diam | Number | 圆直径(px),默认`50`
29 | size | Number | 圆环粗细(px),默认`3`
--------------------------------------------------------------------------------
/src/components/Loading/loading.vue:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
39 |
40 |
--------------------------------------------------------------------------------
/src/components/MultTextInput/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 多项文本输入组件用于输入多项文本的情况。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
33 | ```
34 | 具体使用可参考[该文件](../../examples/multtextinput.vue)。
35 |
36 | ## Options
37 | 配置项 | 值类型 | 描述
38 | --- | --- | ---
39 | data | Array | 初始显示的数据
40 | sure | Function | 确定按钮的回调
41 | cancel | Function | 取消按钮回调
42 |
--------------------------------------------------------------------------------
/src/components/MultTextInput/mult-text-input.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
69 |
70 |
--------------------------------------------------------------------------------
/src/components/OmitText/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 文本省略组件用于省略显示的过多的文本内容,并提供展开收起内容的功能。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
21 | ```
22 | 具体使用可参考[该文件](../../examples/omittext.vue)。
23 |
24 | ## Options
25 | 配置项 | 值类型 | 描述
26 | --- | --- | ---
27 | text | String | 需要省略显示的文本内容
28 | limit | Number | 规定隐藏超过多少字符长度后的文本,默认`70`
29 | color | String | 展开/收起 按钮的颜色,默认`#4a9fef`
30 | showTip | String | 展开按钮文本,默认`展开`
31 | hideTip | String | 收起按钮文本,默认`收起`
--------------------------------------------------------------------------------
/src/components/OmitText/omit-text.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 | {{ all ? text : shortText }}
4 | {{all ? hideTip : showTip}}
7 |
8 |
9 |
10 |
47 |
48 |
--------------------------------------------------------------------------------
/src/components/ProgressBar/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 进度条组件用于显示横置的长方形进度条。
3 |
4 | ## Usage
5 | ```
6 |
7 |
12 |
13 |
23 | ```
24 | 具体使用可参考[该文件](../../examples/progressbar.vue)。
25 |
26 | ## Options
27 | 配置项 | 值类型 | 描述
28 | --- | --- | ---
29 | height | String | 进度条高度,默认`20px`
30 | width | String | 进度条宽度,默认`100%`
31 | unfinishColor | String | 未完成进度条颜色,默认`#f1f1f1`
32 | finishColor | String | 完成进度条颜色,默认`#2a8ee3`
33 | finishWidth | String | 完成进度条长度,默认`40%`
34 | radius | String | 进度条圆角,默认`undefined`
--------------------------------------------------------------------------------
/src/components/ProgressBar/progress-bar.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
46 |
47 |
--------------------------------------------------------------------------------
/src/components/Round/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 圆形组件用于绘制页面中的圆形,支持激活状态,通过设置背景色为`transparent`可以变为圆环。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
11 |
12 |
13 |
14 |
24 | ```
25 | 具体使用可参考[该文件](../../examples/round.vue)。
26 |
27 | ## Options
28 | 配置项 | 值类型 | 描述
29 | --- | --- | ---
30 | size | Number | 规定圆形大小,默认`20px`
31 | bdSize | String | 规定圆形边框粗细,默认`1px`
32 | bgColor | String | 规定圆形背景颜色,默认`#2a8ee3`
33 | bdColor | String | 规定圆形边框颜色,默认`#2a8ee3`
34 | active | Boolean | 规定圆形组件是否处于激活状态,若处于激活状态,会渲染`@`后的样式(若`@`后没有内容,则不改变样式),默认`false`
35 |
--------------------------------------------------------------------------------
/src/components/Round/round.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
11 |
45 |
46 |
--------------------------------------------------------------------------------
/src/components/SlidDelete/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 滑动删除组件用于移动端左滑出现删除按钮。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 | {{item.content}}
10 |
11 |
12 |
13 |
23 | ```
24 | 具体使用可参考[该文件](../../examples/sliddelete.vue)。
25 |
26 | ## Options
27 | 配置项 | 值类型 | 描述
28 | --- | --- | ---
29 | height | String | 元素高度
30 | delWidth | Number | 删除按钮宽度
31 | deteleClicked | Function | 点击删除后回调
32 | `` | HTML | `delete-btn`具名插槽规定删除按钮的样式,选填
--------------------------------------------------------------------------------
/src/components/SlidDelete/slid-delete.vue:
--------------------------------------------------------------------------------
1 |
2 |
20 |
21 |
22 |
81 |
82 |
--------------------------------------------------------------------------------
/src/components/SolidArrow/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 实心箭头组件用于绘制页面中实心的小箭头。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
17 |
18 |
19 |
20 |
30 | ```
31 | 具体使用可参考[该文件](../../examples/arrows.vue)。
32 |
33 | ## Options
34 | 配置项 | 值类型 | 描述
35 | --- | --- | ---
36 | size | String | 规定箭头大小,默认`8px`
37 | color | String | 规定箭头颜色,默认`#666`
38 | direction | `left` `top` `right` `bottom` | 规定箭头指向,默认`right`
39 | active | Boolean | 规定箭头组件是否处于激活状态,若处于激活状态,会渲染`@`后的样式(若`@`后没有内容,则不改变样式),默认`false`
--------------------------------------------------------------------------------
/src/components/SolidArrow/solid-arrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
8 |
9 |
10 |
58 |
59 |
--------------------------------------------------------------------------------
/src/components/ToTop/README.md:
--------------------------------------------------------------------------------
1 | ## Introduce
2 | 页面置顶组件用于返回页面顶部,当然也可以设置定位的位置,通过修改定位可以改造成置底功能的按钮。
3 |
4 | ## Usage
5 | ```
6 |
7 |
8 |
9 |
10 |
11 |
21 | ```
22 | 具体使用可参考[该文件](../../examples/fixedtitle.vue)。
23 |
24 | ## Options
25 | 配置项 | 值类型 | 描述
26 | --- | --- | ---
27 | direction | `top`\|`bottom` | 规定显示的箭头方向,默认`top`
28 | scrollTop | Number | 规定滚动到什么位置时显示按钮,默认`667`(px)
29 | position | Number | 规定最终定位的位置,默认`0`(px)
30 | bottom | String | 规定按钮距离底部的位置,默认`20px`
31 | right | String | 规定按钮距离右边的位置,默认`20px`
32 | height | String | 规定按钮高度,默认`30px`
33 | width | String | 规定按钮宽度,默认`30px`
34 | borderRadius | String | 规定按钮圆角,默认`6px`
35 | `` | HTML | 按钮内部显示内容,选填
--------------------------------------------------------------------------------
/src/components/ToTop/to-top.vue:
--------------------------------------------------------------------------------
1 |
2 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
74 |
75 |
--------------------------------------------------------------------------------
/src/components/index.js:
--------------------------------------------------------------------------------
1 | import SlidDelete from './SlidDelete/slid-delete.vue';
2 | import Hint from './Hint/hint.vue';
3 | import Loading from './Loading/loading.vue';
4 | import FixedTitle from './FixedTitle/fixed-title.vue';
5 | import ToTop from './ToTop/to-top.vue';
6 | import HollowArrow from './HollowArrow/hollow-arrow.vue';
7 | import SolidArrow from './SolidArrow/solid-arrow.vue';
8 | import ProgressBar from './ProgressBar/progress-bar.vue';
9 | import Round from './Round/round.vue';
10 | import OmitText from './OmitText/omit-text.vue';
11 | import Banner from './Banner/banner.vue';
12 | import Gallery from './Gallery/gallery.vue';
13 | import MultTextInput from './MultTextInput/mult-text-input.vue';
14 |
15 | // const SlidDelete = () => import('./SlidDelete/slid-delete.vue');
16 | // const Hint = () => import('./Hint/hint.vue');
17 | // const Loading = () => import('./Loading/loading.vue');
18 | // const FixedTitle = () => import('./FixedTitle/fixed-title.vue');
19 | // const ToTop = () => import('./ToTop/to-top.vue');
20 | // const HollowArrow = () => import('./HollowArrow/hollow-arrow.vue');
21 | // const SolidArrow = () => import('./SolidArrow/solid-arrow.vue');
22 | // const ProgressBar = () => import('./ProgressBar/progress-bar.vue');
23 | // const Round = () => import('./Round/round.vue');
24 | // const OmitText = () => import('./OmitText/omit-text.vue');
25 | // const Banner = () => import('./Banner/banner.vue');
26 |
27 | export {
28 | SlidDelete,
29 | Hint,
30 | Loading,
31 | FixedTitle,
32 | ToTop,
33 | HollowArrow,
34 | SolidArrow,
35 | ProgressBar,
36 | Round,
37 | OmitText,
38 | Banner,
39 | Gallery,
40 | MultTextInput
41 | };
42 |
--------------------------------------------------------------------------------
/src/examples/arrows.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
空心箭头组件
6 |
7 |
8 |
14 |
15 |
20 |
21 |
29 |
30 |
31 |
32 |
实心箭头组件
33 |
34 |
35 |
40 |
41 |
46 |
47 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
78 |
79 |
94 |
--------------------------------------------------------------------------------
/src/examples/banner.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
横幅组件
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
31 |
32 |
46 |
--------------------------------------------------------------------------------
/src/examples/fixedtitle.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
表头固定组件
页面置顶组件
4 |
5 |
6 | -
7 |
name
8 | sex
9 | age
10 |
11 |
12 |
13 |
14 | -
15 |
name
16 | sex
17 | age
18 |
19 | -
20 |
{{item.name}}
21 | {{item.sex}}
22 | {{item.age}}
23 |
24 |
25 |
26 |
27 |
28 |
29 |
79 |
80 |
104 |
--------------------------------------------------------------------------------
/src/examples/gallery.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
画廊组件
4 |
7 |
8 |
9 |
10 |
11 |
46 |
47 |
61 |
--------------------------------------------------------------------------------
/src/examples/hint.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
透明提示组件
4 |
5 |
9 |
10 |
11 |
12 |
13 |
29 |
30 |
39 |
--------------------------------------------------------------------------------
/src/examples/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
滑动删除组件
4 |
透明提示组件
5 |
加载状态组件
6 |
表头固定组件
7 |
页面置顶组件
8 |
箭头组件
9 |
圆形组件
10 |
进度条组件
11 |
文本省略组件
12 |
横幅组件
13 |
画廊组件
14 |
多项文本输入组件
15 |
16 |
17 |
18 |
23 |
24 |
35 |
--------------------------------------------------------------------------------
/src/examples/loading.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
加载状态组件
4 |
5 |
6 |
7 |
8 |
9 |
10 |
26 |
27 |
39 |
--------------------------------------------------------------------------------
/src/examples/multtextinput.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
多项文本输入组件
4 |
5 |
6 |
7 |
8 |
45 |
46 |
59 |
--------------------------------------------------------------------------------
/src/examples/omittext.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
文本省略组件
4 |
5 |
6 |
7 |
8 |
24 |
25 |
34 |
--------------------------------------------------------------------------------
/src/examples/progressbar.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
进度条组件
4 |
7 |
10 |
13 |
14 |
15 |
16 |
32 |
33 |
48 |
--------------------------------------------------------------------------------
/src/examples/round.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
圆形组件
4 |
5 |
9 |
10 |
18 |
19 |
26 |
27 |
34 |
35 |
42 |
43 |
44 |
45 |
46 |
47 |
67 |
68 |
81 |
--------------------------------------------------------------------------------
/src/examples/sliddelete.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
滑动删除组件
4 |
5 | -
6 |
7 |
{{item.content}}
8 |
9 |

10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
50 |
51 |
77 |
--------------------------------------------------------------------------------
/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import App from './App';
3 | import router from './router';
4 | // import '../dist/hg-vcomponents.min.css';
5 |
6 | Vue.config.productionTip = false;
7 |
8 | /* eslint-disable no-new */
9 | new Vue({
10 | el: '#app',
11 | router,
12 | template: '',
13 | components: { App }
14 | });
--------------------------------------------------------------------------------
/src/router/index.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue';
2 | import Router from 'vue-router';
3 | const Index = () => import('@/examples/index.vue');
4 | const SlidDelete = () => import('@/examples/sliddelete.vue');
5 | const Hint = () => import('@/examples/hint.vue');
6 | const Loading = () => import('@/examples/loading.vue');
7 | const FixedTitle = () => import('@/examples/fixedtitle.vue');
8 | const Arrows = () => import('@/examples/arrows.vue');
9 | const ProgressBar = () => import('@/examples/progressbar.vue');
10 | const Round = () => import('@/examples/round.vue');
11 | const OmitText = () => import('@/examples/omittext.vue');
12 | const Banner = () => import('@/examples/banner.vue');
13 | const Gallery = () => import('@/examples/gallery.vue');
14 | const MultTextInput = () => import('@/examples/multtextinput.vue');
15 |
16 | Vue.use(Router);
17 |
18 | export default new Router({
19 | routes: [
20 | {
21 | path: '/',
22 | name: 'index',
23 | component: Index
24 | },
25 | {
26 | path: '/sliddelete',
27 | name: 'sliddelete',
28 | component: SlidDelete
29 | },
30 | {
31 | path: '/hint',
32 | name: 'hint',
33 | component: Hint
34 | },
35 | {
36 | path: '/loading',
37 | name: 'loading',
38 | component: Loading
39 | },
40 | {
41 | path: '/fixedtitle',
42 | name: 'fixedtitle',
43 | component: FixedTitle
44 | },
45 | {
46 | path: '/arrows',
47 | name: 'arrows',
48 | component: Arrows
49 | },
50 | {
51 | path: '/progressbar',
52 | name: 'progressbar',
53 | component: ProgressBar
54 | },
55 | {
56 | path: '/round',
57 | name: 'round',
58 | component: Round
59 | },
60 | {
61 | path: '/omittext',
62 | name: 'omittext',
63 | component: OmitText
64 | },
65 | {
66 | path: '/banner',
67 | name: 'banner',
68 | component: Banner
69 | },
70 | {
71 | path: '/gallery',
72 | name: 'gallery',
73 | component: Gallery
74 | },
75 | {
76 | path: '/multtextinput',
77 | name: 'multtextinput',
78 | component: MultTextInput
79 | }
80 | ]
81 | });
82 |
--------------------------------------------------------------------------------
/static/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/hamger/hg-vcomponents/c0aeae72172b24de1a31552bed27ad1e2e55da2c/static/.gitkeep
--------------------------------------------------------------------------------